@effect-aws/client-ec2 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,683 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DefaultEC2ServiceLayer = exports.EC2ServiceLayer = exports.BaseEC2ServiceLayer = exports.makeEC2Service = exports.EC2Service = void 0;
4
+ /**
5
+ * @since 1.0.0
6
+ */
7
+ const client_ec2_1 = require("@aws-sdk/client-ec2");
8
+ const effect_1 = require("effect");
9
+ const EC2ClientInstance_1 = require("./EC2ClientInstance");
10
+ const EC2ClientInstanceConfig_1 = require("./EC2ClientInstanceConfig");
11
+ const Errors_1 = require("./Errors");
12
+ const commands = {
13
+ AcceptAddressTransferCommand: client_ec2_1.AcceptAddressTransferCommand,
14
+ AcceptReservedInstancesExchangeQuoteCommand: client_ec2_1.AcceptReservedInstancesExchangeQuoteCommand,
15
+ AcceptTransitGatewayMulticastDomainAssociationsCommand: client_ec2_1.AcceptTransitGatewayMulticastDomainAssociationsCommand,
16
+ AcceptTransitGatewayPeeringAttachmentCommand: client_ec2_1.AcceptTransitGatewayPeeringAttachmentCommand,
17
+ AcceptTransitGatewayVpcAttachmentCommand: client_ec2_1.AcceptTransitGatewayVpcAttachmentCommand,
18
+ AcceptVpcEndpointConnectionsCommand: client_ec2_1.AcceptVpcEndpointConnectionsCommand,
19
+ AcceptVpcPeeringConnectionCommand: client_ec2_1.AcceptVpcPeeringConnectionCommand,
20
+ AdvertiseByoipCidrCommand: client_ec2_1.AdvertiseByoipCidrCommand,
21
+ AllocateAddressCommand: client_ec2_1.AllocateAddressCommand,
22
+ AllocateHostsCommand: client_ec2_1.AllocateHostsCommand,
23
+ AllocateIpamPoolCidrCommand: client_ec2_1.AllocateIpamPoolCidrCommand,
24
+ ApplySecurityGroupsToClientVpnTargetNetworkCommand: client_ec2_1.ApplySecurityGroupsToClientVpnTargetNetworkCommand,
25
+ AssignIpv6AddressesCommand: client_ec2_1.AssignIpv6AddressesCommand,
26
+ AssignPrivateIpAddressesCommand: client_ec2_1.AssignPrivateIpAddressesCommand,
27
+ AssignPrivateNatGatewayAddressCommand: client_ec2_1.AssignPrivateNatGatewayAddressCommand,
28
+ AssociateAddressCommand: client_ec2_1.AssociateAddressCommand,
29
+ AssociateClientVpnTargetNetworkCommand: client_ec2_1.AssociateClientVpnTargetNetworkCommand,
30
+ AssociateDhcpOptionsCommand: client_ec2_1.AssociateDhcpOptionsCommand,
31
+ AssociateEnclaveCertificateIamRoleCommand: client_ec2_1.AssociateEnclaveCertificateIamRoleCommand,
32
+ AssociateIamInstanceProfileCommand: client_ec2_1.AssociateIamInstanceProfileCommand,
33
+ AssociateInstanceEventWindowCommand: client_ec2_1.AssociateInstanceEventWindowCommand,
34
+ AssociateIpamByoasnCommand: client_ec2_1.AssociateIpamByoasnCommand,
35
+ AssociateIpamResourceDiscoveryCommand: client_ec2_1.AssociateIpamResourceDiscoveryCommand,
36
+ AssociateNatGatewayAddressCommand: client_ec2_1.AssociateNatGatewayAddressCommand,
37
+ AssociateRouteTableCommand: client_ec2_1.AssociateRouteTableCommand,
38
+ AssociateSubnetCidrBlockCommand: client_ec2_1.AssociateSubnetCidrBlockCommand,
39
+ AssociateTransitGatewayMulticastDomainCommand: client_ec2_1.AssociateTransitGatewayMulticastDomainCommand,
40
+ AssociateTransitGatewayPolicyTableCommand: client_ec2_1.AssociateTransitGatewayPolicyTableCommand,
41
+ AssociateTransitGatewayRouteTableCommand: client_ec2_1.AssociateTransitGatewayRouteTableCommand,
42
+ AssociateTrunkInterfaceCommand: client_ec2_1.AssociateTrunkInterfaceCommand,
43
+ AssociateVpcCidrBlockCommand: client_ec2_1.AssociateVpcCidrBlockCommand,
44
+ AttachClassicLinkVpcCommand: client_ec2_1.AttachClassicLinkVpcCommand,
45
+ AttachInternetGatewayCommand: client_ec2_1.AttachInternetGatewayCommand,
46
+ AttachNetworkInterfaceCommand: client_ec2_1.AttachNetworkInterfaceCommand,
47
+ AttachVerifiedAccessTrustProviderCommand: client_ec2_1.AttachVerifiedAccessTrustProviderCommand,
48
+ AttachVolumeCommand: client_ec2_1.AttachVolumeCommand,
49
+ AttachVpnGatewayCommand: client_ec2_1.AttachVpnGatewayCommand,
50
+ AuthorizeClientVpnIngressCommand: client_ec2_1.AuthorizeClientVpnIngressCommand,
51
+ AuthorizeSecurityGroupEgressCommand: client_ec2_1.AuthorizeSecurityGroupEgressCommand,
52
+ AuthorizeSecurityGroupIngressCommand: client_ec2_1.AuthorizeSecurityGroupIngressCommand,
53
+ BundleInstanceCommand: client_ec2_1.BundleInstanceCommand,
54
+ CancelBundleTaskCommand: client_ec2_1.CancelBundleTaskCommand,
55
+ CancelCapacityReservationCommand: client_ec2_1.CancelCapacityReservationCommand,
56
+ CancelCapacityReservationFleetsCommand: client_ec2_1.CancelCapacityReservationFleetsCommand,
57
+ CancelConversionTaskCommand: client_ec2_1.CancelConversionTaskCommand,
58
+ CancelExportTaskCommand: client_ec2_1.CancelExportTaskCommand,
59
+ CancelImageLaunchPermissionCommand: client_ec2_1.CancelImageLaunchPermissionCommand,
60
+ CancelImportTaskCommand: client_ec2_1.CancelImportTaskCommand,
61
+ CancelReservedInstancesListingCommand: client_ec2_1.CancelReservedInstancesListingCommand,
62
+ CancelSpotFleetRequestsCommand: client_ec2_1.CancelSpotFleetRequestsCommand,
63
+ CancelSpotInstanceRequestsCommand: client_ec2_1.CancelSpotInstanceRequestsCommand,
64
+ ConfirmProductInstanceCommand: client_ec2_1.ConfirmProductInstanceCommand,
65
+ CopyFpgaImageCommand: client_ec2_1.CopyFpgaImageCommand,
66
+ CopyImageCommand: client_ec2_1.CopyImageCommand,
67
+ CopySnapshotCommand: client_ec2_1.CopySnapshotCommand,
68
+ CreateCapacityReservationCommand: client_ec2_1.CreateCapacityReservationCommand,
69
+ CreateCapacityReservationFleetCommand: client_ec2_1.CreateCapacityReservationFleetCommand,
70
+ CreateCarrierGatewayCommand: client_ec2_1.CreateCarrierGatewayCommand,
71
+ CreateClientVpnEndpointCommand: client_ec2_1.CreateClientVpnEndpointCommand,
72
+ CreateClientVpnRouteCommand: client_ec2_1.CreateClientVpnRouteCommand,
73
+ CreateCoipCidrCommand: client_ec2_1.CreateCoipCidrCommand,
74
+ CreateCoipPoolCommand: client_ec2_1.CreateCoipPoolCommand,
75
+ CreateCustomerGatewayCommand: client_ec2_1.CreateCustomerGatewayCommand,
76
+ CreateDefaultSubnetCommand: client_ec2_1.CreateDefaultSubnetCommand,
77
+ CreateDefaultVpcCommand: client_ec2_1.CreateDefaultVpcCommand,
78
+ CreateDhcpOptionsCommand: client_ec2_1.CreateDhcpOptionsCommand,
79
+ CreateEgressOnlyInternetGatewayCommand: client_ec2_1.CreateEgressOnlyInternetGatewayCommand,
80
+ CreateFleetCommand: client_ec2_1.CreateFleetCommand,
81
+ CreateFlowLogsCommand: client_ec2_1.CreateFlowLogsCommand,
82
+ CreateFpgaImageCommand: client_ec2_1.CreateFpgaImageCommand,
83
+ CreateImageCommand: client_ec2_1.CreateImageCommand,
84
+ CreateInstanceConnectEndpointCommand: client_ec2_1.CreateInstanceConnectEndpointCommand,
85
+ CreateInstanceEventWindowCommand: client_ec2_1.CreateInstanceEventWindowCommand,
86
+ CreateInstanceExportTaskCommand: client_ec2_1.CreateInstanceExportTaskCommand,
87
+ CreateInternetGatewayCommand: client_ec2_1.CreateInternetGatewayCommand,
88
+ CreateIpamCommand: client_ec2_1.CreateIpamCommand,
89
+ CreateIpamPoolCommand: client_ec2_1.CreateIpamPoolCommand,
90
+ CreateIpamResourceDiscoveryCommand: client_ec2_1.CreateIpamResourceDiscoveryCommand,
91
+ CreateIpamScopeCommand: client_ec2_1.CreateIpamScopeCommand,
92
+ CreateKeyPairCommand: client_ec2_1.CreateKeyPairCommand,
93
+ CreateLaunchTemplateCommand: client_ec2_1.CreateLaunchTemplateCommand,
94
+ CreateLaunchTemplateVersionCommand: client_ec2_1.CreateLaunchTemplateVersionCommand,
95
+ CreateLocalGatewayRouteCommand: client_ec2_1.CreateLocalGatewayRouteCommand,
96
+ CreateLocalGatewayRouteTableCommand: client_ec2_1.CreateLocalGatewayRouteTableCommand,
97
+ CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationCommand: client_ec2_1.CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationCommand,
98
+ CreateLocalGatewayRouteTableVpcAssociationCommand: client_ec2_1.CreateLocalGatewayRouteTableVpcAssociationCommand,
99
+ CreateManagedPrefixListCommand: client_ec2_1.CreateManagedPrefixListCommand,
100
+ CreateNatGatewayCommand: client_ec2_1.CreateNatGatewayCommand,
101
+ CreateNetworkAclCommand: client_ec2_1.CreateNetworkAclCommand,
102
+ CreateNetworkAclEntryCommand: client_ec2_1.CreateNetworkAclEntryCommand,
103
+ CreateNetworkInsightsAccessScopeCommand: client_ec2_1.CreateNetworkInsightsAccessScopeCommand,
104
+ CreateNetworkInsightsPathCommand: client_ec2_1.CreateNetworkInsightsPathCommand,
105
+ CreateNetworkInterfaceCommand: client_ec2_1.CreateNetworkInterfaceCommand,
106
+ CreateNetworkInterfacePermissionCommand: client_ec2_1.CreateNetworkInterfacePermissionCommand,
107
+ CreatePlacementGroupCommand: client_ec2_1.CreatePlacementGroupCommand,
108
+ CreatePublicIpv4PoolCommand: client_ec2_1.CreatePublicIpv4PoolCommand,
109
+ CreateReplaceRootVolumeTaskCommand: client_ec2_1.CreateReplaceRootVolumeTaskCommand,
110
+ CreateReservedInstancesListingCommand: client_ec2_1.CreateReservedInstancesListingCommand,
111
+ CreateRestoreImageTaskCommand: client_ec2_1.CreateRestoreImageTaskCommand,
112
+ CreateRouteCommand: client_ec2_1.CreateRouteCommand,
113
+ CreateRouteTableCommand: client_ec2_1.CreateRouteTableCommand,
114
+ CreateSecurityGroupCommand: client_ec2_1.CreateSecurityGroupCommand,
115
+ CreateSnapshotCommand: client_ec2_1.CreateSnapshotCommand,
116
+ CreateSnapshotsCommand: client_ec2_1.CreateSnapshotsCommand,
117
+ CreateSpotDatafeedSubscriptionCommand: client_ec2_1.CreateSpotDatafeedSubscriptionCommand,
118
+ CreateStoreImageTaskCommand: client_ec2_1.CreateStoreImageTaskCommand,
119
+ CreateSubnetCommand: client_ec2_1.CreateSubnetCommand,
120
+ CreateSubnetCidrReservationCommand: client_ec2_1.CreateSubnetCidrReservationCommand,
121
+ CreateTagsCommand: client_ec2_1.CreateTagsCommand,
122
+ CreateTrafficMirrorFilterCommand: client_ec2_1.CreateTrafficMirrorFilterCommand,
123
+ CreateTrafficMirrorFilterRuleCommand: client_ec2_1.CreateTrafficMirrorFilterRuleCommand,
124
+ CreateTrafficMirrorSessionCommand: client_ec2_1.CreateTrafficMirrorSessionCommand,
125
+ CreateTrafficMirrorTargetCommand: client_ec2_1.CreateTrafficMirrorTargetCommand,
126
+ CreateTransitGatewayCommand: client_ec2_1.CreateTransitGatewayCommand,
127
+ CreateTransitGatewayConnectCommand: client_ec2_1.CreateTransitGatewayConnectCommand,
128
+ CreateTransitGatewayConnectPeerCommand: client_ec2_1.CreateTransitGatewayConnectPeerCommand,
129
+ CreateTransitGatewayMulticastDomainCommand: client_ec2_1.CreateTransitGatewayMulticastDomainCommand,
130
+ CreateTransitGatewayPeeringAttachmentCommand: client_ec2_1.CreateTransitGatewayPeeringAttachmentCommand,
131
+ CreateTransitGatewayPolicyTableCommand: client_ec2_1.CreateTransitGatewayPolicyTableCommand,
132
+ CreateTransitGatewayPrefixListReferenceCommand: client_ec2_1.CreateTransitGatewayPrefixListReferenceCommand,
133
+ CreateTransitGatewayRouteCommand: client_ec2_1.CreateTransitGatewayRouteCommand,
134
+ CreateTransitGatewayRouteTableCommand: client_ec2_1.CreateTransitGatewayRouteTableCommand,
135
+ CreateTransitGatewayRouteTableAnnouncementCommand: client_ec2_1.CreateTransitGatewayRouteTableAnnouncementCommand,
136
+ CreateTransitGatewayVpcAttachmentCommand: client_ec2_1.CreateTransitGatewayVpcAttachmentCommand,
137
+ CreateVerifiedAccessEndpointCommand: client_ec2_1.CreateVerifiedAccessEndpointCommand,
138
+ CreateVerifiedAccessGroupCommand: client_ec2_1.CreateVerifiedAccessGroupCommand,
139
+ CreateVerifiedAccessInstanceCommand: client_ec2_1.CreateVerifiedAccessInstanceCommand,
140
+ CreateVerifiedAccessTrustProviderCommand: client_ec2_1.CreateVerifiedAccessTrustProviderCommand,
141
+ CreateVolumeCommand: client_ec2_1.CreateVolumeCommand,
142
+ CreateVpcCommand: client_ec2_1.CreateVpcCommand,
143
+ CreateVpcEndpointCommand: client_ec2_1.CreateVpcEndpointCommand,
144
+ CreateVpcEndpointConnectionNotificationCommand: client_ec2_1.CreateVpcEndpointConnectionNotificationCommand,
145
+ CreateVpcEndpointServiceConfigurationCommand: client_ec2_1.CreateVpcEndpointServiceConfigurationCommand,
146
+ CreateVpcPeeringConnectionCommand: client_ec2_1.CreateVpcPeeringConnectionCommand,
147
+ CreateVpnConnectionCommand: client_ec2_1.CreateVpnConnectionCommand,
148
+ CreateVpnConnectionRouteCommand: client_ec2_1.CreateVpnConnectionRouteCommand,
149
+ CreateVpnGatewayCommand: client_ec2_1.CreateVpnGatewayCommand,
150
+ DeleteCarrierGatewayCommand: client_ec2_1.DeleteCarrierGatewayCommand,
151
+ DeleteClientVpnEndpointCommand: client_ec2_1.DeleteClientVpnEndpointCommand,
152
+ DeleteClientVpnRouteCommand: client_ec2_1.DeleteClientVpnRouteCommand,
153
+ DeleteCoipCidrCommand: client_ec2_1.DeleteCoipCidrCommand,
154
+ DeleteCoipPoolCommand: client_ec2_1.DeleteCoipPoolCommand,
155
+ DeleteCustomerGatewayCommand: client_ec2_1.DeleteCustomerGatewayCommand,
156
+ DeleteDhcpOptionsCommand: client_ec2_1.DeleteDhcpOptionsCommand,
157
+ DeleteEgressOnlyInternetGatewayCommand: client_ec2_1.DeleteEgressOnlyInternetGatewayCommand,
158
+ DeleteFleetsCommand: client_ec2_1.DeleteFleetsCommand,
159
+ DeleteFlowLogsCommand: client_ec2_1.DeleteFlowLogsCommand,
160
+ DeleteFpgaImageCommand: client_ec2_1.DeleteFpgaImageCommand,
161
+ DeleteInstanceConnectEndpointCommand: client_ec2_1.DeleteInstanceConnectEndpointCommand,
162
+ DeleteInstanceEventWindowCommand: client_ec2_1.DeleteInstanceEventWindowCommand,
163
+ DeleteInternetGatewayCommand: client_ec2_1.DeleteInternetGatewayCommand,
164
+ DeleteIpamCommand: client_ec2_1.DeleteIpamCommand,
165
+ DeleteIpamPoolCommand: client_ec2_1.DeleteIpamPoolCommand,
166
+ DeleteIpamResourceDiscoveryCommand: client_ec2_1.DeleteIpamResourceDiscoveryCommand,
167
+ DeleteIpamScopeCommand: client_ec2_1.DeleteIpamScopeCommand,
168
+ DeleteKeyPairCommand: client_ec2_1.DeleteKeyPairCommand,
169
+ DeleteLaunchTemplateCommand: client_ec2_1.DeleteLaunchTemplateCommand,
170
+ DeleteLaunchTemplateVersionsCommand: client_ec2_1.DeleteLaunchTemplateVersionsCommand,
171
+ DeleteLocalGatewayRouteCommand: client_ec2_1.DeleteLocalGatewayRouteCommand,
172
+ DeleteLocalGatewayRouteTableCommand: client_ec2_1.DeleteLocalGatewayRouteTableCommand,
173
+ DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationCommand: client_ec2_1.DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationCommand,
174
+ DeleteLocalGatewayRouteTableVpcAssociationCommand: client_ec2_1.DeleteLocalGatewayRouteTableVpcAssociationCommand,
175
+ DeleteManagedPrefixListCommand: client_ec2_1.DeleteManagedPrefixListCommand,
176
+ DeleteNatGatewayCommand: client_ec2_1.DeleteNatGatewayCommand,
177
+ DeleteNetworkAclCommand: client_ec2_1.DeleteNetworkAclCommand,
178
+ DeleteNetworkAclEntryCommand: client_ec2_1.DeleteNetworkAclEntryCommand,
179
+ DeleteNetworkInsightsAccessScopeCommand: client_ec2_1.DeleteNetworkInsightsAccessScopeCommand,
180
+ DeleteNetworkInsightsAccessScopeAnalysisCommand: client_ec2_1.DeleteNetworkInsightsAccessScopeAnalysisCommand,
181
+ DeleteNetworkInsightsAnalysisCommand: client_ec2_1.DeleteNetworkInsightsAnalysisCommand,
182
+ DeleteNetworkInsightsPathCommand: client_ec2_1.DeleteNetworkInsightsPathCommand,
183
+ DeleteNetworkInterfaceCommand: client_ec2_1.DeleteNetworkInterfaceCommand,
184
+ DeleteNetworkInterfacePermissionCommand: client_ec2_1.DeleteNetworkInterfacePermissionCommand,
185
+ DeletePlacementGroupCommand: client_ec2_1.DeletePlacementGroupCommand,
186
+ DeletePublicIpv4PoolCommand: client_ec2_1.DeletePublicIpv4PoolCommand,
187
+ DeleteQueuedReservedInstancesCommand: client_ec2_1.DeleteQueuedReservedInstancesCommand,
188
+ DeleteRouteCommand: client_ec2_1.DeleteRouteCommand,
189
+ DeleteRouteTableCommand: client_ec2_1.DeleteRouteTableCommand,
190
+ DeleteSecurityGroupCommand: client_ec2_1.DeleteSecurityGroupCommand,
191
+ DeleteSnapshotCommand: client_ec2_1.DeleteSnapshotCommand,
192
+ DeleteSpotDatafeedSubscriptionCommand: client_ec2_1.DeleteSpotDatafeedSubscriptionCommand,
193
+ DeleteSubnetCommand: client_ec2_1.DeleteSubnetCommand,
194
+ DeleteSubnetCidrReservationCommand: client_ec2_1.DeleteSubnetCidrReservationCommand,
195
+ DeleteTagsCommand: client_ec2_1.DeleteTagsCommand,
196
+ DeleteTrafficMirrorFilterCommand: client_ec2_1.DeleteTrafficMirrorFilterCommand,
197
+ DeleteTrafficMirrorFilterRuleCommand: client_ec2_1.DeleteTrafficMirrorFilterRuleCommand,
198
+ DeleteTrafficMirrorSessionCommand: client_ec2_1.DeleteTrafficMirrorSessionCommand,
199
+ DeleteTrafficMirrorTargetCommand: client_ec2_1.DeleteTrafficMirrorTargetCommand,
200
+ DeleteTransitGatewayCommand: client_ec2_1.DeleteTransitGatewayCommand,
201
+ DeleteTransitGatewayConnectCommand: client_ec2_1.DeleteTransitGatewayConnectCommand,
202
+ DeleteTransitGatewayConnectPeerCommand: client_ec2_1.DeleteTransitGatewayConnectPeerCommand,
203
+ DeleteTransitGatewayMulticastDomainCommand: client_ec2_1.DeleteTransitGatewayMulticastDomainCommand,
204
+ DeleteTransitGatewayPeeringAttachmentCommand: client_ec2_1.DeleteTransitGatewayPeeringAttachmentCommand,
205
+ DeleteTransitGatewayPolicyTableCommand: client_ec2_1.DeleteTransitGatewayPolicyTableCommand,
206
+ DeleteTransitGatewayPrefixListReferenceCommand: client_ec2_1.DeleteTransitGatewayPrefixListReferenceCommand,
207
+ DeleteTransitGatewayRouteCommand: client_ec2_1.DeleteTransitGatewayRouteCommand,
208
+ DeleteTransitGatewayRouteTableCommand: client_ec2_1.DeleteTransitGatewayRouteTableCommand,
209
+ DeleteTransitGatewayRouteTableAnnouncementCommand: client_ec2_1.DeleteTransitGatewayRouteTableAnnouncementCommand,
210
+ DeleteTransitGatewayVpcAttachmentCommand: client_ec2_1.DeleteTransitGatewayVpcAttachmentCommand,
211
+ DeleteVerifiedAccessEndpointCommand: client_ec2_1.DeleteVerifiedAccessEndpointCommand,
212
+ DeleteVerifiedAccessGroupCommand: client_ec2_1.DeleteVerifiedAccessGroupCommand,
213
+ DeleteVerifiedAccessInstanceCommand: client_ec2_1.DeleteVerifiedAccessInstanceCommand,
214
+ DeleteVerifiedAccessTrustProviderCommand: client_ec2_1.DeleteVerifiedAccessTrustProviderCommand,
215
+ DeleteVolumeCommand: client_ec2_1.DeleteVolumeCommand,
216
+ DeleteVpcCommand: client_ec2_1.DeleteVpcCommand,
217
+ DeleteVpcEndpointConnectionNotificationsCommand: client_ec2_1.DeleteVpcEndpointConnectionNotificationsCommand,
218
+ DeleteVpcEndpointsCommand: client_ec2_1.DeleteVpcEndpointsCommand,
219
+ DeleteVpcEndpointServiceConfigurationsCommand: client_ec2_1.DeleteVpcEndpointServiceConfigurationsCommand,
220
+ DeleteVpcPeeringConnectionCommand: client_ec2_1.DeleteVpcPeeringConnectionCommand,
221
+ DeleteVpnConnectionCommand: client_ec2_1.DeleteVpnConnectionCommand,
222
+ DeleteVpnConnectionRouteCommand: client_ec2_1.DeleteVpnConnectionRouteCommand,
223
+ DeleteVpnGatewayCommand: client_ec2_1.DeleteVpnGatewayCommand,
224
+ DeprovisionByoipCidrCommand: client_ec2_1.DeprovisionByoipCidrCommand,
225
+ DeprovisionIpamByoasnCommand: client_ec2_1.DeprovisionIpamByoasnCommand,
226
+ DeprovisionIpamPoolCidrCommand: client_ec2_1.DeprovisionIpamPoolCidrCommand,
227
+ DeprovisionPublicIpv4PoolCidrCommand: client_ec2_1.DeprovisionPublicIpv4PoolCidrCommand,
228
+ DeregisterImageCommand: client_ec2_1.DeregisterImageCommand,
229
+ DeregisterInstanceEventNotificationAttributesCommand: client_ec2_1.DeregisterInstanceEventNotificationAttributesCommand,
230
+ DeregisterTransitGatewayMulticastGroupMembersCommand: client_ec2_1.DeregisterTransitGatewayMulticastGroupMembersCommand,
231
+ DeregisterTransitGatewayMulticastGroupSourcesCommand: client_ec2_1.DeregisterTransitGatewayMulticastGroupSourcesCommand,
232
+ DescribeAccountAttributesCommand: client_ec2_1.DescribeAccountAttributesCommand,
233
+ DescribeAddressesCommand: client_ec2_1.DescribeAddressesCommand,
234
+ DescribeAddressesAttributeCommand: client_ec2_1.DescribeAddressesAttributeCommand,
235
+ DescribeAddressTransfersCommand: client_ec2_1.DescribeAddressTransfersCommand,
236
+ DescribeAggregateIdFormatCommand: client_ec2_1.DescribeAggregateIdFormatCommand,
237
+ DescribeAvailabilityZonesCommand: client_ec2_1.DescribeAvailabilityZonesCommand,
238
+ DescribeAwsNetworkPerformanceMetricSubscriptionsCommand: client_ec2_1.DescribeAwsNetworkPerformanceMetricSubscriptionsCommand,
239
+ DescribeBundleTasksCommand: client_ec2_1.DescribeBundleTasksCommand,
240
+ DescribeByoipCidrsCommand: client_ec2_1.DescribeByoipCidrsCommand,
241
+ DescribeCapacityBlockOfferingsCommand: client_ec2_1.DescribeCapacityBlockOfferingsCommand,
242
+ DescribeCapacityReservationFleetsCommand: client_ec2_1.DescribeCapacityReservationFleetsCommand,
243
+ DescribeCapacityReservationsCommand: client_ec2_1.DescribeCapacityReservationsCommand,
244
+ DescribeCarrierGatewaysCommand: client_ec2_1.DescribeCarrierGatewaysCommand,
245
+ DescribeClassicLinkInstancesCommand: client_ec2_1.DescribeClassicLinkInstancesCommand,
246
+ DescribeClientVpnAuthorizationRulesCommand: client_ec2_1.DescribeClientVpnAuthorizationRulesCommand,
247
+ DescribeClientVpnConnectionsCommand: client_ec2_1.DescribeClientVpnConnectionsCommand,
248
+ DescribeClientVpnEndpointsCommand: client_ec2_1.DescribeClientVpnEndpointsCommand,
249
+ DescribeClientVpnRoutesCommand: client_ec2_1.DescribeClientVpnRoutesCommand,
250
+ DescribeClientVpnTargetNetworksCommand: client_ec2_1.DescribeClientVpnTargetNetworksCommand,
251
+ DescribeCoipPoolsCommand: client_ec2_1.DescribeCoipPoolsCommand,
252
+ DescribeConversionTasksCommand: client_ec2_1.DescribeConversionTasksCommand,
253
+ DescribeCustomerGatewaysCommand: client_ec2_1.DescribeCustomerGatewaysCommand,
254
+ DescribeDhcpOptionsCommand: client_ec2_1.DescribeDhcpOptionsCommand,
255
+ DescribeEgressOnlyInternetGatewaysCommand: client_ec2_1.DescribeEgressOnlyInternetGatewaysCommand,
256
+ DescribeElasticGpusCommand: client_ec2_1.DescribeElasticGpusCommand,
257
+ DescribeExportImageTasksCommand: client_ec2_1.DescribeExportImageTasksCommand,
258
+ DescribeExportTasksCommand: client_ec2_1.DescribeExportTasksCommand,
259
+ DescribeFastLaunchImagesCommand: client_ec2_1.DescribeFastLaunchImagesCommand,
260
+ DescribeFastSnapshotRestoresCommand: client_ec2_1.DescribeFastSnapshotRestoresCommand,
261
+ DescribeFleetHistoryCommand: client_ec2_1.DescribeFleetHistoryCommand,
262
+ DescribeFleetInstancesCommand: client_ec2_1.DescribeFleetInstancesCommand,
263
+ DescribeFleetsCommand: client_ec2_1.DescribeFleetsCommand,
264
+ DescribeFlowLogsCommand: client_ec2_1.DescribeFlowLogsCommand,
265
+ DescribeFpgaImageAttributeCommand: client_ec2_1.DescribeFpgaImageAttributeCommand,
266
+ DescribeFpgaImagesCommand: client_ec2_1.DescribeFpgaImagesCommand,
267
+ DescribeHostReservationOfferingsCommand: client_ec2_1.DescribeHostReservationOfferingsCommand,
268
+ DescribeHostReservationsCommand: client_ec2_1.DescribeHostReservationsCommand,
269
+ DescribeHostsCommand: client_ec2_1.DescribeHostsCommand,
270
+ DescribeIamInstanceProfileAssociationsCommand: client_ec2_1.DescribeIamInstanceProfileAssociationsCommand,
271
+ DescribeIdentityIdFormatCommand: client_ec2_1.DescribeIdentityIdFormatCommand,
272
+ DescribeIdFormatCommand: client_ec2_1.DescribeIdFormatCommand,
273
+ DescribeImageAttributeCommand: client_ec2_1.DescribeImageAttributeCommand,
274
+ DescribeImagesCommand: client_ec2_1.DescribeImagesCommand,
275
+ DescribeImportImageTasksCommand: client_ec2_1.DescribeImportImageTasksCommand,
276
+ DescribeImportSnapshotTasksCommand: client_ec2_1.DescribeImportSnapshotTasksCommand,
277
+ DescribeInstanceAttributeCommand: client_ec2_1.DescribeInstanceAttributeCommand,
278
+ DescribeInstanceConnectEndpointsCommand: client_ec2_1.DescribeInstanceConnectEndpointsCommand,
279
+ DescribeInstanceCreditSpecificationsCommand: client_ec2_1.DescribeInstanceCreditSpecificationsCommand,
280
+ DescribeInstanceEventNotificationAttributesCommand: client_ec2_1.DescribeInstanceEventNotificationAttributesCommand,
281
+ DescribeInstanceEventWindowsCommand: client_ec2_1.DescribeInstanceEventWindowsCommand,
282
+ DescribeInstancesCommand: client_ec2_1.DescribeInstancesCommand,
283
+ DescribeInstanceStatusCommand: client_ec2_1.DescribeInstanceStatusCommand,
284
+ DescribeInstanceTopologyCommand: client_ec2_1.DescribeInstanceTopologyCommand,
285
+ DescribeInstanceTypeOfferingsCommand: client_ec2_1.DescribeInstanceTypeOfferingsCommand,
286
+ DescribeInstanceTypesCommand: client_ec2_1.DescribeInstanceTypesCommand,
287
+ DescribeInternetGatewaysCommand: client_ec2_1.DescribeInternetGatewaysCommand,
288
+ DescribeIpamByoasnCommand: client_ec2_1.DescribeIpamByoasnCommand,
289
+ DescribeIpamPoolsCommand: client_ec2_1.DescribeIpamPoolsCommand,
290
+ DescribeIpamResourceDiscoveriesCommand: client_ec2_1.DescribeIpamResourceDiscoveriesCommand,
291
+ DescribeIpamResourceDiscoveryAssociationsCommand: client_ec2_1.DescribeIpamResourceDiscoveryAssociationsCommand,
292
+ DescribeIpamsCommand: client_ec2_1.DescribeIpamsCommand,
293
+ DescribeIpamScopesCommand: client_ec2_1.DescribeIpamScopesCommand,
294
+ DescribeIpv6PoolsCommand: client_ec2_1.DescribeIpv6PoolsCommand,
295
+ DescribeKeyPairsCommand: client_ec2_1.DescribeKeyPairsCommand,
296
+ DescribeLaunchTemplatesCommand: client_ec2_1.DescribeLaunchTemplatesCommand,
297
+ DescribeLaunchTemplateVersionsCommand: client_ec2_1.DescribeLaunchTemplateVersionsCommand,
298
+ DescribeLocalGatewayRouteTablesCommand: client_ec2_1.DescribeLocalGatewayRouteTablesCommand,
299
+ DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsCommand: client_ec2_1.DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsCommand,
300
+ DescribeLocalGatewayRouteTableVpcAssociationsCommand: client_ec2_1.DescribeLocalGatewayRouteTableVpcAssociationsCommand,
301
+ DescribeLocalGatewaysCommand: client_ec2_1.DescribeLocalGatewaysCommand,
302
+ DescribeLocalGatewayVirtualInterfaceGroupsCommand: client_ec2_1.DescribeLocalGatewayVirtualInterfaceGroupsCommand,
303
+ DescribeLocalGatewayVirtualInterfacesCommand: client_ec2_1.DescribeLocalGatewayVirtualInterfacesCommand,
304
+ DescribeLockedSnapshotsCommand: client_ec2_1.DescribeLockedSnapshotsCommand,
305
+ DescribeManagedPrefixListsCommand: client_ec2_1.DescribeManagedPrefixListsCommand,
306
+ DescribeMovingAddressesCommand: client_ec2_1.DescribeMovingAddressesCommand,
307
+ DescribeNatGatewaysCommand: client_ec2_1.DescribeNatGatewaysCommand,
308
+ DescribeNetworkAclsCommand: client_ec2_1.DescribeNetworkAclsCommand,
309
+ DescribeNetworkInsightsAccessScopeAnalysesCommand: client_ec2_1.DescribeNetworkInsightsAccessScopeAnalysesCommand,
310
+ DescribeNetworkInsightsAccessScopesCommand: client_ec2_1.DescribeNetworkInsightsAccessScopesCommand,
311
+ DescribeNetworkInsightsAnalysesCommand: client_ec2_1.DescribeNetworkInsightsAnalysesCommand,
312
+ DescribeNetworkInsightsPathsCommand: client_ec2_1.DescribeNetworkInsightsPathsCommand,
313
+ DescribeNetworkInterfaceAttributeCommand: client_ec2_1.DescribeNetworkInterfaceAttributeCommand,
314
+ DescribeNetworkInterfacePermissionsCommand: client_ec2_1.DescribeNetworkInterfacePermissionsCommand,
315
+ DescribeNetworkInterfacesCommand: client_ec2_1.DescribeNetworkInterfacesCommand,
316
+ DescribePlacementGroupsCommand: client_ec2_1.DescribePlacementGroupsCommand,
317
+ DescribePrefixListsCommand: client_ec2_1.DescribePrefixListsCommand,
318
+ DescribePrincipalIdFormatCommand: client_ec2_1.DescribePrincipalIdFormatCommand,
319
+ DescribePublicIpv4PoolsCommand: client_ec2_1.DescribePublicIpv4PoolsCommand,
320
+ DescribeRegionsCommand: client_ec2_1.DescribeRegionsCommand,
321
+ DescribeReplaceRootVolumeTasksCommand: client_ec2_1.DescribeReplaceRootVolumeTasksCommand,
322
+ DescribeReservedInstancesCommand: client_ec2_1.DescribeReservedInstancesCommand,
323
+ DescribeReservedInstancesListingsCommand: client_ec2_1.DescribeReservedInstancesListingsCommand,
324
+ DescribeReservedInstancesModificationsCommand: client_ec2_1.DescribeReservedInstancesModificationsCommand,
325
+ DescribeReservedInstancesOfferingsCommand: client_ec2_1.DescribeReservedInstancesOfferingsCommand,
326
+ DescribeRouteTablesCommand: client_ec2_1.DescribeRouteTablesCommand,
327
+ DescribeScheduledInstanceAvailabilityCommand: client_ec2_1.DescribeScheduledInstanceAvailabilityCommand,
328
+ DescribeScheduledInstancesCommand: client_ec2_1.DescribeScheduledInstancesCommand,
329
+ DescribeSecurityGroupReferencesCommand: client_ec2_1.DescribeSecurityGroupReferencesCommand,
330
+ DescribeSecurityGroupRulesCommand: client_ec2_1.DescribeSecurityGroupRulesCommand,
331
+ DescribeSecurityGroupsCommand: client_ec2_1.DescribeSecurityGroupsCommand,
332
+ DescribeSnapshotAttributeCommand: client_ec2_1.DescribeSnapshotAttributeCommand,
333
+ DescribeSnapshotsCommand: client_ec2_1.DescribeSnapshotsCommand,
334
+ DescribeSnapshotTierStatusCommand: client_ec2_1.DescribeSnapshotTierStatusCommand,
335
+ DescribeSpotDatafeedSubscriptionCommand: client_ec2_1.DescribeSpotDatafeedSubscriptionCommand,
336
+ DescribeSpotFleetInstancesCommand: client_ec2_1.DescribeSpotFleetInstancesCommand,
337
+ DescribeSpotFleetRequestHistoryCommand: client_ec2_1.DescribeSpotFleetRequestHistoryCommand,
338
+ DescribeSpotFleetRequestsCommand: client_ec2_1.DescribeSpotFleetRequestsCommand,
339
+ DescribeSpotInstanceRequestsCommand: client_ec2_1.DescribeSpotInstanceRequestsCommand,
340
+ DescribeSpotPriceHistoryCommand: client_ec2_1.DescribeSpotPriceHistoryCommand,
341
+ DescribeStaleSecurityGroupsCommand: client_ec2_1.DescribeStaleSecurityGroupsCommand,
342
+ DescribeStoreImageTasksCommand: client_ec2_1.DescribeStoreImageTasksCommand,
343
+ DescribeSubnetsCommand: client_ec2_1.DescribeSubnetsCommand,
344
+ DescribeTagsCommand: client_ec2_1.DescribeTagsCommand,
345
+ DescribeTrafficMirrorFiltersCommand: client_ec2_1.DescribeTrafficMirrorFiltersCommand,
346
+ DescribeTrafficMirrorSessionsCommand: client_ec2_1.DescribeTrafficMirrorSessionsCommand,
347
+ DescribeTrafficMirrorTargetsCommand: client_ec2_1.DescribeTrafficMirrorTargetsCommand,
348
+ DescribeTransitGatewayAttachmentsCommand: client_ec2_1.DescribeTransitGatewayAttachmentsCommand,
349
+ DescribeTransitGatewayConnectPeersCommand: client_ec2_1.DescribeTransitGatewayConnectPeersCommand,
350
+ DescribeTransitGatewayConnectsCommand: client_ec2_1.DescribeTransitGatewayConnectsCommand,
351
+ DescribeTransitGatewayMulticastDomainsCommand: client_ec2_1.DescribeTransitGatewayMulticastDomainsCommand,
352
+ DescribeTransitGatewayPeeringAttachmentsCommand: client_ec2_1.DescribeTransitGatewayPeeringAttachmentsCommand,
353
+ DescribeTransitGatewayPolicyTablesCommand: client_ec2_1.DescribeTransitGatewayPolicyTablesCommand,
354
+ DescribeTransitGatewayRouteTableAnnouncementsCommand: client_ec2_1.DescribeTransitGatewayRouteTableAnnouncementsCommand,
355
+ DescribeTransitGatewayRouteTablesCommand: client_ec2_1.DescribeTransitGatewayRouteTablesCommand,
356
+ DescribeTransitGatewaysCommand: client_ec2_1.DescribeTransitGatewaysCommand,
357
+ DescribeTransitGatewayVpcAttachmentsCommand: client_ec2_1.DescribeTransitGatewayVpcAttachmentsCommand,
358
+ DescribeTrunkInterfaceAssociationsCommand: client_ec2_1.DescribeTrunkInterfaceAssociationsCommand,
359
+ DescribeVerifiedAccessEndpointsCommand: client_ec2_1.DescribeVerifiedAccessEndpointsCommand,
360
+ DescribeVerifiedAccessGroupsCommand: client_ec2_1.DescribeVerifiedAccessGroupsCommand,
361
+ DescribeVerifiedAccessInstanceLoggingConfigurationsCommand: client_ec2_1.DescribeVerifiedAccessInstanceLoggingConfigurationsCommand,
362
+ DescribeVerifiedAccessInstancesCommand: client_ec2_1.DescribeVerifiedAccessInstancesCommand,
363
+ DescribeVerifiedAccessTrustProvidersCommand: client_ec2_1.DescribeVerifiedAccessTrustProvidersCommand,
364
+ DescribeVolumeAttributeCommand: client_ec2_1.DescribeVolumeAttributeCommand,
365
+ DescribeVolumesCommand: client_ec2_1.DescribeVolumesCommand,
366
+ DescribeVolumesModificationsCommand: client_ec2_1.DescribeVolumesModificationsCommand,
367
+ DescribeVolumeStatusCommand: client_ec2_1.DescribeVolumeStatusCommand,
368
+ DescribeVpcAttributeCommand: client_ec2_1.DescribeVpcAttributeCommand,
369
+ DescribeVpcClassicLinkCommand: client_ec2_1.DescribeVpcClassicLinkCommand,
370
+ DescribeVpcClassicLinkDnsSupportCommand: client_ec2_1.DescribeVpcClassicLinkDnsSupportCommand,
371
+ DescribeVpcEndpointConnectionNotificationsCommand: client_ec2_1.DescribeVpcEndpointConnectionNotificationsCommand,
372
+ DescribeVpcEndpointConnectionsCommand: client_ec2_1.DescribeVpcEndpointConnectionsCommand,
373
+ DescribeVpcEndpointsCommand: client_ec2_1.DescribeVpcEndpointsCommand,
374
+ DescribeVpcEndpointServiceConfigurationsCommand: client_ec2_1.DescribeVpcEndpointServiceConfigurationsCommand,
375
+ DescribeVpcEndpointServicePermissionsCommand: client_ec2_1.DescribeVpcEndpointServicePermissionsCommand,
376
+ DescribeVpcEndpointServicesCommand: client_ec2_1.DescribeVpcEndpointServicesCommand,
377
+ DescribeVpcPeeringConnectionsCommand: client_ec2_1.DescribeVpcPeeringConnectionsCommand,
378
+ DescribeVpcsCommand: client_ec2_1.DescribeVpcsCommand,
379
+ DescribeVpnConnectionsCommand: client_ec2_1.DescribeVpnConnectionsCommand,
380
+ DescribeVpnGatewaysCommand: client_ec2_1.DescribeVpnGatewaysCommand,
381
+ DetachClassicLinkVpcCommand: client_ec2_1.DetachClassicLinkVpcCommand,
382
+ DetachInternetGatewayCommand: client_ec2_1.DetachInternetGatewayCommand,
383
+ DetachNetworkInterfaceCommand: client_ec2_1.DetachNetworkInterfaceCommand,
384
+ DetachVerifiedAccessTrustProviderCommand: client_ec2_1.DetachVerifiedAccessTrustProviderCommand,
385
+ DetachVolumeCommand: client_ec2_1.DetachVolumeCommand,
386
+ DetachVpnGatewayCommand: client_ec2_1.DetachVpnGatewayCommand,
387
+ DisableAddressTransferCommand: client_ec2_1.DisableAddressTransferCommand,
388
+ DisableAwsNetworkPerformanceMetricSubscriptionCommand: client_ec2_1.DisableAwsNetworkPerformanceMetricSubscriptionCommand,
389
+ DisableEbsEncryptionByDefaultCommand: client_ec2_1.DisableEbsEncryptionByDefaultCommand,
390
+ DisableFastLaunchCommand: client_ec2_1.DisableFastLaunchCommand,
391
+ DisableFastSnapshotRestoresCommand: client_ec2_1.DisableFastSnapshotRestoresCommand,
392
+ DisableImageCommand: client_ec2_1.DisableImageCommand,
393
+ DisableImageBlockPublicAccessCommand: client_ec2_1.DisableImageBlockPublicAccessCommand,
394
+ DisableImageDeprecationCommand: client_ec2_1.DisableImageDeprecationCommand,
395
+ DisableIpamOrganizationAdminAccountCommand: client_ec2_1.DisableIpamOrganizationAdminAccountCommand,
396
+ DisableSerialConsoleAccessCommand: client_ec2_1.DisableSerialConsoleAccessCommand,
397
+ DisableSnapshotBlockPublicAccessCommand: client_ec2_1.DisableSnapshotBlockPublicAccessCommand,
398
+ DisableTransitGatewayRouteTablePropagationCommand: client_ec2_1.DisableTransitGatewayRouteTablePropagationCommand,
399
+ DisableVgwRoutePropagationCommand: client_ec2_1.DisableVgwRoutePropagationCommand,
400
+ DisableVpcClassicLinkCommand: client_ec2_1.DisableVpcClassicLinkCommand,
401
+ DisableVpcClassicLinkDnsSupportCommand: client_ec2_1.DisableVpcClassicLinkDnsSupportCommand,
402
+ DisassociateAddressCommand: client_ec2_1.DisassociateAddressCommand,
403
+ DisassociateClientVpnTargetNetworkCommand: client_ec2_1.DisassociateClientVpnTargetNetworkCommand,
404
+ DisassociateEnclaveCertificateIamRoleCommand: client_ec2_1.DisassociateEnclaveCertificateIamRoleCommand,
405
+ DisassociateIamInstanceProfileCommand: client_ec2_1.DisassociateIamInstanceProfileCommand,
406
+ DisassociateInstanceEventWindowCommand: client_ec2_1.DisassociateInstanceEventWindowCommand,
407
+ DisassociateIpamByoasnCommand: client_ec2_1.DisassociateIpamByoasnCommand,
408
+ DisassociateIpamResourceDiscoveryCommand: client_ec2_1.DisassociateIpamResourceDiscoveryCommand,
409
+ DisassociateNatGatewayAddressCommand: client_ec2_1.DisassociateNatGatewayAddressCommand,
410
+ DisassociateRouteTableCommand: client_ec2_1.DisassociateRouteTableCommand,
411
+ DisassociateSubnetCidrBlockCommand: client_ec2_1.DisassociateSubnetCidrBlockCommand,
412
+ DisassociateTransitGatewayMulticastDomainCommand: client_ec2_1.DisassociateTransitGatewayMulticastDomainCommand,
413
+ DisassociateTransitGatewayPolicyTableCommand: client_ec2_1.DisassociateTransitGatewayPolicyTableCommand,
414
+ DisassociateTransitGatewayRouteTableCommand: client_ec2_1.DisassociateTransitGatewayRouteTableCommand,
415
+ DisassociateTrunkInterfaceCommand: client_ec2_1.DisassociateTrunkInterfaceCommand,
416
+ DisassociateVpcCidrBlockCommand: client_ec2_1.DisassociateVpcCidrBlockCommand,
417
+ EnableAddressTransferCommand: client_ec2_1.EnableAddressTransferCommand,
418
+ EnableAwsNetworkPerformanceMetricSubscriptionCommand: client_ec2_1.EnableAwsNetworkPerformanceMetricSubscriptionCommand,
419
+ EnableEbsEncryptionByDefaultCommand: client_ec2_1.EnableEbsEncryptionByDefaultCommand,
420
+ EnableFastLaunchCommand: client_ec2_1.EnableFastLaunchCommand,
421
+ EnableFastSnapshotRestoresCommand: client_ec2_1.EnableFastSnapshotRestoresCommand,
422
+ EnableImageCommand: client_ec2_1.EnableImageCommand,
423
+ EnableImageBlockPublicAccessCommand: client_ec2_1.EnableImageBlockPublicAccessCommand,
424
+ EnableImageDeprecationCommand: client_ec2_1.EnableImageDeprecationCommand,
425
+ EnableIpamOrganizationAdminAccountCommand: client_ec2_1.EnableIpamOrganizationAdminAccountCommand,
426
+ EnableReachabilityAnalyzerOrganizationSharingCommand: client_ec2_1.EnableReachabilityAnalyzerOrganizationSharingCommand,
427
+ EnableSerialConsoleAccessCommand: client_ec2_1.EnableSerialConsoleAccessCommand,
428
+ EnableSnapshotBlockPublicAccessCommand: client_ec2_1.EnableSnapshotBlockPublicAccessCommand,
429
+ EnableTransitGatewayRouteTablePropagationCommand: client_ec2_1.EnableTransitGatewayRouteTablePropagationCommand,
430
+ EnableVgwRoutePropagationCommand: client_ec2_1.EnableVgwRoutePropagationCommand,
431
+ EnableVolumeIOCommand: client_ec2_1.EnableVolumeIOCommand,
432
+ EnableVpcClassicLinkCommand: client_ec2_1.EnableVpcClassicLinkCommand,
433
+ EnableVpcClassicLinkDnsSupportCommand: client_ec2_1.EnableVpcClassicLinkDnsSupportCommand,
434
+ ExportClientVpnClientCertificateRevocationListCommand: client_ec2_1.ExportClientVpnClientCertificateRevocationListCommand,
435
+ ExportClientVpnClientConfigurationCommand: client_ec2_1.ExportClientVpnClientConfigurationCommand,
436
+ ExportImageCommand: client_ec2_1.ExportImageCommand,
437
+ ExportTransitGatewayRoutesCommand: client_ec2_1.ExportTransitGatewayRoutesCommand,
438
+ GetAssociatedEnclaveCertificateIamRolesCommand: client_ec2_1.GetAssociatedEnclaveCertificateIamRolesCommand,
439
+ GetAssociatedIpv6PoolCidrsCommand: client_ec2_1.GetAssociatedIpv6PoolCidrsCommand,
440
+ GetAwsNetworkPerformanceDataCommand: client_ec2_1.GetAwsNetworkPerformanceDataCommand,
441
+ GetCapacityReservationUsageCommand: client_ec2_1.GetCapacityReservationUsageCommand,
442
+ GetCoipPoolUsageCommand: client_ec2_1.GetCoipPoolUsageCommand,
443
+ GetConsoleOutputCommand: client_ec2_1.GetConsoleOutputCommand,
444
+ GetConsoleScreenshotCommand: client_ec2_1.GetConsoleScreenshotCommand,
445
+ GetDefaultCreditSpecificationCommand: client_ec2_1.GetDefaultCreditSpecificationCommand,
446
+ GetEbsDefaultKmsKeyIdCommand: client_ec2_1.GetEbsDefaultKmsKeyIdCommand,
447
+ GetEbsEncryptionByDefaultCommand: client_ec2_1.GetEbsEncryptionByDefaultCommand,
448
+ GetFlowLogsIntegrationTemplateCommand: client_ec2_1.GetFlowLogsIntegrationTemplateCommand,
449
+ GetGroupsForCapacityReservationCommand: client_ec2_1.GetGroupsForCapacityReservationCommand,
450
+ GetHostReservationPurchasePreviewCommand: client_ec2_1.GetHostReservationPurchasePreviewCommand,
451
+ GetImageBlockPublicAccessStateCommand: client_ec2_1.GetImageBlockPublicAccessStateCommand,
452
+ GetInstanceTypesFromInstanceRequirementsCommand: client_ec2_1.GetInstanceTypesFromInstanceRequirementsCommand,
453
+ GetInstanceUefiDataCommand: client_ec2_1.GetInstanceUefiDataCommand,
454
+ GetIpamAddressHistoryCommand: client_ec2_1.GetIpamAddressHistoryCommand,
455
+ GetIpamDiscoveredAccountsCommand: client_ec2_1.GetIpamDiscoveredAccountsCommand,
456
+ GetIpamDiscoveredPublicAddressesCommand: client_ec2_1.GetIpamDiscoveredPublicAddressesCommand,
457
+ GetIpamDiscoveredResourceCidrsCommand: client_ec2_1.GetIpamDiscoveredResourceCidrsCommand,
458
+ GetIpamPoolAllocationsCommand: client_ec2_1.GetIpamPoolAllocationsCommand,
459
+ GetIpamPoolCidrsCommand: client_ec2_1.GetIpamPoolCidrsCommand,
460
+ GetIpamResourceCidrsCommand: client_ec2_1.GetIpamResourceCidrsCommand,
461
+ GetLaunchTemplateDataCommand: client_ec2_1.GetLaunchTemplateDataCommand,
462
+ GetManagedPrefixListAssociationsCommand: client_ec2_1.GetManagedPrefixListAssociationsCommand,
463
+ GetManagedPrefixListEntriesCommand: client_ec2_1.GetManagedPrefixListEntriesCommand,
464
+ GetNetworkInsightsAccessScopeAnalysisFindingsCommand: client_ec2_1.GetNetworkInsightsAccessScopeAnalysisFindingsCommand,
465
+ GetNetworkInsightsAccessScopeContentCommand: client_ec2_1.GetNetworkInsightsAccessScopeContentCommand,
466
+ GetPasswordDataCommand: client_ec2_1.GetPasswordDataCommand,
467
+ GetReservedInstancesExchangeQuoteCommand: client_ec2_1.GetReservedInstancesExchangeQuoteCommand,
468
+ GetSecurityGroupsForVpcCommand: client_ec2_1.GetSecurityGroupsForVpcCommand,
469
+ GetSerialConsoleAccessStatusCommand: client_ec2_1.GetSerialConsoleAccessStatusCommand,
470
+ GetSnapshotBlockPublicAccessStateCommand: client_ec2_1.GetSnapshotBlockPublicAccessStateCommand,
471
+ GetSpotPlacementScoresCommand: client_ec2_1.GetSpotPlacementScoresCommand,
472
+ GetSubnetCidrReservationsCommand: client_ec2_1.GetSubnetCidrReservationsCommand,
473
+ GetTransitGatewayAttachmentPropagationsCommand: client_ec2_1.GetTransitGatewayAttachmentPropagationsCommand,
474
+ GetTransitGatewayMulticastDomainAssociationsCommand: client_ec2_1.GetTransitGatewayMulticastDomainAssociationsCommand,
475
+ GetTransitGatewayPolicyTableAssociationsCommand: client_ec2_1.GetTransitGatewayPolicyTableAssociationsCommand,
476
+ GetTransitGatewayPolicyTableEntriesCommand: client_ec2_1.GetTransitGatewayPolicyTableEntriesCommand,
477
+ GetTransitGatewayPrefixListReferencesCommand: client_ec2_1.GetTransitGatewayPrefixListReferencesCommand,
478
+ GetTransitGatewayRouteTableAssociationsCommand: client_ec2_1.GetTransitGatewayRouteTableAssociationsCommand,
479
+ GetTransitGatewayRouteTablePropagationsCommand: client_ec2_1.GetTransitGatewayRouteTablePropagationsCommand,
480
+ GetVerifiedAccessEndpointPolicyCommand: client_ec2_1.GetVerifiedAccessEndpointPolicyCommand,
481
+ GetVerifiedAccessGroupPolicyCommand: client_ec2_1.GetVerifiedAccessGroupPolicyCommand,
482
+ GetVpnConnectionDeviceSampleConfigurationCommand: client_ec2_1.GetVpnConnectionDeviceSampleConfigurationCommand,
483
+ GetVpnConnectionDeviceTypesCommand: client_ec2_1.GetVpnConnectionDeviceTypesCommand,
484
+ GetVpnTunnelReplacementStatusCommand: client_ec2_1.GetVpnTunnelReplacementStatusCommand,
485
+ ImportClientVpnClientCertificateRevocationListCommand: client_ec2_1.ImportClientVpnClientCertificateRevocationListCommand,
486
+ ImportImageCommand: client_ec2_1.ImportImageCommand,
487
+ ImportInstanceCommand: client_ec2_1.ImportInstanceCommand,
488
+ ImportKeyPairCommand: client_ec2_1.ImportKeyPairCommand,
489
+ ImportSnapshotCommand: client_ec2_1.ImportSnapshotCommand,
490
+ ImportVolumeCommand: client_ec2_1.ImportVolumeCommand,
491
+ ListImagesInRecycleBinCommand: client_ec2_1.ListImagesInRecycleBinCommand,
492
+ ListSnapshotsInRecycleBinCommand: client_ec2_1.ListSnapshotsInRecycleBinCommand,
493
+ LockSnapshotCommand: client_ec2_1.LockSnapshotCommand,
494
+ ModifyAddressAttributeCommand: client_ec2_1.ModifyAddressAttributeCommand,
495
+ ModifyAvailabilityZoneGroupCommand: client_ec2_1.ModifyAvailabilityZoneGroupCommand,
496
+ ModifyCapacityReservationCommand: client_ec2_1.ModifyCapacityReservationCommand,
497
+ ModifyCapacityReservationFleetCommand: client_ec2_1.ModifyCapacityReservationFleetCommand,
498
+ ModifyClientVpnEndpointCommand: client_ec2_1.ModifyClientVpnEndpointCommand,
499
+ ModifyDefaultCreditSpecificationCommand: client_ec2_1.ModifyDefaultCreditSpecificationCommand,
500
+ ModifyEbsDefaultKmsKeyIdCommand: client_ec2_1.ModifyEbsDefaultKmsKeyIdCommand,
501
+ ModifyFleetCommand: client_ec2_1.ModifyFleetCommand,
502
+ ModifyFpgaImageAttributeCommand: client_ec2_1.ModifyFpgaImageAttributeCommand,
503
+ ModifyHostsCommand: client_ec2_1.ModifyHostsCommand,
504
+ ModifyIdentityIdFormatCommand: client_ec2_1.ModifyIdentityIdFormatCommand,
505
+ ModifyIdFormatCommand: client_ec2_1.ModifyIdFormatCommand,
506
+ ModifyImageAttributeCommand: client_ec2_1.ModifyImageAttributeCommand,
507
+ ModifyInstanceAttributeCommand: client_ec2_1.ModifyInstanceAttributeCommand,
508
+ ModifyInstanceCapacityReservationAttributesCommand: client_ec2_1.ModifyInstanceCapacityReservationAttributesCommand,
509
+ ModifyInstanceCreditSpecificationCommand: client_ec2_1.ModifyInstanceCreditSpecificationCommand,
510
+ ModifyInstanceEventStartTimeCommand: client_ec2_1.ModifyInstanceEventStartTimeCommand,
511
+ ModifyInstanceEventWindowCommand: client_ec2_1.ModifyInstanceEventWindowCommand,
512
+ ModifyInstanceMaintenanceOptionsCommand: client_ec2_1.ModifyInstanceMaintenanceOptionsCommand,
513
+ ModifyInstanceMetadataOptionsCommand: client_ec2_1.ModifyInstanceMetadataOptionsCommand,
514
+ ModifyInstancePlacementCommand: client_ec2_1.ModifyInstancePlacementCommand,
515
+ ModifyIpamCommand: client_ec2_1.ModifyIpamCommand,
516
+ ModifyIpamPoolCommand: client_ec2_1.ModifyIpamPoolCommand,
517
+ ModifyIpamResourceCidrCommand: client_ec2_1.ModifyIpamResourceCidrCommand,
518
+ ModifyIpamResourceDiscoveryCommand: client_ec2_1.ModifyIpamResourceDiscoveryCommand,
519
+ ModifyIpamScopeCommand: client_ec2_1.ModifyIpamScopeCommand,
520
+ ModifyLaunchTemplateCommand: client_ec2_1.ModifyLaunchTemplateCommand,
521
+ ModifyLocalGatewayRouteCommand: client_ec2_1.ModifyLocalGatewayRouteCommand,
522
+ ModifyManagedPrefixListCommand: client_ec2_1.ModifyManagedPrefixListCommand,
523
+ ModifyNetworkInterfaceAttributeCommand: client_ec2_1.ModifyNetworkInterfaceAttributeCommand,
524
+ ModifyPrivateDnsNameOptionsCommand: client_ec2_1.ModifyPrivateDnsNameOptionsCommand,
525
+ ModifyReservedInstancesCommand: client_ec2_1.ModifyReservedInstancesCommand,
526
+ ModifySecurityGroupRulesCommand: client_ec2_1.ModifySecurityGroupRulesCommand,
527
+ ModifySnapshotAttributeCommand: client_ec2_1.ModifySnapshotAttributeCommand,
528
+ ModifySnapshotTierCommand: client_ec2_1.ModifySnapshotTierCommand,
529
+ ModifySpotFleetRequestCommand: client_ec2_1.ModifySpotFleetRequestCommand,
530
+ ModifySubnetAttributeCommand: client_ec2_1.ModifySubnetAttributeCommand,
531
+ ModifyTrafficMirrorFilterNetworkServicesCommand: client_ec2_1.ModifyTrafficMirrorFilterNetworkServicesCommand,
532
+ ModifyTrafficMirrorFilterRuleCommand: client_ec2_1.ModifyTrafficMirrorFilterRuleCommand,
533
+ ModifyTrafficMirrorSessionCommand: client_ec2_1.ModifyTrafficMirrorSessionCommand,
534
+ ModifyTransitGatewayCommand: client_ec2_1.ModifyTransitGatewayCommand,
535
+ ModifyTransitGatewayPrefixListReferenceCommand: client_ec2_1.ModifyTransitGatewayPrefixListReferenceCommand,
536
+ ModifyTransitGatewayVpcAttachmentCommand: client_ec2_1.ModifyTransitGatewayVpcAttachmentCommand,
537
+ ModifyVerifiedAccessEndpointCommand: client_ec2_1.ModifyVerifiedAccessEndpointCommand,
538
+ ModifyVerifiedAccessEndpointPolicyCommand: client_ec2_1.ModifyVerifiedAccessEndpointPolicyCommand,
539
+ ModifyVerifiedAccessGroupCommand: client_ec2_1.ModifyVerifiedAccessGroupCommand,
540
+ ModifyVerifiedAccessGroupPolicyCommand: client_ec2_1.ModifyVerifiedAccessGroupPolicyCommand,
541
+ ModifyVerifiedAccessInstanceCommand: client_ec2_1.ModifyVerifiedAccessInstanceCommand,
542
+ ModifyVerifiedAccessInstanceLoggingConfigurationCommand: client_ec2_1.ModifyVerifiedAccessInstanceLoggingConfigurationCommand,
543
+ ModifyVerifiedAccessTrustProviderCommand: client_ec2_1.ModifyVerifiedAccessTrustProviderCommand,
544
+ ModifyVolumeCommand: client_ec2_1.ModifyVolumeCommand,
545
+ ModifyVolumeAttributeCommand: client_ec2_1.ModifyVolumeAttributeCommand,
546
+ ModifyVpcAttributeCommand: client_ec2_1.ModifyVpcAttributeCommand,
547
+ ModifyVpcEndpointCommand: client_ec2_1.ModifyVpcEndpointCommand,
548
+ ModifyVpcEndpointConnectionNotificationCommand: client_ec2_1.ModifyVpcEndpointConnectionNotificationCommand,
549
+ ModifyVpcEndpointServiceConfigurationCommand: client_ec2_1.ModifyVpcEndpointServiceConfigurationCommand,
550
+ ModifyVpcEndpointServicePayerResponsibilityCommand: client_ec2_1.ModifyVpcEndpointServicePayerResponsibilityCommand,
551
+ ModifyVpcEndpointServicePermissionsCommand: client_ec2_1.ModifyVpcEndpointServicePermissionsCommand,
552
+ ModifyVpcPeeringConnectionOptionsCommand: client_ec2_1.ModifyVpcPeeringConnectionOptionsCommand,
553
+ ModifyVpcTenancyCommand: client_ec2_1.ModifyVpcTenancyCommand,
554
+ ModifyVpnConnectionCommand: client_ec2_1.ModifyVpnConnectionCommand,
555
+ ModifyVpnConnectionOptionsCommand: client_ec2_1.ModifyVpnConnectionOptionsCommand,
556
+ ModifyVpnTunnelCertificateCommand: client_ec2_1.ModifyVpnTunnelCertificateCommand,
557
+ ModifyVpnTunnelOptionsCommand: client_ec2_1.ModifyVpnTunnelOptionsCommand,
558
+ MonitorInstancesCommand: client_ec2_1.MonitorInstancesCommand,
559
+ MoveAddressToVpcCommand: client_ec2_1.MoveAddressToVpcCommand,
560
+ MoveByoipCidrToIpamCommand: client_ec2_1.MoveByoipCidrToIpamCommand,
561
+ ProvisionByoipCidrCommand: client_ec2_1.ProvisionByoipCidrCommand,
562
+ ProvisionIpamByoasnCommand: client_ec2_1.ProvisionIpamByoasnCommand,
563
+ ProvisionIpamPoolCidrCommand: client_ec2_1.ProvisionIpamPoolCidrCommand,
564
+ ProvisionPublicIpv4PoolCidrCommand: client_ec2_1.ProvisionPublicIpv4PoolCidrCommand,
565
+ PurchaseCapacityBlockCommand: client_ec2_1.PurchaseCapacityBlockCommand,
566
+ PurchaseHostReservationCommand: client_ec2_1.PurchaseHostReservationCommand,
567
+ PurchaseReservedInstancesOfferingCommand: client_ec2_1.PurchaseReservedInstancesOfferingCommand,
568
+ PurchaseScheduledInstancesCommand: client_ec2_1.PurchaseScheduledInstancesCommand,
569
+ RebootInstancesCommand: client_ec2_1.RebootInstancesCommand,
570
+ RegisterImageCommand: client_ec2_1.RegisterImageCommand,
571
+ RegisterInstanceEventNotificationAttributesCommand: client_ec2_1.RegisterInstanceEventNotificationAttributesCommand,
572
+ RegisterTransitGatewayMulticastGroupMembersCommand: client_ec2_1.RegisterTransitGatewayMulticastGroupMembersCommand,
573
+ RegisterTransitGatewayMulticastGroupSourcesCommand: client_ec2_1.RegisterTransitGatewayMulticastGroupSourcesCommand,
574
+ RejectTransitGatewayMulticastDomainAssociationsCommand: client_ec2_1.RejectTransitGatewayMulticastDomainAssociationsCommand,
575
+ RejectTransitGatewayPeeringAttachmentCommand: client_ec2_1.RejectTransitGatewayPeeringAttachmentCommand,
576
+ RejectTransitGatewayVpcAttachmentCommand: client_ec2_1.RejectTransitGatewayVpcAttachmentCommand,
577
+ RejectVpcEndpointConnectionsCommand: client_ec2_1.RejectVpcEndpointConnectionsCommand,
578
+ RejectVpcPeeringConnectionCommand: client_ec2_1.RejectVpcPeeringConnectionCommand,
579
+ ReleaseAddressCommand: client_ec2_1.ReleaseAddressCommand,
580
+ ReleaseHostsCommand: client_ec2_1.ReleaseHostsCommand,
581
+ ReleaseIpamPoolAllocationCommand: client_ec2_1.ReleaseIpamPoolAllocationCommand,
582
+ ReplaceIamInstanceProfileAssociationCommand: client_ec2_1.ReplaceIamInstanceProfileAssociationCommand,
583
+ ReplaceNetworkAclAssociationCommand: client_ec2_1.ReplaceNetworkAclAssociationCommand,
584
+ ReplaceNetworkAclEntryCommand: client_ec2_1.ReplaceNetworkAclEntryCommand,
585
+ ReplaceRouteCommand: client_ec2_1.ReplaceRouteCommand,
586
+ ReplaceRouteTableAssociationCommand: client_ec2_1.ReplaceRouteTableAssociationCommand,
587
+ ReplaceTransitGatewayRouteCommand: client_ec2_1.ReplaceTransitGatewayRouteCommand,
588
+ ReplaceVpnTunnelCommand: client_ec2_1.ReplaceVpnTunnelCommand,
589
+ ReportInstanceStatusCommand: client_ec2_1.ReportInstanceStatusCommand,
590
+ RequestSpotFleetCommand: client_ec2_1.RequestSpotFleetCommand,
591
+ RequestSpotInstancesCommand: client_ec2_1.RequestSpotInstancesCommand,
592
+ ResetAddressAttributeCommand: client_ec2_1.ResetAddressAttributeCommand,
593
+ ResetEbsDefaultKmsKeyIdCommand: client_ec2_1.ResetEbsDefaultKmsKeyIdCommand,
594
+ ResetFpgaImageAttributeCommand: client_ec2_1.ResetFpgaImageAttributeCommand,
595
+ ResetImageAttributeCommand: client_ec2_1.ResetImageAttributeCommand,
596
+ ResetInstanceAttributeCommand: client_ec2_1.ResetInstanceAttributeCommand,
597
+ ResetNetworkInterfaceAttributeCommand: client_ec2_1.ResetNetworkInterfaceAttributeCommand,
598
+ ResetSnapshotAttributeCommand: client_ec2_1.ResetSnapshotAttributeCommand,
599
+ RestoreAddressToClassicCommand: client_ec2_1.RestoreAddressToClassicCommand,
600
+ RestoreImageFromRecycleBinCommand: client_ec2_1.RestoreImageFromRecycleBinCommand,
601
+ RestoreManagedPrefixListVersionCommand: client_ec2_1.RestoreManagedPrefixListVersionCommand,
602
+ RestoreSnapshotFromRecycleBinCommand: client_ec2_1.RestoreSnapshotFromRecycleBinCommand,
603
+ RestoreSnapshotTierCommand: client_ec2_1.RestoreSnapshotTierCommand,
604
+ RevokeClientVpnIngressCommand: client_ec2_1.RevokeClientVpnIngressCommand,
605
+ RevokeSecurityGroupEgressCommand: client_ec2_1.RevokeSecurityGroupEgressCommand,
606
+ RevokeSecurityGroupIngressCommand: client_ec2_1.RevokeSecurityGroupIngressCommand,
607
+ RunInstancesCommand: client_ec2_1.RunInstancesCommand,
608
+ RunScheduledInstancesCommand: client_ec2_1.RunScheduledInstancesCommand,
609
+ SearchLocalGatewayRoutesCommand: client_ec2_1.SearchLocalGatewayRoutesCommand,
610
+ SearchTransitGatewayMulticastGroupsCommand: client_ec2_1.SearchTransitGatewayMulticastGroupsCommand,
611
+ SearchTransitGatewayRoutesCommand: client_ec2_1.SearchTransitGatewayRoutesCommand,
612
+ SendDiagnosticInterruptCommand: client_ec2_1.SendDiagnosticInterruptCommand,
613
+ StartInstancesCommand: client_ec2_1.StartInstancesCommand,
614
+ StartNetworkInsightsAccessScopeAnalysisCommand: client_ec2_1.StartNetworkInsightsAccessScopeAnalysisCommand,
615
+ StartNetworkInsightsAnalysisCommand: client_ec2_1.StartNetworkInsightsAnalysisCommand,
616
+ StartVpcEndpointServicePrivateDnsVerificationCommand: client_ec2_1.StartVpcEndpointServicePrivateDnsVerificationCommand,
617
+ StopInstancesCommand: client_ec2_1.StopInstancesCommand,
618
+ TerminateClientVpnConnectionsCommand: client_ec2_1.TerminateClientVpnConnectionsCommand,
619
+ TerminateInstancesCommand: client_ec2_1.TerminateInstancesCommand,
620
+ UnassignIpv6AddressesCommand: client_ec2_1.UnassignIpv6AddressesCommand,
621
+ UnassignPrivateIpAddressesCommand: client_ec2_1.UnassignPrivateIpAddressesCommand,
622
+ UnassignPrivateNatGatewayAddressCommand: client_ec2_1.UnassignPrivateNatGatewayAddressCommand,
623
+ UnlockSnapshotCommand: client_ec2_1.UnlockSnapshotCommand,
624
+ UnmonitorInstancesCommand: client_ec2_1.UnmonitorInstancesCommand,
625
+ UpdateSecurityGroupRuleDescriptionsEgressCommand: client_ec2_1.UpdateSecurityGroupRuleDescriptionsEgressCommand,
626
+ UpdateSecurityGroupRuleDescriptionsIngressCommand: client_ec2_1.UpdateSecurityGroupRuleDescriptionsIngressCommand,
627
+ WithdrawByoipCidrCommand: client_ec2_1.WithdrawByoipCidrCommand,
628
+ };
629
+ /**
630
+ * @since 1.0.0
631
+ * @category tags
632
+ */
633
+ exports.EC2Service = effect_1.Context.GenericTag("@effect-aws/client-ec2/EC2Service");
634
+ /**
635
+ * @since 1.0.0
636
+ * @category constructors
637
+ */
638
+ exports.makeEC2Service = effect_1.Effect.gen(function* (_) {
639
+ const client = yield* _(EC2ClientInstance_1.EC2ClientInstance);
640
+ return effect_1.ReadonlyRecord.toEntries(commands).reduce((acc, [command]) => {
641
+ const CommandCtor = commands[command];
642
+ const methodImpl = (args, options) => effect_1.Effect.tryPromise({
643
+ try: () => client.send(new CommandCtor(args), options !== null && options !== void 0 ? options : {}),
644
+ catch: (e) => {
645
+ if (e instanceof client_ec2_1.EC2ServiceException) {
646
+ const ServiceException = effect_1.Data.tagged(e.name);
647
+ return ServiceException({
648
+ ...e,
649
+ message: e.message,
650
+ stack: e.stack,
651
+ });
652
+ }
653
+ if (e instanceof Error) {
654
+ return (0, Errors_1.SdkError)({
655
+ ...e,
656
+ name: "SdkError",
657
+ message: e.message,
658
+ stack: e.stack,
659
+ });
660
+ }
661
+ throw e;
662
+ },
663
+ });
664
+ const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, "");
665
+ return { ...acc, [methodName]: methodImpl };
666
+ }, {});
667
+ });
668
+ /**
669
+ * @since 1.0.0
670
+ * @category layers
671
+ */
672
+ exports.BaseEC2ServiceLayer = effect_1.Layer.effect(exports.EC2Service, exports.makeEC2Service);
673
+ /**
674
+ * @since 1.0.0
675
+ * @category layers
676
+ */
677
+ exports.EC2ServiceLayer = exports.BaseEC2ServiceLayer.pipe(effect_1.Layer.provide(EC2ClientInstance_1.EC2ClientInstanceLayer));
678
+ /**
679
+ * @since 1.0.0
680
+ * @category layers
681
+ */
682
+ exports.DefaultEC2ServiceLayer = exports.EC2ServiceLayer.pipe(effect_1.Layer.provide(EC2ClientInstanceConfig_1.DefaultEC2ClientConfigLayer));
683
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRUMyU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9FQzJTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOztHQUVHO0FBQ0gsb0RBdXpENkI7QUFFN0IsbUNBQXNFO0FBQ3RFLDJEQUFnRjtBQUNoRix1RUFBd0U7QUFDeEUscUNBQXNFO0FBRXRFLE1BQU0sUUFBUSxHQUFHO0lBQ2YsNEJBQTRCLEVBQTVCLHlDQUE0QjtJQUM1QiwyQ0FBMkMsRUFBM0Msd0RBQTJDO0lBQzNDLHNEQUFzRCxFQUF0RCxtRUFBc0Q7SUFDdEQsNENBQTRDLEVBQTVDLHlEQUE0QztJQUM1Qyx3Q0FBd0MsRUFBeEMscURBQXdDO0lBQ3hDLG1DQUFtQyxFQUFuQyxnREFBbUM7SUFDbkMsaUNBQWlDLEVBQWpDLDhDQUFpQztJQUNqQyx5QkFBeUIsRUFBekIsc0NBQXlCO0lBQ3pCLHNCQUFzQixFQUF0QixtQ0FBc0I7SUFDdEIsb0JBQW9CLEVBQXBCLGlDQUFvQjtJQUNwQiwyQkFBMkIsRUFBM0Isd0NBQTJCO0lBQzNCLGtEQUFrRCxFQUFsRCwrREFBa0Q7SUFDbEQsMEJBQTBCLEVBQTFCLHVDQUEwQjtJQUMxQiwrQkFBK0IsRUFBL0IsNENBQStCO0lBQy9CLHFDQUFxQyxFQUFyQyxrREFBcUM7SUFDckMsdUJBQXVCLEVBQXZCLG9DQUF1QjtJQUN2QixzQ0FBc0MsRUFBdEMsbURBQXNDO0lBQ3RDLDJCQUEyQixFQUEzQix3Q0FBMkI7SUFDM0IseUNBQXlDLEVBQXpDLHNEQUF5QztJQUN6QyxrQ0FBa0MsRUFBbEMsK0NBQWtDO0lBQ2xDLG1DQUFtQyxFQUFuQyxnREFBbUM7SUFDbkMsMEJBQTBCLEVBQTFCLHVDQUEwQjtJQUMxQixxQ0FBcUMsRUFBckMsa0RBQXFDO0lBQ3JDLGlDQUFpQyxFQUFqQyw4Q0FBaUM7SUFDakMsMEJBQTBCLEVBQTFCLHVDQUEwQjtJQUMxQiwrQkFBK0IsRUFBL0IsNENBQStCO0lBQy9CLDZDQUE2QyxF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d0JBQ0osSUFBSSxFQUFFLFVBQVU7d0JBQ2hCLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTzt3QkFDbEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO3FCQUNmLENBQUMsQ0FBQztpQkFDSjtnQkFDRCxNQUFNLENBQUMsQ0FBQztZQUNWLENBQUM7U0FDRixDQUFDLENBQUM7UUFDTCxNQUFNLFVBQVUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUN0RSxVQUFVLEVBQ1YsRUFBRSxDQUNILENBQUM7UUFDRixPQUFPLEVBQUUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUM5QyxDQUFDLEVBQUUsRUFBRSxDQUFlLENBQUM7QUFDdkIsQ0FBQyxDQUFDLENBQUM7QUFFSDs7O0dBR0c7QUFDVSxRQUFBLG1CQUFtQixHQUFHLGNBQUssQ0FBQyxNQUFNLENBQUMsa0JBQVUsRUFBRSxzQkFBYyxDQUFDLENBQUM7QUFFNUU7OztHQUdHO0FBQ1UsUUFBQSxlQUFlLEdBQUcsMkJBQW1CLENBQUMsSUFBSSxDQUNyRCxjQUFLLENBQUMsT0FBTyxDQUFDLDBDQUFzQixDQUFDLENBQ3RDLENBQUM7QUFFRjs7O0dBR0c7QUFDVSxRQUFBLHNCQUFzQixHQUFHLHVCQUFlLENBQUMsSUFBSSxDQUN4RCxjQUFLLENBQUMsT0FBTyxDQUFDLHFEQUEyQixDQUFDLENBQzNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQge1xuICBFQzJTZXJ2aWNlRXhjZXB0aW9uLFxuICBBY2NlcHRBZGRyZXNzVHJhbnNmZXJDb21tYW5kLFxuICB0eXBlIEFjY2VwdEFkZHJlc3NUcmFuc2ZlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBBY2NlcHRBZGRyZXNzVHJhbnNmZXJDb21tYW5kT3V0cHV0LFxuICBBY2NlcHRSZXNlcnZlZEluc3RhbmNlc0V4Y2hhbmdlUXVvdGVDb21tYW5kLFxuICB0eXBlIEFjY2VwdFJlc2VydmVkSW5zdGFuY2VzRXhjaGFuZ2VRdW90ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBBY2NlcHRSZXNlcnZlZEluc3RhbmNlc0V4Y2hhbmdlUXVvdGVDb21tYW5kT3V0cHV0LFxuICBBY2NlcHRUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkFzc29jaWF0aW9uc0NvbW1hbmQsXG4gIHR5cGUgQWNjZXB0VHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Bc3NvY2lhdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgQWNjZXB0VHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Bc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBBY2NlcHRUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZCxcbiAgdHlwZSBBY2NlcHRUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZElucHV0LFxuICB0eXBlIEFjY2VwdFRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICBBY2NlcHRUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kLFxuICB0eXBlIEFjY2VwdFRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudENvbW1hbmRJbnB1dCxcbiAgdHlwZSBBY2NlcHRUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICBBY2NlcHRWcGNFbmRwb2ludENvbm5lY3Rpb25zQ29tbWFuZCxcbiAgdHlwZSBBY2NlcHRWcGNFbmRwb2ludENvbm5lY3Rpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIEFjY2VwdFZwY0VuZHBvaW50Q29ubmVjdGlvbnNDb21tYW5kT3V0cHV0LFxuICBBY2NlcHRWcGNQZWVyaW5nQ29ubmVjdGlvbkNvbW1hbmQsXG4gIHR5cGUgQWNjZXB0VnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgQWNjZXB0VnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kT3V0cHV0LFxuICBBZHZlcnRpc2VCeW9pcENpZHJDb21tYW5kLFxuICB0eXBlIEFkdmVydGlzZUJ5b2lwQ2lkckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBBZHZlcnRpc2VCeW9pcENpZHJDb21tYW5kT3V0cHV0LFxuICBBbGxvY2F0ZUFkZHJlc3NDb21tYW5kLFxuICB0eXBlIEFsbG9jYXRlQWRkcmVzc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBBbGxvY2F0ZUFkZHJlc3NDb21tYW5kT3V0cHV0LFxuICBBbGxvY2F0ZUhvc3RzQ29tbWFuZCxcbiAgdHlwZSBBbGxvY2F0ZUhvc3RzQ29tbWFuZElucHV0LFxuICB0eXBlIEFsbG9jYXRlSG9zdHNDb21tYW5kT3V0cHV0LFxuICBBbGxvY2F0ZUlwYW1Qb29sQ2lkckNvbW1hbmQsXG4gIHR5cGUgQWxsb2NhdGVJcGFtUG9vbENpZHJDb21tYW5kSW5wdXQsXG4gIHR5cGUgQWxsb2NhdGVJcGFtUG9vbENpZHJDb21tYW5kT3V0cHV0LFxuICBBcHBseVNlY3VyaXR5R3JvdXBzVG9DbGllbnRWcG5UYXJnZXROZXR3b3JrQ29tbWFuZCxcbiAgdHlwZSBBcHBseVNlY3VyaXR5R3JvdXBzVG9DbGllbnRWcG5UYXJnZXROZXR3b3JrQ29tbWFuZElucHV0LFxuICB0eXBlIEFwcGx5U2VjdXJpdHlHcm91cHNUb0NsaWVudFZwblRhcmdldE5ldHdvcmtDb21tYW5kT3V0cHV0LFxuICBBc3NpZ25JcHY2QWRkcmVzc2VzQ29tbWFuZCxcbiAgdHlwZSBBc3NpZ25JcHY2QWRkcmVzc2VzQ29tbWFuZElucHV0LFxuICB0eXBlIEFzc2lnbklwdjZBZGRyZXNzZXNDb21tYW5kT3V0cHV0LFxuICBBc3NpZ25Qcml2YXRlSXBBZGRyZXNzZXNDb21tYW5kLFxuICB0eXBlIEFzc2lnblByaXZhdGVJcEFkZHJlc3Nlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBBc3NpZ25Qcml2YXRlSXBBZGRyZXNzZXNDb21tYW5kT3V0cHV0LFxuICBBc3NpZ25Qcml2YXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kLFxuICB0eXBlIEFzc2lnblByaXZhdGVOYXRHYXRld2F5QWRkcmVzc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBBc3NpZ25Qcml2YXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVBZGRyZXNzQ29tbWFuZCxcbiAgdHlwZSBBc3NvY2lhdGVBZGRyZXNzQ29tbWFuZElucHV0LFxuICB0eXBlIEFzc29jaWF0ZUFkZHJlc3NDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVDbGllbnRWcG5UYXJnZXROZXR3b3JrQ29tbWFuZCxcbiAgdHlwZSBBc3NvY2lhdGVDbGllbnRWcG5UYXJnZXROZXR3b3JrQ29tbWFuZElucHV0LFxuICB0eXBlIEFzc29jaWF0ZUNsaWVudFZwblRhcmdldE5ldHdvcmtDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVEaGNwT3B0aW9uc0NvbW1hbmQsXG4gIHR5cGUgQXNzb2NpYXRlRGhjcE9wdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgQXNzb2NpYXRlRGhjcE9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlQ29tbWFuZCxcbiAgdHlwZSBBc3NvY2lhdGVFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlQ29tbWFuZElucHV0LFxuICB0eXBlIEFzc29jaWF0ZUVuY2xhdmVDZXJ0aWZpY2F0ZUlhbVJvbGVDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVJYW1JbnN0YW5jZVByb2ZpbGVDb21tYW5kLFxuICB0eXBlIEFzc29jaWF0ZUlhbUluc3RhbmNlUHJvZmlsZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBBc3NvY2lhdGVJYW1JbnN0YW5jZVByb2ZpbGVDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZCxcbiAgdHlwZSBBc3NvY2lhdGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZElucHV0LFxuICB0eXBlIEFzc29jaWF0ZUluc3RhbmNlRXZlbnRXaW5kb3dDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVJcGFtQnlvYXNuQ29tbWFuZCxcbiAgdHlwZSBBc3NvY2lhdGVJcGFtQnlvYXNuQ29tbWFuZElucHV0LFxuICB0eXBlIEFzc29jaWF0ZUlwYW1CeW9hc25Db21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kLFxuICB0eXBlIEFzc29jaWF0ZUlwYW1SZXNvdXJjZURpc2NvdmVyeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBBc3NvY2lhdGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVOYXRHYXRld2F5QWRkcmVzc0NvbW1hbmQsXG4gIHR5cGUgQXNzb2NpYXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgQXNzb2NpYXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVSb3V0ZVRhYmxlQ29tbWFuZCxcbiAgdHlwZSBBc3NvY2lhdGVSb3V0ZVRhYmxlQ29tbWFuZElucHV0LFxuICB0eXBlIEFzc29jaWF0ZVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVTdWJuZXRDaWRyQmxvY2tDb21tYW5kLFxuICB0eXBlIEFzc29jaWF0ZVN1Ym5ldENpZHJCbG9ja0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBBc3NvY2lhdGVTdWJuZXRDaWRyQmxvY2tDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkNvbW1hbmQsXG4gIHR5cGUgQXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kSW5wdXQsXG4gIHR5cGUgQXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZCxcbiAgdHlwZSBBc3NvY2lhdGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZElucHV0LFxuICB0eXBlIEFzc29jaWF0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kLFxuICB0eXBlIEFzc29jaWF0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBBc3NvY2lhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVUcnVua0ludGVyZmFjZUNvbW1hbmQsXG4gIHR5cGUgQXNzb2NpYXRlVHJ1bmtJbnRlcmZhY2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgQXNzb2NpYXRlVHJ1bmtJbnRlcmZhY2VDb21tYW5kT3V0cHV0LFxuICBBc3NvY2lhdGVWcGNDaWRyQmxvY2tDb21tYW5kLFxuICB0eXBlIEFzc29jaWF0ZVZwY0NpZHJCbG9ja0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBBc3NvY2lhdGVWcGNDaWRyQmxvY2tDb21tYW5kT3V0cHV0LFxuICBBdHRhY2hDbGFzc2ljTGlua1ZwY0NvbW1hbmQsXG4gIHR5cGUgQXR0YWNoQ2xhc3NpY0xpbmtWcGNDb21tYW5kSW5wdXQsXG4gIHR5cGUgQXR0YWNoQ2xhc3NpY0xpbmtWcGNDb21tYW5kT3V0cHV0LFxuICBBdHRhY2hJbnRlcm5ldEdhdGV3YXlDb21tYW5kLFxuICB0eXBlIEF0dGFjaEludGVybmV0R2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBBdHRhY2hJbnRlcm5ldEdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBBdHRhY2hOZXR3b3JrSW50ZXJmYWNlQ29tbWFuZCxcbiAgdHlwZSBBdHRhY2hOZXR3b3JrSW50ZXJmYWNlQ29tbWFuZElucHV0LFxuICB0eXBlIEF0dGFjaE5ldHdvcmtJbnRlcmZhY2VDb21tYW5kT3V0cHV0LFxuICBBdHRhY2hWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kLFxuICB0eXBlIEF0dGFjaFZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBBdHRhY2hWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kT3V0cHV0LFxuICBBdHRhY2hWb2x1bWVDb21tYW5kLFxuICB0eXBlIEF0dGFjaFZvbHVtZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBBdHRhY2hWb2x1bWVDb21tYW5kT3V0cHV0LFxuICBBdHRhY2hWcG5HYXRld2F5Q29tbWFuZCxcbiAgdHlwZSBBdHRhY2hWcG5HYXRld2F5Q29tbWFuZElucHV0LFxuICB0eXBlIEF0dGFjaFZwbkdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBBdXRob3JpemVDbGllbnRWcG5JbmdyZXNzQ29tbWFuZCxcbiAgdHlwZSBBdXRob3JpemVDbGllbnRWcG5JbmdyZXNzQ29tbWFuZElucHV0LFxuICB0eXBlIEF1dGhvcml6ZUNsaWVudFZwbkluZ3Jlc3NDb21tYW5kT3V0cHV0LFxuICBBdXRob3JpemVTZWN1cml0eUdyb3VwRWdyZXNzQ29tbWFuZCxcbiAgdHlwZSBBdXRob3JpemVTZWN1cml0eUdyb3VwRWdyZXNzQ29tbWFuZElucHV0LFxuICB0eXBlIEF1dGhvcml6ZVNlY3VyaXR5R3JvdXBFZ3Jlc3NDb21tYW5kT3V0cHV0LFxuICBBdXRob3JpemVTZWN1cml0eUdyb3VwSW5ncmVzc0NvbW1hbmQsXG4gIHR5cGUgQXV0aG9yaXplU2VjdXJpdHlHcm91cEluZ3Jlc3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgQXV0aG9yaXplU2VjdXJpdHlHcm91cEluZ3Jlc3NDb21tYW5kT3V0cHV0LFxuICBCdW5kbGVJbnN0YW5jZUNvbW1hbmQsXG4gIHR5cGUgQnVuZGxlSW5zdGFuY2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgQnVuZGxlSW5zdGFuY2VDb21tYW5kT3V0cHV0LFxuICBDYW5jZWxCdW5kbGVUYXNrQ29tbWFuZCxcbiAgdHlwZSBDYW5jZWxCdW5kbGVUYXNrQ29tbWFuZElucHV0LFxuICB0eXBlIENhbmNlbEJ1bmRsZVRhc2tDb21tYW5kT3V0cHV0LFxuICBDYW5jZWxDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBDYW5jZWxDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIENhbmNlbENhcGFjaXR5UmVzZXJ2YXRpb25Db21tYW5kT3V0cHV0LFxuICBDYW5jZWxDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRzQ29tbWFuZCxcbiAgdHlwZSBDYW5jZWxDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRzQ29tbWFuZElucHV0LFxuICB0eXBlIENhbmNlbENhcGFjaXR5UmVzZXJ2YXRpb25GbGVldHNDb21tYW5kT3V0cHV0LFxuICBDYW5jZWxDb252ZXJzaW9uVGFza0NvbW1hbmQsXG4gIHR5cGUgQ2FuY2VsQ29udmVyc2lvblRhc2tDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ2FuY2VsQ29udmVyc2lvblRhc2tDb21tYW5kT3V0cHV0LFxuICBDYW5jZWxFeHBvcnRUYXNrQ29tbWFuZCxcbiAgdHlwZSBDYW5jZWxFeHBvcnRUYXNrQ29tbWFuZElucHV0LFxuICB0eXBlIENhbmNlbEV4cG9ydFRhc2tDb21tYW5kT3V0cHV0LFxuICBDYW5jZWxJbWFnZUxhdW5jaFBlcm1pc3Npb25Db21tYW5kLFxuICB0eXBlIENhbmNlbEltYWdlTGF1bmNoUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDYW5jZWxJbWFnZUxhdW5jaFBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICBDYW5jZWxJbXBvcnRUYXNrQ29tbWFuZCxcbiAgdHlwZSBDYW5jZWxJbXBvcnRUYXNrQ29tbWFuZElucHV0LFxuICB0eXBlIENhbmNlbEltcG9ydFRhc2tDb21tYW5kT3V0cHV0LFxuICBDYW5jZWxSZXNlcnZlZEluc3RhbmNlc0xpc3RpbmdDb21tYW5kLFxuICB0eXBlIENhbmNlbFJlc2VydmVkSW5zdGFuY2VzTGlzdGluZ0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBDYW5jZWxSZXNlcnZlZEluc3RhbmNlc0xpc3RpbmdDb21tYW5kT3V0cHV0LFxuICBDYW5jZWxTcG90RmxlZXRSZXF1ZXN0c0NvbW1hbmQsXG4gIHR5cGUgQ2FuY2VsU3BvdEZsZWV0UmVxdWVzdHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ2FuY2VsU3BvdEZsZWV0UmVxdWVzdHNDb21tYW5kT3V0cHV0LFxuICBDYW5jZWxTcG90SW5zdGFuY2VSZXF1ZXN0c0NvbW1hbmQsXG4gIHR5cGUgQ2FuY2VsU3BvdEluc3RhbmNlUmVxdWVzdHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ2FuY2VsU3BvdEluc3RhbmNlUmVxdWVzdHNDb21tYW5kT3V0cHV0LFxuICBDb25maXJtUHJvZHVjdEluc3RhbmNlQ29tbWFuZCxcbiAgdHlwZSBDb25maXJtUHJvZHVjdEluc3RhbmNlQ29tbWFuZElucHV0LFxuICB0eXBlIENvbmZpcm1Qcm9kdWN0SW5zdGFuY2VDb21tYW5kT3V0cHV0LFxuICBDb3B5RnBnYUltYWdlQ29tbWFuZCxcbiAgdHlwZSBDb3B5RnBnYUltYWdlQ29tbWFuZElucHV0LFxuICB0eXBlIENvcHlGcGdhSW1hZ2VDb21tYW5kT3V0cHV0LFxuICBDb3B5SW1hZ2VDb21tYW5kLFxuICB0eXBlIENvcHlJbWFnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDb3B5SW1hZ2VDb21tYW5kT3V0cHV0LFxuICBDb3B5U25hcHNob3RDb21tYW5kLFxuICB0eXBlIENvcHlTbmFwc2hvdENvbW1hbmRJbnB1dCxcbiAgdHlwZSBDb3B5U25hcHNob3RDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUNhcGFjaXR5UmVzZXJ2YXRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRDb21tYW5kLFxuICB0eXBlIENyZWF0ZUNhcGFjaXR5UmVzZXJ2YXRpb25GbGVldENvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVDYXJyaWVyR2F0ZXdheUNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlQ2FycmllckdhdGV3YXlDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlQ2FycmllckdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVDbGllbnRWcG5FbmRwb2ludENvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlQ2xpZW50VnBuRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlQ2xpZW50VnBuRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVDbGllbnRWcG5Sb3V0ZUNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlQ2xpZW50VnBuUm91dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlQ2xpZW50VnBuUm91dGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVDb2lwQ2lkckNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlQ29pcENpZHJDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlQ29pcENpZHJDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVDb2lwUG9vbENvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlQ29pcFBvb2xDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlQ29pcFBvb2xDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVDdXN0b21lckdhdGV3YXlDb21tYW5kLFxuICB0eXBlIENyZWF0ZUN1c3RvbWVyR2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVDdXN0b21lckdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVEZWZhdWx0U3VibmV0Q29tbWFuZCxcbiAgdHlwZSBDcmVhdGVEZWZhdWx0U3VibmV0Q29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZURlZmF1bHRTdWJuZXRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVEZWZhdWx0VnBjQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVEZWZhdWx0VnBjQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZURlZmF1bHRWcGNDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVEaGNwT3B0aW9uc0NvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlRGhjcE9wdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlRGhjcE9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVFZ3Jlc3NPbmx5SW50ZXJuZXRHYXRld2F5Q29tbWFuZCxcbiAgdHlwZSBDcmVhdGVFZ3Jlc3NPbmx5SW50ZXJuZXRHYXRld2F5Q29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUVncmVzc09ubHlJbnRlcm5ldEdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVGbGVldENvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlRmxlZXRDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlRmxlZXRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVGbG93TG9nc0NvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlRmxvd0xvZ3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlRmxvd0xvZ3NDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVGcGdhSW1hZ2VDb21tYW5kLFxuICB0eXBlIENyZWF0ZUZwZ2FJbWFnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVGcGdhSW1hZ2VDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVJbWFnZUNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlSW1hZ2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlSW1hZ2VDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVJbnN0YW5jZUNvbm5lY3RFbmRwb2ludENvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlSW5zdGFuY2VDb25uZWN0RW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlSW5zdGFuY2VDb25uZWN0RW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZCxcbiAgdHlwZSBDcmVhdGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUluc3RhbmNlRXZlbnRXaW5kb3dDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVJbnN0YW5jZUV4cG9ydFRhc2tDb21tYW5kLFxuICB0eXBlIENyZWF0ZUluc3RhbmNlRXhwb3J0VGFza0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVJbnN0YW5jZUV4cG9ydFRhc2tDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVJbnRlcm5ldEdhdGV3YXlDb21tYW5kLFxuICB0eXBlIENyZWF0ZUludGVybmV0R2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVJbnRlcm5ldEdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVJcGFtQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVJcGFtQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUlwYW1Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVJcGFtUG9vbENvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlSXBhbVBvb2xDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlSXBhbVBvb2xDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kLFxuICB0eXBlIENyZWF0ZUlwYW1SZXNvdXJjZURpc2NvdmVyeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVJcGFtU2NvcGVDb21tYW5kLFxuICB0eXBlIENyZWF0ZUlwYW1TY29wZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVJcGFtU2NvcGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVLZXlQYWlyQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVLZXlQYWlyQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUtleVBhaXJDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVMYXVuY2hUZW1wbGF0ZUNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlTGF1bmNoVGVtcGxhdGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlTGF1bmNoVGVtcGxhdGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVMYXVuY2hUZW1wbGF0ZVZlcnNpb25Db21tYW5kLFxuICB0eXBlIENyZWF0ZUxhdW5jaFRlbXBsYXRlVmVyc2lvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVMYXVuY2hUZW1wbGF0ZVZlcnNpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZUNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlTG9jYWxHYXRld2F5Um91dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlTG9jYWxHYXRld2F5Um91dGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVmlydHVhbEludGVyZmFjZUdyb3VwQXNzb2NpYXRpb25Db21tYW5kLFxuICB0eXBlIENyZWF0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWaXJ0dWFsSW50ZXJmYWNlR3JvdXBBc3NvY2lhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVmlydHVhbEludGVyZmFjZUdyb3VwQXNzb2NpYXRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVnBjQXNzb2NpYXRpb25Db21tYW5kLFxuICB0eXBlIENyZWF0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWcGNBc3NvY2lhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVnBjQXNzb2NpYXRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVNYW5hZ2VkUHJlZml4TGlzdENvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlTWFuYWdlZFByZWZpeExpc3RDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlTWFuYWdlZFByZWZpeExpc3RDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVOYXRHYXRld2F5Q29tbWFuZCxcbiAgdHlwZSBDcmVhdGVOYXRHYXRld2F5Q29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZU5hdEdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVOZXR3b3JrQWNsQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVOZXR3b3JrQWNsQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZU5ldHdvcmtBY2xDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVOZXR3b3JrQWNsRW50cnlDb21tYW5kLFxuICB0eXBlIENyZWF0ZU5ldHdvcmtBY2xFbnRyeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVOZXR3b3JrQWNsRW50cnlDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVOZXR3b3JrSW5zaWdodHNQYXRoQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVOZXR3b3JrSW5zaWdodHNQYXRoQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZU5ldHdvcmtJbnNpZ2h0c1BhdGhDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVOZXR3b3JrSW50ZXJmYWNlQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVOZXR3b3JrSW50ZXJmYWNlQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZU5ldHdvcmtJbnRlcmZhY2VDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVOZXR3b3JrSW50ZXJmYWNlUGVybWlzc2lvbkNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlTmV0d29ya0ludGVyZmFjZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlTmV0d29ya0ludGVyZmFjZVBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVQbGFjZW1lbnRHcm91cENvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlUGxhY2VtZW50R3JvdXBDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlUGxhY2VtZW50R3JvdXBDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVQdWJsaWNJcHY0UG9vbENvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlUHVibGljSXB2NFBvb2xDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlUHVibGljSXB2NFBvb2xDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVSZXBsYWNlUm9vdFZvbHVtZVRhc2tDb21tYW5kLFxuICB0eXBlIENyZWF0ZVJlcGxhY2VSb290Vm9sdW1lVGFza0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVSZXBsYWNlUm9vdFZvbHVtZVRhc2tDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVSZXNlcnZlZEluc3RhbmNlc0xpc3RpbmdDb21tYW5kLFxuICB0eXBlIENyZWF0ZVJlc2VydmVkSW5zdGFuY2VzTGlzdGluZ0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVSZXNlcnZlZEluc3RhbmNlc0xpc3RpbmdDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVSZXN0b3JlSW1hZ2VUYXNrQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVSZXN0b3JlSW1hZ2VUYXNrQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVJlc3RvcmVJbWFnZVRhc2tDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVSb3V0ZUNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlUm91dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlUm91dGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVSb3V0ZVRhYmxlQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVSb3V0ZVRhYmxlQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVTZWN1cml0eUdyb3VwQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVTZWN1cml0eUdyb3VwQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVNlY3VyaXR5R3JvdXBDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVTbmFwc2hvdENvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlU25hcHNob3RDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlU25hcHNob3RDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVTbmFwc2hvdHNDb21tYW5kLFxuICB0eXBlIENyZWF0ZVNuYXBzaG90c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVTbmFwc2hvdHNDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVTcG90RGF0YWZlZWRTdWJzY3JpcHRpb25Db21tYW5kLFxuICB0eXBlIENyZWF0ZVNwb3REYXRhZmVlZFN1YnNjcmlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVTcG90RGF0YWZlZWRTdWJzY3JpcHRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVTdG9yZUltYWdlVGFza0NvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlU3RvcmVJbWFnZVRhc2tDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlU3RvcmVJbWFnZVRhc2tDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVTdWJuZXRDb21tYW5kLFxuICB0eXBlIENyZWF0ZVN1Ym5ldENvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVTdWJuZXRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVTdWJuZXRDaWRyUmVzZXJ2YXRpb25Db21tYW5kLFxuICB0eXBlIENyZWF0ZVN1Ym5ldENpZHJSZXNlcnZhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVTdWJuZXRDaWRyUmVzZXJ2YXRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVUYWdzQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVUYWdzQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVRhZ3NDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFmZmljTWlycm9yRmlsdGVyQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVUcmFmZmljTWlycm9yRmlsdGVyQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVRyYWZmaWNNaXJyb3JGaWx0ZXJDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFmZmljTWlycm9yRmlsdGVyUnVsZUNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlVHJhZmZpY01pcnJvckZpbHRlclJ1bGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlVHJhZmZpY01pcnJvckZpbHRlclJ1bGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFmZmljTWlycm9yU2Vzc2lvbkNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlVHJhZmZpY01pcnJvclNlc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlVHJhZmZpY01pcnJvclNlc3Npb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFmZmljTWlycm9yVGFyZ2V0Q29tbWFuZCxcbiAgdHlwZSBDcmVhdGVUcmFmZmljTWlycm9yVGFyZ2V0Q29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVRyYWZmaWNNaXJyb3JUYXJnZXRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheUNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlVHJhbnNpdEdhdGV3YXlDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlVHJhbnNpdEdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheUNvbm5lY3RDb21tYW5kLFxuICB0eXBlIENyZWF0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdENvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVUcmFuc2l0R2F0ZXdheUNvbm5lY3RDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheUNvbm5lY3RQZWVyQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVUcmFuc2l0R2F0ZXdheUNvbm5lY3RQZWVyQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdFBlZXJDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZCxcbiAgdHlwZSBDcmVhdGVUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheVByZWZpeExpc3RSZWZlcmVuY2VDb21tYW5kLFxuICB0eXBlIENyZWF0ZVRyYW5zaXRHYXRld2F5UHJlZml4TGlzdFJlZmVyZW5jZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVUcmFuc2l0R2F0ZXdheVByZWZpeExpc3RSZWZlcmVuY2VDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheVJvdXRlQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVUcmFuc2l0R2F0ZXdheVJvdXRlQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVRyYW5zaXRHYXRld2F5Um91dGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kLFxuICB0eXBlIENyZWF0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBbm5vdW5jZW1lbnRDb21tYW5kLFxuICB0eXBlIENyZWF0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFubm91bmNlbWVudENvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBbm5vdW5jZW1lbnRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kLFxuICB0eXBlIENyZWF0ZVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudENvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVWZXJpZmllZEFjY2Vzc0VuZHBvaW50Q29tbWFuZCxcbiAgdHlwZSBDcmVhdGVWZXJpZmllZEFjY2Vzc0VuZHBvaW50Q29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVZlcmlmaWVkQWNjZXNzR3JvdXBDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVWZXJpZmllZEFjY2Vzc0luc3RhbmNlQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVWZXJpZmllZEFjY2Vzc0luc3RhbmNlQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kLFxuICB0eXBlIENyZWF0ZVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVWb2x1bWVDb21tYW5kLFxuICB0eXBlIENyZWF0ZVZvbHVtZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVWb2x1bWVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVWcGNDb21tYW5kLFxuICB0eXBlIENyZWF0ZVZwY0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVWcGNDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVWcGNFbmRwb2ludENvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlVnBjRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlVnBjRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb25Db21tYW5kLFxuICB0eXBlIENyZWF0ZVZwY0VuZHBvaW50Q29ubmVjdGlvbk5vdGlmaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVZwY0VuZHBvaW50U2VydmljZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVWcGNQZWVyaW5nQ29ubmVjdGlvbkNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlVnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlVnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVWcG5Db25uZWN0aW9uQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVWcG5Db25uZWN0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVZwbkNvbm5lY3Rpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVWcG5Db25uZWN0aW9uUm91dGVDb21tYW5kLFxuICB0eXBlIENyZWF0ZVZwbkNvbm5lY3Rpb25Sb3V0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVWcG5Db25uZWN0aW9uUm91dGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVWcG5HYXRld2F5Q29tbWFuZCxcbiAgdHlwZSBDcmVhdGVWcG5HYXRld2F5Q29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVZwbkdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBEZWxldGVDYXJyaWVyR2F0ZXdheUNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlQ2FycmllckdhdGV3YXlDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlQ2FycmllckdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBEZWxldGVDbGllbnRWcG5FbmRwb2ludENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlQ2xpZW50VnBuRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlQ2xpZW50VnBuRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVDbGllbnRWcG5Sb3V0ZUNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlQ2xpZW50VnBuUm91dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlQ2xpZW50VnBuUm91dGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVDb2lwQ2lkckNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlQ29pcENpZHJDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlQ29pcENpZHJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVDb2lwUG9vbENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlQ29pcFBvb2xDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlQ29pcFBvb2xDb21tYW5kT3V0cHV0LFxuICBEZWxldGVDdXN0b21lckdhdGV3YXlDb21tYW5kLFxuICB0eXBlIERlbGV0ZUN1c3RvbWVyR2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVDdXN0b21lckdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBEZWxldGVEaGNwT3B0aW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVsZXRlRGhjcE9wdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlRGhjcE9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVFZ3Jlc3NPbmx5SW50ZXJuZXRHYXRld2F5Q29tbWFuZCxcbiAgdHlwZSBEZWxldGVFZ3Jlc3NPbmx5SW50ZXJuZXRHYXRld2F5Q29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUVncmVzc09ubHlJbnRlcm5ldEdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBEZWxldGVGbGVldHNDb21tYW5kLFxuICB0eXBlIERlbGV0ZUZsZWV0c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVGbGVldHNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVGbG93TG9nc0NvbW1hbmQsXG4gIHR5cGUgRGVsZXRlRmxvd0xvZ3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlRmxvd0xvZ3NDb21tYW5kT3V0cHV0LFxuICBEZWxldGVGcGdhSW1hZ2VDb21tYW5kLFxuICB0eXBlIERlbGV0ZUZwZ2FJbWFnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVGcGdhSW1hZ2VDb21tYW5kT3V0cHV0LFxuICBEZWxldGVJbnN0YW5jZUNvbm5lY3RFbmRwb2ludENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlSW5zdGFuY2VDb25uZWN0RW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlSW5zdGFuY2VDb25uZWN0RW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZCxcbiAgdHlwZSBEZWxldGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUluc3RhbmNlRXZlbnRXaW5kb3dDb21tYW5kT3V0cHV0LFxuICBEZWxldGVJbnRlcm5ldEdhdGV3YXlDb21tYW5kLFxuICB0eXBlIERlbGV0ZUludGVybmV0R2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVJbnRlcm5ldEdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBEZWxldGVJcGFtQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVJcGFtQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUlwYW1Db21tYW5kT3V0cHV0LFxuICBEZWxldGVJcGFtUG9vbENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlSXBhbVBvb2xDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlSXBhbVBvb2xDb21tYW5kT3V0cHV0LFxuICBEZWxldGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kLFxuICB0eXBlIERlbGV0ZUlwYW1SZXNvdXJjZURpc2NvdmVyeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kT3V0cHV0LFxuICBEZWxldGVJcGFtU2NvcGVDb21tYW5kLFxuICB0eXBlIERlbGV0ZUlwYW1TY29wZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVJcGFtU2NvcGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVLZXlQYWlyQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVLZXlQYWlyQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUtleVBhaXJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVMYXVuY2hUZW1wbGF0ZUNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlTGF1bmNoVGVtcGxhdGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlTGF1bmNoVGVtcGxhdGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVMYXVuY2hUZW1wbGF0ZVZlcnNpb25zQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVMYXVuY2hUZW1wbGF0ZVZlcnNpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUxhdW5jaFRlbXBsYXRlVmVyc2lvbnNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVMb2NhbEdhdGV3YXlSb3V0ZUNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlTG9jYWxHYXRld2F5Um91dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlTG9jYWxHYXRld2F5Um91dGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVmlydHVhbEludGVyZmFjZUdyb3VwQXNzb2NpYXRpb25Db21tYW5kLFxuICB0eXBlIERlbGV0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWaXJ0dWFsSW50ZXJmYWNlR3JvdXBBc3NvY2lhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVmlydHVhbEludGVyZmFjZUdyb3VwQXNzb2NpYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVnBjQXNzb2NpYXRpb25Db21tYW5kLFxuICB0eXBlIERlbGV0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWcGNBc3NvY2lhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVnBjQXNzb2NpYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVNYW5hZ2VkUHJlZml4TGlzdENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlTWFuYWdlZFByZWZpeExpc3RDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlTWFuYWdlZFByZWZpeExpc3RDb21tYW5kT3V0cHV0LFxuICBEZWxldGVOYXRHYXRld2F5Q29tbWFuZCxcbiAgdHlwZSBEZWxldGVOYXRHYXRld2F5Q29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZU5hdEdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBEZWxldGVOZXR3b3JrQWNsQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVOZXR3b3JrQWNsQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZU5ldHdvcmtBY2xDb21tYW5kT3V0cHV0LFxuICBEZWxldGVOZXR3b3JrQWNsRW50cnlDb21tYW5kLFxuICB0eXBlIERlbGV0ZU5ldHdvcmtBY2xFbnRyeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVOZXR3b3JrQWNsRW50cnlDb21tYW5kT3V0cHV0LFxuICBEZWxldGVOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUFuYWx5c2lzQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUFuYWx5c2lzQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzaXNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVOZXR3b3JrSW5zaWdodHNBbmFseXNpc0NvbW1hbmQsXG4gIHR5cGUgRGVsZXRlTmV0d29ya0luc2lnaHRzQW5hbHlzaXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlTmV0d29ya0luc2lnaHRzQW5hbHlzaXNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVOZXR3b3JrSW5zaWdodHNQYXRoQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVOZXR3b3JrSW5zaWdodHNQYXRoQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZU5ldHdvcmtJbnNpZ2h0c1BhdGhDb21tYW5kT3V0cHV0LFxuICBEZWxldGVOZXR3b3JrSW50ZXJmYWNlQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVOZXR3b3JrSW50ZXJmYWNlQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZU5ldHdvcmtJbnRlcmZhY2VDb21tYW5kT3V0cHV0LFxuICBEZWxldGVOZXR3b3JrSW50ZXJmYWNlUGVybWlzc2lvbkNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlTmV0d29ya0ludGVyZmFjZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlTmV0d29ya0ludGVyZmFjZVBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVQbGFjZW1lbnRHcm91cENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlUGxhY2VtZW50R3JvdXBDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlUGxhY2VtZW50R3JvdXBDb21tYW5kT3V0cHV0LFxuICBEZWxldGVQdWJsaWNJcHY0UG9vbENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlUHVibGljSXB2NFBvb2xDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlUHVibGljSXB2NFBvb2xDb21tYW5kT3V0cHV0LFxuICBEZWxldGVRdWV1ZWRSZXNlcnZlZEluc3RhbmNlc0NvbW1hbmQsXG4gIHR5cGUgRGVsZXRlUXVldWVkUmVzZXJ2ZWRJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlUXVldWVkUmVzZXJ2ZWRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVSb3V0ZUNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlUm91dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlUm91dGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVSb3V0ZVRhYmxlQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVSb3V0ZVRhYmxlQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVTZWN1cml0eUdyb3VwQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVTZWN1cml0eUdyb3VwQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVNlY3VyaXR5R3JvdXBDb21tYW5kT3V0cHV0LFxuICBEZWxldGVTbmFwc2hvdENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlU25hcHNob3RDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlU25hcHNob3RDb21tYW5kT3V0cHV0LFxuICBEZWxldGVTcG90RGF0YWZlZWRTdWJzY3JpcHRpb25Db21tYW5kLFxuICB0eXBlIERlbGV0ZVNwb3REYXRhZmVlZFN1YnNjcmlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVTcG90RGF0YWZlZWRTdWJzY3JpcHRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVTdWJuZXRDb21tYW5kLFxuICB0eXBlIERlbGV0ZVN1Ym5ldENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVTdWJuZXRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVTdWJuZXRDaWRyUmVzZXJ2YXRpb25Db21tYW5kLFxuICB0eXBlIERlbGV0ZVN1Ym5ldENpZHJSZXNlcnZhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVTdWJuZXRDaWRyUmVzZXJ2YXRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVUYWdzQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVUYWdzQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVRhZ3NDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFmZmljTWlycm9yRmlsdGVyQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVUcmFmZmljTWlycm9yRmlsdGVyQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVRyYWZmaWNNaXJyb3JGaWx0ZXJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFmZmljTWlycm9yRmlsdGVyUnVsZUNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlVHJhZmZpY01pcnJvckZpbHRlclJ1bGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlVHJhZmZpY01pcnJvckZpbHRlclJ1bGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFmZmljTWlycm9yU2Vzc2lvbkNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlVHJhZmZpY01pcnJvclNlc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlVHJhZmZpY01pcnJvclNlc3Npb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFmZmljTWlycm9yVGFyZ2V0Q29tbWFuZCxcbiAgdHlwZSBEZWxldGVUcmFmZmljTWlycm9yVGFyZ2V0Q29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVRyYWZmaWNNaXJyb3JUYXJnZXRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheUNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlVHJhbnNpdEdhdGV3YXlDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlVHJhbnNpdEdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheUNvbm5lY3RDb21tYW5kLFxuICB0eXBlIERlbGV0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVUcmFuc2l0R2F0ZXdheUNvbm5lY3RDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheUNvbm5lY3RQZWVyQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVUcmFuc2l0R2F0ZXdheUNvbm5lY3RQZWVyQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdFBlZXJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZCxcbiAgdHlwZSBEZWxldGVUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheVByZWZpeExpc3RSZWZlcmVuY2VDb21tYW5kLFxuICB0eXBlIERlbGV0ZVRyYW5zaXRHYXRld2F5UHJlZml4TGlzdFJlZmVyZW5jZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVUcmFuc2l0R2F0ZXdheVByZWZpeExpc3RSZWZlcmVuY2VDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheVJvdXRlQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVUcmFuc2l0R2F0ZXdheVJvdXRlQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVRyYW5zaXRHYXRld2F5Um91dGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kLFxuICB0eXBlIERlbGV0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBbm5vdW5jZW1lbnRDb21tYW5kLFxuICB0eXBlIERlbGV0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFubm91bmNlbWVudENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBbm5vdW5jZW1lbnRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kLFxuICB0eXBlIERlbGV0ZVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVWZXJpZmllZEFjY2Vzc0VuZHBvaW50Q29tbWFuZCxcbiAgdHlwZSBEZWxldGVWZXJpZmllZEFjY2Vzc0VuZHBvaW50Q29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVZlcmlmaWVkQWNjZXNzR3JvdXBDb21tYW5kT3V0cHV0LFxuICBEZWxldGVWZXJpZmllZEFjY2Vzc0luc3RhbmNlQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVWZXJpZmllZEFjY2Vzc0luc3RhbmNlQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VDb21tYW5kT3V0cHV0LFxuICBEZWxldGVWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kLFxuICB0eXBlIERlbGV0ZVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVWb2x1bWVDb21tYW5kLFxuICB0eXBlIERlbGV0ZVZvbHVtZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVWb2x1bWVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVWcGNDb21tYW5kLFxuICB0eXBlIERlbGV0ZVZwY0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVWcGNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb25zQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVZwY0VuZHBvaW50Q29ubmVjdGlvbk5vdGlmaWNhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVWcGNFbmRwb2ludHNDb21tYW5kLFxuICB0eXBlIERlbGV0ZVZwY0VuZHBvaW50c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVWcGNFbmRwb2ludHNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVsZXRlVnBjRW5kcG9pbnRTZXJ2aWNlQ29uZmlndXJhdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlVnBjRW5kcG9pbnRTZXJ2aWNlQ29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVWcGNQZWVyaW5nQ29ubmVjdGlvbkNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlVnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlVnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVWcG5Db25uZWN0aW9uQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVWcG5Db25uZWN0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVZwbkNvbm5lY3Rpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVWcG5Db25uZWN0aW9uUm91dGVDb21tYW5kLFxuICB0eXBlIERlbGV0ZVZwbkNvbm5lY3Rpb25Sb3V0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVWcG5Db25uZWN0aW9uUm91dGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVWcG5HYXRld2F5Q29tbWFuZCxcbiAgdHlwZSBEZWxldGVWcG5HYXRld2F5Q29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVZwbkdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBEZXByb3Zpc2lvbkJ5b2lwQ2lkckNvbW1hbmQsXG4gIHR5cGUgRGVwcm92aXNpb25CeW9pcENpZHJDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVwcm92aXNpb25CeW9pcENpZHJDb21tYW5kT3V0cHV0LFxuICBEZXByb3Zpc2lvbklwYW1CeW9hc25Db21tYW5kLFxuICB0eXBlIERlcHJvdmlzaW9uSXBhbUJ5b2FzbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXByb3Zpc2lvbklwYW1CeW9hc25Db21tYW5kT3V0cHV0LFxuICBEZXByb3Zpc2lvbklwYW1Qb29sQ2lkckNvbW1hbmQsXG4gIHR5cGUgRGVwcm92aXNpb25JcGFtUG9vbENpZHJDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVwcm92aXNpb25JcGFtUG9vbENpZHJDb21tYW5kT3V0cHV0LFxuICBEZXByb3Zpc2lvblB1YmxpY0lwdjRQb29sQ2lkckNvbW1hbmQsXG4gIHR5cGUgRGVwcm92aXNpb25QdWJsaWNJcHY0UG9vbENpZHJDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVwcm92aXNpb25QdWJsaWNJcHY0UG9vbENpZHJDb21tYW5kT3V0cHV0LFxuICBEZXJlZ2lzdGVySW1hZ2VDb21tYW5kLFxuICB0eXBlIERlcmVnaXN0ZXJJbWFnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXJlZ2lzdGVySW1hZ2VDb21tYW5kT3V0cHV0LFxuICBEZXJlZ2lzdGVySW5zdGFuY2VFdmVudE5vdGlmaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICB0eXBlIERlcmVnaXN0ZXJJbnN0YW5jZUV2ZW50Tm90aWZpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXJlZ2lzdGVySW5zdGFuY2VFdmVudE5vdGlmaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBEZXJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cE1lbWJlcnNDb21tYW5kLFxuICB0eXBlIERlcmVnaXN0ZXJUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3VwTWVtYmVyc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cE1lbWJlcnNDb21tYW5kT3V0cHV0LFxuICBEZXJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cFNvdXJjZXNDb21tYW5kLFxuICB0eXBlIERlcmVnaXN0ZXJUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3VwU291cmNlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cFNvdXJjZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUFjY291bnRBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUFjY291bnRBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQWNjb3VudEF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUFkZHJlc3Nlc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVBZGRyZXNzZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVBZGRyZXNzZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUFkZHJlc3Nlc0F0dHJpYnV0ZUNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVBZGRyZXNzZXNBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVBZGRyZXNzZXNBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUFkZHJlc3NUcmFuc2ZlcnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlQWRkcmVzc1RyYW5zZmVyc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUFkZHJlc3NUcmFuc2ZlcnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUFnZ3JlZ2F0ZUlkRm9ybWF0Q29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUFnZ3JlZ2F0ZUlkRm9ybWF0Q29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQWdncmVnYXRlSWRGb3JtYXRDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUF2YWlsYWJpbGl0eVpvbmVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUF2YWlsYWJpbGl0eVpvbmVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQXZhaWxhYmlsaXR5Wm9uZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUF3c05ldHdvcmtQZXJmb3JtYW5jZU1ldHJpY1N1YnNjcmlwdGlvbnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlQXdzTmV0d29ya1BlcmZvcm1hbmNlTWV0cmljU3Vic2NyaXB0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUF3c05ldHdvcmtQZXJmb3JtYW5jZU1ldHJpY1N1YnNjcmlwdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUJ1bmRsZVRhc2tzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUJ1bmRsZVRhc2tzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQnVuZGxlVGFza3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUJ5b2lwQ2lkcnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlQnlvaXBDaWRyc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUJ5b2lwQ2lkcnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNhcGFjaXR5QmxvY2tPZmZlcmluZ3NDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlQ2FwYWNpdHlCbG9ja09mZmVyaW5nc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUNhcGFjaXR5QmxvY2tPZmZlcmluZ3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNhcGFjaXR5UmVzZXJ2YXRpb25GbGVldHNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlQ2FwYWNpdHlSZXNlcnZhdGlvbkZsZWV0c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUNhcGFjaXR5UmVzZXJ2YXRpb25GbGVldHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNhcGFjaXR5UmVzZXJ2YXRpb25zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUNhcGFjaXR5UmVzZXJ2YXRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQ2FwYWNpdHlSZXNlcnZhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNhcnJpZXJHYXRld2F5c0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVDYXJyaWVyR2F0ZXdheXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVDYXJyaWVyR2F0ZXdheXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNsYXNzaWNMaW5rSW5zdGFuY2VzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUNsYXNzaWNMaW5rSW5zdGFuY2VzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQ2xhc3NpY0xpbmtJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNsaWVudFZwbkF1dGhvcml6YXRpb25SdWxlc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVDbGllbnRWcG5BdXRob3JpemF0aW9uUnVsZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVDbGllbnRWcG5BdXRob3JpemF0aW9uUnVsZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNsaWVudFZwbkNvbm5lY3Rpb25zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUNsaWVudFZwbkNvbm5lY3Rpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQ2xpZW50VnBuQ29ubmVjdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNsaWVudFZwbkVuZHBvaW50c0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVDbGllbnRWcG5FbmRwb2ludHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVDbGllbnRWcG5FbmRwb2ludHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNsaWVudFZwblJvdXRlc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVDbGllbnRWcG5Sb3V0ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVDbGllbnRWcG5Sb3V0ZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNsaWVudFZwblRhcmdldE5ldHdvcmtzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUNsaWVudFZwblRhcmdldE5ldHdvcmtzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQ2xpZW50VnBuVGFyZ2V0TmV0d29ya3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNvaXBQb29sc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVDb2lwUG9vbHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVDb2lwUG9vbHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNvbnZlcnNpb25UYXNrc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVDb252ZXJzaW9uVGFza3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVDb252ZXJzaW9uVGFza3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUN1c3RvbWVyR2F0ZXdheXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlQ3VzdG9tZXJHYXRld2F5c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUN1c3RvbWVyR2F0ZXdheXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZURoY3BPcHRpb25zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZURoY3BPcHRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlRGhjcE9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUVncmVzc09ubHlJbnRlcm5ldEdhdGV3YXlzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUVncmVzc09ubHlJbnRlcm5ldEdhdGV3YXlzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlRWdyZXNzT25seUludGVybmV0R2F0ZXdheXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUVsYXN0aWNHcHVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUVsYXN0aWNHcHVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlRWxhc3RpY0dwdXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUV4cG9ydEltYWdlVGFza3NDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlRXhwb3J0SW1hZ2VUYXNrc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUV4cG9ydEltYWdlVGFza3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUV4cG9ydFRhc2tzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUV4cG9ydFRhc2tzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlRXhwb3J0VGFza3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUZhc3RMYXVuY2hJbWFnZXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlRmFzdExhdW5jaEltYWdlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUZhc3RMYXVuY2hJbWFnZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUZhc3RTbmFwc2hvdFJlc3RvcmVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUZhc3RTbmFwc2hvdFJlc3RvcmVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlRmFzdFNuYXBzaG90UmVzdG9yZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUZsZWV0SGlzdG9yeUNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVGbGVldEhpc3RvcnlDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVGbGVldEhpc3RvcnlDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUZsZWV0SW5zdGFuY2VzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUZsZWV0SW5zdGFuY2VzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlRmxlZXRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUZsZWV0c0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVGbGVldHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVGbGVldHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUZsb3dMb2dzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUZsb3dMb2dzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlRmxvd0xvZ3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUZwZ2FJbWFnZUF0dHJpYnV0ZUNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVGcGdhSW1hZ2VBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVGcGdhSW1hZ2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUZwZ2FJbWFnZXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlRnBnYUltYWdlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUZwZ2FJbWFnZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUhvc3RSZXNlcnZhdGlvbk9mZmVyaW5nc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVIb3N0UmVzZXJ2YXRpb25PZmZlcmluZ3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVIb3N0UmVzZXJ2YXRpb25PZmZlcmluZ3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUhvc3RSZXNlcnZhdGlvbnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlSG9zdFJlc2VydmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUhvc3RSZXNlcnZhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUhvc3RzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUhvc3RzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlSG9zdHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUlhbUluc3RhbmNlUHJvZmlsZUFzc29jaWF0aW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVJYW1JbnN0YW5jZVByb2ZpbGVBc3NvY2lhdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVJYW1JbnN0YW5jZVByb2ZpbGVBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUlkZW50aXR5SWRGb3JtYXRDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlSWRlbnRpdHlJZEZvcm1hdENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUlkZW50aXR5SWRGb3JtYXRDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUlkRm9ybWF0Q29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUlkRm9ybWF0Q29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlSWRGb3JtYXRDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUltYWdlQXR0cmlidXRlQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUltYWdlQXR0cmlidXRlQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlSW1hZ2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUltYWdlc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVJbWFnZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVJbWFnZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUltcG9ydEltYWdlVGFza3NDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlSW1wb3J0SW1hZ2VUYXNrc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUltcG9ydEltYWdlVGFza3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUltcG9ydFNuYXBzaG90VGFza3NDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlSW1wb3J0U25hcHNob3RUYXNrc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUltcG9ydFNuYXBzaG90VGFza3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUluc3RhbmNlQXR0cmlidXRlQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUluc3RhbmNlQXR0cmlidXRlQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlSW5zdGFuY2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUluc3RhbmNlQ29ubmVjdEVuZHBvaW50c0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVJbnN0YW5jZUNvbm5lY3RFbmRwb2ludHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVJbnN0YW5jZUNvbm5lY3RFbmRwb2ludHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUluc3RhbmNlQ3JlZGl0U3BlY2lmaWNhdGlvbnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlSW5zdGFuY2VDcmVkaXRTcGVjaWZpY2F0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUluc3RhbmNlQ3JlZGl0U3BlY2lmaWNhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUluc3RhbmNlRXZlbnROb3RpZmljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUluc3RhbmNlRXZlbnROb3RpZmljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlSW5zdGFuY2VFdmVudE5vdGlmaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUluc3RhbmNlRXZlbnRXaW5kb3dzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUluc3RhbmNlRXZlbnRXaW5kb3dzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlSW5zdGFuY2VFdmVudFdpbmRvd3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUluc3RhbmNlc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUluc3RhbmNlU3RhdHVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUluc3RhbmNlU3RhdHVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlSW5zdGFuY2VTdGF0dXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUluc3RhbmNlVG9wb2xvZ3lDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlSW5zdGFuY2VUb3BvbG9neUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUluc3RhbmNlVG9wb2xvZ3lDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUluc3RhbmNlVHlwZU9mZmVyaW5nc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVJbnN0YW5jZVR5cGVPZmZlcmluZ3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVJbnN0YW5jZVR5cGVPZmZlcmluZ3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUluc3RhbmNlVHlwZXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlSW5zdGFuY2VUeXBlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUluc3RhbmNlVHlwZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUludGVybmV0R2F0ZXdheXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlSW50ZXJuZXRHYXRld2F5c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUludGVybmV0R2F0ZXdheXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUlwYW1CeW9hc25Db21tYW5kLFxuICB0eXBlIERlc2NyaWJlSXBhbUJ5b2FzbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUlwYW1CeW9hc25Db21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUlwYW1Qb29sc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVJcGFtUG9vbHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVJcGFtUG9vbHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUlwYW1SZXNvdXJjZURpc2NvdmVyaWVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUlwYW1SZXNvdXJjZURpc2NvdmVyaWVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlSXBhbVJlc291cmNlRGlzY292ZXJpZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUlwYW1SZXNvdXJjZURpc2NvdmVyeUFzc29jaWF0aW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlBc3NvY2lhdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUlwYW1zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUlwYW1zQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlSXBhbXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUlwYW1TY29wZXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlSXBhbVNjb3Blc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUlwYW1TY29wZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUlwdjZQb29sc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVJcHY2UG9vbHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVJcHY2UG9vbHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUtleVBhaXJzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUtleVBhaXJzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlS2V5UGFpcnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUxhdW5jaFRlbXBsYXRlc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVMYXVuY2hUZW1wbGF0ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVMYXVuY2hUZW1wbGF0ZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUxhdW5jaFRlbXBsYXRlVmVyc2lvbnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlTGF1bmNoVGVtcGxhdGVWZXJzaW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUxhdW5jaFRlbXBsYXRlVmVyc2lvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlTG9jYWxHYXRld2F5Um91dGVUYWJsZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWaXJ0dWFsSW50ZXJmYWNlR3JvdXBBc3NvY2lhdGlvbnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZpcnR1YWxJbnRlcmZhY2VHcm91cEFzc29jaWF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWaXJ0dWFsSW50ZXJmYWNlR3JvdXBBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWcGNBc3NvY2lhdGlvbnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZwY0Fzc29jaWF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWcGNBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUxvY2FsR2F0ZXdheXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlTG9jYWxHYXRld2F5c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUxvY2FsR2F0ZXdheXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUxvY2FsR2F0ZXdheVZpcnR1YWxJbnRlcmZhY2VHcm91cHNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlTG9jYWxHYXRld2F5VmlydHVhbEludGVyZmFjZUdyb3Vwc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUxvY2FsR2F0ZXdheVZpcnR1YWxJbnRlcmZhY2VHcm91cHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUxvY2FsR2F0ZXdheVZpcnR1YWxJbnRlcmZhY2VzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUxvY2FsR2F0ZXdheVZpcnR1YWxJbnRlcmZhY2VzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlTG9jYWxHYXRld2F5VmlydHVhbEludGVyZmFjZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUxvY2tlZFNuYXBzaG90c0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVMb2NrZWRTbmFwc2hvdHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVMb2NrZWRTbmFwc2hvdHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZU1hbmFnZWRQcmVmaXhMaXN0c0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVNYW5hZ2VkUHJlZml4TGlzdHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVNYW5hZ2VkUHJlZml4TGlzdHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZU1vdmluZ0FkZHJlc3Nlc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVNb3ZpbmdBZGRyZXNzZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVNb3ZpbmdBZGRyZXNzZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZU5hdEdhdGV3YXlzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZU5hdEdhdGV3YXlzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlTmF0R2F0ZXdheXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZU5ldHdvcmtBY2xzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZU5ldHdvcmtBY2xzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlTmV0d29ya0FjbHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzZXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVBbmFseXNlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3Blc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c0FuYWx5c2VzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c0FuYWx5c2VzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlTmV0d29ya0luc2lnaHRzQW5hbHlzZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c1BhdGhzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c1BhdGhzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlTmV0d29ya0luc2lnaHRzUGF0aHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VBdHRyaWJ1dGVDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlTmV0d29ya0ludGVyZmFjZUF0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VQZXJtaXNzaW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVOZXR3b3JrSW50ZXJmYWNlUGVybWlzc2lvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVOZXR3b3JrSW50ZXJmYWNlUGVybWlzc2lvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlTmV0d29ya0ludGVyZmFjZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVBsYWNlbWVudEdyb3Vwc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVQbGFjZW1lbnRHcm91cHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVQbGFjZW1lbnRHcm91cHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVByZWZpeExpc3RzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVByZWZpeExpc3RzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlUHJlZml4TGlzdHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVByaW5jaXBhbElkRm9ybWF0Q29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVByaW5jaXBhbElkRm9ybWF0Q29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlUHJpbmNpcGFsSWRGb3JtYXRDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVB1YmxpY0lwdjRQb29sc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVQdWJsaWNJcHY0UG9vbHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVQdWJsaWNJcHY0UG9vbHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVJlZ2lvbnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlUmVnaW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVJlZ2lvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVJlcGxhY2VSb290Vm9sdW1lVGFza3NDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlUmVwbGFjZVJvb3RWb2x1bWVUYXNrc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVJlcGxhY2VSb290Vm9sdW1lVGFza3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVJlc2VydmVkSW5zdGFuY2VzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVJlc2VydmVkSW5zdGFuY2VzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlUmVzZXJ2ZWRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVJlc2VydmVkSW5zdGFuY2VzTGlzdGluZ3NDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlUmVzZXJ2ZWRJbnN0YW5jZXNMaXN0aW5nc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVJlc2VydmVkSW5zdGFuY2VzTGlzdGluZ3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVJlc2VydmVkSW5zdGFuY2VzTW9kaWZpY2F0aW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVSZXNlcnZlZEluc3RhbmNlc01vZGlmaWNhdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVSZXNlcnZlZEluc3RhbmNlc01vZGlmaWNhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVJlc2VydmVkSW5zdGFuY2VzT2ZmZXJpbmdzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVJlc2VydmVkSW5zdGFuY2VzT2ZmZXJpbmdzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlUmVzZXJ2ZWRJbnN0YW5jZXNPZmZlcmluZ3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVJvdXRlVGFibGVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVJvdXRlVGFibGVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlUm91dGVUYWJsZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNjaGVkdWxlZEluc3RhbmNlQXZhaWxhYmlsaXR5Q29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVNjaGVkdWxlZEluc3RhbmNlQXZhaWxhYmlsaXR5Q29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlU2NoZWR1bGVkSW5zdGFuY2VBdmFpbGFiaWxpdHlDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNjaGVkdWxlZEluc3RhbmNlc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVTY2hlZHVsZWRJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVTY2hlZHVsZWRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNlY3VyaXR5R3JvdXBSZWZlcmVuY2VzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVNlY3VyaXR5R3JvdXBSZWZlcmVuY2VzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlU2VjdXJpdHlHcm91cFJlZmVyZW5jZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNlY3VyaXR5R3JvdXBSdWxlc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVTZWN1cml0eUdyb3VwUnVsZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVTZWN1cml0eUdyb3VwUnVsZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNlY3VyaXR5R3JvdXBzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVNlY3VyaXR5R3JvdXBzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlU2VjdXJpdHlHcm91cHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNuYXBzaG90QXR0cmlidXRlQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVNuYXBzaG90QXR0cmlidXRlQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlU25hcHNob3RBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNuYXBzaG90c0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVTbmFwc2hvdHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVTbmFwc2hvdHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNuYXBzaG90VGllclN0YXR1c0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVTbmFwc2hvdFRpZXJTdGF0dXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVTbmFwc2hvdFRpZXJTdGF0dXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNwb3REYXRhZmVlZFN1YnNjcmlwdGlvbkNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVTcG90RGF0YWZlZWRTdWJzY3JpcHRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVTcG90RGF0YWZlZWRTdWJzY3JpcHRpb25Db21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNwb3RGbGVldEluc3RhbmNlc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVTcG90RmxlZXRJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVTcG90RmxlZXRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNwb3RGbGVldFJlcXVlc3RIaXN0b3J5Q29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVNwb3RGbGVldFJlcXVlc3RIaXN0b3J5Q29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlU3BvdEZsZWV0UmVxdWVzdEhpc3RvcnlDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNwb3RGbGVldFJlcXVlc3RzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVNwb3RGbGVldFJlcXVlc3RzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlU3BvdEZsZWV0UmVxdWVzdHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNwb3RJbnN0YW5jZVJlcXVlc3RzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVNwb3RJbnN0YW5jZVJlcXVlc3RzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlU3BvdEluc3RhbmNlUmVxdWVzdHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVNwb3RQcmljZUhpc3RvcnlDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlU3BvdFByaWNlSGlzdG9yeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVNwb3RQcmljZUhpc3RvcnlDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVN0YWxlU2VjdXJpdHlHcm91cHNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlU3RhbGVTZWN1cml0eUdyb3Vwc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVN0YWxlU2VjdXJpdHlHcm91cHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVN0b3JlSW1hZ2VUYXNrc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVTdG9yZUltYWdlVGFza3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVTdG9yZUltYWdlVGFza3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVN1Ym5ldHNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlU3VibmV0c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVN1Ym5ldHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRhZ3NDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVGFnc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVRhZ3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYWZmaWNNaXJyb3JGaWx0ZXJzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVRyYWZmaWNNaXJyb3JGaWx0ZXJzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVHJhZmZpY01pcnJvckZpbHRlcnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYWZmaWNNaXJyb3JTZXNzaW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVUcmFmZmljTWlycm9yU2Vzc2lvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVUcmFmZmljTWlycm9yU2Vzc2lvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYWZmaWNNaXJyb3JUYXJnZXRzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVRyYWZmaWNNaXJyb3JUYXJnZXRzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVHJhZmZpY01pcnJvclRhcmdldHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5QXR0YWNobWVudHNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlBdHRhY2htZW50c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVRyYW5zaXRHYXRld2F5QXR0YWNobWVudHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5Q29ubmVjdFBlZXJzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVRyYW5zaXRHYXRld2F5Q29ubmVjdFBlZXJzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlDb25uZWN0UGVlcnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5Q29ubmVjdHNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlDb25uZWN0c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVRyYW5zaXRHYXRld2F5Q29ubmVjdHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlQZWVyaW5nQXR0YWNobWVudHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlQb2xpY3lUYWJsZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFubm91bmNlbWVudHNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQW5ub3VuY2VtZW50c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFubm91bmNlbWVudHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5c0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudHNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlWcGNBdHRhY2htZW50c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVRydW5rSW50ZXJmYWNlQXNzb2NpYXRpb25zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVRydW5rSW50ZXJmYWNlQXNzb2NpYXRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVHJ1bmtJbnRlcmZhY2VBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVmVyaWZpZWRBY2Nlc3NFbmRwb2ludHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZlcmlmaWVkQWNjZXNzR3JvdXBzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVZlcmlmaWVkQWNjZXNzR3JvdXBzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVmVyaWZpZWRBY2Nlc3NHcm91cHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VMb2dnaW5nQ29uZmlndXJhdGlvbnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVmVyaWZpZWRBY2Nlc3NJbnN0YW5jZUxvZ2dpbmdDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VMb2dnaW5nQ29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVmVyaWZpZWRBY2Nlc3NJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlcnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVmVyaWZpZWRBY2Nlc3NUcnVzdFByb3ZpZGVyc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlcnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZvbHVtZUF0dHJpYnV0ZUNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVWb2x1bWVBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVWb2x1bWVBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZvbHVtZXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVm9sdW1lc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVZvbHVtZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZvbHVtZXNNb2RpZmljYXRpb25zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVZvbHVtZXNNb2RpZmljYXRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVm9sdW1lc01vZGlmaWNhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZvbHVtZVN0YXR1c0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVWb2x1bWVTdGF0dXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVWb2x1bWVTdGF0dXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwY0F0dHJpYnV0ZUNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVWcGNBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVWcGNBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwY0NsYXNzaWNMaW5rQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVZwY0NsYXNzaWNMaW5rQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVnBjQ2xhc3NpY0xpbmtDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwY0NsYXNzaWNMaW5rRG5zU3VwcG9ydENvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVWcGNDbGFzc2ljTGlua0Ruc1N1cHBvcnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVWcGNDbGFzc2ljTGlua0Ruc1N1cHBvcnRDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwY0VuZHBvaW50Q29ubmVjdGlvbk5vdGlmaWNhdGlvbnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVnBjRW5kcG9pbnRDb25uZWN0aW9uTm90aWZpY2F0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVZwY0VuZHBvaW50Q29ubmVjdGlvbk5vdGlmaWNhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwY0VuZHBvaW50Q29ubmVjdGlvbnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVnBjRW5kcG9pbnRDb25uZWN0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVZwY0VuZHBvaW50Q29ubmVjdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwY0VuZHBvaW50c0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVWcGNFbmRwb2ludHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVWcGNFbmRwb2ludHNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwY0VuZHBvaW50U2VydmljZUNvbmZpZ3VyYXRpb25zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVZwY0VuZHBvaW50U2VydmljZUNvbmZpZ3VyYXRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVnBjRW5kcG9pbnRTZXJ2aWNlQ29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwY0VuZHBvaW50U2VydmljZVBlcm1pc3Npb25zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVZwY0VuZHBvaW50U2VydmljZVBlcm1pc3Npb25zQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVnBjRW5kcG9pbnRTZXJ2aWNlUGVybWlzc2lvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwY0VuZHBvaW50U2VydmljZXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVnBjRW5kcG9pbnRTZXJ2aWNlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVZwY0VuZHBvaW50U2VydmljZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwY1BlZXJpbmdDb25uZWN0aW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVWcGNQZWVyaW5nQ29ubmVjdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVWcGNQZWVyaW5nQ29ubmVjdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwY3NDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVnBjc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVZwY3NDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwbkNvbm5lY3Rpb25zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVZwbkNvbm5lY3Rpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVnBuQ29ubmVjdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVZwbkdhdGV3YXlzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVZwbkdhdGV3YXlzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVnBuR2F0ZXdheXNDb21tYW5kT3V0cHV0LFxuICBEZXRhY2hDbGFzc2ljTGlua1ZwY0NvbW1hbmQsXG4gIHR5cGUgRGV0YWNoQ2xhc3NpY0xpbmtWcGNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGV0YWNoQ2xhc3NpY0xpbmtWcGNDb21tYW5kT3V0cHV0LFxuICBEZXRhY2hJbnRlcm5ldEdhdGV3YXlDb21tYW5kLFxuICB0eXBlIERldGFjaEludGVybmV0R2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXRhY2hJbnRlcm5ldEdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBEZXRhY2hOZXR3b3JrSW50ZXJmYWNlQ29tbWFuZCxcbiAgdHlwZSBEZXRhY2hOZXR3b3JrSW50ZXJmYWNlQ29tbWFuZElucHV0LFxuICB0eXBlIERldGFjaE5ldHdvcmtJbnRlcmZhY2VDb21tYW5kT3V0cHV0LFxuICBEZXRhY2hWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kLFxuICB0eXBlIERldGFjaFZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXRhY2hWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kT3V0cHV0LFxuICBEZXRhY2hWb2x1bWVDb21tYW5kLFxuICB0eXBlIERldGFjaFZvbHVtZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXRhY2hWb2x1bWVDb21tYW5kT3V0cHV0LFxuICBEZXRhY2hWcG5HYXRld2F5Q29tbWFuZCxcbiAgdHlwZSBEZXRhY2hWcG5HYXRld2F5Q29tbWFuZElucHV0LFxuICB0eXBlIERldGFjaFZwbkdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBEaXNhYmxlQWRkcmVzc1RyYW5zZmVyQ29tbWFuZCxcbiAgdHlwZSBEaXNhYmxlQWRkcmVzc1RyYW5zZmVyQ29tbWFuZElucHV0LFxuICB0eXBlIERpc2FibGVBZGRyZXNzVHJhbnNmZXJDb21tYW5kT3V0cHV0LFxuICBEaXNhYmxlQXdzTmV0d29ya1BlcmZvcm1hbmNlTWV0cmljU3Vic2NyaXB0aW9uQ29tbWFuZCxcbiAgdHlwZSBEaXNhYmxlQXdzTmV0d29ya1BlcmZvcm1hbmNlTWV0cmljU3Vic2NyaXB0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIERpc2FibGVBd3NOZXR3b3JrUGVyZm9ybWFuY2VNZXRyaWNTdWJzY3JpcHRpb25Db21tYW5kT3V0cHV0LFxuICBEaXNhYmxlRWJzRW5jcnlwdGlvbkJ5RGVmYXVsdENvbW1hbmQsXG4gIHR5cGUgRGlzYWJsZUVic0VuY3J5cHRpb25CeURlZmF1bHRDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGlzYWJsZUVic0VuY3J5cHRpb25CeURlZmF1bHRDb21tYW5kT3V0cHV0LFxuICBEaXNhYmxlRmFzdExhdW5jaENvbW1hbmQsXG4gIHR5cGUgRGlzYWJsZUZhc3RMYXVuY2hDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGlzYWJsZUZhc3RMYXVuY2hDb21tYW5kT3V0cHV0LFxuICBEaXNhYmxlRmFzdFNuYXBzaG90UmVzdG9yZXNDb21tYW5kLFxuICB0eXBlIERpc2FibGVGYXN0U25hcHNob3RSZXN0b3Jlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEaXNhYmxlRmFzdFNuYXBzaG90UmVzdG9yZXNDb21tYW5kT3V0cHV0LFxuICBEaXNhYmxlSW1hZ2VDb21tYW5kLFxuICB0eXBlIERpc2FibGVJbWFnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEaXNhYmxlSW1hZ2VDb21tYW5kT3V0cHV0LFxuICBEaXNhYmxlSW1hZ2VCbG9ja1B1YmxpY0FjY2Vzc0NvbW1hbmQsXG4gIHR5cGUgRGlzYWJsZUltYWdlQmxvY2tQdWJsaWNBY2Nlc3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGlzYWJsZUltYWdlQmxvY2tQdWJsaWNBY2Nlc3NDb21tYW5kT3V0cHV0LFxuICBEaXNhYmxlSW1hZ2VEZXByZWNhdGlvbkNvbW1hbmQsXG4gIHR5cGUgRGlzYWJsZUltYWdlRGVwcmVjYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGlzYWJsZUltYWdlRGVwcmVjYXRpb25Db21tYW5kT3V0cHV0LFxuICBEaXNhYmxlSXBhbU9yZ2FuaXphdGlvbkFkbWluQWNjb3VudENvbW1hbmQsXG4gIHR5cGUgRGlzYWJsZUlwYW1Pcmdhbml6YXRpb25BZG1pbkFjY291bnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGlzYWJsZUlwYW1Pcmdhbml6YXRpb25BZG1pbkFjY291bnRDb21tYW5kT3V0cHV0LFxuICBEaXNhYmxlU2VyaWFsQ29uc29sZUFjY2Vzc0NvbW1hbmQsXG4gIHR5cGUgRGlzYWJsZVNlcmlhbENvbnNvbGVBY2Nlc3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGlzYWJsZVNlcmlhbENvbnNvbGVBY2Nlc3NDb21tYW5kT3V0cHV0LFxuICBEaXNhYmxlU25hcHNob3RCbG9ja1B1YmxpY0FjY2Vzc0NvbW1hbmQsXG4gIHR5cGUgRGlzYWJsZVNuYXBzaG90QmxvY2tQdWJsaWNBY2Nlc3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGlzYWJsZVNuYXBzaG90QmxvY2tQdWJsaWNBY2Nlc3NDb21tYW5kT3V0cHV0LFxuICBEaXNhYmxlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlUHJvcGFnYXRpb25Db21tYW5kLFxuICB0eXBlIERpc2FibGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVQcm9wYWdhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEaXNhYmxlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlUHJvcGFnYXRpb25Db21tYW5kT3V0cHV0LFxuICBEaXNhYmxlVmd3Um91dGVQcm9wYWdhdGlvbkNvbW1hbmQsXG4gIHR5cGUgRGlzYWJsZVZnd1JvdXRlUHJvcGFnYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGlzYWJsZVZnd1JvdXRlUHJvcGFnYXRpb25Db21tYW5kT3V0cHV0LFxuICBEaXNhYmxlVnBjQ2xhc3NpY0xpbmtDb21tYW5kLFxuICB0eXBlIERpc2FibGVWcGNDbGFzc2ljTGlua0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEaXNhYmxlVnBjQ2xhc3NpY0xpbmtDb21tYW5kT3V0cHV0LFxuICBEaXNhYmxlVnBjQ2xhc3NpY0xpbmtEbnNTdXBwb3J0Q29tbWFuZCxcbiAgdHlwZSBEaXNhYmxlVnBjQ2xhc3NpY0xpbmtEbnNTdXBwb3J0Q29tbWFuZElucHV0LFxuICB0eXBlIERpc2FibGVWcGNDbGFzc2ljTGlua0Ruc1N1cHBvcnRDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVBZGRyZXNzQ29tbWFuZCxcbiAgdHlwZSBEaXNhc3NvY2lhdGVBZGRyZXNzQ29tbWFuZElucHV0LFxuICB0eXBlIERpc2Fzc29jaWF0ZUFkZHJlc3NDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVDbGllbnRWcG5UYXJnZXROZXR3b3JrQ29tbWFuZCxcbiAgdHlwZSBEaXNhc3NvY2lhdGVDbGllbnRWcG5UYXJnZXROZXR3b3JrQ29tbWFuZElucHV0LFxuICB0eXBlIERpc2Fzc29jaWF0ZUNsaWVudFZwblRhcmdldE5ldHdvcmtDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlQ29tbWFuZCxcbiAgdHlwZSBEaXNhc3NvY2lhdGVFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlQ29tbWFuZElucHV0LFxuICB0eXBlIERpc2Fzc29jaWF0ZUVuY2xhdmVDZXJ0aWZpY2F0ZUlhbVJvbGVDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVJYW1JbnN0YW5jZVByb2ZpbGVDb21tYW5kLFxuICB0eXBlIERpc2Fzc29jaWF0ZUlhbUluc3RhbmNlUHJvZmlsZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEaXNhc3NvY2lhdGVJYW1JbnN0YW5jZVByb2ZpbGVDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZCxcbiAgdHlwZSBEaXNhc3NvY2lhdGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZElucHV0LFxuICB0eXBlIERpc2Fzc29jaWF0ZUluc3RhbmNlRXZlbnRXaW5kb3dDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVJcGFtQnlvYXNuQ29tbWFuZCxcbiAgdHlwZSBEaXNhc3NvY2lhdGVJcGFtQnlvYXNuQ29tbWFuZElucHV0LFxuICB0eXBlIERpc2Fzc29jaWF0ZUlwYW1CeW9hc25Db21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kLFxuICB0eXBlIERpc2Fzc29jaWF0ZUlwYW1SZXNvdXJjZURpc2NvdmVyeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEaXNhc3NvY2lhdGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVOYXRHYXRld2F5QWRkcmVzc0NvbW1hbmQsXG4gIHR5cGUgRGlzYXNzb2NpYXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGlzYXNzb2NpYXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVSb3V0ZVRhYmxlQ29tbWFuZCxcbiAgdHlwZSBEaXNhc3NvY2lhdGVSb3V0ZVRhYmxlQ29tbWFuZElucHV0LFxuICB0eXBlIERpc2Fzc29jaWF0ZVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVTdWJuZXRDaWRyQmxvY2tDb21tYW5kLFxuICB0eXBlIERpc2Fzc29jaWF0ZVN1Ym5ldENpZHJCbG9ja0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEaXNhc3NvY2lhdGVTdWJuZXRDaWRyQmxvY2tDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkNvbW1hbmQsXG4gIHR5cGUgRGlzYXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGlzYXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZCxcbiAgdHlwZSBEaXNhc3NvY2lhdGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZElucHV0LFxuICB0eXBlIERpc2Fzc29jaWF0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kLFxuICB0eXBlIERpc2Fzc29jaWF0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEaXNhc3NvY2lhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVUcnVua0ludGVyZmFjZUNvbW1hbmQsXG4gIHR5cGUgRGlzYXNzb2NpYXRlVHJ1bmtJbnRlcmZhY2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGlzYXNzb2NpYXRlVHJ1bmtJbnRlcmZhY2VDb21tYW5kT3V0cHV0LFxuICBEaXNhc3NvY2lhdGVWcGNDaWRyQmxvY2tDb21tYW5kLFxuICB0eXBlIERpc2Fzc29jaWF0ZVZwY0NpZHJCbG9ja0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEaXNhc3NvY2lhdGVWcGNDaWRyQmxvY2tDb21tYW5kT3V0cHV0LFxuICBFbmFibGVBZGRyZXNzVHJhbnNmZXJDb21tYW5kLFxuICB0eXBlIEVuYWJsZUFkZHJlc3NUcmFuc2ZlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBFbmFibGVBZGRyZXNzVHJhbnNmZXJDb21tYW5kT3V0cHV0LFxuICBFbmFibGVBd3NOZXR3b3JrUGVyZm9ybWFuY2VNZXRyaWNTdWJzY3JpcHRpb25Db21tYW5kLFxuICB0eXBlIEVuYWJsZUF3c05ldHdvcmtQZXJmb3JtYW5jZU1ldHJpY1N1YnNjcmlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBFbmFibGVBd3NOZXR3b3JrUGVyZm9ybWFuY2VNZXRyaWNTdWJzY3JpcHRpb25Db21tYW5kT3V0cHV0LFxuICBFbmFibGVFYnNFbmNyeXB0aW9uQnlEZWZhdWx0Q29tbWFuZCxcbiAgdHlwZSBFbmFibGVFYnNFbmNyeXB0aW9uQnlEZWZhdWx0Q29tbWFuZElucHV0LFxuICB0eXBlIEVuYWJsZUVic0VuY3J5cHRpb25CeURlZmF1bHRDb21tYW5kT3V0cHV0LFxuICBFbmFibGVGYXN0TGF1bmNoQ29tbWFuZCxcbiAgdHlwZSBFbmFibGVGYXN0TGF1bmNoQ29tbWFuZElucHV0LFxuICB0eXBlIEVuYWJsZUZhc3RMYXVuY2hDb21tYW5kT3V0cHV0LFxuICBFbmFibGVGYXN0U25hcHNob3RSZXN0b3Jlc0NvbW1hbmQsXG4gIHR5cGUgRW5hYmxlRmFzdFNuYXBzaG90UmVzdG9yZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRW5hYmxlRmFzdFNuYXBzaG90UmVzdG9yZXNDb21tYW5kT3V0cHV0LFxuICBFbmFibGVJbWFnZUNvbW1hbmQsXG4gIHR5cGUgRW5hYmxlSW1hZ2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgRW5hYmxlSW1hZ2VDb21tYW5kT3V0cHV0LFxuICBFbmFibGVJbWFnZUJsb2NrUHVibGljQWNjZXNzQ29tbWFuZCxcbiAgdHlwZSBFbmFibGVJbWFnZUJsb2NrUHVibGljQWNjZXNzQ29tbWFuZElucHV0LFxuICB0eXBlIEVuYWJsZUltYWdlQmxvY2tQdWJsaWNBY2Nlc3NDb21tYW5kT3V0cHV0LFxuICBFbmFibGVJbWFnZURlcHJlY2F0aW9uQ29tbWFuZCxcbiAgdHlwZSBFbmFibGVJbWFnZURlcHJlY2F0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIEVuYWJsZUltYWdlRGVwcmVjYXRpb25Db21tYW5kT3V0cHV0LFxuICBFbmFibGVJcGFtT3JnYW5pemF0aW9uQWRtaW5BY2NvdW50Q29tbWFuZCxcbiAgdHlwZSBFbmFibGVJcGFtT3JnYW5pemF0aW9uQWRtaW5BY2NvdW50Q29tbWFuZElucHV0LFxuICB0eXBlIEVuYWJsZUlwYW1Pcmdhbml6YXRpb25BZG1pbkFjY291bnRDb21tYW5kT3V0cHV0LFxuICBFbmFibGVSZWFjaGFiaWxpdHlBbmFseXplck9yZ2FuaXphdGlvblNoYXJpbmdDb21tYW5kLFxuICB0eXBlIEVuYWJsZVJlYWNoYWJpbGl0eUFuYWx5emVyT3JnYW5pemF0aW9uU2hhcmluZ0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBFbmFibGVSZWFjaGFiaWxpdHlBbmFseXplck9yZ2FuaXphdGlvblNoYXJpbmdDb21tYW5kT3V0cHV0LFxuICBFbmFibGVTZXJpYWxDb25zb2xlQWNjZXNzQ29tbWFuZCxcbiAgdHlwZSBFbmFibGVTZXJpYWxDb25zb2xlQWNjZXNzQ29tbWFuZElucHV0LFxuICB0eXBlIEVuYWJsZVNlcmlhbENvbnNvbGVBY2Nlc3NDb21tYW5kT3V0cHV0LFxuICBFbmFibGVTbmFwc2hvdEJsb2NrUHVibGljQWNjZXNzQ29tbWFuZCxcbiAgdHlwZSBFbmFibGVTbmFwc2hvdEJsb2NrUHVibGljQWNjZXNzQ29tbWFuZElucHV0LFxuICB0eXBlIEVuYWJsZVNuYXBzaG90QmxvY2tQdWJsaWNBY2Nlc3NDb21tYW5kT3V0cHV0LFxuICBFbmFibGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVQcm9wYWdhdGlvbkNvbW1hbmQsXG4gIHR5cGUgRW5hYmxlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlUHJvcGFnYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRW5hYmxlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlUHJvcGFnYXRpb25Db21tYW5kT3V0cHV0LFxuICBFbmFibGVWZ3dSb3V0ZVByb3BhZ2F0aW9uQ29tbWFuZCxcbiAgdHlwZSBFbmFibGVWZ3dSb3V0ZVByb3BhZ2F0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIEVuYWJsZVZnd1JvdXRlUHJvcGFnYXRpb25Db21tYW5kT3V0cHV0LFxuICBFbmFibGVWb2x1bWVJT0NvbW1hbmQsXG4gIHR5cGUgRW5hYmxlVm9sdW1lSU9Db21tYW5kSW5wdXQsXG4gIHR5cGUgRW5hYmxlVm9sdW1lSU9Db21tYW5kT3V0cHV0LFxuICBFbmFibGVWcGNDbGFzc2ljTGlua0NvbW1hbmQsXG4gIHR5cGUgRW5hYmxlVnBjQ2xhc3NpY0xpbmtDb21tYW5kSW5wdXQsXG4gIHR5cGUgRW5hYmxlVnBjQ2xhc3NpY0xpbmtDb21tYW5kT3V0cHV0LFxuICBFbmFibGVWcGNDbGFzc2ljTGlua0Ruc1N1cHBvcnRDb21tYW5kLFxuICB0eXBlIEVuYWJsZVZwY0NsYXNzaWNMaW5rRG5zU3VwcG9ydENvbW1hbmRJbnB1dCxcbiAgdHlwZSBFbmFibGVWcGNDbGFzc2ljTGlua0Ruc1N1cHBvcnRDb21tYW5kT3V0cHV0LFxuICBFeHBvcnRDbGllbnRWcG5DbGllbnRDZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0Q29tbWFuZCxcbiAgdHlwZSBFeHBvcnRDbGllbnRWcG5DbGllbnRDZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0Q29tbWFuZElucHV0LFxuICB0eXBlIEV4cG9ydENsaWVudFZwbkNsaWVudENlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3RDb21tYW5kT3V0cHV0LFxuICBFeHBvcnRDbGllbnRWcG5DbGllbnRDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBFeHBvcnRDbGllbnRWcG5DbGllbnRDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIEV4cG9ydENsaWVudFZwbkNsaWVudENvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBFeHBvcnRJbWFnZUNvbW1hbmQsXG4gIHR5cGUgRXhwb3J0SW1hZ2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgRXhwb3J0SW1hZ2VDb21tYW5kT3V0cHV0LFxuICBFeHBvcnRUcmFuc2l0R2F0ZXdheVJvdXRlc0NvbW1hbmQsXG4gIHR5cGUgRXhwb3J0VHJhbnNpdEdhdGV3YXlSb3V0ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRXhwb3J0VHJhbnNpdEdhdGV3YXlSb3V0ZXNDb21tYW5kT3V0cHV0LFxuICBHZXRBc3NvY2lhdGVkRW5jbGF2ZUNlcnRpZmljYXRlSWFtUm9sZXNDb21tYW5kLFxuICB0eXBlIEdldEFzc29jaWF0ZWRFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRBc3NvY2lhdGVkRW5jbGF2ZUNlcnRpZmljYXRlSWFtUm9sZXNDb21tYW5kT3V0cHV0LFxuICBHZXRBc3NvY2lhdGVkSXB2NlBvb2xDaWRyc0NvbW1hbmQsXG4gIHR5cGUgR2V0QXNzb2NpYXRlZElwdjZQb29sQ2lkcnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0QXNzb2NpYXRlZElwdjZQb29sQ2lkcnNDb21tYW5kT3V0cHV0LFxuICBHZXRBd3NOZXR3b3JrUGVyZm9ybWFuY2VEYXRhQ29tbWFuZCxcbiAgdHlwZSBHZXRBd3NOZXR3b3JrUGVyZm9ybWFuY2VEYXRhQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEF3c05ldHdvcmtQZXJmb3JtYW5jZURhdGFDb21tYW5kT3V0cHV0LFxuICBHZXRDYXBhY2l0eVJlc2VydmF0aW9uVXNhZ2VDb21tYW5kLFxuICB0eXBlIEdldENhcGFjaXR5UmVzZXJ2YXRpb25Vc2FnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRDYXBhY2l0eVJlc2VydmF0aW9uVXNhZ2VDb21tYW5kT3V0cHV0LFxuICBHZXRDb2lwUG9vbFVzYWdlQ29tbWFuZCxcbiAgdHlwZSBHZXRDb2lwUG9vbFVzYWdlQ29tbWFuZElucHV0LFxuICB0eXBlIEdldENvaXBQb29sVXNhZ2VDb21tYW5kT3V0cHV0LFxuICBHZXRDb25zb2xlT3V0cHV0Q29tbWFuZCxcbiAgdHlwZSBHZXRDb25zb2xlT3V0cHV0Q29tbWFuZElucHV0LFxuICB0eXBlIEdldENvbnNvbGVPdXRwdXRDb21tYW5kT3V0cHV0LFxuICBHZXRDb25zb2xlU2NyZWVuc2hvdENvbW1hbmQsXG4gIHR5cGUgR2V0Q29uc29sZVNjcmVlbnNob3RDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0Q29uc29sZVNjcmVlbnNob3RDb21tYW5kT3V0cHV0LFxuICBHZXREZWZhdWx0Q3JlZGl0U3BlY2lmaWNhdGlvbkNvbW1hbmQsXG4gIHR5cGUgR2V0RGVmYXVsdENyZWRpdFNwZWNpZmljYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0RGVmYXVsdENyZWRpdFNwZWNpZmljYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRFYnNEZWZhdWx0S21zS2V5SWRDb21tYW5kLFxuICB0eXBlIEdldEVic0RlZmF1bHRLbXNLZXlJZENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRFYnNEZWZhdWx0S21zS2V5SWRDb21tYW5kT3V0cHV0LFxuICBHZXRFYnNFbmNyeXB0aW9uQnlEZWZhdWx0Q29tbWFuZCxcbiAgdHlwZSBHZXRFYnNFbmNyeXB0aW9uQnlEZWZhdWx0Q29tbWFuZElucHV0LFxuICB0eXBlIEdldEVic0VuY3J5cHRpb25CeURlZmF1bHRDb21tYW5kT3V0cHV0LFxuICBHZXRGbG93TG9nc0ludGVncmF0aW9uVGVtcGxhdGVDb21tYW5kLFxuICB0eXBlIEdldEZsb3dMb2dzSW50ZWdyYXRpb25UZW1wbGF0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRGbG93TG9nc0ludGVncmF0aW9uVGVtcGxhdGVDb21tYW5kT3V0cHV0LFxuICBHZXRHcm91cHNGb3JDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBHZXRHcm91cHNGb3JDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEdyb3Vwc0ZvckNhcGFjaXR5UmVzZXJ2YXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRIb3N0UmVzZXJ2YXRpb25QdXJjaGFzZVByZXZpZXdDb21tYW5kLFxuICB0eXBlIEdldEhvc3RSZXNlcnZhdGlvblB1cmNoYXNlUHJldmlld0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRIb3N0UmVzZXJ2YXRpb25QdXJjaGFzZVByZXZpZXdDb21tYW5kT3V0cHV0LFxuICBHZXRJbWFnZUJsb2NrUHVibGljQWNjZXNzU3RhdGVDb21tYW5kLFxuICB0eXBlIEdldEltYWdlQmxvY2tQdWJsaWNBY2Nlc3NTdGF0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRJbWFnZUJsb2NrUHVibGljQWNjZXNzU3RhdGVDb21tYW5kT3V0cHV0LFxuICBHZXRJbnN0YW5jZVR5cGVzRnJvbUluc3RhbmNlUmVxdWlyZW1lbnRzQ29tbWFuZCxcbiAgdHlwZSBHZXRJbnN0YW5jZVR5cGVzRnJvbUluc3RhbmNlUmVxdWlyZW1lbnRzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEluc3RhbmNlVHlwZXNGcm9tSW5zdGFuY2VSZXF1aXJlbWVudHNDb21tYW5kT3V0cHV0LFxuICBHZXRJbnN0YW5jZVVlZmlEYXRhQ29tbWFuZCxcbiAgdHlwZSBHZXRJbnN0YW5jZVVlZmlEYXRhQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEluc3RhbmNlVWVmaURhdGFDb21tYW5kT3V0cHV0LFxuICBHZXRJcGFtQWRkcmVzc0hpc3RvcnlDb21tYW5kLFxuICB0eXBlIEdldElwYW1BZGRyZXNzSGlzdG9yeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRJcGFtQWRkcmVzc0hpc3RvcnlDb21tYW5kT3V0cHV0LFxuICBHZXRJcGFtRGlzY292ZXJlZEFjY291bnRzQ29tbWFuZCxcbiAgdHlwZSBHZXRJcGFtRGlzY292ZXJlZEFjY291bnRzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldElwYW1EaXNjb3ZlcmVkQWNjb3VudHNDb21tYW5kT3V0cHV0LFxuICBHZXRJcGFtRGlzY292ZXJlZFB1YmxpY0FkZHJlc3Nlc0NvbW1hbmQsXG4gIHR5cGUgR2V0SXBhbURpc2NvdmVyZWRQdWJsaWNBZGRyZXNzZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0SXBhbURpc2NvdmVyZWRQdWJsaWNBZGRyZXNzZXNDb21tYW5kT3V0cHV0LFxuICBHZXRJcGFtRGlzY292ZXJlZFJlc291cmNlQ2lkcnNDb21tYW5kLFxuICB0eXBlIEdldElwYW1EaXNjb3ZlcmVkUmVzb3VyY2VDaWRyc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRJcGFtRGlzY292ZXJlZFJlc291cmNlQ2lkcnNDb21tYW5kT3V0cHV0LFxuICBHZXRJcGFtUG9vbEFsbG9jYXRpb25zQ29tbWFuZCxcbiAgdHlwZSBHZXRJcGFtUG9vbEFsbG9jYXRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIEdldElwYW1Qb29sQWxsb2NhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBHZXRJcGFtUG9vbENpZHJzQ29tbWFuZCxcbiAgdHlwZSBHZXRJcGFtUG9vbENpZHJzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldElwYW1Qb29sQ2lkcnNDb21tYW5kT3V0cHV0LFxuICBHZXRJcGFtUmVzb3VyY2VDaWRyc0NvbW1hbmQsXG4gIHR5cGUgR2V0SXBhbVJlc291cmNlQ2lkcnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0SXBhbVJlc291cmNlQ2lkcnNDb21tYW5kT3V0cHV0LFxuICBHZXRMYXVuY2hUZW1wbGF0ZURhdGFDb21tYW5kLFxuICB0eXBlIEdldExhdW5jaFRlbXBsYXRlRGF0YUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRMYXVuY2hUZW1wbGF0ZURhdGFDb21tYW5kT3V0cHV0LFxuICBHZXRNYW5hZ2VkUHJlZml4TGlzdEFzc29jaWF0aW9uc0NvbW1hbmQsXG4gIHR5cGUgR2V0TWFuYWdlZFByZWZpeExpc3RBc3NvY2lhdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0TWFuYWdlZFByZWZpeExpc3RBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBHZXRNYW5hZ2VkUHJlZml4TGlzdEVudHJpZXNDb21tYW5kLFxuICB0eXBlIEdldE1hbmFnZWRQcmVmaXhMaXN0RW50cmllc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRNYW5hZ2VkUHJlZml4TGlzdEVudHJpZXNDb21tYW5kT3V0cHV0LFxuICBHZXROZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUFuYWx5c2lzRmluZGluZ3NDb21tYW5kLFxuICB0eXBlIEdldE5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzaXNGaW5kaW5nc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXROZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUFuYWx5c2lzRmluZGluZ3NDb21tYW5kT3V0cHV0LFxuICBHZXROZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUNvbnRlbnRDb21tYW5kLFxuICB0eXBlIEdldE5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQ29udGVudENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXROZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUNvbnRlbnRDb21tYW5kT3V0cHV0LFxuICBHZXRQYXNzd29yZERhdGFDb21tYW5kLFxuICB0eXBlIEdldFBhc3N3b3JkRGF0YUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRQYXNzd29yZERhdGFDb21tYW5kT3V0cHV0LFxuICBHZXRSZXNlcnZlZEluc3RhbmNlc0V4Y2hhbmdlUXVvdGVDb21tYW5kLFxuICB0eXBlIEdldFJlc2VydmVkSW5zdGFuY2VzRXhjaGFuZ2VRdW90ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRSZXNlcnZlZEluc3RhbmNlc0V4Y2hhbmdlUXVvdGVDb21tYW5kT3V0cHV0LFxuICBHZXRTZWN1cml0eUdyb3Vwc0ZvclZwY0NvbW1hbmQsXG4gIHR5cGUgR2V0U2VjdXJpdHlHcm91cHNGb3JWcGNDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0U2VjdXJpdHlHcm91cHNGb3JWcGNDb21tYW5kT3V0cHV0LFxuICBHZXRTZXJpYWxDb25zb2xlQWNjZXNzU3RhdHVzQ29tbWFuZCxcbiAgdHlwZSBHZXRTZXJpYWxDb25zb2xlQWNjZXNzU3RhdHVzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldFNlcmlhbENvbnNvbGVBY2Nlc3NTdGF0dXNDb21tYW5kT3V0cHV0LFxuICBHZXRTbmFwc2hvdEJsb2NrUHVibGljQWNjZXNzU3RhdGVDb21tYW5kLFxuICB0eXBlIEdldFNuYXBzaG90QmxvY2tQdWJsaWNBY2Nlc3NTdGF0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRTbmFwc2hvdEJsb2NrUHVibGljQWNjZXNzU3RhdGVDb21tYW5kT3V0cHV0LFxuICBHZXRTcG90UGxhY2VtZW50U2NvcmVzQ29tbWFuZCxcbiAgdHlwZSBHZXRTcG90UGxhY2VtZW50U2NvcmVzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldFNwb3RQbGFjZW1lbnRTY29yZXNDb21tYW5kT3V0cHV0LFxuICBHZXRTdWJuZXRDaWRyUmVzZXJ2YXRpb25zQ29tbWFuZCxcbiAgdHlwZSBHZXRTdWJuZXRDaWRyUmVzZXJ2YXRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIEdldFN1Ym5ldENpZHJSZXNlcnZhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBHZXRUcmFuc2l0R2F0ZXdheUF0dGFjaG1lbnRQcm9wYWdhdGlvbnNDb21tYW5kLFxuICB0eXBlIEdldFRyYW5zaXRHYXRld2F5QXR0YWNobWVudFByb3BhZ2F0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRUcmFuc2l0R2F0ZXdheUF0dGFjaG1lbnRQcm9wYWdhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBHZXRUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkFzc29jaWF0aW9uc0NvbW1hbmQsXG4gIHR5cGUgR2V0VHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Bc3NvY2lhdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0VHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Bc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBHZXRUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQXNzb2NpYXRpb25zQ29tbWFuZCxcbiAgdHlwZSBHZXRUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQXNzb2NpYXRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIEdldFRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBHZXRUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlRW50cmllc0NvbW1hbmQsXG4gIHR5cGUgR2V0VHJhbnNpdEdhdGV3YXlQb2xpY3lUYWJsZUVudHJpZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0VHJhbnNpdEdhdGV3YXlQb2xpY3lUYWJsZUVudHJpZXNDb21tYW5kT3V0cHV0LFxuICBHZXRUcmFuc2l0R2F0ZXdheVByZWZpeExpc3RSZWZlcmVuY2VzQ29tbWFuZCxcbiAgdHlwZSBHZXRUcmFuc2l0R2F0ZXdheVByZWZpeExpc3RSZWZlcmVuY2VzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldFRyYW5zaXRHYXRld2F5UHJlZml4TGlzdFJlZmVyZW5jZXNDb21tYW5kT3V0cHV0LFxuICBHZXRUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBc3NvY2lhdGlvbnNDb21tYW5kLFxuICB0eXBlIEdldFRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFzc29jaWF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBHZXRUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVQcm9wYWdhdGlvbnNDb21tYW5kLFxuICB0eXBlIEdldFRyYW5zaXRHYXRld2F5Um91dGVUYWJsZVByb3BhZ2F0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVQcm9wYWdhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBHZXRWZXJpZmllZEFjY2Vzc0VuZHBvaW50UG9saWN5Q29tbWFuZCxcbiAgdHlwZSBHZXRWZXJpZmllZEFjY2Vzc0VuZHBvaW50UG9saWN5Q29tbWFuZElucHV0LFxuICB0eXBlIEdldFZlcmlmaWVkQWNjZXNzRW5kcG9pbnRQb2xpY3lDb21tYW5kT3V0cHV0LFxuICBHZXRWZXJpZmllZEFjY2Vzc0dyb3VwUG9saWN5Q29tbWFuZCxcbiAgdHlwZSBHZXRWZXJpZmllZEFjY2Vzc0dyb3VwUG9saWN5Q29tbWFuZElucHV0LFxuICB0eXBlIEdldFZlcmlmaWVkQWNjZXNzR3JvdXBQb2xpY3lDb21tYW5kT3V0cHV0LFxuICBHZXRWcG5Db25uZWN0aW9uRGV2aWNlU2FtcGxlQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIHR5cGUgR2V0VnBuQ29ubmVjdGlvbkRldmljZVNhbXBsZUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0VnBuQ29ubmVjdGlvbkRldmljZVNhbXBsZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRWcG5Db25uZWN0aW9uRGV2aWNlVHlwZXNDb21tYW5kLFxuICB0eXBlIEdldFZwbkNvbm5lY3Rpb25EZXZpY2VUeXBlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRWcG5Db25uZWN0aW9uRGV2aWNlVHlwZXNDb21tYW5kT3V0cHV0LFxuICBHZXRWcG5UdW5uZWxSZXBsYWNlbWVudFN0YXR1c0NvbW1hbmQsXG4gIHR5cGUgR2V0VnBuVHVubmVsUmVwbGFjZW1lbnRTdGF0dXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0VnBuVHVubmVsUmVwbGFjZW1lbnRTdGF0dXNDb21tYW5kT3V0cHV0LFxuICBJbXBvcnRDbGllbnRWcG5DbGllbnRDZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0Q29tbWFuZCxcbiAgdHlwZSBJbXBvcnRDbGllbnRWcG5DbGllbnRDZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0Q29tbWFuZElucHV0LFxuICB0eXBlIEltcG9ydENsaWVudFZwbkNsaWVudENlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3RDb21tYW5kT3V0cHV0LFxuICBJbXBvcnRJbWFnZUNvbW1hbmQsXG4gIHR5cGUgSW1wb3J0SW1hZ2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgSW1wb3J0SW1hZ2VDb21tYW5kT3V0cHV0LFxuICBJbXBvcnRJbnN0YW5jZUNvbW1hbmQsXG4gIHR5cGUgSW1wb3J0SW5zdGFuY2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgSW1wb3J0SW5zdGFuY2VDb21tYW5kT3V0cHV0LFxuICBJbXBvcnRLZXlQYWlyQ29tbWFuZCxcbiAgdHlwZSBJbXBvcnRLZXlQYWlyQ29tbWFuZElucHV0LFxuICB0eXBlIEltcG9ydEtleVBhaXJDb21tYW5kT3V0cHV0LFxuICBJbXBvcnRTbmFwc2hvdENvbW1hbmQsXG4gIHR5cGUgSW1wb3J0U25hcHNob3RDb21tYW5kSW5wdXQsXG4gIHR5cGUgSW1wb3J0U25hcHNob3RDb21tYW5kT3V0cHV0LFxuICBJbXBvcnRWb2x1bWVDb21tYW5kLFxuICB0eXBlIEltcG9ydFZvbHVtZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBJbXBvcnRWb2x1bWVDb21tYW5kT3V0cHV0LFxuICBMaXN0SW1hZ2VzSW5SZWN5Y2xlQmluQ29tbWFuZCxcbiAgdHlwZSBMaXN0SW1hZ2VzSW5SZWN5Y2xlQmluQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RJbWFnZXNJblJlY3ljbGVCaW5Db21tYW5kT3V0cHV0LFxuICBMaXN0U25hcHNob3RzSW5SZWN5Y2xlQmluQ29tbWFuZCxcbiAgdHlwZSBMaXN0U25hcHNob3RzSW5SZWN5Y2xlQmluQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RTbmFwc2hvdHNJblJlY3ljbGVCaW5Db21tYW5kT3V0cHV0LFxuICBMb2NrU25hcHNob3RDb21tYW5kLFxuICB0eXBlIExvY2tTbmFwc2hvdENvbW1hbmRJbnB1dCxcbiAgdHlwZSBMb2NrU25hcHNob3RDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlBZGRyZXNzQXR0cmlidXRlQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlBZGRyZXNzQXR0cmlidXRlQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeUFkZHJlc3NBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlBdmFpbGFiaWxpdHlab25lR3JvdXBDb21tYW5kLFxuICB0eXBlIE1vZGlmeUF2YWlsYWJpbGl0eVpvbmVHcm91cENvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlBdmFpbGFiaWxpdHlab25lR3JvdXBDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeUNhcGFjaXR5UmVzZXJ2YXRpb25Db21tYW5kT3V0cHV0LFxuICBNb2RpZnlDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRDb21tYW5kLFxuICB0eXBlIE1vZGlmeUNhcGFjaXR5UmVzZXJ2YXRpb25GbGVldENvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlDbGllbnRWcG5FbmRwb2ludENvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5Q2xpZW50VnBuRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5Q2xpZW50VnBuRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlEZWZhdWx0Q3JlZGl0U3BlY2lmaWNhdGlvbkNvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5RGVmYXVsdENyZWRpdFNwZWNpZmljYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5RGVmYXVsdENyZWRpdFNwZWNpZmljYXRpb25Db21tYW5kT3V0cHV0LFxuICBNb2RpZnlFYnNEZWZhdWx0S21zS2V5SWRDb21tYW5kLFxuICB0eXBlIE1vZGlmeUVic0RlZmF1bHRLbXNLZXlJZENvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlFYnNEZWZhdWx0S21zS2V5SWRDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlGbGVldENvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5RmxlZXRDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5RmxlZXRDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlGcGdhSW1hZ2VBdHRyaWJ1dGVDb21tYW5kLFxuICB0eXBlIE1vZGlmeUZwZ2FJbWFnZUF0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlGcGdhSW1hZ2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlIb3N0c0NvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5SG9zdHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5SG9zdHNDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJZGVudGl0eUlkRm9ybWF0Q29tbWFuZCxcbiAgdHlwZSBNb2RpZnlJZGVudGl0eUlkRm9ybWF0Q29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeUlkZW50aXR5SWRGb3JtYXRDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJZEZvcm1hdENvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5SWRGb3JtYXRDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5SWRGb3JtYXRDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJbWFnZUF0dHJpYnV0ZUNvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5SW1hZ2VBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5SW1hZ2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJbnN0YW5jZUF0dHJpYnV0ZUNvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5SW5zdGFuY2VBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5SW5zdGFuY2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJbnN0YW5jZUNhcGFjaXR5UmVzZXJ2YXRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlJbnN0YW5jZUNhcGFjaXR5UmVzZXJ2YXRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeUluc3RhbmNlQ2FwYWNpdHlSZXNlcnZhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJbnN0YW5jZUNyZWRpdFNwZWNpZmljYXRpb25Db21tYW5kLFxuICB0eXBlIE1vZGlmeUluc3RhbmNlQ3JlZGl0U3BlY2lmaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlJbnN0YW5jZUNyZWRpdFNwZWNpZmljYXRpb25Db21tYW5kT3V0cHV0LFxuICBNb2RpZnlJbnN0YW5jZUV2ZW50U3RhcnRUaW1lQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlJbnN0YW5jZUV2ZW50U3RhcnRUaW1lQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeUluc3RhbmNlRXZlbnRTdGFydFRpbWVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZCxcbiAgdHlwZSBNb2RpZnlJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeUluc3RhbmNlRXZlbnRXaW5kb3dDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJbnN0YW5jZU1haW50ZW5hbmNlT3B0aW9uc0NvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5SW5zdGFuY2VNYWludGVuYW5jZU9wdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5SW5zdGFuY2VNYWludGVuYW5jZU9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJbnN0YW5jZU1ldGFkYXRhT3B0aW9uc0NvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5SW5zdGFuY2VNZXRhZGF0YU9wdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5SW5zdGFuY2VNZXRhZGF0YU9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJbnN0YW5jZVBsYWNlbWVudENvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5SW5zdGFuY2VQbGFjZW1lbnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5SW5zdGFuY2VQbGFjZW1lbnRDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJcGFtQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlJcGFtQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeUlwYW1Db21tYW5kT3V0cHV0LFxuICBNb2RpZnlJcGFtUG9vbENvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5SXBhbVBvb2xDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5SXBhbVBvb2xDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJcGFtUmVzb3VyY2VDaWRyQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlJcGFtUmVzb3VyY2VDaWRyQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeUlwYW1SZXNvdXJjZUNpZHJDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kLFxuICB0eXBlIE1vZGlmeUlwYW1SZXNvdXJjZURpc2NvdmVyeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlJcGFtU2NvcGVDb21tYW5kLFxuICB0eXBlIE1vZGlmeUlwYW1TY29wZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlJcGFtU2NvcGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlMYXVuY2hUZW1wbGF0ZUNvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5TGF1bmNoVGVtcGxhdGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5TGF1bmNoVGVtcGxhdGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlMb2NhbEdhdGV3YXlSb3V0ZUNvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5TG9jYWxHYXRld2F5Um91dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5TG9jYWxHYXRld2F5Um91dGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlNYW5hZ2VkUHJlZml4TGlzdENvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5TWFuYWdlZFByZWZpeExpc3RDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5TWFuYWdlZFByZWZpeExpc3RDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlOZXR3b3JrSW50ZXJmYWNlQXR0cmlidXRlQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlOZXR3b3JrSW50ZXJmYWNlQXR0cmlidXRlQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeU5ldHdvcmtJbnRlcmZhY2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlQcml2YXRlRG5zTmFtZU9wdGlvbnNDb21tYW5kLFxuICB0eXBlIE1vZGlmeVByaXZhdGVEbnNOYW1lT3B0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlQcml2YXRlRG5zTmFtZU9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlSZXNlcnZlZEluc3RhbmNlc0NvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5UmVzZXJ2ZWRJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5UmVzZXJ2ZWRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlTZWN1cml0eUdyb3VwUnVsZXNDb21tYW5kLFxuICB0eXBlIE1vZGlmeVNlY3VyaXR5R3JvdXBSdWxlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlTZWN1cml0eUdyb3VwUnVsZXNDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlTbmFwc2hvdEF0dHJpYnV0ZUNvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5U25hcHNob3RBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5U25hcHNob3RBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlTbmFwc2hvdFRpZXJDb21tYW5kLFxuICB0eXBlIE1vZGlmeVNuYXBzaG90VGllckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlTbmFwc2hvdFRpZXJDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlTcG90RmxlZXRSZXF1ZXN0Q29tbWFuZCxcbiAgdHlwZSBNb2RpZnlTcG90RmxlZXRSZXF1ZXN0Q29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeVNwb3RGbGVldFJlcXVlc3RDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlTdWJuZXRBdHRyaWJ1dGVDb21tYW5kLFxuICB0eXBlIE1vZGlmeVN1Ym5ldEF0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlTdWJuZXRBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlUcmFmZmljTWlycm9yRmlsdGVyTmV0d29ya1NlcnZpY2VzQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlUcmFmZmljTWlycm9yRmlsdGVyTmV0d29ya1NlcnZpY2VzQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeVRyYWZmaWNNaXJyb3JGaWx0ZXJOZXR3b3JrU2VydmljZXNDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlUcmFmZmljTWlycm9yRmlsdGVyUnVsZUNvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5VHJhZmZpY01pcnJvckZpbHRlclJ1bGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5VHJhZmZpY01pcnJvckZpbHRlclJ1bGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlUcmFmZmljTWlycm9yU2Vzc2lvbkNvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5VHJhZmZpY01pcnJvclNlc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5VHJhZmZpY01pcnJvclNlc3Npb25Db21tYW5kT3V0cHV0LFxuICBNb2RpZnlUcmFuc2l0R2F0ZXdheUNvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5VHJhbnNpdEdhdGV3YXlDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5VHJhbnNpdEdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlUcmFuc2l0R2F0ZXdheVByZWZpeExpc3RSZWZlcmVuY2VDb21tYW5kLFxuICB0eXBlIE1vZGlmeVRyYW5zaXRHYXRld2F5UHJlZml4TGlzdFJlZmVyZW5jZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlUcmFuc2l0R2F0ZXdheVByZWZpeExpc3RSZWZlcmVuY2VDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kLFxuICB0eXBlIE1vZGlmeVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudENvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWZXJpZmllZEFjY2Vzc0VuZHBvaW50Q29tbWFuZCxcbiAgdHlwZSBNb2RpZnlWZXJpZmllZEFjY2Vzc0VuZHBvaW50Q29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWZXJpZmllZEFjY2Vzc0VuZHBvaW50UG9saWN5Q29tbWFuZCxcbiAgdHlwZSBNb2RpZnlWZXJpZmllZEFjY2Vzc0VuZHBvaW50UG9saWN5Q29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRQb2xpY3lDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeVZlcmlmaWVkQWNjZXNzR3JvdXBDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWZXJpZmllZEFjY2Vzc0dyb3VwUG9saWN5Q29tbWFuZCxcbiAgdHlwZSBNb2RpZnlWZXJpZmllZEFjY2Vzc0dyb3VwUG9saWN5Q29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeVZlcmlmaWVkQWNjZXNzR3JvdXBQb2xpY3lDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWZXJpZmllZEFjY2Vzc0luc3RhbmNlQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlWZXJpZmllZEFjY2Vzc0luc3RhbmNlQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWZXJpZmllZEFjY2Vzc0luc3RhbmNlTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kLFxuICB0eXBlIE1vZGlmeVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VMb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlWZXJpZmllZEFjY2Vzc0luc3RhbmNlTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBNb2RpZnlWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kLFxuICB0eXBlIE1vZGlmeVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWb2x1bWVDb21tYW5kLFxuICB0eXBlIE1vZGlmeVZvbHVtZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlWb2x1bWVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWb2x1bWVBdHRyaWJ1dGVDb21tYW5kLFxuICB0eXBlIE1vZGlmeVZvbHVtZUF0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlWb2x1bWVBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWcGNBdHRyaWJ1dGVDb21tYW5kLFxuICB0eXBlIE1vZGlmeVZwY0F0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlWcGNBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWcGNFbmRwb2ludENvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5VnBjRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5VnBjRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb25Db21tYW5kLFxuICB0eXBlIE1vZGlmeVZwY0VuZHBvaW50Q29ubmVjdGlvbk5vdGlmaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb25Db21tYW5kT3V0cHV0LFxuICBNb2RpZnlWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeVZwY0VuZHBvaW50U2VydmljZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBNb2RpZnlWcGNFbmRwb2ludFNlcnZpY2VQYXllclJlc3BvbnNpYmlsaXR5Q29tbWFuZCxcbiAgdHlwZSBNb2RpZnlWcGNFbmRwb2ludFNlcnZpY2VQYXllclJlc3BvbnNpYmlsaXR5Q29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeVZwY0VuZHBvaW50U2VydmljZVBheWVyUmVzcG9uc2liaWxpdHlDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWcGNFbmRwb2ludFNlcnZpY2VQZXJtaXNzaW9uc0NvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5VnBjRW5kcG9pbnRTZXJ2aWNlUGVybWlzc2lvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5VnBjRW5kcG9pbnRTZXJ2aWNlUGVybWlzc2lvbnNDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWcGNQZWVyaW5nQ29ubmVjdGlvbk9wdGlvbnNDb21tYW5kLFxuICB0eXBlIE1vZGlmeVZwY1BlZXJpbmdDb25uZWN0aW9uT3B0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBNb2RpZnlWcGNQZWVyaW5nQ29ubmVjdGlvbk9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWcGNUZW5hbmN5Q29tbWFuZCxcbiAgdHlwZSBNb2RpZnlWcGNUZW5hbmN5Q29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeVZwY1RlbmFuY3lDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWcG5Db25uZWN0aW9uQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlWcG5Db25uZWN0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeVZwbkNvbm5lY3Rpb25Db21tYW5kT3V0cHV0LFxuICBNb2RpZnlWcG5Db25uZWN0aW9uT3B0aW9uc0NvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5VnBuQ29ubmVjdGlvbk9wdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5VnBuQ29ubmVjdGlvbk9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWcG5UdW5uZWxDZXJ0aWZpY2F0ZUNvbW1hbmQsXG4gIHR5cGUgTW9kaWZ5VnBuVHVubmVsQ2VydGlmaWNhdGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgTW9kaWZ5VnBuVHVubmVsQ2VydGlmaWNhdGVDb21tYW5kT3V0cHV0LFxuICBNb2RpZnlWcG5UdW5uZWxPcHRpb25zQ29tbWFuZCxcbiAgdHlwZSBNb2RpZnlWcG5UdW5uZWxPcHRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIE1vZGlmeVZwblR1bm5lbE9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBNb25pdG9ySW5zdGFuY2VzQ29tbWFuZCxcbiAgdHlwZSBNb25pdG9ySW5zdGFuY2VzQ29tbWFuZElucHV0LFxuICB0eXBlIE1vbml0b3JJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBNb3ZlQWRkcmVzc1RvVnBjQ29tbWFuZCxcbiAgdHlwZSBNb3ZlQWRkcmVzc1RvVnBjQ29tbWFuZElucHV0LFxuICB0eXBlIE1vdmVBZGRyZXNzVG9WcGNDb21tYW5kT3V0cHV0LFxuICBNb3ZlQnlvaXBDaWRyVG9JcGFtQ29tbWFuZCxcbiAgdHlwZSBNb3ZlQnlvaXBDaWRyVG9JcGFtQ29tbWFuZElucHV0LFxuICB0eXBlIE1vdmVCeW9pcENpZHJUb0lwYW1Db21tYW5kT3V0cHV0LFxuICBQcm92aXNpb25CeW9pcENpZHJDb21tYW5kLFxuICB0eXBlIFByb3Zpc2lvbkJ5b2lwQ2lkckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBQcm92aXNpb25CeW9pcENpZHJDb21tYW5kT3V0cHV0LFxuICBQcm92aXNpb25JcGFtQnlvYXNuQ29tbWFuZCxcbiAgdHlwZSBQcm92aXNpb25JcGFtQnlvYXNuQ29tbWFuZElucHV0LFxuICB0eXBlIFByb3Zpc2lvbklwYW1CeW9hc25Db21tYW5kT3V0cHV0LFxuICBQcm92aXNpb25JcGFtUG9vbENpZHJDb21tYW5kLFxuICB0eXBlIFByb3Zpc2lvbklwYW1Qb29sQ2lkckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBQcm92aXNpb25JcGFtUG9vbENpZHJDb21tYW5kT3V0cHV0LFxuICBQcm92aXNpb25QdWJsaWNJcHY0UG9vbENpZHJDb21tYW5kLFxuICB0eXBlIFByb3Zpc2lvblB1YmxpY0lwdjRQb29sQ2lkckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBQcm92aXNpb25QdWJsaWNJcHY0UG9vbENpZHJDb21tYW5kT3V0cHV0LFxuICBQdXJjaGFzZUNhcGFjaXR5QmxvY2tDb21tYW5kLFxuICB0eXBlIFB1cmNoYXNlQ2FwYWNpdHlCbG9ja0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBQdXJjaGFzZUNhcGFjaXR5QmxvY2tDb21tYW5kT3V0cHV0LFxuICBQdXJjaGFzZUhvc3RSZXNlcnZhdGlvbkNvbW1hbmQsXG4gIHR5cGUgUHVyY2hhc2VIb3N0UmVzZXJ2YXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgUHVyY2hhc2VIb3N0UmVzZXJ2YXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXJjaGFzZVJlc2VydmVkSW5zdGFuY2VzT2ZmZXJpbmdDb21tYW5kLFxuICB0eXBlIFB1cmNoYXNlUmVzZXJ2ZWRJbnN0YW5jZXNPZmZlcmluZ0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBQdXJjaGFzZVJlc2VydmVkSW5zdGFuY2VzT2ZmZXJpbmdDb21tYW5kT3V0cHV0LFxuICBQdXJjaGFzZVNjaGVkdWxlZEluc3RhbmNlc0NvbW1hbmQsXG4gIHR5cGUgUHVyY2hhc2VTY2hlZHVsZWRJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgUHVyY2hhc2VTY2hlZHVsZWRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBSZWJvb3RJbnN0YW5jZXNDb21tYW5kLFxuICB0eXBlIFJlYm9vdEluc3RhbmNlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZWJvb3RJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBSZWdpc3RlckltYWdlQ29tbWFuZCxcbiAgdHlwZSBSZWdpc3RlckltYWdlQ29tbWFuZElucHV0LFxuICB0eXBlIFJlZ2lzdGVySW1hZ2VDb21tYW5kT3V0cHV0LFxuICBSZWdpc3Rlckluc3RhbmNlRXZlbnROb3RpZmljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgdHlwZSBSZWdpc3Rlckluc3RhbmNlRXZlbnROb3RpZmljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIFJlZ2lzdGVySW5zdGFuY2VFdmVudE5vdGlmaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBSZWdpc3RlclRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBNZW1iZXJzQ29tbWFuZCxcbiAgdHlwZSBSZWdpc3RlclRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBNZW1iZXJzQ29tbWFuZElucHV0LFxuICB0eXBlIFJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cE1lbWJlcnNDb21tYW5kT3V0cHV0LFxuICBSZWdpc3RlclRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBTb3VyY2VzQ29tbWFuZCxcbiAgdHlwZSBSZWdpc3RlclRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBTb3VyY2VzQ29tbWFuZElucHV0LFxuICB0eXBlIFJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cFNvdXJjZXNDb21tYW5kT3V0cHV0LFxuICBSZWplY3RUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkFzc29jaWF0aW9uc0NvbW1hbmQsXG4gIHR5cGUgUmVqZWN0VHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Bc3NvY2lhdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgUmVqZWN0VHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Bc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBSZWplY3RUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZCxcbiAgdHlwZSBSZWplY3RUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZElucHV0LFxuICB0eXBlIFJlamVjdFRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICBSZWplY3RUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kLFxuICB0eXBlIFJlamVjdFRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudENvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZWplY3RUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICBSZWplY3RWcGNFbmRwb2ludENvbm5lY3Rpb25zQ29tbWFuZCxcbiAgdHlwZSBSZWplY3RWcGNFbmRwb2ludENvbm5lY3Rpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIFJlamVjdFZwY0VuZHBvaW50Q29ubmVjdGlvbnNDb21tYW5kT3V0cHV0LFxuICBSZWplY3RWcGNQZWVyaW5nQ29ubmVjdGlvbkNvbW1hbmQsXG4gIHR5cGUgUmVqZWN0VnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgUmVqZWN0VnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kT3V0cHV0LFxuICBSZWxlYXNlQWRkcmVzc0NvbW1hbmQsXG4gIHR5cGUgUmVsZWFzZUFkZHJlc3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgUmVsZWFzZUFkZHJlc3NDb21tYW5kT3V0cHV0LFxuICBSZWxlYXNlSG9zdHNDb21tYW5kLFxuICB0eXBlIFJlbGVhc2VIb3N0c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZWxlYXNlSG9zdHNDb21tYW5kT3V0cHV0LFxuICBSZWxlYXNlSXBhbVBvb2xBbGxvY2F0aW9uQ29tbWFuZCxcbiAgdHlwZSBSZWxlYXNlSXBhbVBvb2xBbGxvY2F0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFJlbGVhc2VJcGFtUG9vbEFsbG9jYXRpb25Db21tYW5kT3V0cHV0LFxuICBSZXBsYWNlSWFtSW5zdGFuY2VQcm9maWxlQXNzb2NpYXRpb25Db21tYW5kLFxuICB0eXBlIFJlcGxhY2VJYW1JbnN0YW5jZVByb2ZpbGVBc3NvY2lhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZXBsYWNlSWFtSW5zdGFuY2VQcm9maWxlQXNzb2NpYXRpb25Db21tYW5kT3V0cHV0LFxuICBSZXBsYWNlTmV0d29ya0FjbEFzc29jaWF0aW9uQ29tbWFuZCxcbiAgdHlwZSBSZXBsYWNlTmV0d29ya0FjbEFzc29jaWF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFJlcGxhY2VOZXR3b3JrQWNsQXNzb2NpYXRpb25Db21tYW5kT3V0cHV0LFxuICBSZXBsYWNlTmV0d29ya0FjbEVudHJ5Q29tbWFuZCxcbiAgdHlwZSBSZXBsYWNlTmV0d29ya0FjbEVudHJ5Q29tbWFuZElucHV0LFxuICB0eXBlIFJlcGxhY2VOZXR3b3JrQWNsRW50cnlDb21tYW5kT3V0cHV0LFxuICBSZXBsYWNlUm91dGVDb21tYW5kLFxuICB0eXBlIFJlcGxhY2VSb3V0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZXBsYWNlUm91dGVDb21tYW5kT3V0cHV0LFxuICBSZXBsYWNlUm91dGVUYWJsZUFzc29jaWF0aW9uQ29tbWFuZCxcbiAgdHlwZSBSZXBsYWNlUm91dGVUYWJsZUFzc29jaWF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFJlcGxhY2VSb3V0ZVRhYmxlQXNzb2NpYXRpb25Db21tYW5kT3V0cHV0LFxuICBSZXBsYWNlVHJhbnNpdEdhdGV3YXlSb3V0ZUNvbW1hbmQsXG4gIHR5cGUgUmVwbGFjZVRyYW5zaXRHYXRld2F5Um91dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgUmVwbGFjZVRyYW5zaXRHYXRld2F5Um91dGVDb21tYW5kT3V0cHV0LFxuICBSZXBsYWNlVnBuVHVubmVsQ29tbWFuZCxcbiAgdHlwZSBSZXBsYWNlVnBuVHVubmVsQ29tbWFuZElucHV0LFxuICB0eXBlIFJlcGxhY2VWcG5UdW5uZWxDb21tYW5kT3V0cHV0LFxuICBSZXBvcnRJbnN0YW5jZVN0YXR1c0NvbW1hbmQsXG4gIHR5cGUgUmVwb3J0SW5zdGFuY2VTdGF0dXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgUmVwb3J0SW5zdGFuY2VTdGF0dXNDb21tYW5kT3V0cHV0LFxuICBSZXF1ZXN0U3BvdEZsZWV0Q29tbWFuZCxcbiAgdHlwZSBSZXF1ZXN0U3BvdEZsZWV0Q29tbWFuZElucHV0LFxuICB0eXBlIFJlcXVlc3RTcG90RmxlZXRDb21tYW5kT3V0cHV0LFxuICBSZXF1ZXN0U3BvdEluc3RhbmNlc0NvbW1hbmQsXG4gIHR5cGUgUmVxdWVzdFNwb3RJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgUmVxdWVzdFNwb3RJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBSZXNldEFkZHJlc3NBdHRyaWJ1dGVDb21tYW5kLFxuICB0eXBlIFJlc2V0QWRkcmVzc0F0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZXNldEFkZHJlc3NBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBSZXNldEVic0RlZmF1bHRLbXNLZXlJZENvbW1hbmQsXG4gIHR5cGUgUmVzZXRFYnNEZWZhdWx0S21zS2V5SWRDb21tYW5kSW5wdXQsXG4gIHR5cGUgUmVzZXRFYnNEZWZhdWx0S21zS2V5SWRDb21tYW5kT3V0cHV0LFxuICBSZXNldEZwZ2FJbWFnZUF0dHJpYnV0ZUNvbW1hbmQsXG4gIHR5cGUgUmVzZXRGcGdhSW1hZ2VBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgUmVzZXRGcGdhSW1hZ2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBSZXNldEltYWdlQXR0cmlidXRlQ29tbWFuZCxcbiAgdHlwZSBSZXNldEltYWdlQXR0cmlidXRlQ29tbWFuZElucHV0LFxuICB0eXBlIFJlc2V0SW1hZ2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBSZXNldEluc3RhbmNlQXR0cmlidXRlQ29tbWFuZCxcbiAgdHlwZSBSZXNldEluc3RhbmNlQXR0cmlidXRlQ29tbWFuZElucHV0LFxuICB0eXBlIFJlc2V0SW5zdGFuY2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBSZXNldE5ldHdvcmtJbnRlcmZhY2VBdHRyaWJ1dGVDb21tYW5kLFxuICB0eXBlIFJlc2V0TmV0d29ya0ludGVyZmFjZUF0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZXNldE5ldHdvcmtJbnRlcmZhY2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBSZXNldFNuYXBzaG90QXR0cmlidXRlQ29tbWFuZCxcbiAgdHlwZSBSZXNldFNuYXBzaG90QXR0cmlidXRlQ29tbWFuZElucHV0LFxuICB0eXBlIFJlc2V0U25hcHNob3RBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICBSZXN0b3JlQWRkcmVzc1RvQ2xhc3NpY0NvbW1hbmQsXG4gIHR5cGUgUmVzdG9yZUFkZHJlc3NUb0NsYXNzaWNDb21tYW5kSW5wdXQsXG4gIHR5cGUgUmVzdG9yZUFkZHJlc3NUb0NsYXNzaWNDb21tYW5kT3V0cHV0LFxuICBSZXN0b3JlSW1hZ2VGcm9tUmVjeWNsZUJpbkNvbW1hbmQsXG4gIHR5cGUgUmVzdG9yZUltYWdlRnJvbVJlY3ljbGVCaW5Db21tYW5kSW5wdXQsXG4gIHR5cGUgUmVzdG9yZUltYWdlRnJvbVJlY3ljbGVCaW5Db21tYW5kT3V0cHV0LFxuICBSZXN0b3JlTWFuYWdlZFByZWZpeExpc3RWZXJzaW9uQ29tbWFuZCxcbiAgdHlwZSBSZXN0b3JlTWFuYWdlZFByZWZpeExpc3RWZXJzaW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFJlc3RvcmVNYW5hZ2VkUHJlZml4TGlzdFZlcnNpb25Db21tYW5kT3V0cHV0LFxuICBSZXN0b3JlU25hcHNob3RGcm9tUmVjeWNsZUJpbkNvbW1hbmQsXG4gIHR5cGUgUmVzdG9yZVNuYXBzaG90RnJvbVJlY3ljbGVCaW5Db21tYW5kSW5wdXQsXG4gIHR5cGUgUmVzdG9yZVNuYXBzaG90RnJvbVJlY3ljbGVCaW5Db21tYW5kT3V0cHV0LFxuICBSZXN0b3JlU25hcHNob3RUaWVyQ29tbWFuZCxcbiAgdHlwZSBSZXN0b3JlU25hcHNob3RUaWVyQ29tbWFuZElucHV0LFxuICB0eXBlIFJlc3RvcmVTbmFwc2hvdFRpZXJDb21tYW5kT3V0cHV0LFxuICBSZXZva2VDbGllbnRWcG5JbmdyZXNzQ29tbWFuZCxcbiAgdHlwZSBSZXZva2VDbGllbnRWcG5JbmdyZXNzQ29tbWFuZElucHV0LFxuICB0eXBlIFJldm9rZUNsaWVudFZwbkluZ3Jlc3NDb21tYW5kT3V0cHV0LFxuICBSZXZva2VTZWN1cml0eUdyb3VwRWdyZXNzQ29tbWFuZCxcbiAgdHlwZSBSZXZva2VTZWN1cml0eUdyb3VwRWdyZXNzQ29tbWFuZElucHV0LFxuICB0eXBlIFJldm9rZVNlY3VyaXR5R3JvdXBFZ3Jlc3NDb21tYW5kT3V0cHV0LFxuICBSZXZva2VTZWN1cml0eUdyb3VwSW5ncmVzc0NvbW1hbmQsXG4gIHR5cGUgUmV2b2tlU2VjdXJpdHlHcm91cEluZ3Jlc3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgUmV2b2tlU2VjdXJpdHlHcm91cEluZ3Jlc3NDb21tYW5kT3V0cHV0LFxuICBSdW5JbnN0YW5jZXNDb21tYW5kLFxuICB0eXBlIFJ1bkluc3RhbmNlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBSdW5JbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBSdW5TY2hlZHVsZWRJbnN0YW5jZXNDb21tYW5kLFxuICB0eXBlIFJ1blNjaGVkdWxlZEluc3RhbmNlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBSdW5TY2hlZHVsZWRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBTZWFyY2hMb2NhbEdhdGV3YXlSb3V0ZXNDb21tYW5kLFxuICB0eXBlIFNlYXJjaExvY2FsR2F0ZXdheVJvdXRlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBTZWFyY2hMb2NhbEdhdGV3YXlSb3V0ZXNDb21tYW5kT3V0cHV0LFxuICBTZWFyY2hUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3Vwc0NvbW1hbmQsXG4gIHR5cGUgU2VhcmNoVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgU2VhcmNoVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cHNDb21tYW5kT3V0cHV0LFxuICBTZWFyY2hUcmFuc2l0R2F0ZXdheVJvdXRlc0NvbW1hbmQsXG4gIHR5cGUgU2VhcmNoVHJhbnNpdEdhdGV3YXlSb3V0ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgU2VhcmNoVHJhbnNpdEdhdGV3YXlSb3V0ZXNDb21tYW5kT3V0cHV0LFxuICBTZW5kRGlhZ25vc3RpY0ludGVycnVwdENvbW1hbmQsXG4gIHR5cGUgU2VuZERpYWdub3N0aWNJbnRlcnJ1cHRDb21tYW5kSW5wdXQsXG4gIHR5cGUgU2VuZERpYWdub3N0aWNJbnRlcnJ1cHRDb21tYW5kT3V0cHV0LFxuICBTdGFydEluc3RhbmNlc0NvbW1hbmQsXG4gIHR5cGUgU3RhcnRJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgU3RhcnRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBTdGFydE5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzaXNDb21tYW5kLFxuICB0eXBlIFN0YXJ0TmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVBbmFseXNpc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBTdGFydE5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzaXNDb21tYW5kT3V0cHV0LFxuICBTdGFydE5ldHdvcmtJbnNpZ2h0c0FuYWx5c2lzQ29tbWFuZCxcbiAgdHlwZSBTdGFydE5ldHdvcmtJbnNpZ2h0c0FuYWx5c2lzQ29tbWFuZElucHV0LFxuICB0eXBlIFN0YXJ0TmV0d29ya0luc2lnaHRzQW5hbHlzaXNDb21tYW5kT3V0cHV0LFxuICBTdGFydFZwY0VuZHBvaW50U2VydmljZVByaXZhdGVEbnNWZXJpZmljYXRpb25Db21tYW5kLFxuICB0eXBlIFN0YXJ0VnBjRW5kcG9pbnRTZXJ2aWNlUHJpdmF0ZURuc1ZlcmlmaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBTdGFydFZwY0VuZHBvaW50U2VydmljZVByaXZhdGVEbnNWZXJpZmljYXRpb25Db21tYW5kT3V0cHV0LFxuICBTdG9wSW5zdGFuY2VzQ29tbWFuZCxcbiAgdHlwZSBTdG9wSW5zdGFuY2VzQ29tbWFuZElucHV0LFxuICB0eXBlIFN0b3BJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBUZXJtaW5hdGVDbGllbnRWcG5Db25uZWN0aW9uc0NvbW1hbmQsXG4gIHR5cGUgVGVybWluYXRlQ2xpZW50VnBuQ29ubmVjdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgVGVybWluYXRlQ2xpZW50VnBuQ29ubmVjdGlvbnNDb21tYW5kT3V0cHV0LFxuICBUZXJtaW5hdGVJbnN0YW5jZXNDb21tYW5kLFxuICB0eXBlIFRlcm1pbmF0ZUluc3RhbmNlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBUZXJtaW5hdGVJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBVbmFzc2lnbklwdjZBZGRyZXNzZXNDb21tYW5kLFxuICB0eXBlIFVuYXNzaWduSXB2NkFkZHJlc3Nlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBVbmFzc2lnbklwdjZBZGRyZXNzZXNDb21tYW5kT3V0cHV0LFxuICBVbmFzc2lnblByaXZhdGVJcEFkZHJlc3Nlc0NvbW1hbmQsXG4gIHR5cGUgVW5hc3NpZ25Qcml2YXRlSXBBZGRyZXNzZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgVW5hc3NpZ25Qcml2YXRlSXBBZGRyZXNzZXNDb21tYW5kT3V0cHV0LFxuICBVbmFzc2lnblByaXZhdGVOYXRHYXRld2F5QWRkcmVzc0NvbW1hbmQsXG4gIHR5cGUgVW5hc3NpZ25Qcml2YXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgVW5hc3NpZ25Qcml2YXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kT3V0cHV0LFxuICBVbmxvY2tTbmFwc2hvdENvbW1hbmQsXG4gIHR5cGUgVW5sb2NrU25hcHNob3RDb21tYW5kSW5wdXQsXG4gIHR5cGUgVW5sb2NrU25hcHNob3RDb21tYW5kT3V0cHV0LFxuICBVbm1vbml0b3JJbnN0YW5jZXNDb21tYW5kLFxuICB0eXBlIFVubW9uaXRvckluc3RhbmNlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBVbm1vbml0b3JJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVTZWN1cml0eUdyb3VwUnVsZURlc2NyaXB0aW9uc0VncmVzc0NvbW1hbmQsXG4gIHR5cGUgVXBkYXRlU2VjdXJpdHlHcm91cFJ1bGVEZXNjcmlwdGlvbnNFZ3Jlc3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgVXBkYXRlU2VjdXJpdHlHcm91cFJ1bGVEZXNjcmlwdGlvbnNFZ3Jlc3NDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVTZWN1cml0eUdyb3VwUnVsZURlc2NyaXB0aW9uc0luZ3Jlc3NDb21tYW5kLFxuICB0eXBlIFVwZGF0ZVNlY3VyaXR5R3JvdXBSdWxlRGVzY3JpcHRpb25zSW5ncmVzc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBVcGRhdGVTZWN1cml0eUdyb3VwUnVsZURlc2NyaXB0aW9uc0luZ3Jlc3NDb21tYW5kT3V0cHV0LFxuICBXaXRoZHJhd0J5b2lwQ2lkckNvbW1hbmQsXG4gIHR5cGUgV2l0aGRyYXdCeW9pcENpZHJDb21tYW5kSW5wdXQsXG4gIHR5cGUgV2l0aGRyYXdCeW9pcENpZHJDb21tYW5kT3V0cHV0LFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LWVjMlwiO1xuaW1wb3J0IHsgdHlwZSBIdHRwSGFuZGxlck9wdGlvbnMgYXMgX19IdHRwSGFuZGxlck9wdGlvbnMgfSBmcm9tIFwiQGF3cy1zZGsvdHlwZXNcIjtcbmltcG9ydCB7IENvbnRleHQsIEVmZmVjdCwgTGF5ZXIsIFJlYWRvbmx5UmVjb3JkLCBEYXRhIH0gZnJvbSBcImVmZmVjdFwiO1xuaW1wb3J0IHsgRUMyQ2xpZW50SW5zdGFuY2UsIEVDMkNsaWVudEluc3RhbmNlTGF5ZXIgfSBmcm9tIFwiLi9FQzJDbGllbnRJbnN0YW5jZVwiO1xuaW1wb3J0IHsgRGVmYXVsdEVDMkNsaWVudENvbmZpZ0xheWVyIH0gZnJvbSBcIi4vRUMyQ2xpZW50SW5zdGFuY2VDb25maWdcIjtcbmltcG9ydCB7IEVDMlNlcnZpY2VFcnJvciwgU2RrRXJyb3IsIFRhZ2dlZEV4Y2VwdGlvbiB9IGZyb20gXCIuL0Vycm9yc1wiO1xuXG5jb25zdCBjb21tYW5kcyA9IHtcbiAgQWNjZXB0QWRkcmVzc1RyYW5zZmVyQ29tbWFuZCxcbiAgQWNjZXB0UmVzZXJ2ZWRJbnN0YW5jZXNFeGNoYW5nZVF1b3RlQ29tbWFuZCxcbiAgQWNjZXB0VHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Bc3NvY2lhdGlvbnNDb21tYW5kLFxuICBBY2NlcHRUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZCxcbiAgQWNjZXB0VHJhbnNpdEdhdGV3YXlWcGNBdHRhY2htZW50Q29tbWFuZCxcbiAgQWNjZXB0VnBjRW5kcG9pbnRDb25uZWN0aW9uc0NvbW1hbmQsXG4gIEFjY2VwdFZwY1BlZXJpbmdDb25uZWN0aW9uQ29tbWFuZCxcbiAgQWR2ZXJ0aXNlQnlvaXBDaWRyQ29tbWFuZCxcbiAgQWxsb2NhdGVBZGRyZXNzQ29tbWFuZCxcbiAgQWxsb2NhdGVIb3N0c0NvbW1hbmQsXG4gIEFsbG9jYXRlSXBhbVBvb2xDaWRyQ29tbWFuZCxcbiAgQXBwbHlTZWN1cml0eUdyb3Vwc1RvQ2xpZW50VnBuVGFyZ2V0TmV0d29ya0NvbW1hbmQsXG4gIEFzc2lnbklwdjZBZGRyZXNzZXNDb21tYW5kLFxuICBBc3NpZ25Qcml2YXRlSXBBZGRyZXNzZXNDb21tYW5kLFxuICBBc3NpZ25Qcml2YXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kLFxuICBBc3NvY2lhdGVBZGRyZXNzQ29tbWFuZCxcbiAgQXNzb2NpYXRlQ2xpZW50VnBuVGFyZ2V0TmV0d29ya0NvbW1hbmQsXG4gIEFzc29jaWF0ZURoY3BPcHRpb25zQ29tbWFuZCxcbiAgQXNzb2NpYXRlRW5jbGF2ZUNlcnRpZmljYXRlSWFtUm9sZUNvbW1hbmQsXG4gIEFzc29jaWF0ZUlhbUluc3RhbmNlUHJvZmlsZUNvbW1hbmQsXG4gIEFzc29jaWF0ZUluc3RhbmNlRXZlbnRXaW5kb3dDb21tYW5kLFxuICBBc3NvY2lhdGVJcGFtQnlvYXNuQ29tbWFuZCxcbiAgQXNzb2NpYXRlSXBhbVJlc291cmNlRGlzY292ZXJ5Q29tbWFuZCxcbiAgQXNzb2NpYXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kLFxuICBBc3NvY2lhdGVSb3V0ZVRhYmxlQ29tbWFuZCxcbiAgQXNzb2NpYXRlU3VibmV0Q2lkckJsb2NrQ29tbWFuZCxcbiAgQXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kLFxuICBBc3NvY2lhdGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZCxcbiAgQXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQ29tbWFuZCxcbiAgQXNzb2NpYXRlVHJ1bmtJbnRlcmZhY2VDb21tYW5kLFxuICBBc3NvY2lhdGVWcGNDaWRyQmxvY2tDb21tYW5kLFxuICBBdHRhY2hDbGFzc2ljTGlua1ZwY0NvbW1hbmQsXG4gIEF0dGFjaEludGVybmV0R2F0ZXdheUNvbW1hbmQsXG4gIEF0dGFjaE5ldHdvcmtJbnRlcmZhY2VDb21tYW5kLFxuICBBdHRhY2hWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kLFxuICBBdHRhY2hWb2x1bWVDb21tYW5kLFxuICBBdHRhY2hWcG5HYXRld2F5Q29tbWFuZCxcbiAgQXV0aG9yaXplQ2xpZW50VnBuSW5ncmVzc0NvbW1hbmQsXG4gIEF1dGhvcml6ZVNlY3VyaXR5R3JvdXBFZ3Jlc3NDb21tYW5kLFxuICBBdXRob3JpemVTZWN1cml0eUdyb3VwSW5ncmVzc0NvbW1hbmQsXG4gIEJ1bmRsZUluc3RhbmNlQ29tbWFuZCxcbiAgQ2FuY2VsQnVuZGxlVGFza0NvbW1hbmQsXG4gIENhbmNlbENhcGFjaXR5UmVzZXJ2YXRpb25Db21tYW5kLFxuICBDYW5jZWxDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRzQ29tbWFuZCxcbiAgQ2FuY2VsQ29udmVyc2lvblRhc2tDb21tYW5kLFxuICBDYW5jZWxFeHBvcnRUYXNrQ29tbWFuZCxcbiAgQ2FuY2VsSW1hZ2VMYXVuY2hQZXJtaXNzaW9uQ29tbWFuZCxcbiAgQ2FuY2VsSW1wb3J0VGFza0NvbW1hbmQsXG4gIENhbmNlbFJlc2VydmVkSW5zdGFuY2VzTGlzdGluZ0NvbW1hbmQsXG4gIENhbmNlbFNwb3RGbGVldFJlcXVlc3RzQ29tbWFuZCxcbiAgQ2FuY2VsU3BvdEluc3RhbmNlUmVxdWVzdHNDb21tYW5kLFxuICBDb25maXJtUHJvZHVjdEluc3RhbmNlQ29tbWFuZCxcbiAgQ29weUZwZ2FJbWFnZUNvbW1hbmQsXG4gIENvcHlJbWFnZUNvbW1hbmQsXG4gIENvcHlTbmFwc2hvdENvbW1hbmQsXG4gIENyZWF0ZUNhcGFjaXR5UmVzZXJ2YXRpb25Db21tYW5kLFxuICBDcmVhdGVDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRDb21tYW5kLFxuICBDcmVhdGVDYXJyaWVyR2F0ZXdheUNvbW1hbmQsXG4gIENyZWF0ZUNsaWVudFZwbkVuZHBvaW50Q29tbWFuZCxcbiAgQ3JlYXRlQ2xpZW50VnBuUm91dGVDb21tYW5kLFxuICBDcmVhdGVDb2lwQ2lkckNvbW1hbmQsXG4gIENyZWF0ZUNvaXBQb29sQ29tbWFuZCxcbiAgQ3JlYXRlQ3VzdG9tZXJHYXRld2F5Q29tbWFuZCxcbiAgQ3JlYXRlRGVmYXVsdFN1Ym5ldENvbW1hbmQsXG4gIENyZWF0ZURlZmF1bHRWcGNDb21tYW5kLFxuICBDcmVhdGVEaGNwT3B0aW9uc0NvbW1hbmQsXG4gIENyZWF0ZUVncmVzc09ubHlJbnRlcm5ldEdhdGV3YXlDb21tYW5kLFxuICBDcmVhdGVGbGVldENvbW1hbmQsXG4gIENyZWF0ZUZsb3dMb2dzQ29tbWFuZCxcbiAgQ3JlYXRlRnBnYUltYWdlQ29tbWFuZCxcbiAgQ3JlYXRlSW1hZ2VDb21tYW5kLFxuICBDcmVhdGVJbnN0YW5jZUNvbm5lY3RFbmRwb2ludENvbW1hbmQsXG4gIENyZWF0ZUluc3RhbmNlRXZlbnRXaW5kb3dDb21tYW5kLFxuICBDcmVhdGVJbnN0YW5jZUV4cG9ydFRhc2tDb21tYW5kLFxuICBDcmVhdGVJbnRlcm5ldEdhdGV3YXlDb21tYW5kLFxuICBDcmVhdGVJcGFtQ29tbWFuZCxcbiAgQ3JlYXRlSXBhbVBvb2xDb21tYW5kLFxuICBDcmVhdGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kLFxuICBDcmVhdGVJcGFtU2NvcGVDb21tYW5kLFxuICBDcmVhdGVLZXlQYWlyQ29tbWFuZCxcbiAgQ3JlYXRlTGF1bmNoVGVtcGxhdGVDb21tYW5kLFxuICBDcmVhdGVMYXVuY2hUZW1wbGF0ZVZlcnNpb25Db21tYW5kLFxuICBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZUNvbW1hbmQsXG4gIENyZWF0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVDb21tYW5kLFxuICBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVmlydHVhbEludGVyZmFjZUdyb3VwQXNzb2NpYXRpb25Db21tYW5kLFxuICBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVnBjQXNzb2NpYXRpb25Db21tYW5kLFxuICBDcmVhdGVNYW5hZ2VkUHJlZml4TGlzdENvbW1hbmQsXG4gIENyZWF0ZU5hdEdhdGV3YXlDb21tYW5kLFxuICBDcmVhdGVOZXR3b3JrQWNsQ29tbWFuZCxcbiAgQ3JlYXRlTmV0d29ya0FjbEVudHJ5Q29tbWFuZCxcbiAgQ3JlYXRlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVDb21tYW5kLFxuICBDcmVhdGVOZXR3b3JrSW5zaWdodHNQYXRoQ29tbWFuZCxcbiAgQ3JlYXRlTmV0d29ya0ludGVyZmFjZUNvbW1hbmQsXG4gIENyZWF0ZU5ldHdvcmtJbnRlcmZhY2VQZXJtaXNzaW9uQ29tbWFuZCxcbiAgQ3JlYXRlUGxhY2VtZW50R3JvdXBDb21tYW5kLFxuICBDcmVhdGVQdWJsaWNJcHY0UG9vbENvbW1hbmQsXG4gIENyZWF0ZVJlcGxhY2VSb290Vm9sdW1lVGFza0NvbW1hbmQsXG4gIENyZWF0ZVJlc2VydmVkSW5zdGFuY2VzTGlzdGluZ0NvbW1hbmQsXG4gIENyZWF0ZVJlc3RvcmVJbWFnZVRhc2tDb21tYW5kLFxuICBDcmVhdGVSb3V0ZUNvbW1hbmQsXG4gIENyZWF0ZVJvdXRlVGFibGVDb21tYW5kLFxuICBDcmVhdGVTZWN1cml0eUdyb3VwQ29tbWFuZCxcbiAgQ3JlYXRlU25hcHNob3RDb21tYW5kLFxuICBDcmVhdGVTbmFwc2hvdHNDb21tYW5kLFxuICBDcmVhdGVTcG90RGF0YWZlZWRTdWJzY3JpcHRpb25Db21tYW5kLFxuICBDcmVhdGVTdG9yZUltYWdlVGFza0NvbW1hbmQsXG4gIENyZWF0ZVN1Ym5ldENvbW1hbmQsXG4gIENyZWF0ZVN1Ym5ldENpZHJSZXNlcnZhdGlvbkNvbW1hbmQsXG4gIENyZWF0ZVRhZ3NDb21tYW5kLFxuICBDcmVhdGVUcmFmZmljTWlycm9yRmlsdGVyQ29tbWFuZCxcbiAgQ3JlYXRlVHJhZmZpY01pcnJvckZpbHRlclJ1bGVDb21tYW5kLFxuICBDcmVhdGVUcmFmZmljTWlycm9yU2Vzc2lvbkNvbW1hbmQsXG4gIENyZWF0ZVRyYWZmaWNNaXJyb3JUYXJnZXRDb21tYW5kLFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheUNvbW1hbmQsXG4gIENyZWF0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdENvbW1hbmQsXG4gIENyZWF0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdFBlZXJDb21tYW5kLFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkNvbW1hbmQsXG4gIENyZWF0ZVRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRDb21tYW5kLFxuICBDcmVhdGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZCxcbiAgQ3JlYXRlVHJhbnNpdEdhdGV3YXlQcmVmaXhMaXN0UmVmZXJlbmNlQ29tbWFuZCxcbiAgQ3JlYXRlVHJhbnNpdEdhdGV3YXlSb3V0ZUNvbW1hbmQsXG4gIENyZWF0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUNvbW1hbmQsXG4gIENyZWF0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFubm91bmNlbWVudENvbW1hbmQsXG4gIENyZWF0ZVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudENvbW1hbmQsXG4gIENyZWF0ZVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRDb21tYW5kLFxuICBDcmVhdGVWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZCxcbiAgQ3JlYXRlVmVyaWZpZWRBY2Nlc3NJbnN0YW5jZUNvbW1hbmQsXG4gIENyZWF0ZVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmQsXG4gIENyZWF0ZVZvbHVtZUNvbW1hbmQsXG4gIENyZWF0ZVZwY0NvbW1hbmQsXG4gIENyZWF0ZVZwY0VuZHBvaW50Q29tbWFuZCxcbiAgQ3JlYXRlVnBjRW5kcG9pbnRDb25uZWN0aW9uTm90aWZpY2F0aW9uQ29tbWFuZCxcbiAgQ3JlYXRlVnBjRW5kcG9pbnRTZXJ2aWNlQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIENyZWF0ZVZwY1BlZXJpbmdDb25uZWN0aW9uQ29tbWFuZCxcbiAgQ3JlYXRlVnBuQ29ubmVjdGlvbkNvbW1hbmQsXG4gIENyZWF0ZVZwbkNvbm5lY3Rpb25Sb3V0ZUNvbW1hbmQsXG4gIENyZWF0ZVZwbkdhdGV3YXlDb21tYW5kLFxuICBEZWxldGVDYXJyaWVyR2F0ZXdheUNvbW1hbmQsXG4gIERlbGV0ZUNsaWVudFZwbkVuZHBvaW50Q29tbWFuZCxcbiAgRGVsZXRlQ2xpZW50VnBuUm91dGVDb21tYW5kLFxuICBEZWxldGVDb2lwQ2lkckNvbW1hbmQsXG4gIERlbGV0ZUNvaXBQb29sQ29tbWFuZCxcbiAgRGVsZXRlQ3VzdG9tZXJHYXRld2F5Q29tbWFuZCxcbiAgRGVsZXRlRGhjcE9wdGlvbnNDb21tYW5kLFxuICBEZWxldGVFZ3Jlc3NPbmx5SW50ZXJuZXRHYXRld2F5Q29tbWFuZCxcbiAgRGVsZXRlRmxlZXRzQ29tbWFuZCxcbiAgRGVsZXRlRmxvd0xvZ3NDb21tYW5kLFxuICBEZWxldGVGcGdhSW1hZ2VDb21tYW5kLFxuICBEZWxldGVJbnN0YW5jZUNvbm5lY3RFbmRwb2ludENvbW1hbmQsXG4gIERlbGV0ZUluc3RhbmNlRXZlbnRXaW5kb3dDb21tYW5kLFxuICBEZWxldGVJbnRlcm5ldEdhdGV3YXlDb21tYW5kLFxuICBEZWxldGVJcGFtQ29tbWFuZCxcbiAgRGVsZXRlSXBhbVBvb2xDb21tYW5kLFxuICBEZWxldGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kLFxuICBEZWxldGVJcGFtU2NvcGVDb21tYW5kLFxuICBEZWxldGVLZXlQYWlyQ29tbWFuZCxcbiAgRGVsZXRlTGF1bmNoVGVtcGxhdGVDb21tYW5kLFxuICBEZWxldGVMYXVuY2hUZW1wbGF0ZVZlcnNpb25zQ29tbWFuZCxcbiAgRGVsZXRlTG9jYWxHYXRld2F5Um91dGVDb21tYW5kLFxuICBEZWxldGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlQ29tbWFuZCxcbiAgRGVsZXRlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZpcnR1YWxJbnRlcmZhY2VHcm91cEFzc29jaWF0aW9uQ29tbWFuZCxcbiAgRGVsZXRlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZwY0Fzc29jaWF0aW9uQ29tbWFuZCxcbiAgRGVsZXRlTWFuYWdlZFByZWZpeExpc3RDb21tYW5kLFxuICBEZWxldGVOYXRHYXRld2F5Q29tbWFuZCxcbiAgRGVsZXRlTmV0d29ya0FjbENvbW1hbmQsXG4gIERlbGV0ZU5ldHdvcmtBY2xFbnRyeUNvbW1hbmQsXG4gIERlbGV0ZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQ29tbWFuZCxcbiAgRGVsZXRlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVBbmFseXNpc0NvbW1hbmQsXG4gIERlbGV0ZU5ldHdvcmtJbnNpZ2h0c0FuYWx5c2lzQ29tbWFuZCxcbiAgRGVsZXRlTmV0d29ya0luc2lnaHRzUGF0aENvbW1hbmQsXG4gIERlbGV0ZU5ldHdvcmtJbnRlcmZhY2VDb21tYW5kLFxuICBEZWxldGVOZXR3b3JrSW50ZXJmYWNlUGVybWlzc2lvbkNvbW1hbmQsXG4gIERlbGV0ZVBsYWNlbWVudEdyb3VwQ29tbWFuZCxcbiAgRGVsZXRlUHVibGljSXB2NFBvb2xDb21tYW5kLFxuICBEZWxldGVRdWV1ZWRSZXNlcnZlZEluc3RhbmNlc0NvbW1hbmQsXG4gIERlbGV0ZVJvdXRlQ29tbWFuZCxcbiAgRGVsZXRlUm91dGVUYWJsZUNvbW1hbmQsXG4gIERlbGV0ZVNlY3VyaXR5R3JvdXBDb21tYW5kLFxuICBEZWxldGVTbmFwc2hvdENvbW1hbmQsXG4gIERlbGV0ZVNwb3REYXRhZmVlZFN1YnNjcmlwdGlvbkNvbW1hbmQsXG4gIERlbGV0ZVN1Ym5ldENvbW1hbmQsXG4gIERlbGV0ZVN1Ym5ldENpZHJSZXNlcnZhdGlvbkNvbW1hbmQsXG4gIERlbGV0ZVRhZ3NDb21tYW5kLFxuICBEZWxldGVUcmFmZmljTWlycm9yRmlsdGVyQ29tbWFuZCxcbiAgRGVsZXRlVHJhZmZpY01pcnJvckZpbHRlclJ1bGVDb21tYW5kLFxuICBEZWxldGVUcmFmZmljTWlycm9yU2Vzc2lvbkNvbW1hbmQsXG4gIERlbGV0ZVRyYWZmaWNNaXJyb3JUYXJnZXRDb21tYW5kLFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheUNvbW1hbmQsXG4gIERlbGV0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdENvbW1hbmQsXG4gIERlbGV0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdFBlZXJDb21tYW5kLFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkNvbW1hbmQsXG4gIERlbGV0ZVRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRDb21tYW5kLFxuICBEZWxldGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZCxcbiAgRGVsZXRlVHJhbnNpdEdhdGV3YXlQcmVmaXhMaXN0UmVmZXJlbmNlQ29tbWFuZCxcbiAgRGVsZXRlVHJhbnNpdEdhdGV3YXlSb3V0ZUNvbW1hbmQsXG4gIERlbGV0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUNvbW1hbmQsXG4gIERlbGV0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFubm91bmNlbWVudENvbW1hbmQsXG4gIERlbGV0ZVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudENvbW1hbmQsXG4gIERlbGV0ZVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRDb21tYW5kLFxuICBEZWxldGVWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZCxcbiAgRGVsZXRlVmVyaWZpZWRBY2Nlc3NJbnN0YW5jZUNvbW1hbmQsXG4gIERlbGV0ZVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmQsXG4gIERlbGV0ZVZvbHVtZUNvbW1hbmQsXG4gIERlbGV0ZVZwY0NvbW1hbmQsXG4gIERlbGV0ZVZwY0VuZHBvaW50Q29ubmVjdGlvbk5vdGlmaWNhdGlvbnNDb21tYW5kLFxuICBEZWxldGVWcGNFbmRwb2ludHNDb21tYW5kLFxuICBEZWxldGVWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uc0NvbW1hbmQsXG4gIERlbGV0ZVZwY1BlZXJpbmdDb25uZWN0aW9uQ29tbWFuZCxcbiAgRGVsZXRlVnBuQ29ubmVjdGlvbkNvbW1hbmQsXG4gIERlbGV0ZVZwbkNvbm5lY3Rpb25Sb3V0ZUNvbW1hbmQsXG4gIERlbGV0ZVZwbkdhdGV3YXlDb21tYW5kLFxuICBEZXByb3Zpc2lvbkJ5b2lwQ2lkckNvbW1hbmQsXG4gIERlcHJvdmlzaW9uSXBhbUJ5b2FzbkNvbW1hbmQsXG4gIERlcHJvdmlzaW9uSXBhbVBvb2xDaWRyQ29tbWFuZCxcbiAgRGVwcm92aXNpb25QdWJsaWNJcHY0UG9vbENpZHJDb21tYW5kLFxuICBEZXJlZ2lzdGVySW1hZ2VDb21tYW5kLFxuICBEZXJlZ2lzdGVySW5zdGFuY2VFdmVudE5vdGlmaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBEZXJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cE1lbWJlcnNDb21tYW5kLFxuICBEZXJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cFNvdXJjZXNDb21tYW5kLFxuICBEZXNjcmliZUFjY291bnRBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgRGVzY3JpYmVBZGRyZXNzZXNDb21tYW5kLFxuICBEZXNjcmliZUFkZHJlc3Nlc0F0dHJpYnV0ZUNvbW1hbmQsXG4gIERlc2NyaWJlQWRkcmVzc1RyYW5zZmVyc0NvbW1hbmQsXG4gIERlc2NyaWJlQWdncmVnYXRlSWRGb3JtYXRDb21tYW5kLFxuICBEZXNjcmliZUF2YWlsYWJpbGl0eVpvbmVzQ29tbWFuZCxcbiAgRGVzY3JpYmVBd3NOZXR3b3JrUGVyZm9ybWFuY2VNZXRyaWNTdWJzY3JpcHRpb25zQ29tbWFuZCxcbiAgRGVzY3JpYmVCdW5kbGVUYXNrc0NvbW1hbmQsXG4gIERlc2NyaWJlQnlvaXBDaWRyc0NvbW1hbmQsXG4gIERlc2NyaWJlQ2FwYWNpdHlCbG9ja09mZmVyaW5nc0NvbW1hbmQsXG4gIERlc2NyaWJlQ2FwYWNpdHlSZXNlcnZhdGlvbkZsZWV0c0NvbW1hbmQsXG4gIERlc2NyaWJlQ2FwYWNpdHlSZXNlcnZhdGlvbnNDb21tYW5kLFxuICBEZXNjcmliZUNhcnJpZXJHYXRld2F5c0NvbW1hbmQsXG4gIERlc2NyaWJlQ2xhc3NpY0xpbmtJbnN0YW5jZXNDb21tYW5kLFxuICBEZXNjcmliZUNsaWVudFZwbkF1dGhvcml6YXRpb25SdWxlc0NvbW1hbmQsXG4gIERlc2NyaWJlQ2xpZW50VnBuQ29ubmVjdGlvbnNDb21tYW5kLFxuICBEZXNjcmliZUNsaWVudFZwbkVuZHBvaW50c0NvbW1hbmQsXG4gIERlc2NyaWJlQ2xpZW50VnBuUm91dGVzQ29tbWFuZCxcbiAgRGVzY3JpYmVDbGllbnRWcG5UYXJnZXROZXR3b3Jrc0NvbW1hbmQsXG4gIERlc2NyaWJlQ29pcFBvb2xzQ29tbWFuZCxcbiAgRGVzY3JpYmVDb252ZXJzaW9uVGFza3NDb21tYW5kLFxuICBEZXNjcmliZUN1c3RvbWVyR2F0ZXdheXNDb21tYW5kLFxuICBEZXNjcmliZURoY3BPcHRpb25zQ29tbWFuZCxcbiAgRGVzY3JpYmVFZ3Jlc3NPbmx5SW50ZXJuZXRHYXRld2F5c0NvbW1hbmQsXG4gIERlc2NyaWJlRWxhc3RpY0dwdXNDb21tYW5kLFxuICBEZXNjcmliZUV4cG9ydEltYWdlVGFza3NDb21tYW5kLFxuICBEZXNjcmliZUV4cG9ydFRhc2tzQ29tbWFuZCxcbiAgRGVzY3JpYmVGYXN0TGF1bmNoSW1hZ2VzQ29tbWFuZCxcbiAgRGVzY3JpYmVGYXN0U25hcHNob3RSZXN0b3Jlc0NvbW1hbmQsXG4gIERlc2NyaWJlRmxlZXRIaXN0b3J5Q29tbWFuZCxcbiAgRGVzY3JpYmVGbGVldEluc3RhbmNlc0NvbW1hbmQsXG4gIERlc2NyaWJlRmxlZXRzQ29tbWFuZCxcbiAgRGVzY3JpYmVGbG93TG9nc0NvbW1hbmQsXG4gIERlc2NyaWJlRnBnYUltYWdlQXR0cmlidXRlQ29tbWFuZCxcbiAgRGVzY3JpYmVGcGdhSW1hZ2VzQ29tbWFuZCxcbiAgRGVzY3JpYmVIb3N0UmVzZXJ2YXRpb25PZmZlcmluZ3NDb21tYW5kLFxuICBEZXNjcmliZUhvc3RSZXNlcnZhdGlvbnNDb21tYW5kLFxuICBEZXNjcmliZUhvc3RzQ29tbWFuZCxcbiAgRGVzY3JpYmVJYW1JbnN0YW5jZVByb2ZpbGVBc3NvY2lhdGlvbnNDb21tYW5kLFxuICBEZXNjcmliZUlkZW50aXR5SWRGb3JtYXRDb21tYW5kLFxuICBEZXNjcmliZUlkRm9ybWF0Q29tbWFuZCxcbiAgRGVzY3JpYmVJbWFnZUF0dHJpYnV0ZUNvbW1hbmQsXG4gIERlc2NyaWJlSW1hZ2VzQ29tbWFuZCxcbiAgRGVzY3JpYmVJbXBvcnRJbWFnZVRhc2tzQ29tbWFuZCxcbiAgRGVzY3JpYmVJbXBvcnRTbmFwc2hvdFRhc2tzQ29tbWFuZCxcbiAgRGVzY3JpYmVJbnN0YW5jZUF0dHJpYnV0ZUNvbW1hbmQsXG4gIERlc2NyaWJlSW5zdGFuY2VDb25uZWN0RW5kcG9pbnRzQ29tbWFuZCxcbiAgRGVzY3JpYmVJbnN0YW5jZUNyZWRpdFNwZWNpZmljYXRpb25zQ29tbWFuZCxcbiAgRGVzY3JpYmVJbnN0YW5jZUV2ZW50Tm90aWZpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIERlc2NyaWJlSW5zdGFuY2VFdmVudFdpbmRvd3NDb21tYW5kLFxuICBEZXNjcmliZUluc3RhbmNlc0NvbW1hbmQsXG4gIERlc2NyaWJlSW5zdGFuY2VTdGF0dXNDb21tYW5kLFxuICBEZXNjcmliZUluc3RhbmNlVG9wb2xvZ3lDb21tYW5kLFxuICBEZXNjcmliZUluc3RhbmNlVHlwZU9mZmVyaW5nc0NvbW1hbmQsXG4gIERlc2NyaWJlSW5zdGFuY2VUeXBlc0NvbW1hbmQsXG4gIERlc2NyaWJlSW50ZXJuZXRHYXRld2F5c0NvbW1hbmQsXG4gIERlc2NyaWJlSXBhbUJ5b2FzbkNvbW1hbmQsXG4gIERlc2NyaWJlSXBhbVBvb2xzQ29tbWFuZCxcbiAgRGVzY3JpYmVJcGFtUmVzb3VyY2VEaXNjb3Zlcmllc0NvbW1hbmQsXG4gIERlc2NyaWJlSXBhbVJlc291cmNlRGlzY292ZXJ5QXNzb2NpYXRpb25zQ29tbWFuZCxcbiAgRGVzY3JpYmVJcGFtc0NvbW1hbmQsXG4gIERlc2NyaWJlSXBhbVNjb3Blc0NvbW1hbmQsXG4gIERlc2NyaWJlSXB2NlBvb2xzQ29tbWFuZCxcbiAgRGVzY3JpYmVLZXlQYWlyc0NvbW1hbmQsXG4gIERlc2NyaWJlTGF1bmNoVGVtcGxhdGVzQ29tbWFuZCxcbiAgRGVzY3JpYmVMYXVuY2hUZW1wbGF0ZVZlcnNpb25zQ29tbWFuZCxcbiAgRGVzY3JpYmVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlc0NvbW1hbmQsXG4gIERlc2NyaWJlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZpcnR1YWxJbnRlcmZhY2VHcm91cEFzc29jaWF0aW9uc0NvbW1hbmQsXG4gIERlc2NyaWJlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZwY0Fzc29jaWF0aW9uc0NvbW1hbmQsXG4gIERlc2NyaWJlTG9jYWxHYXRld2F5c0NvbW1hbmQsXG4gIERlc2NyaWJlTG9jYWxHYXRld2F5VmlydHVhbEludGVyZmFjZUdyb3Vwc0NvbW1hbmQsXG4gIERlc2NyaWJlTG9jYWxHYXRld2F5VmlydHVhbEludGVyZmFjZXNDb21tYW5kLFxuICBEZXNjcmliZUxvY2tlZFNuYXBzaG90c0NvbW1hbmQsXG4gIERlc2NyaWJlTWFuYWdlZFByZWZpeExpc3RzQ29tbWFuZCxcbiAgRGVzY3JpYmVNb3ZpbmdBZGRyZXNzZXNDb21tYW5kLFxuICBEZXNjcmliZU5hdEdhdGV3YXlzQ29tbWFuZCxcbiAgRGVzY3JpYmVOZXR3b3JrQWNsc0NvbW1hbmQsXG4gIERlc2NyaWJlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVBbmFseXNlc0NvbW1hbmQsXG4gIERlc2NyaWJlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVzQ29tbWFuZCxcbiAgRGVzY3JpYmVOZXR3b3JrSW5zaWdodHNBbmFseXNlc0NvbW1hbmQsXG4gIERlc2NyaWJlTmV0d29ya0luc2lnaHRzUGF0aHNDb21tYW5kLFxuICBEZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VBdHRyaWJ1dGVDb21tYW5kLFxuICBEZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VQZXJtaXNzaW9uc0NvbW1hbmQsXG4gIERlc2NyaWJlTmV0d29ya0ludGVyZmFjZXNDb21tYW5kLFxuICBEZXNjcmliZVBsYWNlbWVudEdyb3Vwc0NvbW1hbmQsXG4gIERlc2NyaWJlUHJlZml4TGlzdHNDb21tYW5kLFxuICBEZXNjcmliZVByaW5jaXBhbElkRm9ybWF0Q29tbWFuZCxcbiAgRGVzY3JpYmVQdWJsaWNJcHY0UG9vbHNDb21tYW5kLFxuICBEZXNjcmliZVJlZ2lvbnNDb21tYW5kLFxuICBEZXNjcmliZVJlcGxhY2VSb290Vm9sdW1lVGFza3NDb21tYW5kLFxuICBEZXNjcmliZVJlc2VydmVkSW5zdGFuY2VzQ29tbWFuZCxcbiAgRGVzY3JpYmVSZXNlcnZlZEluc3RhbmNlc0xpc3RpbmdzQ29tbWFuZCxcbiAgRGVzY3JpYmVSZXNlcnZlZEluc3RhbmNlc01vZGlmaWNhdGlvbnNDb21tYW5kLFxuICBEZXNjcmliZVJlc2VydmVkSW5zdGFuY2VzT2ZmZXJpbmdzQ29tbWFuZCxcbiAgRGVzY3JpYmVSb3V0ZVRhYmxlc0NvbW1hbmQsXG4gIERlc2NyaWJlU2NoZWR1bGVkSW5zdGFuY2VBdmFpbGFiaWxpdHlDb21tYW5kLFxuICBEZXNjcmliZVNjaGVkdWxlZEluc3RhbmNlc0NvbW1hbmQsXG4gIERlc2NyaWJlU2VjdXJpdHlHcm91cFJlZmVyZW5jZXNDb21tYW5kLFxuICBEZXNjcmliZVNlY3VyaXR5R3JvdXBSdWxlc0NvbW1hbmQsXG4gIERlc2NyaWJlU2VjdXJpdHlHcm91cHNDb21tYW5kLFxuICBEZXNjcmliZVNuYXBzaG90QXR0cmlidXRlQ29tbWFuZCxcbiAgRGVzY3JpYmVTbmFwc2hvdHNDb21tYW5kLFxuICBEZXNjcmliZVNuYXBzaG90VGllclN0YXR1c0NvbW1hbmQsXG4gIERlc2NyaWJlU3BvdERhdGFmZWVkU3Vic2NyaXB0aW9uQ29tbWFuZCxcbiAgRGVzY3JpYmVTcG90RmxlZXRJbnN0YW5jZXNDb21tYW5kLFxuICBEZXNjcmliZVNwb3RGbGVldFJlcXVlc3RIaXN0b3J5Q29tbWFuZCxcbiAgRGVzY3JpYmVTcG90RmxlZXRSZXF1ZXN0c0NvbW1hbmQsXG4gIERlc2NyaWJlU3BvdEluc3RhbmNlUmVxdWVzdHNDb21tYW5kLFxuICBEZXNjcmliZVNwb3RQcmljZUhpc3RvcnlDb21tYW5kLFxuICBEZXNjcmliZVN0YWxlU2VjdXJpdHlHcm91cHNDb21tYW5kLFxuICBEZXNjcmliZVN0b3JlSW1hZ2VUYXNrc0NvbW1hbmQsXG4gIERlc2NyaWJlU3VibmV0c0NvbW1hbmQsXG4gIERlc2NyaWJlVGFnc0NvbW1hbmQsXG4gIERlc2NyaWJlVHJhZmZpY01pcnJvckZpbHRlcnNDb21tYW5kLFxuICBEZXNjcmliZVRyYWZmaWNNaXJyb3JTZXNzaW9uc0NvbW1hbmQsXG4gIERlc2NyaWJlVHJhZmZpY01pcnJvclRhcmdldHNDb21tYW5kLFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5QXR0YWNobWVudHNDb21tYW5kLFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5Q29ubmVjdFBlZXJzQ29tbWFuZCxcbiAgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheUNvbm5lY3RzQ29tbWFuZCxcbiAgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbnNDb21tYW5kLFxuICBEZXNjcmliZVRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRzQ29tbWFuZCxcbiAgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlc0NvbW1hbmQsXG4gIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQW5ub3VuY2VtZW50c0NvbW1hbmQsXG4gIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlc0NvbW1hbmQsXG4gIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlzQ29tbWFuZCxcbiAgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRzQ29tbWFuZCxcbiAgRGVzY3JpYmVUcnVua0ludGVyZmFjZUFzc29jaWF0aW9uc0NvbW1hbmQsXG4gIERlc2NyaWJlVmVyaWZpZWRBY2Nlc3NFbmRwb2ludHNDb21tYW5kLFxuICBEZXNjcmliZVZlcmlmaWVkQWNjZXNzR3JvdXBzQ29tbWFuZCxcbiAgRGVzY3JpYmVWZXJpZmllZEFjY2Vzc0luc3RhbmNlTG9nZ2luZ0NvbmZpZ3VyYXRpb25zQ29tbWFuZCxcbiAgRGVzY3JpYmVWZXJpZmllZEFjY2Vzc0luc3RhbmNlc0NvbW1hbmQsXG4gIERlc2NyaWJlVmVyaWZpZWRBY2Nlc3NUcnVzdFByb3ZpZGVyc0NvbW1hbmQsXG4gIERlc2NyaWJlVm9sdW1lQXR0cmlidXRlQ29tbWFuZCxcbiAgRGVzY3JpYmVWb2x1bWVzQ29tbWFuZCxcbiAgRGVzY3JpYmVWb2x1bWVzTW9kaWZpY2F0aW9uc0NvbW1hbmQsXG4gIERlc2NyaWJlVm9sdW1lU3RhdHVzQ29tbWFuZCxcbiAgRGVzY3JpYmVWcGNBdHRyaWJ1dGVDb21tYW5kLFxuICBEZXNjcmliZVZwY0NsYXNzaWNMaW5rQ29tbWFuZCxcbiAgRGVzY3JpYmVWcGNDbGFzc2ljTGlua0Ruc1N1cHBvcnRDb21tYW5kLFxuICBEZXNjcmliZVZwY0VuZHBvaW50Q29ubmVjdGlvbk5vdGlmaWNhdGlvbnNDb21tYW5kLFxuICBEZXNjcmliZVZwY0VuZHBvaW50Q29ubmVjdGlvbnNDb21tYW5kLFxuICBEZXNjcmliZVZwY0VuZHBvaW50c0NvbW1hbmQsXG4gIERlc2NyaWJlVnBjRW5kcG9pbnRTZXJ2aWNlQ29uZmlndXJhdGlvbnNDb21tYW5kLFxuICBEZXNjcmliZVZwY0VuZHBvaW50U2VydmljZVBlcm1pc3Npb25zQ29tbWFuZCxcbiAgRGVzY3JpYmVWcGNFbmRwb2ludFNlcnZpY2VzQ29tbWFuZCxcbiAgRGVzY3JpYmVWcGNQZWVyaW5nQ29ubmVjdGlvbnNDb21tYW5kLFxuICBEZXNjcmliZVZwY3NDb21tYW5kLFxuICBEZXNjcmliZVZwbkNvbm5lY3Rpb25zQ29tbWFuZCxcbiAgRGVzY3JpYmVWcG5HYXRld2F5c0NvbW1hbmQsXG4gIERldGFjaENsYXNzaWNMaW5rVnBjQ29tbWFuZCxcbiAgRGV0YWNoSW50ZXJuZXRHYXRld2F5Q29tbWFuZCxcbiAgRGV0YWNoTmV0d29ya0ludGVyZmFjZUNvbW1hbmQsXG4gIERldGFjaFZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmQsXG4gIERldGFjaFZvbHVtZUNvbW1hbmQsXG4gIERldGFjaFZwbkdhdGV3YXlDb21tYW5kLFxuICBEaXNhYmxlQWRkcmVzc1RyYW5zZmVyQ29tbWFuZCxcbiAgRGlzYWJsZUF3c05ldHdvcmtQZXJmb3JtYW5jZU1ldHJpY1N1YnNjcmlwdGlvbkNvbW1hbmQsXG4gIERpc2FibGVFYnNFbmNyeXB0aW9uQnlEZWZhdWx0Q29tbWFuZCxcbiAgRGlzYWJsZUZhc3RMYXVuY2hDb21tYW5kLFxuICBEaXNhYmxlRmFzdFNuYXBzaG90UmVzdG9yZXNDb21tYW5kLFxuICBEaXNhYmxlSW1hZ2VDb21tYW5kLFxuICBEaXNhYmxlSW1hZ2VCbG9ja1B1YmxpY0FjY2Vzc0NvbW1hbmQsXG4gIERpc2FibGVJbWFnZURlcHJlY2F0aW9uQ29tbWFuZCxcbiAgRGlzYWJsZUlwYW1Pcmdhbml6YXRpb25BZG1pbkFjY291bnRDb21tYW5kLFxuICBEaXNhYmxlU2VyaWFsQ29uc29sZUFjY2Vzc0NvbW1hbmQsXG4gIERpc2FibGVTbmFwc2hvdEJsb2NrUHVibGljQWNjZXNzQ29tbWFuZCxcbiAgRGlzYWJsZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZVByb3BhZ2F0aW9uQ29tbWFuZCxcbiAgRGlzYWJsZVZnd1JvdXRlUHJvcGFnYXRpb25Db21tYW5kLFxuICBEaXNhYmxlVnBjQ2xhc3NpY0xpbmtDb21tYW5kLFxuICBEaXNhYmxlVnBjQ2xhc3NpY0xpbmtEbnNTdXBwb3J0Q29tbWFuZCxcbiAgRGlzYXNzb2NpYXRlQWRkcmVzc0NvbW1hbmQsXG4gIERpc2Fzc29jaWF0ZUNsaWVudFZwblRhcmdldE5ldHdvcmtDb21tYW5kLFxuICBEaXNhc3NvY2lhdGVFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlQ29tbWFuZCxcbiAgRGlzYXNzb2NpYXRlSWFtSW5zdGFuY2VQcm9maWxlQ29tbWFuZCxcbiAgRGlzYXNzb2NpYXRlSW5zdGFuY2VFdmVudFdpbmRvd0NvbW1hbmQsXG4gIERpc2Fzc29jaWF0ZUlwYW1CeW9hc25Db21tYW5kLFxuICBEaXNhc3NvY2lhdGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kLFxuICBEaXNhc3NvY2lhdGVOYXRHYXRld2F5QWRkcmVzc0NvbW1hbmQsXG4gIERpc2Fzc29jaWF0ZVJvdXRlVGFibGVDb21tYW5kLFxuICBEaXNhc3NvY2lhdGVTdWJuZXRDaWRyQmxvY2tDb21tYW5kLFxuICBEaXNhc3NvY2lhdGVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkNvbW1hbmQsXG4gIERpc2Fzc29jaWF0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVDb21tYW5kLFxuICBEaXNhc3NvY2lhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kLFxuICBEaXNhc3NvY2lhdGVUcnVua0ludGVyZmFjZUNvbW1hbmQsXG4gIERpc2Fzc29jaWF0ZVZwY0NpZHJCbG9ja0NvbW1hbmQsXG4gIEVuYWJsZUFkZHJlc3NUcmFuc2ZlckNvbW1hbmQsXG4gIEVuYWJsZUF3c05ldHdvcmtQZXJmb3JtYW5jZU1ldHJpY1N1YnNjcmlwdGlvbkNvbW1hbmQsXG4gIEVuYWJsZUVic0VuY3J5cHRpb25CeURlZmF1bHRDb21tYW5kLFxuICBFbmFibGVGYXN0TGF1bmNoQ29tbWFuZCxcbiAgRW5hYmxlRmFzdFNuYXBzaG90UmVzdG9yZXNDb21tYW5kLFxuICBFbmFibGVJbWFnZUNvbW1hbmQsXG4gIEVuYWJsZUltYWdlQmxvY2tQdWJsaWNBY2Nlc3NDb21tYW5kLFxuICBFbmFibGVJbWFnZURlcHJlY2F0aW9uQ29tbWFuZCxcbiAgRW5hYmxlSXBhbU9yZ2FuaXphdGlvbkFkbWluQWNjb3VudENvbW1hbmQsXG4gIEVuYWJsZVJlYWNoYWJpbGl0eUFuYWx5emVyT3JnYW5pemF0aW9uU2hhcmluZ0NvbW1hbmQsXG4gIEVuYWJsZVNlcmlhbENvbnNvbGVBY2Nlc3NDb21tYW5kLFxuICBFbmFibGVTbmFwc2hvdEJsb2NrUHVibGljQWNjZXNzQ29tbWFuZCxcbiAgRW5hYmxlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlUHJvcGFnYXRpb25Db21tYW5kLFxuICBFbmFibGVWZ3dSb3V0ZVByb3BhZ2F0aW9uQ29tbWFuZCxcbiAgRW5hYmxlVm9sdW1lSU9Db21tYW5kLFxuICBFbmFibGVWcGNDbGFzc2ljTGlua0NvbW1hbmQsXG4gIEVuYWJsZVZwY0NsYXNzaWNMaW5rRG5zU3VwcG9ydENvbW1hbmQsXG4gIEV4cG9ydENsaWVudFZwbkNsaWVudENlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3RDb21tYW5kLFxuICBFeHBvcnRDbGllbnRWcG5DbGllbnRDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgRXhwb3J0SW1hZ2VDb21tYW5kLFxuICBFeHBvcnRUcmFuc2l0R2F0ZXdheVJvdXRlc0NvbW1hbmQsXG4gIEdldEFzc29jaWF0ZWRFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlc0NvbW1hbmQsXG4gIEdldEFzc29jaWF0ZWRJcHY2UG9vbENpZHJzQ29tbWFuZCxcbiAgR2V0QXdzTmV0d29ya1BlcmZvcm1hbmNlRGF0YUNvbW1hbmQsXG4gIEdldENhcGFjaXR5UmVzZXJ2YXRpb25Vc2FnZUNvbW1hbmQsXG4gIEdldENvaXBQb29sVXNhZ2VDb21tYW5kLFxuICBHZXRDb25zb2xlT3V0cHV0Q29tbWFuZCxcbiAgR2V0Q29uc29sZVNjcmVlbnNob3RDb21tYW5kLFxuICBHZXREZWZhdWx0Q3JlZGl0U3BlY2lmaWNhdGlvbkNvbW1hbmQsXG4gIEdldEVic0RlZmF1bHRLbXNLZXlJZENvbW1hbmQsXG4gIEdldEVic0VuY3J5cHRpb25CeURlZmF1bHRDb21tYW5kLFxuICBHZXRGbG93TG9nc0ludGVncmF0aW9uVGVtcGxhdGVDb21tYW5kLFxuICBHZXRHcm91cHNGb3JDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZCxcbiAgR2V0SG9zdFJlc2VydmF0aW9uUHVyY2hhc2VQcmV2aWV3Q29tbWFuZCxcbiAgR2V0SW1hZ2VCbG9ja1B1YmxpY0FjY2Vzc1N0YXRlQ29tbWFuZCxcbiAgR2V0SW5zdGFuY2VUeXBlc0Zyb21JbnN0YW5jZVJlcXVpcmVtZW50c0NvbW1hbmQsXG4gIEdldEluc3RhbmNlVWVmaURhdGFDb21tYW5kLFxuICBHZXRJcGFtQWRkcmVzc0hpc3RvcnlDb21tYW5kLFxuICBHZXRJcGFtRGlzY292ZXJlZEFjY291bnRzQ29tbWFuZCxcbiAgR2V0SXBhbURpc2NvdmVyZWRQdWJsaWNBZGRyZXNzZXNDb21tYW5kLFxuICBHZXRJcGFtRGlzY292ZXJlZFJlc291cmNlQ2lkcnNDb21tYW5kLFxuICBHZXRJcGFtUG9vbEFsbG9jYXRpb25zQ29tbWFuZCxcbiAgR2V0SXBhbVBvb2xDaWRyc0NvbW1hbmQsXG4gIEdldElwYW1SZXNvdXJjZUNpZHJzQ29tbWFuZCxcbiAgR2V0TGF1bmNoVGVtcGxhdGVEYXRhQ29tbWFuZCxcbiAgR2V0TWFuYWdlZFByZWZpeExpc3RBc3NvY2lhdGlvbnNDb21tYW5kLFxuICBHZXRNYW5hZ2VkUHJlZml4TGlzdEVudHJpZXNDb21tYW5kLFxuICBHZXROZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUFuYWx5c2lzRmluZGluZ3NDb21tYW5kLFxuICBHZXROZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUNvbnRlbnRDb21tYW5kLFxuICBHZXRQYXNzd29yZERhdGFDb21tYW5kLFxuICBHZXRSZXNlcnZlZEluc3RhbmNlc0V4Y2hhbmdlUXVvdGVDb21tYW5kLFxuICBHZXRTZWN1cml0eUdyb3Vwc0ZvclZwY0NvbW1hbmQsXG4gIEdldFNlcmlhbENvbnNvbGVBY2Nlc3NTdGF0dXNDb21tYW5kLFxuICBHZXRTbmFwc2hvdEJsb2NrUHVibGljQWNjZXNzU3RhdGVDb21tYW5kLFxuICBHZXRTcG90UGxhY2VtZW50U2NvcmVzQ29tbWFuZCxcbiAgR2V0U3VibmV0Q2lkclJlc2VydmF0aW9uc0NvbW1hbmQsXG4gIEdldFRyYW5zaXRHYXRld2F5QXR0YWNobWVudFByb3BhZ2F0aW9uc0NvbW1hbmQsXG4gIEdldFRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluQXNzb2NpYXRpb25zQ29tbWFuZCxcbiAgR2V0VHJhbnNpdEdhdGV3YXlQb2xpY3lUYWJsZUFzc29jaWF0aW9uc0NvbW1hbmQsXG4gIEdldFRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVFbnRyaWVzQ29tbWFuZCxcbiAgR2V0VHJhbnNpdEdhdGV3YXlQcmVmaXhMaXN0UmVmZXJlbmNlc0NvbW1hbmQsXG4gIEdldFRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFzc29jaWF0aW9uc0NvbW1hbmQsXG4gIEdldFRyYW5zaXRHYXRld2F5Um91dGVUYWJsZVByb3BhZ2F0aW9uc0NvbW1hbmQsXG4gIEdldFZlcmlmaWVkQWNjZXNzRW5kcG9pbnRQb2xpY3lDb21tYW5kLFxuICBHZXRWZXJpZmllZEFjY2Vzc0dyb3VwUG9saWN5Q29tbWFuZCxcbiAgR2V0VnBuQ29ubmVjdGlvbkRldmljZVNhbXBsZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBHZXRWcG5Db25uZWN0aW9uRGV2aWNlVHlwZXNDb21tYW5kLFxuICBHZXRWcG5UdW5uZWxSZXBsYWNlbWVudFN0YXR1c0NvbW1hbmQsXG4gIEltcG9ydENsaWVudFZwbkNsaWVudENlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3RDb21tYW5kLFxuICBJbXBvcnRJbWFnZUNvbW1hbmQsXG4gIEltcG9ydEluc3RhbmNlQ29tbWFuZCxcbiAgSW1wb3J0S2V5UGFpckNvbW1hbmQsXG4gIEltcG9ydFNuYXBzaG90Q29tbWFuZCxcbiAgSW1wb3J0Vm9sdW1lQ29tbWFuZCxcbiAgTGlzdEltYWdlc0luUmVjeWNsZUJpbkNvbW1hbmQsXG4gIExpc3RTbmFwc2hvdHNJblJlY3ljbGVCaW5Db21tYW5kLFxuICBMb2NrU25hcHNob3RDb21tYW5kLFxuICBNb2RpZnlBZGRyZXNzQXR0cmlidXRlQ29tbWFuZCxcbiAgTW9kaWZ5QXZhaWxhYmlsaXR5Wm9uZUdyb3VwQ29tbWFuZCxcbiAgTW9kaWZ5Q2FwYWNpdHlSZXNlcnZhdGlvbkNvbW1hbmQsXG4gIE1vZGlmeUNhcGFjaXR5UmVzZXJ2YXRpb25GbGVldENvbW1hbmQsXG4gIE1vZGlmeUNsaWVudFZwbkVuZHBvaW50Q29tbWFuZCxcbiAgTW9kaWZ5RGVmYXVsdENyZWRpdFNwZWNpZmljYXRpb25Db21tYW5kLFxuICBNb2RpZnlFYnNEZWZhdWx0S21zS2V5SWRDb21tYW5kLFxuICBNb2RpZnlGbGVldENvbW1hbmQsXG4gIE1vZGlmeUZwZ2FJbWFnZUF0dHJpYnV0ZUNvbW1hbmQsXG4gIE1vZGlmeUhvc3RzQ29tbWFuZCxcbiAgTW9kaWZ5SWRlbnRpdHlJZEZvcm1hdENvbW1hbmQsXG4gIE1vZGlmeUlkRm9ybWF0Q29tbWFuZCxcbiAgTW9kaWZ5SW1hZ2VBdHRyaWJ1dGVDb21tYW5kLFxuICBNb2RpZnlJbnN0YW5jZUF0dHJpYnV0ZUNvbW1hbmQsXG4gIE1vZGlmeUluc3RhbmNlQ2FwYWNpdHlSZXNlcnZhdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBNb2RpZnlJbnN0YW5jZUNyZWRpdFNwZWNpZmljYXRpb25Db21tYW5kLFxuICBNb2RpZnlJbnN0YW5jZUV2ZW50U3RhcnRUaW1lQ29tbWFuZCxcbiAgTW9kaWZ5SW5zdGFuY2VFdmVudFdpbmRvd0NvbW1hbmQsXG4gIE1vZGlmeUluc3RhbmNlTWFpbnRlbmFuY2VPcHRpb25zQ29tbWFuZCxcbiAgTW9kaWZ5SW5zdGFuY2VNZXRhZGF0YU9wdGlvbnNDb21tYW5kLFxuICBNb2RpZnlJbnN0YW5jZVBsYWNlbWVudENvbW1hbmQsXG4gIE1vZGlmeUlwYW1Db21tYW5kLFxuICBNb2RpZnlJcGFtUG9vbENvbW1hbmQsXG4gIE1vZGlmeUlwYW1SZXNvdXJjZUNpZHJDb21tYW5kLFxuICBNb2RpZnlJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kLFxuICBNb2RpZnlJcGFtU2NvcGVDb21tYW5kLFxuICBNb2RpZnlMYXVuY2hUZW1wbGF0ZUNvbW1hbmQsXG4gIE1vZGlmeUxvY2FsR2F0ZXdheVJvdXRlQ29tbWFuZCxcbiAgTW9kaWZ5TWFuYWdlZFByZWZpeExpc3RDb21tYW5kLFxuICBNb2RpZnlOZXR3b3JrSW50ZXJmYWNlQXR0cmlidXRlQ29tbWFuZCxcbiAgTW9kaWZ5UHJpdmF0ZURuc05hbWVPcHRpb25zQ29tbWFuZCxcbiAgTW9kaWZ5UmVzZXJ2ZWRJbnN0YW5jZXNDb21tYW5kLFxuICBNb2RpZnlTZWN1cml0eUdyb3VwUnVsZXNDb21tYW5kLFxuICBNb2RpZnlTbmFwc2hvdEF0dHJpYnV0ZUNvbW1hbmQsXG4gIE1vZGlmeVNuYXBzaG90VGllckNvbW1hbmQsXG4gIE1vZGlmeVNwb3RGbGVldFJlcXVlc3RDb21tYW5kLFxuICBNb2RpZnlTdWJuZXRBdHRyaWJ1dGVDb21tYW5kLFxuICBNb2RpZnlUcmFmZmljTWlycm9yRmlsdGVyTmV0d29ya1NlcnZpY2VzQ29tbWFuZCxcbiAgTW9kaWZ5VHJhZmZpY01pcnJvckZpbHRlclJ1bGVDb21tYW5kLFxuICBNb2RpZnlUcmFmZmljTWlycm9yU2Vzc2lvbkNvbW1hbmQsXG4gIE1vZGlmeVRyYW5zaXRHYXRld2F5Q29tbWFuZCxcbiAgTW9kaWZ5VHJhbnNpdEdhdGV3YXlQcmVmaXhMaXN0UmVmZXJlbmNlQ29tbWFuZCxcbiAgTW9kaWZ5VHJhbnNpdEdhdGV3YXlWcGNBdHRhY2htZW50Q29tbWFuZCxcbiAgTW9kaWZ5VmVyaWZpZWRBY2Nlc3NFbmRwb2ludENvbW1hbmQsXG4gIE1vZGlmeVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRQb2xpY3lDb21tYW5kLFxuICBNb2RpZnlWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZCxcbiAgTW9kaWZ5VmVyaWZpZWRBY2Nlc3NHcm91cFBvbGljeUNvbW1hbmQsXG4gIE1vZGlmeVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VDb21tYW5kLFxuICBNb2RpZnlWZXJpZmllZEFjY2Vzc0luc3RhbmNlTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBNb2RpZnlWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kLFxuICBNb2RpZnlWb2x1bWVDb21tYW5kLFxuICBNb2RpZnlWb2x1bWVBdHRyaWJ1dGVDb21tYW5kLFxuICBNb2RpZnlWcGNBdHRyaWJ1dGVDb21tYW5kLFxuICBNb2RpZnlWcGNFbmRwb2ludENvbW1hbmQsXG4gIE1vZGlmeVZwY0VuZHBvaW50Q29ubmVjdGlvbk5vdGlmaWNhdGlvbkNvbW1hbmQsXG4gIE1vZGlmeVZwY0VuZHBvaW50U2VydmljZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBNb2RpZnlWcGNFbmRwb2ludFNlcnZpY2VQYXllclJlc3BvbnNpYmlsaXR5Q29tbWFuZCxcbiAgTW9kaWZ5VnBjRW5kcG9pbnRTZXJ2aWNlUGVybWlzc2lvbnNDb21tYW5kLFxuICBNb2RpZnlWcGNQZWVyaW5nQ29ubmVjdGlvbk9wdGlvbnNDb21tYW5kLFxuICBNb2RpZnlWcGNUZW5hbmN5Q29tbWFuZCxcbiAgTW9kaWZ5VnBuQ29ubmVjdGlvbkNvbW1hbmQsXG4gIE1vZGlmeVZwbkNvbm5lY3Rpb25PcHRpb25zQ29tbWFuZCxcbiAgTW9kaWZ5VnBuVHVubmVsQ2VydGlmaWNhdGVDb21tYW5kLFxuICBNb2RpZnlWcG5UdW5uZWxPcHRpb25zQ29tbWFuZCxcbiAgTW9uaXRvckluc3RhbmNlc0NvbW1hbmQsXG4gIE1vdmVBZGRyZXNzVG9WcGNDb21tYW5kLFxuICBNb3ZlQnlvaXBDaWRyVG9JcGFtQ29tbWFuZCxcbiAgUHJvdmlzaW9uQnlvaXBDaWRyQ29tbWFuZCxcbiAgUHJvdmlzaW9uSXBhbUJ5b2FzbkNvbW1hbmQsXG4gIFByb3Zpc2lvbklwYW1Qb29sQ2lkckNvbW1hbmQsXG4gIFByb3Zpc2lvblB1YmxpY0lwdjRQb29sQ2lkckNvbW1hbmQsXG4gIFB1cmNoYXNlQ2FwYWNpdHlCbG9ja0NvbW1hbmQsXG4gIFB1cmNoYXNlSG9zdFJlc2VydmF0aW9uQ29tbWFuZCxcbiAgUHVyY2hhc2VSZXNlcnZlZEluc3RhbmNlc09mZmVyaW5nQ29tbWFuZCxcbiAgUHVyY2hhc2VTY2hlZHVsZWRJbnN0YW5jZXNDb21tYW5kLFxuICBSZWJvb3RJbnN0YW5jZXNDb21tYW5kLFxuICBSZWdpc3RlckltYWdlQ29tbWFuZCxcbiAgUmVnaXN0ZXJJbnN0YW5jZUV2ZW50Tm90aWZpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIFJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cE1lbWJlcnNDb21tYW5kLFxuICBSZWdpc3RlclRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBTb3VyY2VzQ29tbWFuZCxcbiAgUmVqZWN0VHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Bc3NvY2lhdGlvbnNDb21tYW5kLFxuICBSZWplY3RUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZCxcbiAgUmVqZWN0VHJhbnNpdEdhdGV3YXlWcGNBdHRhY2htZW50Q29tbWFuZCxcbiAgUmVqZWN0VnBjRW5kcG9pbnRDb25uZWN0aW9uc0NvbW1hbmQsXG4gIFJlamVjdFZwY1BlZXJpbmdDb25uZWN0aW9uQ29tbWFuZCxcbiAgUmVsZWFzZUFkZHJlc3NDb21tYW5kLFxuICBSZWxlYXNlSG9zdHNDb21tYW5kLFxuICBSZWxlYXNlSXBhbVBvb2xBbGxvY2F0aW9uQ29tbWFuZCxcbiAgUmVwbGFjZUlhbUluc3RhbmNlUHJvZmlsZUFzc29jaWF0aW9uQ29tbWFuZCxcbiAgUmVwbGFjZU5ldHdvcmtBY2xBc3NvY2lhdGlvbkNvbW1hbmQsXG4gIFJlcGxhY2VOZXR3b3JrQWNsRW50cnlDb21tYW5kLFxuICBSZXBsYWNlUm91dGVDb21tYW5kLFxuICBSZXBsYWNlUm91dGVUYWJsZUFzc29jaWF0aW9uQ29tbWFuZCxcbiAgUmVwbGFjZVRyYW5zaXRHYXRld2F5Um91dGVDb21tYW5kLFxuICBSZXBsYWNlVnBuVHVubmVsQ29tbWFuZCxcbiAgUmVwb3J0SW5zdGFuY2VTdGF0dXNDb21tYW5kLFxuICBSZXF1ZXN0U3BvdEZsZWV0Q29tbWFuZCxcbiAgUmVxdWVzdFNwb3RJbnN0YW5jZXNDb21tYW5kLFxuICBSZXNldEFkZHJlc3NBdHRyaWJ1dGVDb21tYW5kLFxuICBSZXNldEVic0RlZmF1bHRLbXNLZXlJZENvbW1hbmQsXG4gIFJlc2V0RnBnYUltYWdlQXR0cmlidXRlQ29tbWFuZCxcbiAgUmVzZXRJbWFnZUF0dHJpYnV0ZUNvbW1hbmQsXG4gIFJlc2V0SW5zdGFuY2VBdHRyaWJ1dGVDb21tYW5kLFxuICBSZXNldE5ldHdvcmtJbnRlcmZhY2VBdHRyaWJ1dGVDb21tYW5kLFxuICBSZXNldFNuYXBzaG90QXR0cmlidXRlQ29tbWFuZCxcbiAgUmVzdG9yZUFkZHJlc3NUb0NsYXNzaWNDb21tYW5kLFxuICBSZXN0b3JlSW1hZ2VGcm9tUmVjeWNsZUJpbkNvbW1hbmQsXG4gIFJlc3RvcmVNYW5hZ2VkUHJlZml4TGlzdFZlcnNpb25Db21tYW5kLFxuICBSZXN0b3JlU25hcHNob3RGcm9tUmVjeWNsZUJpbkNvbW1hbmQsXG4gIFJlc3RvcmVTbmFwc2hvdFRpZXJDb21tYW5kLFxuICBSZXZva2VDbGllbnRWcG5JbmdyZXNzQ29tbWFuZCxcbiAgUmV2b2tlU2VjdXJpdHlHcm91cEVncmVzc0NvbW1hbmQsXG4gIFJldm9rZVNlY3VyaXR5R3JvdXBJbmdyZXNzQ29tbWFuZCxcbiAgUnVuSW5zdGFuY2VzQ29tbWFuZCxcbiAgUnVuU2NoZWR1bGVkSW5zdGFuY2VzQ29tbWFuZCxcbiAgU2VhcmNoTG9jYWxHYXRld2F5Um91dGVzQ29tbWFuZCxcbiAgU2VhcmNoVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cHNDb21tYW5kLFxuICBTZWFyY2hUcmFuc2l0R2F0ZXdheVJvdXRlc0NvbW1hbmQsXG4gIFNlbmREaWFnbm9zdGljSW50ZXJydXB0Q29tbWFuZCxcbiAgU3RhcnRJbnN0YW5jZXNDb21tYW5kLFxuICBTdGFydE5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzaXNDb21tYW5kLFxuICBTdGFydE5ldHdvcmtJbnNpZ2h0c0FuYWx5c2lzQ29tbWFuZCxcbiAgU3RhcnRWcGNFbmRwb2ludFNlcnZpY2VQcml2YXRlRG5zVmVyaWZpY2F0aW9uQ29tbWFuZCxcbiAgU3RvcEluc3RhbmNlc0NvbW1hbmQsXG4gIFRlcm1pbmF0ZUNsaWVudFZwbkNvbm5lY3Rpb25zQ29tbWFuZCxcbiAgVGVybWluYXRlSW5zdGFuY2VzQ29tbWFuZCxcbiAgVW5hc3NpZ25JcHY2QWRkcmVzc2VzQ29tbWFuZCxcbiAgVW5hc3NpZ25Qcml2YXRlSXBBZGRyZXNzZXNDb21tYW5kLFxuICBVbmFzc2lnblByaXZhdGVOYXRHYXRld2F5QWRkcmVzc0NvbW1hbmQsXG4gIFVubG9ja1NuYXBzaG90Q29tbWFuZCxcbiAgVW5tb25pdG9ySW5zdGFuY2VzQ29tbWFuZCxcbiAgVXBkYXRlU2VjdXJpdHlHcm91cFJ1bGVEZXNjcmlwdGlvbnNFZ3Jlc3NDb21tYW5kLFxuICBVcGRhdGVTZWN1cml0eUdyb3VwUnVsZURlc2NyaXB0aW9uc0luZ3Jlc3NDb21tYW5kLFxuICBXaXRoZHJhd0J5b2lwQ2lkckNvbW1hbmQsXG59O1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IG1vZGVsc1xuICovXG5leHBvcnQgdHlwZSBFQzJTZXJ2aWNlID0ge1xuICByZWFkb25seSBfOiB1bmlxdWUgc3ltYm9sO1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBY2NlcHRBZGRyZXNzVHJhbnNmZXJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYWNjZXB0QWRkcmVzc1RyYW5zZmVyOiAoXG4gICAgYXJnczogQWNjZXB0QWRkcmVzc1RyYW5zZmVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEFjY2VwdEFkZHJlc3NUcmFuc2ZlckNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQWNjZXB0UmVzZXJ2ZWRJbnN0YW5jZXNFeGNoYW5nZVF1b3RlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFjY2VwdFJlc2VydmVkSW5zdGFuY2VzRXhjaGFuZ2VRdW90ZTogKFxuICAgIGFyZ3M6IEFjY2VwdFJlc2VydmVkSW5zdGFuY2VzRXhjaGFuZ2VRdW90ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBBY2NlcHRSZXNlcnZlZEluc3RhbmNlc0V4Y2hhbmdlUXVvdGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFjY2VwdFRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluQXNzb2NpYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFjY2VwdFRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluQXNzb2NpYXRpb25zOiAoXG4gICAgYXJnczogQWNjZXB0VHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Bc3NvY2lhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQWNjZXB0VHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Bc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFjY2VwdFRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYWNjZXB0VHJhbnNpdEdhdGV3YXlQZWVyaW5nQXR0YWNobWVudDogKFxuICAgIGFyZ3M6IEFjY2VwdFRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQWNjZXB0VHJhbnNpdEdhdGV3YXlQZWVyaW5nQXR0YWNobWVudENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQWNjZXB0VHJhbnNpdEdhdGV3YXlWcGNBdHRhY2htZW50Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFjY2VwdFRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudDogKFxuICAgIGFyZ3M6IEFjY2VwdFRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBBY2NlcHRUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFjY2VwdFZwY0VuZHBvaW50Q29ubmVjdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYWNjZXB0VnBjRW5kcG9pbnRDb25uZWN0aW9uczogKFxuICAgIGFyZ3M6IEFjY2VwdFZwY0VuZHBvaW50Q29ubmVjdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQWNjZXB0VnBjRW5kcG9pbnRDb25uZWN0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQWNjZXB0VnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYWNjZXB0VnBjUGVlcmluZ0Nvbm5lY3Rpb246IChcbiAgICBhcmdzOiBBY2NlcHRWcGNQZWVyaW5nQ29ubmVjdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBBY2NlcHRWcGNQZWVyaW5nQ29ubmVjdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQWR2ZXJ0aXNlQnlvaXBDaWRyQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFkdmVydGlzZUJ5b2lwQ2lkcjogKFxuICAgIGFyZ3M6IEFkdmVydGlzZUJ5b2lwQ2lkckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBBZHZlcnRpc2VCeW9pcENpZHJDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFsbG9jYXRlQWRkcmVzc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBhbGxvY2F0ZUFkZHJlc3M6IChcbiAgICBhcmdzOiBBbGxvY2F0ZUFkZHJlc3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8QWxsb2NhdGVBZGRyZXNzQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBbGxvY2F0ZUhvc3RzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFsbG9jYXRlSG9zdHM6IChcbiAgICBhcmdzOiBBbGxvY2F0ZUhvc3RzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PEFsbG9jYXRlSG9zdHNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFsbG9jYXRlSXBhbVBvb2xDaWRyQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFsbG9jYXRlSXBhbVBvb2xDaWRyOiAoXG4gICAgYXJnczogQWxsb2NhdGVJcGFtUG9vbENpZHJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQWxsb2NhdGVJcGFtUG9vbENpZHJDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFwcGx5U2VjdXJpdHlHcm91cHNUb0NsaWVudFZwblRhcmdldE5ldHdvcmtDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYXBwbHlTZWN1cml0eUdyb3Vwc1RvQ2xpZW50VnBuVGFyZ2V0TmV0d29yazogKFxuICAgIGFyZ3M6IEFwcGx5U2VjdXJpdHlHcm91cHNUb0NsaWVudFZwblRhcmdldE5ldHdvcmtDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQXBwbHlTZWN1cml0eUdyb3Vwc1RvQ2xpZW50VnBuVGFyZ2V0TmV0d29ya0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQXNzaWduSXB2NkFkZHJlc3Nlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBhc3NpZ25JcHY2QWRkcmVzc2VzOiAoXG4gICAgYXJnczogQXNzaWduSXB2NkFkZHJlc3Nlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBBc3NpZ25JcHY2QWRkcmVzc2VzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBc3NpZ25Qcml2YXRlSXBBZGRyZXNzZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYXNzaWduUHJpdmF0ZUlwQWRkcmVzc2VzOiAoXG4gICAgYXJnczogQXNzaWduUHJpdmF0ZUlwQWRkcmVzc2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEFzc2lnblByaXZhdGVJcEFkZHJlc3Nlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQXNzaWduUHJpdmF0ZU5hdEdhdGV3YXlBZGRyZXNzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFzc2lnblByaXZhdGVOYXRHYXRld2F5QWRkcmVzczogKFxuICAgIGFyZ3M6IEFzc2lnblByaXZhdGVOYXRHYXRld2F5QWRkcmVzc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBBc3NpZ25Qcml2YXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFzc29jaWF0ZUFkZHJlc3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYXNzb2NpYXRlQWRkcmVzczogKFxuICAgIGFyZ3M6IEFzc29jaWF0ZUFkZHJlc3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8QXNzb2NpYXRlQWRkcmVzc0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQXNzb2NpYXRlQ2xpZW50VnBuVGFyZ2V0TmV0d29ya0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBhc3NvY2lhdGVDbGllbnRWcG5UYXJnZXROZXR3b3JrOiAoXG4gICAgYXJnczogQXNzb2NpYXRlQ2xpZW50VnBuVGFyZ2V0TmV0d29ya0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBBc3NvY2lhdGVDbGllbnRWcG5UYXJnZXROZXR3b3JrQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBc3NvY2lhdGVEaGNwT3B0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBhc3NvY2lhdGVEaGNwT3B0aW9uczogKFxuICAgIGFyZ3M6IEFzc29jaWF0ZURoY3BPcHRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEFzc29jaWF0ZURoY3BPcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBc3NvY2lhdGVFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFzc29jaWF0ZUVuY2xhdmVDZXJ0aWZpY2F0ZUlhbVJvbGU6IChcbiAgICBhcmdzOiBBc3NvY2lhdGVFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEFzc29jaWF0ZUVuY2xhdmVDZXJ0aWZpY2F0ZUlhbVJvbGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFzc29jaWF0ZUlhbUluc3RhbmNlUHJvZmlsZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBhc3NvY2lhdGVJYW1JbnN0YW5jZVByb2ZpbGU6IChcbiAgICBhcmdzOiBBc3NvY2lhdGVJYW1JbnN0YW5jZVByb2ZpbGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQXNzb2NpYXRlSWFtSW5zdGFuY2VQcm9maWxlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBc3NvY2lhdGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFzc29jaWF0ZUluc3RhbmNlRXZlbnRXaW5kb3c6IChcbiAgICBhcmdzOiBBc3NvY2lhdGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEFzc29jaWF0ZUluc3RhbmNlRXZlbnRXaW5kb3dDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFzc29jaWF0ZUlwYW1CeW9hc25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYXNzb2NpYXRlSXBhbUJ5b2FzbjogKFxuICAgIGFyZ3M6IEFzc29jaWF0ZUlwYW1CeW9hc25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQXNzb2NpYXRlSXBhbUJ5b2FzbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQXNzb2NpYXRlSXBhbVJlc291cmNlRGlzY292ZXJ5Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFzc29jaWF0ZUlwYW1SZXNvdXJjZURpc2NvdmVyeTogKFxuICAgIGFyZ3M6IEFzc29jaWF0ZUlwYW1SZXNvdXJjZURpc2NvdmVyeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBBc3NvY2lhdGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFzc29jaWF0ZU5hdEdhdGV3YXlBZGRyZXNzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFzc29jaWF0ZU5hdEdhdGV3YXlBZGRyZXNzOiAoXG4gICAgYXJnczogQXNzb2NpYXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQXNzb2NpYXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFzc29jaWF0ZVJvdXRlVGFibGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYXNzb2NpYXRlUm91dGVUYWJsZTogKFxuICAgIGFyZ3M6IEFzc29jaWF0ZVJvdXRlVGFibGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQXNzb2NpYXRlUm91dGVUYWJsZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQXNzb2NpYXRlU3VibmV0Q2lkckJsb2NrQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFzc29jaWF0ZVN1Ym5ldENpZHJCbG9jazogKFxuICAgIGFyZ3M6IEFzc29jaWF0ZVN1Ym5ldENpZHJCbG9ja0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBBc3NvY2lhdGVTdWJuZXRDaWRyQmxvY2tDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFzc29jaWF0ZVRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFzc29jaWF0ZVRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluOiAoXG4gICAgYXJnczogQXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFzc29jaWF0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlQb2xpY3lUYWJsZTogKFxuICAgIGFyZ3M6IEFzc29jaWF0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlQb2xpY3lUYWJsZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFzc29jaWF0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZTogKFxuICAgIGFyZ3M6IEFzc29jaWF0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBBc3NvY2lhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFzc29jaWF0ZVRydW5rSW50ZXJmYWNlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFzc29jaWF0ZVRydW5rSW50ZXJmYWNlOiAoXG4gICAgYXJnczogQXNzb2NpYXRlVHJ1bmtJbnRlcmZhY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQXNzb2NpYXRlVHJ1bmtJbnRlcmZhY2VDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFzc29jaWF0ZVZwY0NpZHJCbG9ja0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBhc3NvY2lhdGVWcGNDaWRyQmxvY2s6IChcbiAgICBhcmdzOiBBc3NvY2lhdGVWcGNDaWRyQmxvY2tDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQXNzb2NpYXRlVnBjQ2lkckJsb2NrQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBdHRhY2hDbGFzc2ljTGlua1ZwY0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBhdHRhY2hDbGFzc2ljTGlua1ZwYzogKFxuICAgIGFyZ3M6IEF0dGFjaENsYXNzaWNMaW5rVnBjQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEF0dGFjaENsYXNzaWNMaW5rVnBjQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBdHRhY2hJbnRlcm5ldEdhdGV3YXlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYXR0YWNoSW50ZXJuZXRHYXRld2F5OiAoXG4gICAgYXJnczogQXR0YWNoSW50ZXJuZXRHYXRld2F5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEF0dGFjaEludGVybmV0R2F0ZXdheUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQXR0YWNoTmV0d29ya0ludGVyZmFjZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBhdHRhY2hOZXR3b3JrSW50ZXJmYWNlOiAoXG4gICAgYXJnczogQXR0YWNoTmV0d29ya0ludGVyZmFjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBBdHRhY2hOZXR3b3JrSW50ZXJmYWNlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBdHRhY2hWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYXR0YWNoVmVyaWZpZWRBY2Nlc3NUcnVzdFByb3ZpZGVyOiAoXG4gICAgYXJnczogQXR0YWNoVmVyaWZpZWRBY2Nlc3NUcnVzdFByb3ZpZGVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEF0dGFjaFZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQXR0YWNoVm9sdW1lQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGF0dGFjaFZvbHVtZTogKFxuICAgIGFyZ3M6IEF0dGFjaFZvbHVtZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxBdHRhY2hWb2x1bWVDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEF0dGFjaFZwbkdhdGV3YXlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgYXR0YWNoVnBuR2F0ZXdheTogKFxuICAgIGFyZ3M6IEF0dGFjaFZwbkdhdGV3YXlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8QXR0YWNoVnBuR2F0ZXdheUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQXV0aG9yaXplQ2xpZW50VnBuSW5ncmVzc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBhdXRob3JpemVDbGllbnRWcG5JbmdyZXNzOiAoXG4gICAgYXJnczogQXV0aG9yaXplQ2xpZW50VnBuSW5ncmVzc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBBdXRob3JpemVDbGllbnRWcG5JbmdyZXNzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBdXRob3JpemVTZWN1cml0eUdyb3VwRWdyZXNzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvcml6ZVNlY3VyaXR5R3JvdXBFZ3Jlc3M6IChcbiAgICBhcmdzOiBBdXRob3JpemVTZWN1cml0eUdyb3VwRWdyZXNzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEF1dGhvcml6ZVNlY3VyaXR5R3JvdXBFZ3Jlc3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEF1dGhvcml6ZVNlY3VyaXR5R3JvdXBJbmdyZXNzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvcml6ZVNlY3VyaXR5R3JvdXBJbmdyZXNzOiAoXG4gICAgYXJnczogQXV0aG9yaXplU2VjdXJpdHlHcm91cEluZ3Jlc3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQXV0aG9yaXplU2VjdXJpdHlHcm91cEluZ3Jlc3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEJ1bmRsZUluc3RhbmNlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGJ1bmRsZUluc3RhbmNlOiAoXG4gICAgYXJnczogQnVuZGxlSW5zdGFuY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8QnVuZGxlSW5zdGFuY2VDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENhbmNlbEJ1bmRsZVRhc2tDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY2FuY2VsQnVuZGxlVGFzazogKFxuICAgIGFyZ3M6IENhbmNlbEJ1bmRsZVRhc2tDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8Q2FuY2VsQnVuZGxlVGFza0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ2FuY2VsQ2FwYWNpdHlSZXNlcnZhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjYW5jZWxDYXBhY2l0eVJlc2VydmF0aW9uOiAoXG4gICAgYXJnczogQ2FuY2VsQ2FwYWNpdHlSZXNlcnZhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDYW5jZWxDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDYW5jZWxDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNhbmNlbENhcGFjaXR5UmVzZXJ2YXRpb25GbGVldHM6IChcbiAgICBhcmdzOiBDYW5jZWxDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENhbmNlbENhcGFjaXR5UmVzZXJ2YXRpb25GbGVldHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENhbmNlbENvbnZlcnNpb25UYXNrQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNhbmNlbENvbnZlcnNpb25UYXNrOiAoXG4gICAgYXJnczogQ2FuY2VsQ29udmVyc2lvblRhc2tDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ2FuY2VsQ29udmVyc2lvblRhc2tDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENhbmNlbEV4cG9ydFRhc2tDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY2FuY2VsRXhwb3J0VGFzazogKFxuICAgIGFyZ3M6IENhbmNlbEV4cG9ydFRhc2tDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8Q2FuY2VsRXhwb3J0VGFza0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ2FuY2VsSW1hZ2VMYXVuY2hQZXJtaXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNhbmNlbEltYWdlTGF1bmNoUGVybWlzc2lvbjogKFxuICAgIGFyZ3M6IENhbmNlbEltYWdlTGF1bmNoUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDYW5jZWxJbWFnZUxhdW5jaFBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENhbmNlbEltcG9ydFRhc2tDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY2FuY2VsSW1wb3J0VGFzazogKFxuICAgIGFyZ3M6IENhbmNlbEltcG9ydFRhc2tDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8Q2FuY2VsSW1wb3J0VGFza0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ2FuY2VsUmVzZXJ2ZWRJbnN0YW5jZXNMaXN0aW5nQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNhbmNlbFJlc2VydmVkSW5zdGFuY2VzTGlzdGluZzogKFxuICAgIGFyZ3M6IENhbmNlbFJlc2VydmVkSW5zdGFuY2VzTGlzdGluZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDYW5jZWxSZXNlcnZlZEluc3RhbmNlc0xpc3RpbmdDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENhbmNlbFNwb3RGbGVldFJlcXVlc3RzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNhbmNlbFNwb3RGbGVldFJlcXVlc3RzOiAoXG4gICAgYXJnczogQ2FuY2VsU3BvdEZsZWV0UmVxdWVzdHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ2FuY2VsU3BvdEZsZWV0UmVxdWVzdHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENhbmNlbFNwb3RJbnN0YW5jZVJlcXVlc3RzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNhbmNlbFNwb3RJbnN0YW5jZVJlcXVlc3RzOiAoXG4gICAgYXJnczogQ2FuY2VsU3BvdEluc3RhbmNlUmVxdWVzdHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ2FuY2VsU3BvdEluc3RhbmNlUmVxdWVzdHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENvbmZpcm1Qcm9kdWN0SW5zdGFuY2VDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY29uZmlybVByb2R1Y3RJbnN0YW5jZTogKFxuICAgIGFyZ3M6IENvbmZpcm1Qcm9kdWN0SW5zdGFuY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ29uZmlybVByb2R1Y3RJbnN0YW5jZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ29weUZwZ2FJbWFnZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjb3B5RnBnYUltYWdlOiAoXG4gICAgYXJnczogQ29weUZwZ2FJbWFnZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxDb3B5RnBnYUltYWdlQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDb3B5SW1hZ2VDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY29weUltYWdlOiAoXG4gICAgYXJnczogQ29weUltYWdlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PENvcHlJbWFnZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ29weVNuYXBzaG90Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNvcHlTbmFwc2hvdDogKFxuICAgIGFyZ3M6IENvcHlTbmFwc2hvdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxDb3B5U25hcHNob3RDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUNhcGFjaXR5UmVzZXJ2YXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlQ2FwYWNpdHlSZXNlcnZhdGlvbjogKFxuICAgIGFyZ3M6IENyZWF0ZUNhcGFjaXR5UmVzZXJ2YXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlQ2FwYWNpdHlSZXNlcnZhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlQ2FwYWNpdHlSZXNlcnZhdGlvbkZsZWV0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUNhcGFjaXR5UmVzZXJ2YXRpb25GbGVldDogKFxuICAgIGFyZ3M6IENyZWF0ZUNhcGFjaXR5UmVzZXJ2YXRpb25GbGVldENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUNhcnJpZXJHYXRld2F5Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUNhcnJpZXJHYXRld2F5OiAoXG4gICAgYXJnczogQ3JlYXRlQ2FycmllckdhdGV3YXlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlQ2FycmllckdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUNsaWVudFZwbkVuZHBvaW50Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUNsaWVudFZwbkVuZHBvaW50OiAoXG4gICAgYXJnczogQ3JlYXRlQ2xpZW50VnBuRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlQ2xpZW50VnBuRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUNsaWVudFZwblJvdXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUNsaWVudFZwblJvdXRlOiAoXG4gICAgYXJnczogQ3JlYXRlQ2xpZW50VnBuUm91dGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlQ2xpZW50VnBuUm91dGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUNvaXBDaWRyQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUNvaXBDaWRyOiAoXG4gICAgYXJnczogQ3JlYXRlQ29pcENpZHJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8Q3JlYXRlQ29pcENpZHJDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUNvaXBQb29sQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUNvaXBQb29sOiAoXG4gICAgYXJnczogQ3JlYXRlQ29pcFBvb2xDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8Q3JlYXRlQ29pcFBvb2xDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUN1c3RvbWVyR2F0ZXdheUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVDdXN0b21lckdhdGV3YXk6IChcbiAgICBhcmdzOiBDcmVhdGVDdXN0b21lckdhdGV3YXlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlQ3VzdG9tZXJHYXRld2F5Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVEZWZhdWx0U3VibmV0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZURlZmF1bHRTdWJuZXQ6IChcbiAgICBhcmdzOiBDcmVhdGVEZWZhdWx0U3VibmV0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZURlZmF1bHRTdWJuZXRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZURlZmF1bHRWcGNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlRGVmYXVsdFZwYzogKFxuICAgIGFyZ3M6IENyZWF0ZURlZmF1bHRWcGNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8Q3JlYXRlRGVmYXVsdFZwY0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlRGhjcE9wdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlRGhjcE9wdGlvbnM6IChcbiAgICBhcmdzOiBDcmVhdGVEaGNwT3B0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVEaGNwT3B0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlRWdyZXNzT25seUludGVybmV0R2F0ZXdheUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVFZ3Jlc3NPbmx5SW50ZXJuZXRHYXRld2F5OiAoXG4gICAgYXJnczogQ3JlYXRlRWdyZXNzT25seUludGVybmV0R2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVFZ3Jlc3NPbmx5SW50ZXJuZXRHYXRld2F5Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVGbGVldENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVGbGVldDogKFxuICAgIGFyZ3M6IENyZWF0ZUZsZWV0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PENyZWF0ZUZsZWV0Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVGbG93TG9nc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVGbG93TG9nczogKFxuICAgIGFyZ3M6IENyZWF0ZUZsb3dMb2dzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PENyZWF0ZUZsb3dMb2dzQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVGcGdhSW1hZ2VDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlRnBnYUltYWdlOiAoXG4gICAgYXJnczogQ3JlYXRlRnBnYUltYWdlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PENyZWF0ZUZwZ2FJbWFnZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlSW1hZ2VDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlSW1hZ2U6IChcbiAgICBhcmdzOiBDcmVhdGVJbWFnZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxDcmVhdGVJbWFnZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlSW5zdGFuY2VDb25uZWN0RW5kcG9pbnRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlSW5zdGFuY2VDb25uZWN0RW5kcG9pbnQ6IChcbiAgICBhcmdzOiBDcmVhdGVJbnN0YW5jZUNvbm5lY3RFbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVJbnN0YW5jZUNvbm5lY3RFbmRwb2ludENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlSW5zdGFuY2VFdmVudFdpbmRvd0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVJbnN0YW5jZUV2ZW50V2luZG93OiAoXG4gICAgYXJnczogQ3JlYXRlSW5zdGFuY2VFdmVudFdpbmRvd0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVJbnN0YW5jZUV4cG9ydFRhc2tDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlSW5zdGFuY2VFeHBvcnRUYXNrOiAoXG4gICAgYXJnczogQ3JlYXRlSW5zdGFuY2VFeHBvcnRUYXNrQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZUluc3RhbmNlRXhwb3J0VGFza0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlSW50ZXJuZXRHYXRld2F5Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUludGVybmV0R2F0ZXdheTogKFxuICAgIGFyZ3M6IENyZWF0ZUludGVybmV0R2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVJbnRlcm5ldEdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUlwYW1Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlSXBhbTogKFxuICAgIGFyZ3M6IENyZWF0ZUlwYW1Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8Q3JlYXRlSXBhbUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlSXBhbVBvb2xDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlSXBhbVBvb2w6IChcbiAgICBhcmdzOiBDcmVhdGVJcGFtUG9vbENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxDcmVhdGVJcGFtUG9vbENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlSXBhbVJlc291cmNlRGlzY292ZXJ5Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUlwYW1SZXNvdXJjZURpc2NvdmVyeTogKFxuICAgIGFyZ3M6IENyZWF0ZUlwYW1SZXNvdXJjZURpc2NvdmVyeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUlwYW1TY29wZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVJcGFtU2NvcGU6IChcbiAgICBhcmdzOiBDcmVhdGVJcGFtU2NvcGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8Q3JlYXRlSXBhbVNjb3BlQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVLZXlQYWlyQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUtleVBhaXI6IChcbiAgICBhcmdzOiBDcmVhdGVLZXlQYWlyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PENyZWF0ZUtleVBhaXJDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUxhdW5jaFRlbXBsYXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUxhdW5jaFRlbXBsYXRlOiAoXG4gICAgYXJnczogQ3JlYXRlTGF1bmNoVGVtcGxhdGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlTGF1bmNoVGVtcGxhdGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUxhdW5jaFRlbXBsYXRlVmVyc2lvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVMYXVuY2hUZW1wbGF0ZVZlcnNpb246IChcbiAgICBhcmdzOiBDcmVhdGVMYXVuY2hUZW1wbGF0ZVZlcnNpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlTGF1bmNoVGVtcGxhdGVWZXJzaW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZTogKFxuICAgIGFyZ3M6IENyZWF0ZUxvY2FsR2F0ZXdheVJvdXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZUxvY2FsR2F0ZXdheVJvdXRlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGU6IChcbiAgICBhcmdzOiBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWaXJ0dWFsSW50ZXJmYWNlR3JvdXBBc3NvY2lhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVmlydHVhbEludGVyZmFjZUdyb3VwQXNzb2NpYXRpb246IChcbiAgICBhcmdzOiBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVmlydHVhbEludGVyZmFjZUdyb3VwQXNzb2NpYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZpcnR1YWxJbnRlcmZhY2VHcm91cEFzc29jaWF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVnBjQXNzb2NpYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZwY0Fzc29jaWF0aW9uOiAoXG4gICAgYXJnczogQ3JlYXRlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZwY0Fzc29jaWF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWcGNBc3NvY2lhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlTWFuYWdlZFByZWZpeExpc3RDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlTWFuYWdlZFByZWZpeExpc3Q6IChcbiAgICBhcmdzOiBDcmVhdGVNYW5hZ2VkUHJlZml4TGlzdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVNYW5hZ2VkUHJlZml4TGlzdENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlTmF0R2F0ZXdheUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVOYXRHYXRld2F5OiAoXG4gICAgYXJnczogQ3JlYXRlTmF0R2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxDcmVhdGVOYXRHYXRld2F5Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVOZXR3b3JrQWNsQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZU5ldHdvcmtBY2w6IChcbiAgICBhcmdzOiBDcmVhdGVOZXR3b3JrQWNsQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PENyZWF0ZU5ldHdvcmtBY2xDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZU5ldHdvcmtBY2xFbnRyeUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVOZXR3b3JrQWNsRW50cnk6IChcbiAgICBhcmdzOiBDcmVhdGVOZXR3b3JrQWNsRW50cnlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlTmV0d29ya0FjbEVudHJ5Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZTogKFxuICAgIGFyZ3M6IENyZWF0ZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVOZXR3b3JrSW5zaWdodHNQYXRoQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZU5ldHdvcmtJbnNpZ2h0c1BhdGg6IChcbiAgICBhcmdzOiBDcmVhdGVOZXR3b3JrSW5zaWdodHNQYXRoQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZU5ldHdvcmtJbnNpZ2h0c1BhdGhDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZU5ldHdvcmtJbnRlcmZhY2VDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlTmV0d29ya0ludGVyZmFjZTogKFxuICAgIGFyZ3M6IENyZWF0ZU5ldHdvcmtJbnRlcmZhY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlTmV0d29ya0ludGVyZmFjZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlTmV0d29ya0ludGVyZmFjZVBlcm1pc3Npb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlTmV0d29ya0ludGVyZmFjZVBlcm1pc3Npb246IChcbiAgICBhcmdzOiBDcmVhdGVOZXR3b3JrSW50ZXJmYWNlUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVOZXR3b3JrSW50ZXJmYWNlUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlUGxhY2VtZW50R3JvdXBDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlUGxhY2VtZW50R3JvdXA6IChcbiAgICBhcmdzOiBDcmVhdGVQbGFjZW1lbnRHcm91cENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVQbGFjZW1lbnRHcm91cENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlUHVibGljSXB2NFBvb2xDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlUHVibGljSXB2NFBvb2w6IChcbiAgICBhcmdzOiBDcmVhdGVQdWJsaWNJcHY0UG9vbENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVQdWJsaWNJcHY0UG9vbENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlUmVwbGFjZVJvb3RWb2x1bWVUYXNrQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVJlcGxhY2VSb290Vm9sdW1lVGFzazogKFxuICAgIGFyZ3M6IENyZWF0ZVJlcGxhY2VSb290Vm9sdW1lVGFza0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVSZXBsYWNlUm9vdFZvbHVtZVRhc2tDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVJlc2VydmVkSW5zdGFuY2VzTGlzdGluZ0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVSZXNlcnZlZEluc3RhbmNlc0xpc3Rpbmc6IChcbiAgICBhcmdzOiBDcmVhdGVSZXNlcnZlZEluc3RhbmNlc0xpc3RpbmdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlUmVzZXJ2ZWRJbnN0YW5jZXNMaXN0aW5nQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVSZXN0b3JlSW1hZ2VUYXNrQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVJlc3RvcmVJbWFnZVRhc2s6IChcbiAgICBhcmdzOiBDcmVhdGVSZXN0b3JlSW1hZ2VUYXNrQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVJlc3RvcmVJbWFnZVRhc2tDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVJvdXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVJvdXRlOiAoXG4gICAgYXJnczogQ3JlYXRlUm91dGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8Q3JlYXRlUm91dGVDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVJvdXRlVGFibGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlUm91dGVUYWJsZTogKFxuICAgIGFyZ3M6IENyZWF0ZVJvdXRlVGFibGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8Q3JlYXRlUm91dGVUYWJsZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlU2VjdXJpdHlHcm91cENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVTZWN1cml0eUdyb3VwOiAoXG4gICAgYXJnczogQ3JlYXRlU2VjdXJpdHlHcm91cENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVTZWN1cml0eUdyb3VwQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVTbmFwc2hvdENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVTbmFwc2hvdDogKFxuICAgIGFyZ3M6IENyZWF0ZVNuYXBzaG90Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PENyZWF0ZVNuYXBzaG90Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVTbmFwc2hvdHNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlU25hcHNob3RzOiAoXG4gICAgYXJnczogQ3JlYXRlU25hcHNob3RzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PENyZWF0ZVNuYXBzaG90c0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlU3BvdERhdGFmZWVkU3Vic2NyaXB0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVNwb3REYXRhZmVlZFN1YnNjcmlwdGlvbjogKFxuICAgIGFyZ3M6IENyZWF0ZVNwb3REYXRhZmVlZFN1YnNjcmlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVTcG90RGF0YWZlZWRTdWJzY3JpcHRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVN0b3JlSW1hZ2VUYXNrQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVN0b3JlSW1hZ2VUYXNrOiAoXG4gICAgYXJnczogQ3JlYXRlU3RvcmVJbWFnZVRhc2tDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlU3RvcmVJbWFnZVRhc2tDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVN1Ym5ldENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVTdWJuZXQ6IChcbiAgICBhcmdzOiBDcmVhdGVTdWJuZXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8Q3JlYXRlU3VibmV0Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVTdWJuZXRDaWRyUmVzZXJ2YXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlU3VibmV0Q2lkclJlc2VydmF0aW9uOiAoXG4gICAgYXJnczogQ3JlYXRlU3VibmV0Q2lkclJlc2VydmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVN1Ym5ldENpZHJSZXNlcnZhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVGFnc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVUYWdzOiAoXG4gICAgYXJnczogQ3JlYXRlVGFnc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxDcmVhdGVUYWdzQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVUcmFmZmljTWlycm9yRmlsdGVyQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVRyYWZmaWNNaXJyb3JGaWx0ZXI6IChcbiAgICBhcmdzOiBDcmVhdGVUcmFmZmljTWlycm9yRmlsdGVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVRyYWZmaWNNaXJyb3JGaWx0ZXJDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVRyYWZmaWNNaXJyb3JGaWx0ZXJSdWxlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVRyYWZmaWNNaXJyb3JGaWx0ZXJSdWxlOiAoXG4gICAgYXJnczogQ3JlYXRlVHJhZmZpY01pcnJvckZpbHRlclJ1bGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVHJhZmZpY01pcnJvckZpbHRlclJ1bGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVRyYWZmaWNNaXJyb3JTZXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVRyYWZmaWNNaXJyb3JTZXNzaW9uOiAoXG4gICAgYXJnczogQ3JlYXRlVHJhZmZpY01pcnJvclNlc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVHJhZmZpY01pcnJvclNlc3Npb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVRyYWZmaWNNaXJyb3JUYXJnZXRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlVHJhZmZpY01pcnJvclRhcmdldDogKFxuICAgIGFyZ3M6IENyZWF0ZVRyYWZmaWNNaXJyb3JUYXJnZXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVHJhZmZpY01pcnJvclRhcmdldENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVHJhbnNpdEdhdGV3YXlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlVHJhbnNpdEdhdGV3YXk6IChcbiAgICBhcmdzOiBDcmVhdGVUcmFuc2l0R2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVUcmFuc2l0R2F0ZXdheUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVHJhbnNpdEdhdGV3YXlDb25uZWN0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdDogKFxuICAgIGFyZ3M6IENyZWF0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVUcmFuc2l0R2F0ZXdheUNvbm5lY3RDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdFBlZXJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlVHJhbnNpdEdhdGV3YXlDb25uZWN0UGVlcjogKFxuICAgIGFyZ3M6IENyZWF0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdFBlZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVHJhbnNpdEdhdGV3YXlDb25uZWN0UGVlckNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW46IChcbiAgICBhcmdzOiBDcmVhdGVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVHJhbnNpdEdhdGV3YXlQZWVyaW5nQXR0YWNobWVudENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50OiAoXG4gICAgYXJnczogQ3JlYXRlVHJhbnNpdEdhdGV3YXlQZWVyaW5nQXR0YWNobWVudENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGU6IChcbiAgICBhcmdzOiBDcmVhdGVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVRyYW5zaXRHYXRld2F5UHJlZml4TGlzdFJlZmVyZW5jZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVUcmFuc2l0R2F0ZXdheVByZWZpeExpc3RSZWZlcmVuY2U6IChcbiAgICBhcmdzOiBDcmVhdGVUcmFuc2l0R2F0ZXdheVByZWZpeExpc3RSZWZlcmVuY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVHJhbnNpdEdhdGV3YXlQcmVmaXhMaXN0UmVmZXJlbmNlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVUcmFuc2l0R2F0ZXdheVJvdXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVRyYW5zaXRHYXRld2F5Um91dGU6IChcbiAgICBhcmdzOiBDcmVhdGVUcmFuc2l0R2F0ZXdheVJvdXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVRyYW5zaXRHYXRld2F5Um91dGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGU6IChcbiAgICBhcmdzOiBDcmVhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBbm5vdW5jZW1lbnRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQW5ub3VuY2VtZW50OiAoXG4gICAgYXJnczogQ3JlYXRlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQW5ub3VuY2VtZW50Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFubm91bmNlbWVudENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVHJhbnNpdEdhdGV3YXlWcGNBdHRhY2htZW50Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudDogKFxuICAgIGFyZ3M6IENyZWF0ZVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlVmVyaWZpZWRBY2Nlc3NFbmRwb2ludDogKFxuICAgIGFyZ3M6IENyZWF0ZVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVmVyaWZpZWRBY2Nlc3NFbmRwb2ludENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVmVyaWZpZWRBY2Nlc3NHcm91cENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVWZXJpZmllZEFjY2Vzc0dyb3VwOiAoXG4gICAgYXJnczogQ3JlYXRlVmVyaWZpZWRBY2Nlc3NHcm91cENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVWZXJpZmllZEFjY2Vzc0luc3RhbmNlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2U6IChcbiAgICBhcmdzOiBDcmVhdGVWZXJpZmllZEFjY2Vzc0luc3RhbmNlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXI6IChcbiAgICBhcmdzOiBDcmVhdGVWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVmVyaWZpZWRBY2Nlc3NUcnVzdFByb3ZpZGVyQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVWb2x1bWVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlVm9sdW1lOiAoXG4gICAgYXJnczogQ3JlYXRlVm9sdW1lQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PENyZWF0ZVZvbHVtZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVnBjQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVZwYzogKFxuICAgIGFyZ3M6IENyZWF0ZVZwY0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxDcmVhdGVWcGNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVZwY0VuZHBvaW50Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVZwY0VuZHBvaW50OiAoXG4gICAgYXJnczogQ3JlYXRlVnBjRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVnBjRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVZwY0VuZHBvaW50Q29ubmVjdGlvbk5vdGlmaWNhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb246IChcbiAgICBhcmdzOiBDcmVhdGVWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVnBjRW5kcG9pbnRDb25uZWN0aW9uTm90aWZpY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVZwY0VuZHBvaW50U2VydmljZUNvbmZpZ3VyYXRpb246IChcbiAgICBhcmdzOiBDcmVhdGVWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVZwY0VuZHBvaW50U2VydmljZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVZwY1BlZXJpbmdDb25uZWN0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVZwY1BlZXJpbmdDb25uZWN0aW9uOiAoXG4gICAgYXJnczogQ3JlYXRlVnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVZwbkNvbm5lY3Rpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlVnBuQ29ubmVjdGlvbjogKFxuICAgIGFyZ3M6IENyZWF0ZVZwbkNvbm5lY3Rpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVnBuQ29ubmVjdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVnBuQ29ubmVjdGlvblJvdXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVZwbkNvbm5lY3Rpb25Sb3V0ZTogKFxuICAgIGFyZ3M6IENyZWF0ZVZwbkNvbm5lY3Rpb25Sb3V0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVWcG5Db25uZWN0aW9uUm91dGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVZwbkdhdGV3YXlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlVnBuR2F0ZXdheTogKFxuICAgIGFyZ3M6IENyZWF0ZVZwbkdhdGV3YXlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8Q3JlYXRlVnBuR2F0ZXdheUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQ2FycmllckdhdGV3YXlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlQ2FycmllckdhdGV3YXk6IChcbiAgICBhcmdzOiBEZWxldGVDYXJyaWVyR2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVDYXJyaWVyR2F0ZXdheUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQ2xpZW50VnBuRW5kcG9pbnRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlQ2xpZW50VnBuRW5kcG9pbnQ6IChcbiAgICBhcmdzOiBEZWxldGVDbGllbnRWcG5FbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVDbGllbnRWcG5FbmRwb2ludENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQ2xpZW50VnBuUm91dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlQ2xpZW50VnBuUm91dGU6IChcbiAgICBhcmdzOiBEZWxldGVDbGllbnRWcG5Sb3V0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVDbGllbnRWcG5Sb3V0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQ29pcENpZHJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlQ29pcENpZHI6IChcbiAgICBhcmdzOiBEZWxldGVDb2lwQ2lkckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZWxldGVDb2lwQ2lkckNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQ29pcFBvb2xDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlQ29pcFBvb2w6IChcbiAgICBhcmdzOiBEZWxldGVDb2lwUG9vbENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZWxldGVDb2lwUG9vbENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQ3VzdG9tZXJHYXRld2F5Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUN1c3RvbWVyR2F0ZXdheTogKFxuICAgIGFyZ3M6IERlbGV0ZUN1c3RvbWVyR2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVDdXN0b21lckdhdGV3YXlDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZURoY3BPcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZURoY3BPcHRpb25zOiAoXG4gICAgYXJnczogRGVsZXRlRGhjcE9wdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlRGhjcE9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUVncmVzc09ubHlJbnRlcm5ldEdhdGV3YXlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlRWdyZXNzT25seUludGVybmV0R2F0ZXdheTogKFxuICAgIGFyZ3M6IERlbGV0ZUVncmVzc09ubHlJbnRlcm5ldEdhdGV3YXlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlRWdyZXNzT25seUludGVybmV0R2F0ZXdheUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlRmxlZXRzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUZsZWV0czogKFxuICAgIGFyZ3M6IERlbGV0ZUZsZWV0c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZWxldGVGbGVldHNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUZsb3dMb2dzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUZsb3dMb2dzOiAoXG4gICAgYXJnczogRGVsZXRlRmxvd0xvZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVsZXRlRmxvd0xvZ3NDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUZwZ2FJbWFnZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVGcGdhSW1hZ2U6IChcbiAgICBhcmdzOiBEZWxldGVGcGdhSW1hZ2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVsZXRlRnBnYUltYWdlQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVJbnN0YW5jZUNvbm5lY3RFbmRwb2ludENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVJbnN0YW5jZUNvbm5lY3RFbmRwb2ludDogKFxuICAgIGFyZ3M6IERlbGV0ZUluc3RhbmNlQ29ubmVjdEVuZHBvaW50Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUluc3RhbmNlQ29ubmVjdEVuZHBvaW50Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUluc3RhbmNlRXZlbnRXaW5kb3c6IChcbiAgICBhcmdzOiBEZWxldGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUluc3RhbmNlRXZlbnRXaW5kb3dDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUludGVybmV0R2F0ZXdheUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVJbnRlcm5ldEdhdGV3YXk6IChcbiAgICBhcmdzOiBEZWxldGVJbnRlcm5ldEdhdGV3YXlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlSW50ZXJuZXRHYXRld2F5Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVJcGFtQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUlwYW06IChcbiAgICBhcmdzOiBEZWxldGVJcGFtQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PERlbGV0ZUlwYW1Db21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUlwYW1Qb29sQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUlwYW1Qb29sOiAoXG4gICAgYXJnczogRGVsZXRlSXBhbVBvb2xDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVsZXRlSXBhbVBvb2xDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUlwYW1SZXNvdXJjZURpc2NvdmVyeUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVJcGFtUmVzb3VyY2VEaXNjb3Zlcnk6IChcbiAgICBhcmdzOiBEZWxldGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlSXBhbVJlc291cmNlRGlzY292ZXJ5Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVJcGFtU2NvcGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlSXBhbVNjb3BlOiAoXG4gICAgYXJnczogRGVsZXRlSXBhbVNjb3BlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PERlbGV0ZUlwYW1TY29wZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlS2V5UGFpckNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVLZXlQYWlyOiAoXG4gICAgYXJnczogRGVsZXRlS2V5UGFpckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZWxldGVLZXlQYWlyQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVMYXVuY2hUZW1wbGF0ZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVMYXVuY2hUZW1wbGF0ZTogKFxuICAgIGFyZ3M6IERlbGV0ZUxhdW5jaFRlbXBsYXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUxhdW5jaFRlbXBsYXRlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVMYXVuY2hUZW1wbGF0ZVZlcnNpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUxhdW5jaFRlbXBsYXRlVmVyc2lvbnM6IChcbiAgICBhcmdzOiBEZWxldGVMYXVuY2hUZW1wbGF0ZVZlcnNpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUxhdW5jaFRlbXBsYXRlVmVyc2lvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUxvY2FsR2F0ZXdheVJvdXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUxvY2FsR2F0ZXdheVJvdXRlOiAoXG4gICAgYXJnczogRGVsZXRlTG9jYWxHYXRld2F5Um91dGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlTG9jYWxHYXRld2F5Um91dGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlTG9jYWxHYXRld2F5Um91dGVUYWJsZTogKFxuICAgIGFyZ3M6IERlbGV0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlTG9jYWxHYXRld2F5Um91dGVUYWJsZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZpcnR1YWxJbnRlcmZhY2VHcm91cEFzc29jaWF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWaXJ0dWFsSW50ZXJmYWNlR3JvdXBBc3NvY2lhdGlvbjogKFxuICAgIGFyZ3M6IERlbGV0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWaXJ0dWFsSW50ZXJmYWNlR3JvdXBBc3NvY2lhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVmlydHVhbEludGVyZmFjZUdyb3VwQXNzb2NpYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWcGNBc3NvY2lhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVnBjQXNzb2NpYXRpb246IChcbiAgICBhcmdzOiBEZWxldGVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVnBjQXNzb2NpYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZwY0Fzc29jaWF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVNYW5hZ2VkUHJlZml4TGlzdENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVNYW5hZ2VkUHJlZml4TGlzdDogKFxuICAgIGFyZ3M6IERlbGV0ZU1hbmFnZWRQcmVmaXhMaXN0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZU1hbmFnZWRQcmVmaXhMaXN0Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVOYXRHYXRld2F5Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZU5hdEdhdGV3YXk6IChcbiAgICBhcmdzOiBEZWxldGVOYXRHYXRld2F5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PERlbGV0ZU5hdEdhdGV3YXlDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZU5ldHdvcmtBY2xDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlTmV0d29ya0FjbDogKFxuICAgIGFyZ3M6IERlbGV0ZU5ldHdvcmtBY2xDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVsZXRlTmV0d29ya0FjbENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlTmV0d29ya0FjbEVudHJ5Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZU5ldHdvcmtBY2xFbnRyeTogKFxuICAgIGFyZ3M6IERlbGV0ZU5ldHdvcmtBY2xFbnRyeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVOZXR3b3JrQWNsRW50cnlDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlOiAoXG4gICAgYXJnczogRGVsZXRlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzaXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVBbmFseXNpczogKFxuICAgIGFyZ3M6IERlbGV0ZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzaXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVBbmFseXNpc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlTmV0d29ya0luc2lnaHRzQW5hbHlzaXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlTmV0d29ya0luc2lnaHRzQW5hbHlzaXM6IChcbiAgICBhcmdzOiBEZWxldGVOZXR3b3JrSW5zaWdodHNBbmFseXNpc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVOZXR3b3JrSW5zaWdodHNBbmFseXNpc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlTmV0d29ya0luc2lnaHRzUGF0aENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVOZXR3b3JrSW5zaWdodHNQYXRoOiAoXG4gICAgYXJnczogRGVsZXRlTmV0d29ya0luc2lnaHRzUGF0aENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVOZXR3b3JrSW5zaWdodHNQYXRoQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVOZXR3b3JrSW50ZXJmYWNlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZU5ldHdvcmtJbnRlcmZhY2U6IChcbiAgICBhcmdzOiBEZWxldGVOZXR3b3JrSW50ZXJmYWNlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZU5ldHdvcmtJbnRlcmZhY2VDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZU5ldHdvcmtJbnRlcmZhY2VQZXJtaXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZU5ldHdvcmtJbnRlcmZhY2VQZXJtaXNzaW9uOiAoXG4gICAgYXJnczogRGVsZXRlTmV0d29ya0ludGVyZmFjZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlTmV0d29ya0ludGVyZmFjZVBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVBsYWNlbWVudEdyb3VwQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZVBsYWNlbWVudEdyb3VwOiAoXG4gICAgYXJnczogRGVsZXRlUGxhY2VtZW50R3JvdXBDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlUGxhY2VtZW50R3JvdXBDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVB1YmxpY0lwdjRQb29sQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZVB1YmxpY0lwdjRQb29sOiAoXG4gICAgYXJnczogRGVsZXRlUHVibGljSXB2NFBvb2xDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlUHVibGljSXB2NFBvb2xDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVF1ZXVlZFJlc2VydmVkSW5zdGFuY2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZVF1ZXVlZFJlc2VydmVkSW5zdGFuY2VzOiAoXG4gICAgYXJnczogRGVsZXRlUXVldWVkUmVzZXJ2ZWRJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlUXVldWVkUmVzZXJ2ZWRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVJvdXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZVJvdXRlOiAoXG4gICAgYXJnczogRGVsZXRlUm91dGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVsZXRlUm91dGVDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVJvdXRlVGFibGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlUm91dGVUYWJsZTogKFxuICAgIGFyZ3M6IERlbGV0ZVJvdXRlVGFibGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVsZXRlUm91dGVUYWJsZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlU2VjdXJpdHlHcm91cENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVTZWN1cml0eUdyb3VwOiAoXG4gICAgYXJnczogRGVsZXRlU2VjdXJpdHlHcm91cENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVTZWN1cml0eUdyb3VwQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVTbmFwc2hvdENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVTbmFwc2hvdDogKFxuICAgIGFyZ3M6IERlbGV0ZVNuYXBzaG90Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PERlbGV0ZVNuYXBzaG90Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVTcG90RGF0YWZlZWRTdWJzY3JpcHRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlU3BvdERhdGFmZWVkU3Vic2NyaXB0aW9uOiAoXG4gICAgYXJnczogRGVsZXRlU3BvdERhdGFmZWVkU3Vic2NyaXB0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVNwb3REYXRhZmVlZFN1YnNjcmlwdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlU3VibmV0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZVN1Ym5ldDogKFxuICAgIGFyZ3M6IERlbGV0ZVN1Ym5ldENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZWxldGVTdWJuZXRDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVN1Ym5ldENpZHJSZXNlcnZhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVTdWJuZXRDaWRyUmVzZXJ2YXRpb246IChcbiAgICBhcmdzOiBEZWxldGVTdWJuZXRDaWRyUmVzZXJ2YXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlU3VibmV0Q2lkclJlc2VydmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVUYWdzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZVRhZ3M6IChcbiAgICBhcmdzOiBEZWxldGVUYWdzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PERlbGV0ZVRhZ3NDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVRyYWZmaWNNaXJyb3JGaWx0ZXJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVHJhZmZpY01pcnJvckZpbHRlcjogKFxuICAgIGFyZ3M6IERlbGV0ZVRyYWZmaWNNaXJyb3JGaWx0ZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlVHJhZmZpY01pcnJvckZpbHRlckNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVHJhZmZpY01pcnJvckZpbHRlclJ1bGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVHJhZmZpY01pcnJvckZpbHRlclJ1bGU6IChcbiAgICBhcmdzOiBEZWxldGVUcmFmZmljTWlycm9yRmlsdGVyUnVsZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVUcmFmZmljTWlycm9yRmlsdGVyUnVsZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVHJhZmZpY01pcnJvclNlc3Npb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVHJhZmZpY01pcnJvclNlc3Npb246IChcbiAgICBhcmdzOiBEZWxldGVUcmFmZmljTWlycm9yU2Vzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVUcmFmZmljTWlycm9yU2Vzc2lvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVHJhZmZpY01pcnJvclRhcmdldENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVUcmFmZmljTWlycm9yVGFyZ2V0OiAoXG4gICAgYXJnczogRGVsZXRlVHJhZmZpY01pcnJvclRhcmdldENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVUcmFmZmljTWlycm9yVGFyZ2V0Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVUcmFuc2l0R2F0ZXdheUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVUcmFuc2l0R2F0ZXdheTogKFxuICAgIGFyZ3M6IERlbGV0ZVRyYW5zaXRHYXRld2F5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVRyYW5zaXRHYXRld2F5Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVUcmFuc2l0R2F0ZXdheUNvbm5lY3RDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVHJhbnNpdEdhdGV3YXlDb25uZWN0OiAoXG4gICAgYXJnczogRGVsZXRlVHJhbnNpdEdhdGV3YXlDb25uZWN0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVRyYW5zaXRHYXRld2F5Q29ubmVjdENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVHJhbnNpdEdhdGV3YXlDb25uZWN0UGVlckNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVUcmFuc2l0R2F0ZXdheUNvbm5lY3RQZWVyOiAoXG4gICAgYXJnczogRGVsZXRlVHJhbnNpdEdhdGV3YXlDb25uZWN0UGVlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVUcmFuc2l0R2F0ZXdheUNvbm5lY3RQZWVyQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbjogKFxuICAgIGFyZ3M6IERlbGV0ZVRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZVRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnQ6IChcbiAgICBhcmdzOiBEZWxldGVUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVHJhbnNpdEdhdGV3YXlQb2xpY3lUYWJsZTogKFxuICAgIGFyZ3M6IERlbGV0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlVHJhbnNpdEdhdGV3YXlQb2xpY3lUYWJsZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVHJhbnNpdEdhdGV3YXlQcmVmaXhMaXN0UmVmZXJlbmNlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZVRyYW5zaXRHYXRld2F5UHJlZml4TGlzdFJlZmVyZW5jZTogKFxuICAgIGFyZ3M6IERlbGV0ZVRyYW5zaXRHYXRld2F5UHJlZml4TGlzdFJlZmVyZW5jZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVUcmFuc2l0R2F0ZXdheVByZWZpeExpc3RSZWZlcmVuY2VDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVRyYW5zaXRHYXRld2F5Um91dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVHJhbnNpdEdhdGV3YXlSb3V0ZTogKFxuICAgIGFyZ3M6IERlbGV0ZVRyYW5zaXRHYXRld2F5Um91dGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlVHJhbnNpdEdhdGV3YXlSb3V0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZTogKFxuICAgIGFyZ3M6IERlbGV0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFubm91bmNlbWVudENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBbm5vdW5jZW1lbnQ6IChcbiAgICBhcmdzOiBEZWxldGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBbm5vdW5jZW1lbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQW5ub3VuY2VtZW50Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVHJhbnNpdEdhdGV3YXlWcGNBdHRhY2htZW50OiAoXG4gICAgYXJnczogRGVsZXRlVHJhbnNpdEdhdGV3YXlWcGNBdHRhY2htZW50Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVmVyaWZpZWRBY2Nlc3NFbmRwb2ludENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVWZXJpZmllZEFjY2Vzc0VuZHBvaW50OiAoXG4gICAgYXJnczogRGVsZXRlVmVyaWZpZWRBY2Nlc3NFbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVWZXJpZmllZEFjY2Vzc0VuZHBvaW50Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZVZlcmlmaWVkQWNjZXNzR3JvdXA6IChcbiAgICBhcmdzOiBEZWxldGVWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVZlcmlmaWVkQWNjZXNzR3JvdXBDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVmVyaWZpZWRBY2Nlc3NJbnN0YW5jZTogKFxuICAgIGFyZ3M6IERlbGV0ZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlVmVyaWZpZWRBY2Nlc3NJbnN0YW5jZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVmVyaWZpZWRBY2Nlc3NUcnVzdFByb3ZpZGVyQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlcjogKFxuICAgIGFyZ3M6IERlbGV0ZVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVZvbHVtZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVWb2x1bWU6IChcbiAgICBhcmdzOiBEZWxldGVWb2x1bWVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVsZXRlVm9sdW1lQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVWcGNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVnBjOiAoXG4gICAgYXJnczogRGVsZXRlVnBjQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PERlbGV0ZVZwY0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVnBjRW5kcG9pbnRDb25uZWN0aW9uTm90aWZpY2F0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb25zOiAoXG4gICAgYXJnczogRGVsZXRlVnBjRW5kcG9pbnRDb25uZWN0aW9uTm90aWZpY2F0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVWcGNFbmRwb2ludHNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVnBjRW5kcG9pbnRzOiAoXG4gICAgYXJnczogRGVsZXRlVnBjRW5kcG9pbnRzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVZwY0VuZHBvaW50c0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVnBjRW5kcG9pbnRTZXJ2aWNlQ29uZmlndXJhdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVnBjRW5kcG9pbnRTZXJ2aWNlQ29uZmlndXJhdGlvbnM6IChcbiAgICBhcmdzOiBEZWxldGVWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVnBjUGVlcmluZ0Nvbm5lY3Rpb246IChcbiAgICBhcmdzOiBEZWxldGVWcGNQZWVyaW5nQ29ubmVjdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVWcGNQZWVyaW5nQ29ubmVjdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVnBuQ29ubmVjdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVWcG5Db25uZWN0aW9uOiAoXG4gICAgYXJnczogRGVsZXRlVnBuQ29ubmVjdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVWcG5Db25uZWN0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVWcG5Db25uZWN0aW9uUm91dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlVnBuQ29ubmVjdGlvblJvdXRlOiAoXG4gICAgYXJnczogRGVsZXRlVnBuQ29ubmVjdGlvblJvdXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVZwbkNvbm5lY3Rpb25Sb3V0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVnBuR2F0ZXdheUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVWcG5HYXRld2F5OiAoXG4gICAgYXJnczogRGVsZXRlVnBuR2F0ZXdheUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZWxldGVWcG5HYXRld2F5Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXByb3Zpc2lvbkJ5b2lwQ2lkckNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXByb3Zpc2lvbkJ5b2lwQ2lkcjogKFxuICAgIGFyZ3M6IERlcHJvdmlzaW9uQnlvaXBDaWRyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlcHJvdmlzaW9uQnlvaXBDaWRyQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXByb3Zpc2lvbklwYW1CeW9hc25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwcm92aXNpb25JcGFtQnlvYXNuOiAoXG4gICAgYXJnczogRGVwcm92aXNpb25JcGFtQnlvYXNuQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlcHJvdmlzaW9uSXBhbUJ5b2FzbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVwcm92aXNpb25JcGFtUG9vbENpZHJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwcm92aXNpb25JcGFtUG9vbENpZHI6IChcbiAgICBhcmdzOiBEZXByb3Zpc2lvbklwYW1Qb29sQ2lkckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXByb3Zpc2lvbklwYW1Qb29sQ2lkckNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVwcm92aXNpb25QdWJsaWNJcHY0UG9vbENpZHJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwcm92aXNpb25QdWJsaWNJcHY0UG9vbENpZHI6IChcbiAgICBhcmdzOiBEZXByb3Zpc2lvblB1YmxpY0lwdjRQb29sQ2lkckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXByb3Zpc2lvblB1YmxpY0lwdjRQb29sQ2lkckNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVyZWdpc3RlckltYWdlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlcmVnaXN0ZXJJbWFnZTogKFxuICAgIGFyZ3M6IERlcmVnaXN0ZXJJbWFnZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZXJlZ2lzdGVySW1hZ2VDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlcmVnaXN0ZXJJbnN0YW5jZUV2ZW50Tm90aWZpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXJlZ2lzdGVySW5zdGFuY2VFdmVudE5vdGlmaWNhdGlvbkF0dHJpYnV0ZXM6IChcbiAgICBhcmdzOiBEZXJlZ2lzdGVySW5zdGFuY2VFdmVudE5vdGlmaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVyZWdpc3Rlckluc3RhbmNlRXZlbnROb3RpZmljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cE1lbWJlcnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVyZWdpc3RlclRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBNZW1iZXJzOiAoXG4gICAgYXJnczogRGVyZWdpc3RlclRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBNZW1iZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlcmVnaXN0ZXJUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3VwTWVtYmVyc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVyZWdpc3RlclRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBTb3VyY2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlcmVnaXN0ZXJUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3VwU291cmNlczogKFxuICAgIGFyZ3M6IERlcmVnaXN0ZXJUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3VwU291cmNlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cFNvdXJjZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQWNjb3VudEF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVBY2NvdW50QXR0cmlidXRlczogKFxuICAgIGFyZ3M6IERlc2NyaWJlQWNjb3VudEF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVBY2NvdW50QXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVBZGRyZXNzZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVBZGRyZXNzZXM6IChcbiAgICBhcmdzOiBEZXNjcmliZUFkZHJlc3Nlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUFkZHJlc3Nlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVBZGRyZXNzZXNBdHRyaWJ1dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVBZGRyZXNzZXNBdHRyaWJ1dGU6IChcbiAgICBhcmdzOiBEZXNjcmliZUFkZHJlc3Nlc0F0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUFkZHJlc3Nlc0F0dHJpYnV0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVBZGRyZXNzVHJhbnNmZXJzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlQWRkcmVzc1RyYW5zZmVyczogKFxuICAgIGFyZ3M6IERlc2NyaWJlQWRkcmVzc1RyYW5zZmVyc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUFkZHJlc3NUcmFuc2ZlcnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQWdncmVnYXRlSWRGb3JtYXRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVBZ2dyZWdhdGVJZEZvcm1hdDogKFxuICAgIGFyZ3M6IERlc2NyaWJlQWdncmVnYXRlSWRGb3JtYXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVBZ2dyZWdhdGVJZEZvcm1hdENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVBdmFpbGFiaWxpdHlab25lc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUF2YWlsYWJpbGl0eVpvbmVzOiAoXG4gICAgYXJnczogRGVzY3JpYmVBdmFpbGFiaWxpdHlab25lc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUF2YWlsYWJpbGl0eVpvbmVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUF3c05ldHdvcmtQZXJmb3JtYW5jZU1ldHJpY1N1YnNjcmlwdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVBd3NOZXR3b3JrUGVyZm9ybWFuY2VNZXRyaWNTdWJzY3JpcHRpb25zOiAoXG4gICAgYXJnczogRGVzY3JpYmVBd3NOZXR3b3JrUGVyZm9ybWFuY2VNZXRyaWNTdWJzY3JpcHRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQXdzTmV0d29ya1BlcmZvcm1hbmNlTWV0cmljU3Vic2NyaXB0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVCdW5kbGVUYXNrc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUJ1bmRsZVRhc2tzOiAoXG4gICAgYXJnczogRGVzY3JpYmVCdW5kbGVUYXNrc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUJ1bmRsZVRhc2tzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUJ5b2lwQ2lkcnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVCeW9pcENpZHJzOiAoXG4gICAgYXJnczogRGVzY3JpYmVCeW9pcENpZHJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQnlvaXBDaWRyc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVDYXBhY2l0eUJsb2NrT2ZmZXJpbmdzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlQ2FwYWNpdHlCbG9ja09mZmVyaW5nczogKFxuICAgIGFyZ3M6IERlc2NyaWJlQ2FwYWNpdHlCbG9ja09mZmVyaW5nc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUNhcGFjaXR5QmxvY2tPZmZlcmluZ3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQ2FwYWNpdHlSZXNlcnZhdGlvbkZsZWV0c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUNhcGFjaXR5UmVzZXJ2YXRpb25GbGVldHM6IChcbiAgICBhcmdzOiBEZXNjcmliZUNhcGFjaXR5UmVzZXJ2YXRpb25GbGVldHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUNhcGFjaXR5UmVzZXJ2YXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlQ2FwYWNpdHlSZXNlcnZhdGlvbnM6IChcbiAgICBhcmdzOiBEZXNjcmliZUNhcGFjaXR5UmVzZXJ2YXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQ2FwYWNpdHlSZXNlcnZhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQ2FycmllckdhdGV3YXlzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlQ2FycmllckdhdGV3YXlzOiAoXG4gICAgYXJnczogRGVzY3JpYmVDYXJyaWVyR2F0ZXdheXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVDYXJyaWVyR2F0ZXdheXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQ2xhc3NpY0xpbmtJbnN0YW5jZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVDbGFzc2ljTGlua0luc3RhbmNlczogKFxuICAgIGFyZ3M6IERlc2NyaWJlQ2xhc3NpY0xpbmtJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVDbGFzc2ljTGlua0luc3RhbmNlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVDbGllbnRWcG5BdXRob3JpemF0aW9uUnVsZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVDbGllbnRWcG5BdXRob3JpemF0aW9uUnVsZXM6IChcbiAgICBhcmdzOiBEZXNjcmliZUNsaWVudFZwbkF1dGhvcml6YXRpb25SdWxlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUNsaWVudFZwbkF1dGhvcml6YXRpb25SdWxlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVDbGllbnRWcG5Db25uZWN0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUNsaWVudFZwbkNvbm5lY3Rpb25zOiAoXG4gICAgYXJnczogRGVzY3JpYmVDbGllbnRWcG5Db25uZWN0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUNsaWVudFZwbkNvbm5lY3Rpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUNsaWVudFZwbkVuZHBvaW50c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUNsaWVudFZwbkVuZHBvaW50czogKFxuICAgIGFyZ3M6IERlc2NyaWJlQ2xpZW50VnBuRW5kcG9pbnRzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQ2xpZW50VnBuRW5kcG9pbnRzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUNsaWVudFZwblJvdXRlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUNsaWVudFZwblJvdXRlczogKFxuICAgIGFyZ3M6IERlc2NyaWJlQ2xpZW50VnBuUm91dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQ2xpZW50VnBuUm91dGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUNsaWVudFZwblRhcmdldE5ldHdvcmtzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlQ2xpZW50VnBuVGFyZ2V0TmV0d29ya3M6IChcbiAgICBhcmdzOiBEZXNjcmliZUNsaWVudFZwblRhcmdldE5ldHdvcmtzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQ2xpZW50VnBuVGFyZ2V0TmV0d29ya3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQ29pcFBvb2xzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlQ29pcFBvb2xzOiAoXG4gICAgYXJnczogRGVzY3JpYmVDb2lwUG9vbHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVDb2lwUG9vbHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQ29udmVyc2lvblRhc2tzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlQ29udmVyc2lvblRhc2tzOiAoXG4gICAgYXJnczogRGVzY3JpYmVDb252ZXJzaW9uVGFza3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVDb252ZXJzaW9uVGFza3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQ3VzdG9tZXJHYXRld2F5c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUN1c3RvbWVyR2F0ZXdheXM6IChcbiAgICBhcmdzOiBEZXNjcmliZUN1c3RvbWVyR2F0ZXdheXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVDdXN0b21lckdhdGV3YXlzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZURoY3BPcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlRGhjcE9wdGlvbnM6IChcbiAgICBhcmdzOiBEZXNjcmliZURoY3BPcHRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlRGhjcE9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlRWdyZXNzT25seUludGVybmV0R2F0ZXdheXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVFZ3Jlc3NPbmx5SW50ZXJuZXRHYXRld2F5czogKFxuICAgIGFyZ3M6IERlc2NyaWJlRWdyZXNzT25seUludGVybmV0R2F0ZXdheXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVFZ3Jlc3NPbmx5SW50ZXJuZXRHYXRld2F5c0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVFbGFzdGljR3B1c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUVsYXN0aWNHcHVzOiAoXG4gICAgYXJnczogRGVzY3JpYmVFbGFzdGljR3B1c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUVsYXN0aWNHcHVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUV4cG9ydEltYWdlVGFza3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVFeHBvcnRJbWFnZVRhc2tzOiAoXG4gICAgYXJnczogRGVzY3JpYmVFeHBvcnRJbWFnZVRhc2tzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlRXhwb3J0SW1hZ2VUYXNrc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVFeHBvcnRUYXNrc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUV4cG9ydFRhc2tzOiAoXG4gICAgYXJnczogRGVzY3JpYmVFeHBvcnRUYXNrc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUV4cG9ydFRhc2tzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUZhc3RMYXVuY2hJbWFnZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVGYXN0TGF1bmNoSW1hZ2VzOiAoXG4gICAgYXJnczogRGVzY3JpYmVGYXN0TGF1bmNoSW1hZ2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlRmFzdExhdW5jaEltYWdlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVGYXN0U25hcHNob3RSZXN0b3Jlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUZhc3RTbmFwc2hvdFJlc3RvcmVzOiAoXG4gICAgYXJnczogRGVzY3JpYmVGYXN0U25hcHNob3RSZXN0b3Jlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUZhc3RTbmFwc2hvdFJlc3RvcmVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUZsZWV0SGlzdG9yeUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUZsZWV0SGlzdG9yeTogKFxuICAgIGFyZ3M6IERlc2NyaWJlRmxlZXRIaXN0b3J5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlRmxlZXRIaXN0b3J5Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUZsZWV0SW5zdGFuY2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlRmxlZXRJbnN0YW5jZXM6IChcbiAgICBhcmdzOiBEZXNjcmliZUZsZWV0SW5zdGFuY2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlRmxlZXRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlRmxlZXRzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlRmxlZXRzOiAoXG4gICAgYXJnczogRGVzY3JpYmVGbGVldHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVzY3JpYmVGbGVldHNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlRmxvd0xvZ3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVGbG93TG9nczogKFxuICAgIGFyZ3M6IERlc2NyaWJlRmxvd0xvZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVzY3JpYmVGbG93TG9nc0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVGcGdhSW1hZ2VBdHRyaWJ1dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVGcGdhSW1hZ2VBdHRyaWJ1dGU6IChcbiAgICBhcmdzOiBEZXNjcmliZUZwZ2FJbWFnZUF0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUZwZ2FJbWFnZUF0dHJpYnV0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVGcGdhSW1hZ2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlRnBnYUltYWdlczogKFxuICAgIGFyZ3M6IERlc2NyaWJlRnBnYUltYWdlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUZwZ2FJbWFnZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlSG9zdFJlc2VydmF0aW9uT2ZmZXJpbmdzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlSG9zdFJlc2VydmF0aW9uT2ZmZXJpbmdzOiAoXG4gICAgYXJnczogRGVzY3JpYmVIb3N0UmVzZXJ2YXRpb25PZmZlcmluZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVIb3N0UmVzZXJ2YXRpb25PZmZlcmluZ3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlSG9zdFJlc2VydmF0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUhvc3RSZXNlcnZhdGlvbnM6IChcbiAgICBhcmdzOiBEZXNjcmliZUhvc3RSZXNlcnZhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVIb3N0UmVzZXJ2YXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUhvc3RzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlSG9zdHM6IChcbiAgICBhcmdzOiBEZXNjcmliZUhvc3RzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PERlc2NyaWJlSG9zdHNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlSWFtSW5zdGFuY2VQcm9maWxlQXNzb2NpYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlSWFtSW5zdGFuY2VQcm9maWxlQXNzb2NpYXRpb25zOiAoXG4gICAgYXJnczogRGVzY3JpYmVJYW1JbnN0YW5jZVByb2ZpbGVBc3NvY2lhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVJYW1JbnN0YW5jZVByb2ZpbGVBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlSWRlbnRpdHlJZEZvcm1hdENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUlkZW50aXR5SWRGb3JtYXQ6IChcbiAgICBhcmdzOiBEZXNjcmliZUlkZW50aXR5SWRGb3JtYXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVJZGVudGl0eUlkRm9ybWF0Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUlkRm9ybWF0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlSWRGb3JtYXQ6IChcbiAgICBhcmdzOiBEZXNjcmliZUlkRm9ybWF0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PERlc2NyaWJlSWRGb3JtYXRDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlSW1hZ2VBdHRyaWJ1dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVJbWFnZUF0dHJpYnV0ZTogKFxuICAgIGFyZ3M6IERlc2NyaWJlSW1hZ2VBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVJbWFnZUF0dHJpYnV0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVJbWFnZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVJbWFnZXM6IChcbiAgICBhcmdzOiBEZXNjcmliZUltYWdlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZXNjcmliZUltYWdlc0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVJbXBvcnRJbWFnZVRhc2tzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlSW1wb3J0SW1hZ2VUYXNrczogKFxuICAgIGFyZ3M6IERlc2NyaWJlSW1wb3J0SW1hZ2VUYXNrc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUltcG9ydEltYWdlVGFza3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlSW1wb3J0U25hcHNob3RUYXNrc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUltcG9ydFNuYXBzaG90VGFza3M6IChcbiAgICBhcmdzOiBEZXNjcmliZUltcG9ydFNuYXBzaG90VGFza3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVJbXBvcnRTbmFwc2hvdFRhc2tzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUluc3RhbmNlQXR0cmlidXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlSW5zdGFuY2VBdHRyaWJ1dGU6IChcbiAgICBhcmdzOiBEZXNjcmliZUluc3RhbmNlQXR0cmlidXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlSW5zdGFuY2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlSW5zdGFuY2VDb25uZWN0RW5kcG9pbnRzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlSW5zdGFuY2VDb25uZWN0RW5kcG9pbnRzOiAoXG4gICAgYXJnczogRGVzY3JpYmVJbnN0YW5jZUNvbm5lY3RFbmRwb2ludHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVJbnN0YW5jZUNvbm5lY3RFbmRwb2ludHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlSW5zdGFuY2VDcmVkaXRTcGVjaWZpY2F0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUluc3RhbmNlQ3JlZGl0U3BlY2lmaWNhdGlvbnM6IChcbiAgICBhcmdzOiBEZXNjcmliZUluc3RhbmNlQ3JlZGl0U3BlY2lmaWNhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVJbnN0YW5jZUNyZWRpdFNwZWNpZmljYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUluc3RhbmNlRXZlbnROb3RpZmljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlSW5zdGFuY2VFdmVudE5vdGlmaWNhdGlvbkF0dHJpYnV0ZXM6IChcbiAgICBhcmdzOiBEZXNjcmliZUluc3RhbmNlRXZlbnROb3RpZmljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlSW5zdGFuY2VFdmVudE5vdGlmaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlSW5zdGFuY2VFdmVudFdpbmRvd3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVJbnN0YW5jZUV2ZW50V2luZG93czogKFxuICAgIGFyZ3M6IERlc2NyaWJlSW5zdGFuY2VFdmVudFdpbmRvd3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVJbnN0YW5jZUV2ZW50V2luZG93c0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVJbnN0YW5jZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVJbnN0YW5jZXM6IChcbiAgICBhcmdzOiBEZXNjcmliZUluc3RhbmNlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUluc3RhbmNlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVJbnN0YW5jZVN0YXR1c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUluc3RhbmNlU3RhdHVzOiAoXG4gICAgYXJnczogRGVzY3JpYmVJbnN0YW5jZVN0YXR1c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUluc3RhbmNlU3RhdHVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUluc3RhbmNlVG9wb2xvZ3lDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVJbnN0YW5jZVRvcG9sb2d5OiAoXG4gICAgYXJnczogRGVzY3JpYmVJbnN0YW5jZVRvcG9sb2d5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlSW5zdGFuY2VUb3BvbG9neUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVJbnN0YW5jZVR5cGVPZmZlcmluZ3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVJbnN0YW5jZVR5cGVPZmZlcmluZ3M6IChcbiAgICBhcmdzOiBEZXNjcmliZUluc3RhbmNlVHlwZU9mZmVyaW5nc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUluc3RhbmNlVHlwZU9mZmVyaW5nc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVJbnN0YW5jZVR5cGVzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlSW5zdGFuY2VUeXBlczogKFxuICAgIGFyZ3M6IERlc2NyaWJlSW5zdGFuY2VUeXBlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUluc3RhbmNlVHlwZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlSW50ZXJuZXRHYXRld2F5c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUludGVybmV0R2F0ZXdheXM6IChcbiAgICBhcmdzOiBEZXNjcmliZUludGVybmV0R2F0ZXdheXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVJbnRlcm5ldEdhdGV3YXlzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUlwYW1CeW9hc25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVJcGFtQnlvYXNuOiAoXG4gICAgYXJnczogRGVzY3JpYmVJcGFtQnlvYXNuQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlSXBhbUJ5b2FzbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVJcGFtUG9vbHNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVJcGFtUG9vbHM6IChcbiAgICBhcmdzOiBEZXNjcmliZUlwYW1Qb29sc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUlwYW1Qb29sc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVJcGFtUmVzb3VyY2VEaXNjb3Zlcmllc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUlwYW1SZXNvdXJjZURpc2NvdmVyaWVzOiAoXG4gICAgYXJnczogRGVzY3JpYmVJcGFtUmVzb3VyY2VEaXNjb3Zlcmllc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUlwYW1SZXNvdXJjZURpc2NvdmVyaWVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUlwYW1SZXNvdXJjZURpc2NvdmVyeUFzc29jaWF0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUlwYW1SZXNvdXJjZURpc2NvdmVyeUFzc29jaWF0aW9uczogKFxuICAgIGFyZ3M6IERlc2NyaWJlSXBhbVJlc291cmNlRGlzY292ZXJ5QXNzb2NpYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlSXBhbVJlc291cmNlRGlzY292ZXJ5QXNzb2NpYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUlwYW1zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlSXBhbXM6IChcbiAgICBhcmdzOiBEZXNjcmliZUlwYW1zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PERlc2NyaWJlSXBhbXNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlSXBhbVNjb3Blc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUlwYW1TY29wZXM6IChcbiAgICBhcmdzOiBEZXNjcmliZUlwYW1TY29wZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVJcGFtU2NvcGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUlwdjZQb29sc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUlwdjZQb29sczogKFxuICAgIGFyZ3M6IERlc2NyaWJlSXB2NlBvb2xzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlSXB2NlBvb2xzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUtleVBhaXJzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlS2V5UGFpcnM6IChcbiAgICBhcmdzOiBEZXNjcmliZUtleVBhaXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PERlc2NyaWJlS2V5UGFpcnNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlTGF1bmNoVGVtcGxhdGVzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlTGF1bmNoVGVtcGxhdGVzOiAoXG4gICAgYXJnczogRGVzY3JpYmVMYXVuY2hUZW1wbGF0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVMYXVuY2hUZW1wbGF0ZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlTGF1bmNoVGVtcGxhdGVWZXJzaW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUxhdW5jaFRlbXBsYXRlVmVyc2lvbnM6IChcbiAgICBhcmdzOiBEZXNjcmliZUxhdW5jaFRlbXBsYXRlVmVyc2lvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVMYXVuY2hUZW1wbGF0ZVZlcnNpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlTG9jYWxHYXRld2F5Um91dGVUYWJsZXM6IChcbiAgICBhcmdzOiBEZXNjcmliZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlTG9jYWxHYXRld2F5Um91dGVUYWJsZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZpcnR1YWxJbnRlcmZhY2VHcm91cEFzc29jaWF0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWaXJ0dWFsSW50ZXJmYWNlR3JvdXBBc3NvY2lhdGlvbnM6IChcbiAgICBhcmdzOiBEZXNjcmliZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWaXJ0dWFsSW50ZXJmYWNlR3JvdXBBc3NvY2lhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVmlydHVhbEludGVyZmFjZUdyb3VwQXNzb2NpYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUxvY2FsR2F0ZXdheVJvdXRlVGFibGVWcGNBc3NvY2lhdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVnBjQXNzb2NpYXRpb25zOiAoXG4gICAgYXJnczogRGVzY3JpYmVMb2NhbEdhdGV3YXlSb3V0ZVRhYmxlVnBjQXNzb2NpYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlTG9jYWxHYXRld2F5Um91dGVUYWJsZVZwY0Fzc29jaWF0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVMb2NhbEdhdGV3YXlzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlTG9jYWxHYXRld2F5czogKFxuICAgIGFyZ3M6IERlc2NyaWJlTG9jYWxHYXRld2F5c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUxvY2FsR2F0ZXdheXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlTG9jYWxHYXRld2F5VmlydHVhbEludGVyZmFjZUdyb3Vwc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZUxvY2FsR2F0ZXdheVZpcnR1YWxJbnRlcmZhY2VHcm91cHM6IChcbiAgICBhcmdzOiBEZXNjcmliZUxvY2FsR2F0ZXdheVZpcnR1YWxJbnRlcmZhY2VHcm91cHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVMb2NhbEdhdGV3YXlWaXJ0dWFsSW50ZXJmYWNlR3JvdXBzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUxvY2FsR2F0ZXdheVZpcnR1YWxJbnRlcmZhY2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlTG9jYWxHYXRld2F5VmlydHVhbEludGVyZmFjZXM6IChcbiAgICBhcmdzOiBEZXNjcmliZUxvY2FsR2F0ZXdheVZpcnR1YWxJbnRlcmZhY2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlTG9jYWxHYXRld2F5VmlydHVhbEludGVyZmFjZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlTG9ja2VkU25hcHNob3RzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlTG9ja2VkU25hcHNob3RzOiAoXG4gICAgYXJnczogRGVzY3JpYmVMb2NrZWRTbmFwc2hvdHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVMb2NrZWRTbmFwc2hvdHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlTWFuYWdlZFByZWZpeExpc3RzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlTWFuYWdlZFByZWZpeExpc3RzOiAoXG4gICAgYXJnczogRGVzY3JpYmVNYW5hZ2VkUHJlZml4TGlzdHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVNYW5hZ2VkUHJlZml4TGlzdHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlTW92aW5nQWRkcmVzc2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlTW92aW5nQWRkcmVzc2VzOiAoXG4gICAgYXJnczogRGVzY3JpYmVNb3ZpbmdBZGRyZXNzZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVNb3ZpbmdBZGRyZXNzZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlTmF0R2F0ZXdheXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVOYXRHYXRld2F5czogKFxuICAgIGFyZ3M6IERlc2NyaWJlTmF0R2F0ZXdheXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVOYXRHYXRld2F5c0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVOZXR3b3JrQWNsc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZU5ldHdvcmtBY2xzOiAoXG4gICAgYXJnczogRGVzY3JpYmVOZXR3b3JrQWNsc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZU5ldHdvcmtBY2xzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUFuYWx5c2VzOiAoXG4gICAgYXJnczogRGVzY3JpYmVOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUFuYWx5c2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlTmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVBbmFseXNlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZXM6IChcbiAgICBhcmdzOiBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3Blc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3Blc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVOZXR3b3JrSW5zaWdodHNBbmFseXNlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZU5ldHdvcmtJbnNpZ2h0c0FuYWx5c2VzOiAoXG4gICAgYXJnczogRGVzY3JpYmVOZXR3b3JrSW5zaWdodHNBbmFseXNlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c0FuYWx5c2VzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c1BhdGhzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlTmV0d29ya0luc2lnaHRzUGF0aHM6IChcbiAgICBhcmdzOiBEZXNjcmliZU5ldHdvcmtJbnNpZ2h0c1BhdGhzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlTmV0d29ya0luc2lnaHRzUGF0aHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlTmV0d29ya0ludGVyZmFjZUF0dHJpYnV0ZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VBdHRyaWJ1dGU6IChcbiAgICBhcmdzOiBEZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVOZXR3b3JrSW50ZXJmYWNlQXR0cmlidXRlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VQZXJtaXNzaW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VQZXJtaXNzaW9uczogKFxuICAgIGFyZ3M6IERlc2NyaWJlTmV0d29ya0ludGVyZmFjZVBlcm1pc3Npb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlTmV0d29ya0ludGVyZmFjZVBlcm1pc3Npb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlTmV0d29ya0ludGVyZmFjZXM6IChcbiAgICBhcmdzOiBEZXNjcmliZU5ldHdvcmtJbnRlcmZhY2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlTmV0d29ya0ludGVyZmFjZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlUGxhY2VtZW50R3JvdXBzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlUGxhY2VtZW50R3JvdXBzOiAoXG4gICAgYXJnczogRGVzY3JpYmVQbGFjZW1lbnRHcm91cHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVQbGFjZW1lbnRHcm91cHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlUHJlZml4TGlzdHNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVQcmVmaXhMaXN0czogKFxuICAgIGFyZ3M6IERlc2NyaWJlUHJlZml4TGlzdHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVQcmVmaXhMaXN0c0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVQcmluY2lwYWxJZEZvcm1hdENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVByaW5jaXBhbElkRm9ybWF0OiAoXG4gICAgYXJnczogRGVzY3JpYmVQcmluY2lwYWxJZEZvcm1hdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVByaW5jaXBhbElkRm9ybWF0Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVB1YmxpY0lwdjRQb29sc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVB1YmxpY0lwdjRQb29sczogKFxuICAgIGFyZ3M6IERlc2NyaWJlUHVibGljSXB2NFBvb2xzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlUHVibGljSXB2NFBvb2xzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVJlZ2lvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVSZWdpb25zOiAoXG4gICAgYXJnczogRGVzY3JpYmVSZWdpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PERlc2NyaWJlUmVnaW9uc0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVSZXBsYWNlUm9vdFZvbHVtZVRhc2tzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlUmVwbGFjZVJvb3RWb2x1bWVUYXNrczogKFxuICAgIGFyZ3M6IERlc2NyaWJlUmVwbGFjZVJvb3RWb2x1bWVUYXNrc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVJlcGxhY2VSb290Vm9sdW1lVGFza3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlUmVzZXJ2ZWRJbnN0YW5jZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVSZXNlcnZlZEluc3RhbmNlczogKFxuICAgIGFyZ3M6IERlc2NyaWJlUmVzZXJ2ZWRJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVSZXNlcnZlZEluc3RhbmNlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVSZXNlcnZlZEluc3RhbmNlc0xpc3RpbmdzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlUmVzZXJ2ZWRJbnN0YW5jZXNMaXN0aW5nczogKFxuICAgIGFyZ3M6IERlc2NyaWJlUmVzZXJ2ZWRJbnN0YW5jZXNMaXN0aW5nc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVJlc2VydmVkSW5zdGFuY2VzTGlzdGluZ3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlUmVzZXJ2ZWRJbnN0YW5jZXNNb2RpZmljYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlUmVzZXJ2ZWRJbnN0YW5jZXNNb2RpZmljYXRpb25zOiAoXG4gICAgYXJnczogRGVzY3JpYmVSZXNlcnZlZEluc3RhbmNlc01vZGlmaWNhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVSZXNlcnZlZEluc3RhbmNlc01vZGlmaWNhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlUmVzZXJ2ZWRJbnN0YW5jZXNPZmZlcmluZ3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVSZXNlcnZlZEluc3RhbmNlc09mZmVyaW5nczogKFxuICAgIGFyZ3M6IERlc2NyaWJlUmVzZXJ2ZWRJbnN0YW5jZXNPZmZlcmluZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVSZXNlcnZlZEluc3RhbmNlc09mZmVyaW5nc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVSb3V0ZVRhYmxlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVJvdXRlVGFibGVzOiAoXG4gICAgYXJnczogRGVzY3JpYmVSb3V0ZVRhYmxlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVJvdXRlVGFibGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVNjaGVkdWxlZEluc3RhbmNlQXZhaWxhYmlsaXR5Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlU2NoZWR1bGVkSW5zdGFuY2VBdmFpbGFiaWxpdHk6IChcbiAgICBhcmdzOiBEZXNjcmliZVNjaGVkdWxlZEluc3RhbmNlQXZhaWxhYmlsaXR5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlU2NoZWR1bGVkSW5zdGFuY2VBdmFpbGFiaWxpdHlDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlU2NoZWR1bGVkSW5zdGFuY2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlU2NoZWR1bGVkSW5zdGFuY2VzOiAoXG4gICAgYXJnczogRGVzY3JpYmVTY2hlZHVsZWRJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVTY2hlZHVsZWRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlU2VjdXJpdHlHcm91cFJlZmVyZW5jZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVTZWN1cml0eUdyb3VwUmVmZXJlbmNlczogKFxuICAgIGFyZ3M6IERlc2NyaWJlU2VjdXJpdHlHcm91cFJlZmVyZW5jZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVTZWN1cml0eUdyb3VwUmVmZXJlbmNlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVTZWN1cml0eUdyb3VwUnVsZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVTZWN1cml0eUdyb3VwUnVsZXM6IChcbiAgICBhcmdzOiBEZXNjcmliZVNlY3VyaXR5R3JvdXBSdWxlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVNlY3VyaXR5R3JvdXBSdWxlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVTZWN1cml0eUdyb3Vwc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVNlY3VyaXR5R3JvdXBzOiAoXG4gICAgYXJnczogRGVzY3JpYmVTZWN1cml0eUdyb3Vwc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVNlY3VyaXR5R3JvdXBzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVNuYXBzaG90QXR0cmlidXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlU25hcHNob3RBdHRyaWJ1dGU6IChcbiAgICBhcmdzOiBEZXNjcmliZVNuYXBzaG90QXR0cmlidXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlU25hcHNob3RBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlU25hcHNob3RzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlU25hcHNob3RzOiAoXG4gICAgYXJnczogRGVzY3JpYmVTbmFwc2hvdHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVTbmFwc2hvdHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlU25hcHNob3RUaWVyU3RhdHVzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlU25hcHNob3RUaWVyU3RhdHVzOiAoXG4gICAgYXJnczogRGVzY3JpYmVTbmFwc2hvdFRpZXJTdGF0dXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVTbmFwc2hvdFRpZXJTdGF0dXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlU3BvdERhdGFmZWVkU3Vic2NyaXB0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlU3BvdERhdGFmZWVkU3Vic2NyaXB0aW9uOiAoXG4gICAgYXJnczogRGVzY3JpYmVTcG90RGF0YWZlZWRTdWJzY3JpcHRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVTcG90RGF0YWZlZWRTdWJzY3JpcHRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlU3BvdEZsZWV0SW5zdGFuY2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlU3BvdEZsZWV0SW5zdGFuY2VzOiAoXG4gICAgYXJnczogRGVzY3JpYmVTcG90RmxlZXRJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVTcG90RmxlZXRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlU3BvdEZsZWV0UmVxdWVzdEhpc3RvcnlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVTcG90RmxlZXRSZXF1ZXN0SGlzdG9yeTogKFxuICAgIGFyZ3M6IERlc2NyaWJlU3BvdEZsZWV0UmVxdWVzdEhpc3RvcnlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVTcG90RmxlZXRSZXF1ZXN0SGlzdG9yeUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVTcG90RmxlZXRSZXF1ZXN0c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVNwb3RGbGVldFJlcXVlc3RzOiAoXG4gICAgYXJnczogRGVzY3JpYmVTcG90RmxlZXRSZXF1ZXN0c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVNwb3RGbGVldFJlcXVlc3RzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVNwb3RJbnN0YW5jZVJlcXVlc3RzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlU3BvdEluc3RhbmNlUmVxdWVzdHM6IChcbiAgICBhcmdzOiBEZXNjcmliZVNwb3RJbnN0YW5jZVJlcXVlc3RzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlU3BvdEluc3RhbmNlUmVxdWVzdHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlU3BvdFByaWNlSGlzdG9yeUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVNwb3RQcmljZUhpc3Rvcnk6IChcbiAgICBhcmdzOiBEZXNjcmliZVNwb3RQcmljZUhpc3RvcnlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVTcG90UHJpY2VIaXN0b3J5Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVN0YWxlU2VjdXJpdHlHcm91cHNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVTdGFsZVNlY3VyaXR5R3JvdXBzOiAoXG4gICAgYXJnczogRGVzY3JpYmVTdGFsZVNlY3VyaXR5R3JvdXBzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlU3RhbGVTZWN1cml0eUdyb3Vwc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVTdG9yZUltYWdlVGFza3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVTdG9yZUltYWdlVGFza3M6IChcbiAgICBhcmdzOiBEZXNjcmliZVN0b3JlSW1hZ2VUYXNrc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVN0b3JlSW1hZ2VUYXNrc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVTdWJuZXRzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlU3VibmV0czogKFxuICAgIGFyZ3M6IERlc2NyaWJlU3VibmV0c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZXNjcmliZVN1Ym5ldHNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVGFnc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVRhZ3M6IChcbiAgICBhcmdzOiBEZXNjcmliZVRhZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVzY3JpYmVUYWdzQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVRyYWZmaWNNaXJyb3JGaWx0ZXJzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlVHJhZmZpY01pcnJvckZpbHRlcnM6IChcbiAgICBhcmdzOiBEZXNjcmliZVRyYWZmaWNNaXJyb3JGaWx0ZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlVHJhZmZpY01pcnJvckZpbHRlcnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVHJhZmZpY01pcnJvclNlc3Npb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlVHJhZmZpY01pcnJvclNlc3Npb25zOiAoXG4gICAgYXJnczogRGVzY3JpYmVUcmFmZmljTWlycm9yU2Vzc2lvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVUcmFmZmljTWlycm9yU2Vzc2lvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVHJhZmZpY01pcnJvclRhcmdldHNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVUcmFmZmljTWlycm9yVGFyZ2V0czogKFxuICAgIGFyZ3M6IERlc2NyaWJlVHJhZmZpY01pcnJvclRhcmdldHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVUcmFmZmljTWlycm9yVGFyZ2V0c0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheUF0dGFjaG1lbnRzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlVHJhbnNpdEdhdGV3YXlBdHRhY2htZW50czogKFxuICAgIGFyZ3M6IERlc2NyaWJlVHJhbnNpdEdhdGV3YXlBdHRhY2htZW50c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVRyYW5zaXRHYXRld2F5QXR0YWNobWVudHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlDb25uZWN0UGVlcnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVUcmFuc2l0R2F0ZXdheUNvbm5lY3RQZWVyczogKFxuICAgIGFyZ3M6IERlc2NyaWJlVHJhbnNpdEdhdGV3YXlDb25uZWN0UGVlcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheUNvbm5lY3RQZWVyc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheUNvbm5lY3RzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlVHJhbnNpdEdhdGV3YXlDb25uZWN0czogKFxuICAgIGFyZ3M6IERlc2NyaWJlVHJhbnNpdEdhdGV3YXlDb25uZWN0c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVRyYW5zaXRHYXRld2F5Q29ubmVjdHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5zOiAoXG4gICAgYXJnczogRGVzY3JpYmVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlQZWVyaW5nQXR0YWNobWVudHNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50czogKFxuICAgIGFyZ3M6IERlc2NyaWJlVHJhbnNpdEdhdGV3YXlQZWVyaW5nQXR0YWNobWVudHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50c0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVzOiAoXG4gICAgYXJnczogRGVzY3JpYmVUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFubm91bmNlbWVudHNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBbm5vdW5jZW1lbnRzOiAoXG4gICAgYXJnczogRGVzY3JpYmVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBbm5vdW5jZW1lbnRzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQW5ub3VuY2VtZW50c0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlczogKFxuICAgIGFyZ3M6IERlc2NyaWJlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlVHJhbnNpdEdhdGV3YXlzOiAoXG4gICAgYXJnczogRGVzY3JpYmVUcmFuc2l0R2F0ZXdheXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVHJhbnNpdEdhdGV3YXlWcGNBdHRhY2htZW50c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudHM6IChcbiAgICBhcmdzOiBEZXNjcmliZVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVRydW5rSW50ZXJmYWNlQXNzb2NpYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlVHJ1bmtJbnRlcmZhY2VBc3NvY2lhdGlvbnM6IChcbiAgICBhcmdzOiBEZXNjcmliZVRydW5rSW50ZXJmYWNlQXNzb2NpYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlVHJ1bmtJbnRlcmZhY2VBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVmVyaWZpZWRBY2Nlc3NFbmRwb2ludHNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVWZXJpZmllZEFjY2Vzc0VuZHBvaW50czogKFxuICAgIGFyZ3M6IERlc2NyaWJlVmVyaWZpZWRBY2Nlc3NFbmRwb2ludHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVWZXJpZmllZEFjY2Vzc0VuZHBvaW50c0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVWZXJpZmllZEFjY2Vzc0dyb3Vwc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVZlcmlmaWVkQWNjZXNzR3JvdXBzOiAoXG4gICAgYXJnczogRGVzY3JpYmVWZXJpZmllZEFjY2Vzc0dyb3Vwc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVZlcmlmaWVkQWNjZXNzR3JvdXBzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VMb2dnaW5nQ29uZmlndXJhdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVWZXJpZmllZEFjY2Vzc0luc3RhbmNlTG9nZ2luZ0NvbmZpZ3VyYXRpb25zOiAoXG4gICAgYXJnczogRGVzY3JpYmVWZXJpZmllZEFjY2Vzc0luc3RhbmNlTG9nZ2luZ0NvbmZpZ3VyYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlVmVyaWZpZWRBY2Nlc3NJbnN0YW5jZUxvZ2dpbmdDb25maWd1cmF0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVWZXJpZmllZEFjY2Vzc0luc3RhbmNlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VzOiAoXG4gICAgYXJnczogRGVzY3JpYmVWZXJpZmllZEFjY2Vzc0luc3RhbmNlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlcnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJzOiAoXG4gICAgYXJnczogRGVzY3JpYmVWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlVmVyaWZpZWRBY2Nlc3NUcnVzdFByb3ZpZGVyc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVWb2x1bWVBdHRyaWJ1dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVWb2x1bWVBdHRyaWJ1dGU6IChcbiAgICBhcmdzOiBEZXNjcmliZVZvbHVtZUF0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVZvbHVtZUF0dHJpYnV0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVWb2x1bWVzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlVm9sdW1lczogKFxuICAgIGFyZ3M6IERlc2NyaWJlVm9sdW1lc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZXNjcmliZVZvbHVtZXNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVm9sdW1lc01vZGlmaWNhdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVWb2x1bWVzTW9kaWZpY2F0aW9uczogKFxuICAgIGFyZ3M6IERlc2NyaWJlVm9sdW1lc01vZGlmaWNhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVWb2x1bWVzTW9kaWZpY2F0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVWb2x1bWVTdGF0dXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVWb2x1bWVTdGF0dXM6IChcbiAgICBhcmdzOiBEZXNjcmliZVZvbHVtZVN0YXR1c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVZvbHVtZVN0YXR1c0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVWcGNBdHRyaWJ1dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVWcGNBdHRyaWJ1dGU6IChcbiAgICBhcmdzOiBEZXNjcmliZVZwY0F0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVZwY0F0dHJpYnV0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVWcGNDbGFzc2ljTGlua0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVZwY0NsYXNzaWNMaW5rOiAoXG4gICAgYXJnczogRGVzY3JpYmVWcGNDbGFzc2ljTGlua0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVZwY0NsYXNzaWNMaW5rQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVZwY0NsYXNzaWNMaW5rRG5zU3VwcG9ydENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVZwY0NsYXNzaWNMaW5rRG5zU3VwcG9ydDogKFxuICAgIGFyZ3M6IERlc2NyaWJlVnBjQ2xhc3NpY0xpbmtEbnNTdXBwb3J0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlVnBjQ2xhc3NpY0xpbmtEbnNTdXBwb3J0Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVZwY0VuZHBvaW50Q29ubmVjdGlvbk5vdGlmaWNhdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb25zOiAoXG4gICAgYXJnczogRGVzY3JpYmVWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlVnBjRW5kcG9pbnRDb25uZWN0aW9uTm90aWZpY2F0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVWcGNFbmRwb2ludENvbm5lY3Rpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlVnBjRW5kcG9pbnRDb25uZWN0aW9uczogKFxuICAgIGFyZ3M6IERlc2NyaWJlVnBjRW5kcG9pbnRDb25uZWN0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVZwY0VuZHBvaW50Q29ubmVjdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVnBjRW5kcG9pbnRzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlVnBjRW5kcG9pbnRzOiAoXG4gICAgYXJnczogRGVzY3JpYmVWcGNFbmRwb2ludHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVWcGNFbmRwb2ludHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVnBjRW5kcG9pbnRTZXJ2aWNlQ29uZmlndXJhdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uczogKFxuICAgIGFyZ3M6IERlc2NyaWJlVnBjRW5kcG9pbnRTZXJ2aWNlQ29uZmlndXJhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVWcGNFbmRwb2ludFNlcnZpY2VQZXJtaXNzaW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVZwY0VuZHBvaW50U2VydmljZVBlcm1pc3Npb25zOiAoXG4gICAgYXJnczogRGVzY3JpYmVWcGNFbmRwb2ludFNlcnZpY2VQZXJtaXNzaW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVZwY0VuZHBvaW50U2VydmljZVBlcm1pc3Npb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVZwY0VuZHBvaW50U2VydmljZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVWcGNFbmRwb2ludFNlcnZpY2VzOiAoXG4gICAgYXJnczogRGVzY3JpYmVWcGNFbmRwb2ludFNlcnZpY2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlVnBjRW5kcG9pbnRTZXJ2aWNlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVWcGNQZWVyaW5nQ29ubmVjdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVWcGNQZWVyaW5nQ29ubmVjdGlvbnM6IChcbiAgICBhcmdzOiBEZXNjcmliZVZwY1BlZXJpbmdDb25uZWN0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVZwY1BlZXJpbmdDb25uZWN0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVWcGNzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaWJlVnBjczogKFxuICAgIGFyZ3M6IERlc2NyaWJlVnBjc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZXNjcmliZVZwY3NDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVnBuQ29ubmVjdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpYmVWcG5Db25uZWN0aW9uczogKFxuICAgIGFyZ3M6IERlc2NyaWJlVnBuQ29ubmVjdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVWcG5Db25uZWN0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVWcG5HYXRld2F5c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXNjcmliZVZwbkdhdGV3YXlzOiAoXG4gICAgYXJnczogRGVzY3JpYmVWcG5HYXRld2F5c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVZwbkdhdGV3YXlzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXRhY2hDbGFzc2ljTGlua1ZwY0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXRhY2hDbGFzc2ljTGlua1ZwYzogKFxuICAgIGFyZ3M6IERldGFjaENsYXNzaWNMaW5rVnBjQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERldGFjaENsYXNzaWNMaW5rVnBjQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXRhY2hJbnRlcm5ldEdhdGV3YXlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGV0YWNoSW50ZXJuZXRHYXRld2F5OiAoXG4gICAgYXJnczogRGV0YWNoSW50ZXJuZXRHYXRld2F5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERldGFjaEludGVybmV0R2F0ZXdheUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGV0YWNoTmV0d29ya0ludGVyZmFjZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZXRhY2hOZXR3b3JrSW50ZXJmYWNlOiAoXG4gICAgYXJnczogRGV0YWNoTmV0d29ya0ludGVyZmFjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZXRhY2hOZXR3b3JrSW50ZXJmYWNlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXRhY2hWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGV0YWNoVmVyaWZpZWRBY2Nlc3NUcnVzdFByb3ZpZGVyOiAoXG4gICAgYXJnczogRGV0YWNoVmVyaWZpZWRBY2Nlc3NUcnVzdFByb3ZpZGVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERldGFjaFZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGV0YWNoVm9sdW1lQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRldGFjaFZvbHVtZTogKFxuICAgIGFyZ3M6IERldGFjaFZvbHVtZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZXRhY2hWb2x1bWVDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERldGFjaFZwbkdhdGV3YXlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGV0YWNoVnBuR2F0ZXdheTogKFxuICAgIGFyZ3M6IERldGFjaFZwbkdhdGV3YXlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGV0YWNoVnBuR2F0ZXdheUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGlzYWJsZUFkZHJlc3NUcmFuc2ZlckNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlQWRkcmVzc1RyYW5zZmVyOiAoXG4gICAgYXJnczogRGlzYWJsZUFkZHJlc3NUcmFuc2ZlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEaXNhYmxlQWRkcmVzc1RyYW5zZmVyQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEaXNhYmxlQXdzTmV0d29ya1BlcmZvcm1hbmNlTWV0cmljU3Vic2NyaXB0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVBd3NOZXR3b3JrUGVyZm9ybWFuY2VNZXRyaWNTdWJzY3JpcHRpb246IChcbiAgICBhcmdzOiBEaXNhYmxlQXdzTmV0d29ya1BlcmZvcm1hbmNlTWV0cmljU3Vic2NyaXB0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERpc2FibGVBd3NOZXR3b3JrUGVyZm9ybWFuY2VNZXRyaWNTdWJzY3JpcHRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2FibGVFYnNFbmNyeXB0aW9uQnlEZWZhdWx0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVFYnNFbmNyeXB0aW9uQnlEZWZhdWx0OiAoXG4gICAgYXJnczogRGlzYWJsZUVic0VuY3J5cHRpb25CeURlZmF1bHRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYWJsZUVic0VuY3J5cHRpb25CeURlZmF1bHRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2FibGVGYXN0TGF1bmNoQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVGYXN0TGF1bmNoOiAoXG4gICAgYXJnczogRGlzYWJsZUZhc3RMYXVuY2hDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYWJsZUZhc3RMYXVuY2hDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2FibGVGYXN0U25hcHNob3RSZXN0b3Jlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlRmFzdFNuYXBzaG90UmVzdG9yZXM6IChcbiAgICBhcmdzOiBEaXNhYmxlRmFzdFNuYXBzaG90UmVzdG9yZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYWJsZUZhc3RTbmFwc2hvdFJlc3RvcmVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEaXNhYmxlSW1hZ2VDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZUltYWdlOiAoXG4gICAgYXJnczogRGlzYWJsZUltYWdlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PERpc2FibGVJbWFnZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGlzYWJsZUltYWdlQmxvY2tQdWJsaWNBY2Nlc3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZUltYWdlQmxvY2tQdWJsaWNBY2Nlc3M6IChcbiAgICBhcmdzOiBEaXNhYmxlSW1hZ2VCbG9ja1B1YmxpY0FjY2Vzc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEaXNhYmxlSW1hZ2VCbG9ja1B1YmxpY0FjY2Vzc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGlzYWJsZUltYWdlRGVwcmVjYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZUltYWdlRGVwcmVjYXRpb246IChcbiAgICBhcmdzOiBEaXNhYmxlSW1hZ2VEZXByZWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEaXNhYmxlSW1hZ2VEZXByZWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGlzYWJsZUlwYW1Pcmdhbml6YXRpb25BZG1pbkFjY291bnRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZUlwYW1Pcmdhbml6YXRpb25BZG1pbkFjY291bnQ6IChcbiAgICBhcmdzOiBEaXNhYmxlSXBhbU9yZ2FuaXphdGlvbkFkbWluQWNjb3VudENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEaXNhYmxlSXBhbU9yZ2FuaXphdGlvbkFkbWluQWNjb3VudENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGlzYWJsZVNlcmlhbENvbnNvbGVBY2Nlc3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZVNlcmlhbENvbnNvbGVBY2Nlc3M6IChcbiAgICBhcmdzOiBEaXNhYmxlU2VyaWFsQ29uc29sZUFjY2Vzc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEaXNhYmxlU2VyaWFsQ29uc29sZUFjY2Vzc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGlzYWJsZVNuYXBzaG90QmxvY2tQdWJsaWNBY2Nlc3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZVNuYXBzaG90QmxvY2tQdWJsaWNBY2Nlc3M6IChcbiAgICBhcmdzOiBEaXNhYmxlU25hcHNob3RCbG9ja1B1YmxpY0FjY2Vzc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEaXNhYmxlU25hcHNob3RCbG9ja1B1YmxpY0FjY2Vzc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGlzYWJsZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZVByb3BhZ2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVQcm9wYWdhdGlvbjogKFxuICAgIGFyZ3M6IERpc2FibGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVQcm9wYWdhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEaXNhYmxlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlUHJvcGFnYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2FibGVWZ3dSb3V0ZVByb3BhZ2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVWZ3dSb3V0ZVByb3BhZ2F0aW9uOiAoXG4gICAgYXJnczogRGlzYWJsZVZnd1JvdXRlUHJvcGFnYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYWJsZVZnd1JvdXRlUHJvcGFnYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2FibGVWcGNDbGFzc2ljTGlua0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlVnBjQ2xhc3NpY0xpbms6IChcbiAgICBhcmdzOiBEaXNhYmxlVnBjQ2xhc3NpY0xpbmtDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYWJsZVZwY0NsYXNzaWNMaW5rQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEaXNhYmxlVnBjQ2xhc3NpY0xpbmtEbnNTdXBwb3J0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVWcGNDbGFzc2ljTGlua0Ruc1N1cHBvcnQ6IChcbiAgICBhcmdzOiBEaXNhYmxlVnBjQ2xhc3NpY0xpbmtEbnNTdXBwb3J0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERpc2FibGVWcGNDbGFzc2ljTGlua0Ruc1N1cHBvcnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2Fzc29jaWF0ZUFkZHJlc3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYXNzb2NpYXRlQWRkcmVzczogKFxuICAgIGFyZ3M6IERpc2Fzc29jaWF0ZUFkZHJlc3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYXNzb2NpYXRlQWRkcmVzc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGlzYXNzb2NpYXRlQ2xpZW50VnBuVGFyZ2V0TmV0d29ya0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkaXNhc3NvY2lhdGVDbGllbnRWcG5UYXJnZXROZXR3b3JrOiAoXG4gICAgYXJnczogRGlzYXNzb2NpYXRlQ2xpZW50VnBuVGFyZ2V0TmV0d29ya0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEaXNhc3NvY2lhdGVDbGllbnRWcG5UYXJnZXROZXR3b3JrQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEaXNhc3NvY2lhdGVFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2Fzc29jaWF0ZUVuY2xhdmVDZXJ0aWZpY2F0ZUlhbVJvbGU6IChcbiAgICBhcmdzOiBEaXNhc3NvY2lhdGVFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERpc2Fzc29jaWF0ZUVuY2xhdmVDZXJ0aWZpY2F0ZUlhbVJvbGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2Fzc29jaWF0ZUlhbUluc3RhbmNlUHJvZmlsZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkaXNhc3NvY2lhdGVJYW1JbnN0YW5jZVByb2ZpbGU6IChcbiAgICBhcmdzOiBEaXNhc3NvY2lhdGVJYW1JbnN0YW5jZVByb2ZpbGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYXNzb2NpYXRlSWFtSW5zdGFuY2VQcm9maWxlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEaXNhc3NvY2lhdGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2Fzc29jaWF0ZUluc3RhbmNlRXZlbnRXaW5kb3c6IChcbiAgICBhcmdzOiBEaXNhc3NvY2lhdGVJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERpc2Fzc29jaWF0ZUluc3RhbmNlRXZlbnRXaW5kb3dDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2Fzc29jaWF0ZUlwYW1CeW9hc25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYXNzb2NpYXRlSXBhbUJ5b2FzbjogKFxuICAgIGFyZ3M6IERpc2Fzc29jaWF0ZUlwYW1CeW9hc25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYXNzb2NpYXRlSXBhbUJ5b2FzbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGlzYXNzb2NpYXRlSXBhbVJlc291cmNlRGlzY292ZXJ5Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2Fzc29jaWF0ZUlwYW1SZXNvdXJjZURpc2NvdmVyeTogKFxuICAgIGFyZ3M6IERpc2Fzc29jaWF0ZUlwYW1SZXNvdXJjZURpc2NvdmVyeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEaXNhc3NvY2lhdGVJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2Fzc29jaWF0ZU5hdEdhdGV3YXlBZGRyZXNzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2Fzc29jaWF0ZU5hdEdhdGV3YXlBZGRyZXNzOiAoXG4gICAgYXJnczogRGlzYXNzb2NpYXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYXNzb2NpYXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2Fzc29jaWF0ZVJvdXRlVGFibGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYXNzb2NpYXRlUm91dGVUYWJsZTogKFxuICAgIGFyZ3M6IERpc2Fzc29jaWF0ZVJvdXRlVGFibGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYXNzb2NpYXRlUm91dGVUYWJsZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGlzYXNzb2NpYXRlU3VibmV0Q2lkckJsb2NrQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2Fzc29jaWF0ZVN1Ym5ldENpZHJCbG9jazogKFxuICAgIGFyZ3M6IERpc2Fzc29jaWF0ZVN1Ym5ldENpZHJCbG9ja0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEaXNhc3NvY2lhdGVTdWJuZXRDaWRyQmxvY2tDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2Fzc29jaWF0ZVRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2Fzc29jaWF0ZVRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluOiAoXG4gICAgYXJnczogRGlzYXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2Fzc29jaWF0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlQb2xpY3lUYWJsZTogKFxuICAgIGFyZ3M6IERpc2Fzc29jaWF0ZVRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlQb2xpY3lUYWJsZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGlzYXNzb2NpYXRlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2Fzc29jaWF0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZTogKFxuICAgIGFyZ3M6IERpc2Fzc29jaWF0ZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEaXNhc3NvY2lhdGVUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2Fzc29jaWF0ZVRydW5rSW50ZXJmYWNlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRpc2Fzc29jaWF0ZVRydW5rSW50ZXJmYWNlOiAoXG4gICAgYXJnczogRGlzYXNzb2NpYXRlVHJ1bmtJbnRlcmZhY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYXNzb2NpYXRlVHJ1bmtJbnRlcmZhY2VDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERpc2Fzc29jaWF0ZVZwY0NpZHJCbG9ja0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkaXNhc3NvY2lhdGVWcGNDaWRyQmxvY2s6IChcbiAgICBhcmdzOiBEaXNhc3NvY2lhdGVWcGNDaWRyQmxvY2tDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGlzYXNzb2NpYXRlVnBjQ2lkckJsb2NrQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBFbmFibGVBZGRyZXNzVHJhbnNmZXJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlQWRkcmVzc1RyYW5zZmVyOiAoXG4gICAgYXJnczogRW5hYmxlQWRkcmVzc1RyYW5zZmVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEVuYWJsZUFkZHJlc3NUcmFuc2ZlckNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRW5hYmxlQXdzTmV0d29ya1BlcmZvcm1hbmNlTWV0cmljU3Vic2NyaXB0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZUF3c05ldHdvcmtQZXJmb3JtYW5jZU1ldHJpY1N1YnNjcmlwdGlvbjogKFxuICAgIGFyZ3M6IEVuYWJsZUF3c05ldHdvcmtQZXJmb3JtYW5jZU1ldHJpY1N1YnNjcmlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBFbmFibGVBd3NOZXR3b3JrUGVyZm9ybWFuY2VNZXRyaWNTdWJzY3JpcHRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEVuYWJsZUVic0VuY3J5cHRpb25CeURlZmF1bHRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlRWJzRW5jcnlwdGlvbkJ5RGVmYXVsdDogKFxuICAgIGFyZ3M6IEVuYWJsZUVic0VuY3J5cHRpb25CeURlZmF1bHRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRW5hYmxlRWJzRW5jcnlwdGlvbkJ5RGVmYXVsdENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRW5hYmxlRmFzdExhdW5jaENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBlbmFibGVGYXN0TGF1bmNoOiAoXG4gICAgYXJnczogRW5hYmxlRmFzdExhdW5jaENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxFbmFibGVGYXN0TGF1bmNoQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBFbmFibGVGYXN0U25hcHNob3RSZXN0b3Jlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBlbmFibGVGYXN0U25hcHNob3RSZXN0b3JlczogKFxuICAgIGFyZ3M6IEVuYWJsZUZhc3RTbmFwc2hvdFJlc3RvcmVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEVuYWJsZUZhc3RTbmFwc2hvdFJlc3RvcmVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBFbmFibGVJbWFnZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBlbmFibGVJbWFnZTogKFxuICAgIGFyZ3M6IEVuYWJsZUltYWdlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PEVuYWJsZUltYWdlQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBFbmFibGVJbWFnZUJsb2NrUHVibGljQWNjZXNzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZUltYWdlQmxvY2tQdWJsaWNBY2Nlc3M6IChcbiAgICBhcmdzOiBFbmFibGVJbWFnZUJsb2NrUHVibGljQWNjZXNzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEVuYWJsZUltYWdlQmxvY2tQdWJsaWNBY2Nlc3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEVuYWJsZUltYWdlRGVwcmVjYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlSW1hZ2VEZXByZWNhdGlvbjogKFxuICAgIGFyZ3M6IEVuYWJsZUltYWdlRGVwcmVjYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRW5hYmxlSW1hZ2VEZXByZWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRW5hYmxlSXBhbU9yZ2FuaXphdGlvbkFkbWluQWNjb3VudENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBlbmFibGVJcGFtT3JnYW5pemF0aW9uQWRtaW5BY2NvdW50OiAoXG4gICAgYXJnczogRW5hYmxlSXBhbU9yZ2FuaXphdGlvbkFkbWluQWNjb3VudENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBFbmFibGVJcGFtT3JnYW5pemF0aW9uQWRtaW5BY2NvdW50Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBFbmFibGVSZWFjaGFiaWxpdHlBbmFseXplck9yZ2FuaXphdGlvblNoYXJpbmdDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlUmVhY2hhYmlsaXR5QW5hbHl6ZXJPcmdhbml6YXRpb25TaGFyaW5nOiAoXG4gICAgYXJnczogRW5hYmxlUmVhY2hhYmlsaXR5QW5hbHl6ZXJPcmdhbml6YXRpb25TaGFyaW5nQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEVuYWJsZVJlYWNoYWJpbGl0eUFuYWx5emVyT3JnYW5pemF0aW9uU2hhcmluZ0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRW5hYmxlU2VyaWFsQ29uc29sZUFjY2Vzc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBlbmFibGVTZXJpYWxDb25zb2xlQWNjZXNzOiAoXG4gICAgYXJnczogRW5hYmxlU2VyaWFsQ29uc29sZUFjY2Vzc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBFbmFibGVTZXJpYWxDb25zb2xlQWNjZXNzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBFbmFibGVTbmFwc2hvdEJsb2NrUHVibGljQWNjZXNzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZVNuYXBzaG90QmxvY2tQdWJsaWNBY2Nlc3M6IChcbiAgICBhcmdzOiBFbmFibGVTbmFwc2hvdEJsb2NrUHVibGljQWNjZXNzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEVuYWJsZVNuYXBzaG90QmxvY2tQdWJsaWNBY2Nlc3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEVuYWJsZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZVByb3BhZ2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZVRyYW5zaXRHYXRld2F5Um91dGVUYWJsZVByb3BhZ2F0aW9uOiAoXG4gICAgYXJnczogRW5hYmxlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlUHJvcGFnYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRW5hYmxlVHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlUHJvcGFnYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEVuYWJsZVZnd1JvdXRlUHJvcGFnYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlVmd3Um91dGVQcm9wYWdhdGlvbjogKFxuICAgIGFyZ3M6IEVuYWJsZVZnd1JvdXRlUHJvcGFnYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRW5hYmxlVmd3Um91dGVQcm9wYWdhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRW5hYmxlVm9sdW1lSU9Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlVm9sdW1lSU86IChcbiAgICBhcmdzOiBFbmFibGVWb2x1bWVJT0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxFbmFibGVWb2x1bWVJT0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRW5hYmxlVnBjQ2xhc3NpY0xpbmtDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlVnBjQ2xhc3NpY0xpbms6IChcbiAgICBhcmdzOiBFbmFibGVWcGNDbGFzc2ljTGlua0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBFbmFibGVWcGNDbGFzc2ljTGlua0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRW5hYmxlVnBjQ2xhc3NpY0xpbmtEbnNTdXBwb3J0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZVZwY0NsYXNzaWNMaW5rRG5zU3VwcG9ydDogKFxuICAgIGFyZ3M6IEVuYWJsZVZwY0NsYXNzaWNMaW5rRG5zU3VwcG9ydENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBFbmFibGVWcGNDbGFzc2ljTGlua0Ruc1N1cHBvcnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEV4cG9ydENsaWVudFZwbkNsaWVudENlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3RDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZXhwb3J0Q2xpZW50VnBuQ2xpZW50Q2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdDogKFxuICAgIGFyZ3M6IEV4cG9ydENsaWVudFZwbkNsaWVudENlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3RDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRXhwb3J0Q2xpZW50VnBuQ2xpZW50Q2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRXhwb3J0Q2xpZW50VnBuQ2xpZW50Q29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBleHBvcnRDbGllbnRWcG5DbGllbnRDb25maWd1cmF0aW9uOiAoXG4gICAgYXJnczogRXhwb3J0Q2xpZW50VnBuQ2xpZW50Q29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBFeHBvcnRDbGllbnRWcG5DbGllbnRDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBFeHBvcnRJbWFnZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBleHBvcnRJbWFnZTogKFxuICAgIGFyZ3M6IEV4cG9ydEltYWdlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PEV4cG9ydEltYWdlQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBFeHBvcnRUcmFuc2l0R2F0ZXdheVJvdXRlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBleHBvcnRUcmFuc2l0R2F0ZXdheVJvdXRlczogKFxuICAgIGFyZ3M6IEV4cG9ydFRyYW5zaXRHYXRld2F5Um91dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEV4cG9ydFRyYW5zaXRHYXRld2F5Um91dGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRBc3NvY2lhdGVkRW5jbGF2ZUNlcnRpZmljYXRlSWFtUm9sZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0QXNzb2NpYXRlZEVuY2xhdmVDZXJ0aWZpY2F0ZUlhbVJvbGVzOiAoXG4gICAgYXJnczogR2V0QXNzb2NpYXRlZEVuY2xhdmVDZXJ0aWZpY2F0ZUlhbVJvbGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEFzc29jaWF0ZWRFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QXNzb2NpYXRlZElwdjZQb29sQ2lkcnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0QXNzb2NpYXRlZElwdjZQb29sQ2lkcnM6IChcbiAgICBhcmdzOiBHZXRBc3NvY2lhdGVkSXB2NlBvb2xDaWRyc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRBc3NvY2lhdGVkSXB2NlBvb2xDaWRyc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QXdzTmV0d29ya1BlcmZvcm1hbmNlRGF0YUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRBd3NOZXR3b3JrUGVyZm9ybWFuY2VEYXRhOiAoXG4gICAgYXJnczogR2V0QXdzTmV0d29ya1BlcmZvcm1hbmNlRGF0YUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRBd3NOZXR3b3JrUGVyZm9ybWFuY2VEYXRhQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRDYXBhY2l0eVJlc2VydmF0aW9uVXNhZ2VDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0Q2FwYWNpdHlSZXNlcnZhdGlvblVzYWdlOiAoXG4gICAgYXJnczogR2V0Q2FwYWNpdHlSZXNlcnZhdGlvblVzYWdlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldENhcGFjaXR5UmVzZXJ2YXRpb25Vc2FnZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0Q29pcFBvb2xVc2FnZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRDb2lwUG9vbFVzYWdlOiAoXG4gICAgYXJnczogR2V0Q29pcFBvb2xVc2FnZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxHZXRDb2lwUG9vbFVzYWdlQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRDb25zb2xlT3V0cHV0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldENvbnNvbGVPdXRwdXQ6IChcbiAgICBhcmdzOiBHZXRDb25zb2xlT3V0cHV0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PEdldENvbnNvbGVPdXRwdXRDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldENvbnNvbGVTY3JlZW5zaG90Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldENvbnNvbGVTY3JlZW5zaG90OiAoXG4gICAgYXJnczogR2V0Q29uc29sZVNjcmVlbnNob3RDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0Q29uc29sZVNjcmVlbnNob3RDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldERlZmF1bHRDcmVkaXRTcGVjaWZpY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldERlZmF1bHRDcmVkaXRTcGVjaWZpY2F0aW9uOiAoXG4gICAgYXJnczogR2V0RGVmYXVsdENyZWRpdFNwZWNpZmljYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0RGVmYXVsdENyZWRpdFNwZWNpZmljYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEVic0RlZmF1bHRLbXNLZXlJZENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRFYnNEZWZhdWx0S21zS2V5SWQ6IChcbiAgICBhcmdzOiBHZXRFYnNEZWZhdWx0S21zS2V5SWRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0RWJzRGVmYXVsdEttc0tleUlkQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRFYnNFbmNyeXB0aW9uQnlEZWZhdWx0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldEVic0VuY3J5cHRpb25CeURlZmF1bHQ6IChcbiAgICBhcmdzOiBHZXRFYnNFbmNyeXB0aW9uQnlEZWZhdWx0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEVic0VuY3J5cHRpb25CeURlZmF1bHRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEZsb3dMb2dzSW50ZWdyYXRpb25UZW1wbGF0ZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRGbG93TG9nc0ludGVncmF0aW9uVGVtcGxhdGU6IChcbiAgICBhcmdzOiBHZXRGbG93TG9nc0ludGVncmF0aW9uVGVtcGxhdGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0Rmxvd0xvZ3NJbnRlZ3JhdGlvblRlbXBsYXRlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRHcm91cHNGb3JDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldEdyb3Vwc0ZvckNhcGFjaXR5UmVzZXJ2YXRpb246IChcbiAgICBhcmdzOiBHZXRHcm91cHNGb3JDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEdyb3Vwc0ZvckNhcGFjaXR5UmVzZXJ2YXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEhvc3RSZXNlcnZhdGlvblB1cmNoYXNlUHJldmlld0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRIb3N0UmVzZXJ2YXRpb25QdXJjaGFzZVByZXZpZXc6IChcbiAgICBhcmdzOiBHZXRIb3N0UmVzZXJ2YXRpb25QdXJjaGFzZVByZXZpZXdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0SG9zdFJlc2VydmF0aW9uUHVyY2hhc2VQcmV2aWV3Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRJbWFnZUJsb2NrUHVibGljQWNjZXNzU3RhdGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0SW1hZ2VCbG9ja1B1YmxpY0FjY2Vzc1N0YXRlOiAoXG4gICAgYXJnczogR2V0SW1hZ2VCbG9ja1B1YmxpY0FjY2Vzc1N0YXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEltYWdlQmxvY2tQdWJsaWNBY2Nlc3NTdGF0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0SW5zdGFuY2VUeXBlc0Zyb21JbnN0YW5jZVJlcXVpcmVtZW50c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRJbnN0YW5jZVR5cGVzRnJvbUluc3RhbmNlUmVxdWlyZW1lbnRzOiAoXG4gICAgYXJnczogR2V0SW5zdGFuY2VUeXBlc0Zyb21JbnN0YW5jZVJlcXVpcmVtZW50c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRJbnN0YW5jZVR5cGVzRnJvbUluc3RhbmNlUmVxdWlyZW1lbnRzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRJbnN0YW5jZVVlZmlEYXRhQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldEluc3RhbmNlVWVmaURhdGE6IChcbiAgICBhcmdzOiBHZXRJbnN0YW5jZVVlZmlEYXRhQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEluc3RhbmNlVWVmaURhdGFDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldElwYW1BZGRyZXNzSGlzdG9yeUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRJcGFtQWRkcmVzc0hpc3Rvcnk6IChcbiAgICBhcmdzOiBHZXRJcGFtQWRkcmVzc0hpc3RvcnlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0SXBhbUFkZHJlc3NIaXN0b3J5Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRJcGFtRGlzY292ZXJlZEFjY291bnRzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldElwYW1EaXNjb3ZlcmVkQWNjb3VudHM6IChcbiAgICBhcmdzOiBHZXRJcGFtRGlzY292ZXJlZEFjY291bnRzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldElwYW1EaXNjb3ZlcmVkQWNjb3VudHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldElwYW1EaXNjb3ZlcmVkUHVibGljQWRkcmVzc2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldElwYW1EaXNjb3ZlcmVkUHVibGljQWRkcmVzc2VzOiAoXG4gICAgYXJnczogR2V0SXBhbURpc2NvdmVyZWRQdWJsaWNBZGRyZXNzZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0SXBhbURpc2NvdmVyZWRQdWJsaWNBZGRyZXNzZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldElwYW1EaXNjb3ZlcmVkUmVzb3VyY2VDaWRyc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRJcGFtRGlzY292ZXJlZFJlc291cmNlQ2lkcnM6IChcbiAgICBhcmdzOiBHZXRJcGFtRGlzY292ZXJlZFJlc291cmNlQ2lkcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0SXBhbURpc2NvdmVyZWRSZXNvdXJjZUNpZHJzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRJcGFtUG9vbEFsbG9jYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldElwYW1Qb29sQWxsb2NhdGlvbnM6IChcbiAgICBhcmdzOiBHZXRJcGFtUG9vbEFsbG9jYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldElwYW1Qb29sQWxsb2NhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldElwYW1Qb29sQ2lkcnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0SXBhbVBvb2xDaWRyczogKFxuICAgIGFyZ3M6IEdldElwYW1Qb29sQ2lkcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8R2V0SXBhbVBvb2xDaWRyc0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0SXBhbVJlc291cmNlQ2lkcnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0SXBhbVJlc291cmNlQ2lkcnM6IChcbiAgICBhcmdzOiBHZXRJcGFtUmVzb3VyY2VDaWRyc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRJcGFtUmVzb3VyY2VDaWRyc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0TGF1bmNoVGVtcGxhdGVEYXRhQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldExhdW5jaFRlbXBsYXRlRGF0YTogKFxuICAgIGFyZ3M6IEdldExhdW5jaFRlbXBsYXRlRGF0YUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRMYXVuY2hUZW1wbGF0ZURhdGFDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldE1hbmFnZWRQcmVmaXhMaXN0QXNzb2NpYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldE1hbmFnZWRQcmVmaXhMaXN0QXNzb2NpYXRpb25zOiAoXG4gICAgYXJnczogR2V0TWFuYWdlZFByZWZpeExpc3RBc3NvY2lhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0TWFuYWdlZFByZWZpeExpc3RBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldE1hbmFnZWRQcmVmaXhMaXN0RW50cmllc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRNYW5hZ2VkUHJlZml4TGlzdEVudHJpZXM6IChcbiAgICBhcmdzOiBHZXRNYW5hZ2VkUHJlZml4TGlzdEVudHJpZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0TWFuYWdlZFByZWZpeExpc3RFbnRyaWVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXROZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUFuYWx5c2lzRmluZGluZ3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0TmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVBbmFseXNpc0ZpbmRpbmdzOiAoXG4gICAgYXJnczogR2V0TmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVBbmFseXNpc0ZpbmRpbmdzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldE5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzaXNGaW5kaW5nc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0TmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVDb250ZW50Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldE5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQ29udGVudDogKFxuICAgIGFyZ3M6IEdldE5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQ29udGVudENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXROZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUNvbnRlbnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFBhc3N3b3JkRGF0YUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRQYXNzd29yZERhdGE6IChcbiAgICBhcmdzOiBHZXRQYXNzd29yZERhdGFDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8R2V0UGFzc3dvcmREYXRhQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRSZXNlcnZlZEluc3RhbmNlc0V4Y2hhbmdlUXVvdGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0UmVzZXJ2ZWRJbnN0YW5jZXNFeGNoYW5nZVF1b3RlOiAoXG4gICAgYXJnczogR2V0UmVzZXJ2ZWRJbnN0YW5jZXNFeGNoYW5nZVF1b3RlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFJlc2VydmVkSW5zdGFuY2VzRXhjaGFuZ2VRdW90ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0U2VjdXJpdHlHcm91cHNGb3JWcGNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0U2VjdXJpdHlHcm91cHNGb3JWcGM6IChcbiAgICBhcmdzOiBHZXRTZWN1cml0eUdyb3Vwc0ZvclZwY0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRTZWN1cml0eUdyb3Vwc0ZvclZwY0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0U2VyaWFsQ29uc29sZUFjY2Vzc1N0YXR1c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRTZXJpYWxDb25zb2xlQWNjZXNzU3RhdHVzOiAoXG4gICAgYXJnczogR2V0U2VyaWFsQ29uc29sZUFjY2Vzc1N0YXR1c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRTZXJpYWxDb25zb2xlQWNjZXNzU3RhdHVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRTbmFwc2hvdEJsb2NrUHVibGljQWNjZXNzU3RhdGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0U25hcHNob3RCbG9ja1B1YmxpY0FjY2Vzc1N0YXRlOiAoXG4gICAgYXJnczogR2V0U25hcHNob3RCbG9ja1B1YmxpY0FjY2Vzc1N0YXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFNuYXBzaG90QmxvY2tQdWJsaWNBY2Nlc3NTdGF0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0U3BvdFBsYWNlbWVudFNjb3Jlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRTcG90UGxhY2VtZW50U2NvcmVzOiAoXG4gICAgYXJnczogR2V0U3BvdFBsYWNlbWVudFNjb3Jlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRTcG90UGxhY2VtZW50U2NvcmVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRTdWJuZXRDaWRyUmVzZXJ2YXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldFN1Ym5ldENpZHJSZXNlcnZhdGlvbnM6IChcbiAgICBhcmdzOiBHZXRTdWJuZXRDaWRyUmVzZXJ2YXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFN1Ym5ldENpZHJSZXNlcnZhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFRyYW5zaXRHYXRld2F5QXR0YWNobWVudFByb3BhZ2F0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRUcmFuc2l0R2F0ZXdheUF0dGFjaG1lbnRQcm9wYWdhdGlvbnM6IChcbiAgICBhcmdzOiBHZXRUcmFuc2l0R2F0ZXdheUF0dGFjaG1lbnRQcm9wYWdhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0VHJhbnNpdEdhdGV3YXlBdHRhY2htZW50UHJvcGFnYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkFzc29jaWF0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkFzc29jaWF0aW9uczogKFxuICAgIGFyZ3M6IEdldFRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluQXNzb2NpYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluQXNzb2NpYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQXNzb2NpYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldFRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVBc3NvY2lhdGlvbnM6IChcbiAgICBhcmdzOiBHZXRUcmFuc2l0R2F0ZXdheVBvbGljeVRhYmxlQXNzb2NpYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVFbnRyaWVzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldFRyYW5zaXRHYXRld2F5UG9saWN5VGFibGVFbnRyaWVzOiAoXG4gICAgYXJnczogR2V0VHJhbnNpdEdhdGV3YXlQb2xpY3lUYWJsZUVudHJpZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0VHJhbnNpdEdhdGV3YXlQb2xpY3lUYWJsZUVudHJpZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFRyYW5zaXRHYXRld2F5UHJlZml4TGlzdFJlZmVyZW5jZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0VHJhbnNpdEdhdGV3YXlQcmVmaXhMaXN0UmVmZXJlbmNlczogKFxuICAgIGFyZ3M6IEdldFRyYW5zaXRHYXRld2F5UHJlZml4TGlzdFJlZmVyZW5jZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0VHJhbnNpdEdhdGV3YXlQcmVmaXhMaXN0UmVmZXJlbmNlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0VHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQXNzb2NpYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldFRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFzc29jaWF0aW9uczogKFxuICAgIGFyZ3M6IEdldFRyYW5zaXRHYXRld2F5Um91dGVUYWJsZUFzc29jaWF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBc3NvY2lhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFRyYW5zaXRHYXRld2F5Um91dGVUYWJsZVByb3BhZ2F0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVQcm9wYWdhdGlvbnM6IChcbiAgICBhcmdzOiBHZXRUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVQcm9wYWdhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0VHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlUHJvcGFnYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRWZXJpZmllZEFjY2Vzc0VuZHBvaW50UG9saWN5Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldFZlcmlmaWVkQWNjZXNzRW5kcG9pbnRQb2xpY3k6IChcbiAgICBhcmdzOiBHZXRWZXJpZmllZEFjY2Vzc0VuZHBvaW50UG9saWN5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFZlcmlmaWVkQWNjZXNzRW5kcG9pbnRQb2xpY3lDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFZlcmlmaWVkQWNjZXNzR3JvdXBQb2xpY3lDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0VmVyaWZpZWRBY2Nlc3NHcm91cFBvbGljeTogKFxuICAgIGFyZ3M6IEdldFZlcmlmaWVkQWNjZXNzR3JvdXBQb2xpY3lDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0VmVyaWZpZWRBY2Nlc3NHcm91cFBvbGljeUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0VnBuQ29ubmVjdGlvbkRldmljZVNhbXBsZUNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0VnBuQ29ubmVjdGlvbkRldmljZVNhbXBsZUNvbmZpZ3VyYXRpb246IChcbiAgICBhcmdzOiBHZXRWcG5Db25uZWN0aW9uRGV2aWNlU2FtcGxlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRWcG5Db25uZWN0aW9uRGV2aWNlU2FtcGxlQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0VnBuQ29ubmVjdGlvbkRldmljZVR5cGVzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldFZwbkNvbm5lY3Rpb25EZXZpY2VUeXBlczogKFxuICAgIGFyZ3M6IEdldFZwbkNvbm5lY3Rpb25EZXZpY2VUeXBlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRWcG5Db25uZWN0aW9uRGV2aWNlVHlwZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFZwblR1bm5lbFJlcGxhY2VtZW50U3RhdHVzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldFZwblR1bm5lbFJlcGxhY2VtZW50U3RhdHVzOiAoXG4gICAgYXJnczogR2V0VnBuVHVubmVsUmVwbGFjZW1lbnRTdGF0dXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0VnBuVHVubmVsUmVwbGFjZW1lbnRTdGF0dXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEltcG9ydENsaWVudFZwbkNsaWVudENlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3RDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgaW1wb3J0Q2xpZW50VnBuQ2xpZW50Q2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdDogKFxuICAgIGFyZ3M6IEltcG9ydENsaWVudFZwbkNsaWVudENlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3RDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgSW1wb3J0Q2xpZW50VnBuQ2xpZW50Q2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgSW1wb3J0SW1hZ2VDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgaW1wb3J0SW1hZ2U6IChcbiAgICBhcmdzOiBJbXBvcnRJbWFnZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxJbXBvcnRJbWFnZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgSW1wb3J0SW5zdGFuY2VDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgaW1wb3J0SW5zdGFuY2U6IChcbiAgICBhcmdzOiBJbXBvcnRJbnN0YW5jZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxJbXBvcnRJbnN0YW5jZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgSW1wb3J0S2V5UGFpckNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBpbXBvcnRLZXlQYWlyOiAoXG4gICAgYXJnczogSW1wb3J0S2V5UGFpckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxJbXBvcnRLZXlQYWlyQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBJbXBvcnRTbmFwc2hvdENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBpbXBvcnRTbmFwc2hvdDogKFxuICAgIGFyZ3M6IEltcG9ydFNuYXBzaG90Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PEltcG9ydFNuYXBzaG90Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBJbXBvcnRWb2x1bWVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgaW1wb3J0Vm9sdW1lOiAoXG4gICAgYXJnczogSW1wb3J0Vm9sdW1lQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PEltcG9ydFZvbHVtZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEltYWdlc0luUmVjeWNsZUJpbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBsaXN0SW1hZ2VzSW5SZWN5Y2xlQmluOiAoXG4gICAgYXJnczogTGlzdEltYWdlc0luUmVjeWNsZUJpbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0SW1hZ2VzSW5SZWN5Y2xlQmluQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0U25hcHNob3RzSW5SZWN5Y2xlQmluQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGxpc3RTbmFwc2hvdHNJblJlY3ljbGVCaW46IChcbiAgICBhcmdzOiBMaXN0U25hcHNob3RzSW5SZWN5Y2xlQmluQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RTbmFwc2hvdHNJblJlY3ljbGVCaW5Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExvY2tTbmFwc2hvdENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBsb2NrU25hcHNob3Q6IChcbiAgICBhcmdzOiBMb2NrU25hcHNob3RDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8TG9ja1NuYXBzaG90Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlBZGRyZXNzQXR0cmlidXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeUFkZHJlc3NBdHRyaWJ1dGU6IChcbiAgICBhcmdzOiBNb2RpZnlBZGRyZXNzQXR0cmlidXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeUFkZHJlc3NBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeUF2YWlsYWJpbGl0eVpvbmVHcm91cENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlBdmFpbGFiaWxpdHlab25lR3JvdXA6IChcbiAgICBhcmdzOiBNb2RpZnlBdmFpbGFiaWxpdHlab25lR3JvdXBDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5QXZhaWxhYmlsaXR5Wm9uZUdyb3VwQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeUNhcGFjaXR5UmVzZXJ2YXRpb246IChcbiAgICBhcmdzOiBNb2RpZnlDYXBhY2l0eVJlc2VydmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeUNhcGFjaXR5UmVzZXJ2YXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeUNhcGFjaXR5UmVzZXJ2YXRpb25GbGVldENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXQ6IChcbiAgICBhcmdzOiBNb2RpZnlDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5Q2FwYWNpdHlSZXNlcnZhdGlvbkZsZWV0Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlDbGllbnRWcG5FbmRwb2ludENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlDbGllbnRWcG5FbmRwb2ludDogKFxuICAgIGFyZ3M6IE1vZGlmeUNsaWVudFZwbkVuZHBvaW50Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeUNsaWVudFZwbkVuZHBvaW50Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlEZWZhdWx0Q3JlZGl0U3BlY2lmaWNhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlEZWZhdWx0Q3JlZGl0U3BlY2lmaWNhdGlvbjogKFxuICAgIGFyZ3M6IE1vZGlmeURlZmF1bHRDcmVkaXRTcGVjaWZpY2F0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeURlZmF1bHRDcmVkaXRTcGVjaWZpY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlFYnNEZWZhdWx0S21zS2V5SWRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5RWJzRGVmYXVsdEttc0tleUlkOiAoXG4gICAgYXJnczogTW9kaWZ5RWJzRGVmYXVsdEttc0tleUlkQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeUVic0RlZmF1bHRLbXNLZXlJZENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5RmxlZXRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5RmxlZXQ6IChcbiAgICBhcmdzOiBNb2RpZnlGbGVldENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxNb2RpZnlGbGVldENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5RnBnYUltYWdlQXR0cmlidXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeUZwZ2FJbWFnZUF0dHJpYnV0ZTogKFxuICAgIGFyZ3M6IE1vZGlmeUZwZ2FJbWFnZUF0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlGcGdhSW1hZ2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeUhvc3RzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeUhvc3RzOiAoXG4gICAgYXJnczogTW9kaWZ5SG9zdHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8TW9kaWZ5SG9zdHNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeUlkZW50aXR5SWRGb3JtYXRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5SWRlbnRpdHlJZEZvcm1hdDogKFxuICAgIGFyZ3M6IE1vZGlmeUlkZW50aXR5SWRGb3JtYXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5SWRlbnRpdHlJZEZvcm1hdENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5SWRGb3JtYXRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5SWRGb3JtYXQ6IChcbiAgICBhcmdzOiBNb2RpZnlJZEZvcm1hdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxNb2RpZnlJZEZvcm1hdENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5SW1hZ2VBdHRyaWJ1dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5SW1hZ2VBdHRyaWJ1dGU6IChcbiAgICBhcmdzOiBNb2RpZnlJbWFnZUF0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlJbWFnZUF0dHJpYnV0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5SW5zdGFuY2VBdHRyaWJ1dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5SW5zdGFuY2VBdHRyaWJ1dGU6IChcbiAgICBhcmdzOiBNb2RpZnlJbnN0YW5jZUF0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlJbnN0YW5jZUF0dHJpYnV0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5SW5zdGFuY2VDYXBhY2l0eVJlc2VydmF0aW9uQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlJbnN0YW5jZUNhcGFjaXR5UmVzZXJ2YXRpb25BdHRyaWJ1dGVzOiAoXG4gICAgYXJnczogTW9kaWZ5SW5zdGFuY2VDYXBhY2l0eVJlc2VydmF0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlJbnN0YW5jZUNhcGFjaXR5UmVzZXJ2YXRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlJbnN0YW5jZUNyZWRpdFNwZWNpZmljYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5SW5zdGFuY2VDcmVkaXRTcGVjaWZpY2F0aW9uOiAoXG4gICAgYXJnczogTW9kaWZ5SW5zdGFuY2VDcmVkaXRTcGVjaWZpY2F0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeUluc3RhbmNlQ3JlZGl0U3BlY2lmaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5SW5zdGFuY2VFdmVudFN0YXJ0VGltZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlJbnN0YW5jZUV2ZW50U3RhcnRUaW1lOiAoXG4gICAgYXJnczogTW9kaWZ5SW5zdGFuY2VFdmVudFN0YXJ0VGltZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlJbnN0YW5jZUV2ZW50U3RhcnRUaW1lQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeUluc3RhbmNlRXZlbnRXaW5kb3c6IChcbiAgICBhcmdzOiBNb2RpZnlJbnN0YW5jZUV2ZW50V2luZG93Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeUluc3RhbmNlRXZlbnRXaW5kb3dDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeUluc3RhbmNlTWFpbnRlbmFuY2VPcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeUluc3RhbmNlTWFpbnRlbmFuY2VPcHRpb25zOiAoXG4gICAgYXJnczogTW9kaWZ5SW5zdGFuY2VNYWludGVuYW5jZU9wdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5SW5zdGFuY2VNYWludGVuYW5jZU9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeUluc3RhbmNlTWV0YWRhdGFPcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeUluc3RhbmNlTWV0YWRhdGFPcHRpb25zOiAoXG4gICAgYXJnczogTW9kaWZ5SW5zdGFuY2VNZXRhZGF0YU9wdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5SW5zdGFuY2VNZXRhZGF0YU9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeUluc3RhbmNlUGxhY2VtZW50Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeUluc3RhbmNlUGxhY2VtZW50OiAoXG4gICAgYXJnczogTW9kaWZ5SW5zdGFuY2VQbGFjZW1lbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5SW5zdGFuY2VQbGFjZW1lbnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeUlwYW1Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5SXBhbTogKFxuICAgIGFyZ3M6IE1vZGlmeUlwYW1Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8TW9kaWZ5SXBhbUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5SXBhbVBvb2xDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5SXBhbVBvb2w6IChcbiAgICBhcmdzOiBNb2RpZnlJcGFtUG9vbENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxNb2RpZnlJcGFtUG9vbENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5SXBhbVJlc291cmNlQ2lkckNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlJcGFtUmVzb3VyY2VDaWRyOiAoXG4gICAgYXJnczogTW9kaWZ5SXBhbVJlc291cmNlQ2lkckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlJcGFtUmVzb3VyY2VDaWRyQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlJcGFtUmVzb3VyY2VEaXNjb3ZlcnlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5SXBhbVJlc291cmNlRGlzY292ZXJ5OiAoXG4gICAgYXJnczogTW9kaWZ5SXBhbVJlc291cmNlRGlzY292ZXJ5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeUlwYW1SZXNvdXJjZURpc2NvdmVyeUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5SXBhbVNjb3BlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeUlwYW1TY29wZTogKFxuICAgIGFyZ3M6IE1vZGlmeUlwYW1TY29wZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxNb2RpZnlJcGFtU2NvcGVDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeUxhdW5jaFRlbXBsYXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeUxhdW5jaFRlbXBsYXRlOiAoXG4gICAgYXJnczogTW9kaWZ5TGF1bmNoVGVtcGxhdGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5TGF1bmNoVGVtcGxhdGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeUxvY2FsR2F0ZXdheVJvdXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeUxvY2FsR2F0ZXdheVJvdXRlOiAoXG4gICAgYXJnczogTW9kaWZ5TG9jYWxHYXRld2F5Um91dGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5TG9jYWxHYXRld2F5Um91dGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeU1hbmFnZWRQcmVmaXhMaXN0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeU1hbmFnZWRQcmVmaXhMaXN0OiAoXG4gICAgYXJnczogTW9kaWZ5TWFuYWdlZFByZWZpeExpc3RDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5TWFuYWdlZFByZWZpeExpc3RDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeU5ldHdvcmtJbnRlcmZhY2VBdHRyaWJ1dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5TmV0d29ya0ludGVyZmFjZUF0dHJpYnV0ZTogKFxuICAgIGFyZ3M6IE1vZGlmeU5ldHdvcmtJbnRlcmZhY2VBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5TmV0d29ya0ludGVyZmFjZUF0dHJpYnV0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5UHJpdmF0ZURuc05hbWVPcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeVByaXZhdGVEbnNOYW1lT3B0aW9uczogKFxuICAgIGFyZ3M6IE1vZGlmeVByaXZhdGVEbnNOYW1lT3B0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlQcml2YXRlRG5zTmFtZU9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeVJlc2VydmVkSW5zdGFuY2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeVJlc2VydmVkSW5zdGFuY2VzOiAoXG4gICAgYXJnczogTW9kaWZ5UmVzZXJ2ZWRJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5UmVzZXJ2ZWRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeVNlY3VyaXR5R3JvdXBSdWxlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlTZWN1cml0eUdyb3VwUnVsZXM6IChcbiAgICBhcmdzOiBNb2RpZnlTZWN1cml0eUdyb3VwUnVsZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5U2VjdXJpdHlHcm91cFJ1bGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlTbmFwc2hvdEF0dHJpYnV0ZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlTbmFwc2hvdEF0dHJpYnV0ZTogKFxuICAgIGFyZ3M6IE1vZGlmeVNuYXBzaG90QXR0cmlidXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVNuYXBzaG90QXR0cmlidXRlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlTbmFwc2hvdFRpZXJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5U25hcHNob3RUaWVyOiAoXG4gICAgYXJnczogTW9kaWZ5U25hcHNob3RUaWVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVNuYXBzaG90VGllckNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5U3BvdEZsZWV0UmVxdWVzdENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlTcG90RmxlZXRSZXF1ZXN0OiAoXG4gICAgYXJnczogTW9kaWZ5U3BvdEZsZWV0UmVxdWVzdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlTcG90RmxlZXRSZXF1ZXN0Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlTdWJuZXRBdHRyaWJ1dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5U3VibmV0QXR0cmlidXRlOiAoXG4gICAgYXJnczogTW9kaWZ5U3VibmV0QXR0cmlidXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVN1Ym5ldEF0dHJpYnV0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5VHJhZmZpY01pcnJvckZpbHRlck5ldHdvcmtTZXJ2aWNlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlUcmFmZmljTWlycm9yRmlsdGVyTmV0d29ya1NlcnZpY2VzOiAoXG4gICAgYXJnczogTW9kaWZ5VHJhZmZpY01pcnJvckZpbHRlck5ldHdvcmtTZXJ2aWNlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlUcmFmZmljTWlycm9yRmlsdGVyTmV0d29ya1NlcnZpY2VzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlUcmFmZmljTWlycm9yRmlsdGVyUnVsZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlUcmFmZmljTWlycm9yRmlsdGVyUnVsZTogKFxuICAgIGFyZ3M6IE1vZGlmeVRyYWZmaWNNaXJyb3JGaWx0ZXJSdWxlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVRyYWZmaWNNaXJyb3JGaWx0ZXJSdWxlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlUcmFmZmljTWlycm9yU2Vzc2lvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlUcmFmZmljTWlycm9yU2Vzc2lvbjogKFxuICAgIGFyZ3M6IE1vZGlmeVRyYWZmaWNNaXJyb3JTZXNzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVRyYWZmaWNNaXJyb3JTZXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlUcmFuc2l0R2F0ZXdheUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlUcmFuc2l0R2F0ZXdheTogKFxuICAgIGFyZ3M6IE1vZGlmeVRyYW5zaXRHYXRld2F5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVRyYW5zaXRHYXRld2F5Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlUcmFuc2l0R2F0ZXdheVByZWZpeExpc3RSZWZlcmVuY2VDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5VHJhbnNpdEdhdGV3YXlQcmVmaXhMaXN0UmVmZXJlbmNlOiAoXG4gICAgYXJnczogTW9kaWZ5VHJhbnNpdEdhdGV3YXlQcmVmaXhMaXN0UmVmZXJlbmNlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVRyYW5zaXRHYXRld2F5UHJlZml4TGlzdFJlZmVyZW5jZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5VHJhbnNpdEdhdGV3YXlWcGNBdHRhY2htZW50Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudDogKFxuICAgIGFyZ3M6IE1vZGlmeVRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5VmVyaWZpZWRBY2Nlc3NFbmRwb2ludDogKFxuICAgIGFyZ3M6IE1vZGlmeVZlcmlmaWVkQWNjZXNzRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5VmVyaWZpZWRBY2Nlc3NFbmRwb2ludENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5VmVyaWZpZWRBY2Nlc3NFbmRwb2ludFBvbGljeUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlWZXJpZmllZEFjY2Vzc0VuZHBvaW50UG9saWN5OiAoXG4gICAgYXJnczogTW9kaWZ5VmVyaWZpZWRBY2Nlc3NFbmRwb2ludFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlWZXJpZmllZEFjY2Vzc0VuZHBvaW50UG9saWN5Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeVZlcmlmaWVkQWNjZXNzR3JvdXA6IChcbiAgICBhcmdzOiBNb2RpZnlWZXJpZmllZEFjY2Vzc0dyb3VwQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVZlcmlmaWVkQWNjZXNzR3JvdXBDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeVZlcmlmaWVkQWNjZXNzR3JvdXBQb2xpY3lDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5VmVyaWZpZWRBY2Nlc3NHcm91cFBvbGljeTogKFxuICAgIGFyZ3M6IE1vZGlmeVZlcmlmaWVkQWNjZXNzR3JvdXBQb2xpY3lDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5VmVyaWZpZWRBY2Nlc3NHcm91cFBvbGljeUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5VmVyaWZpZWRBY2Nlc3NJbnN0YW5jZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlWZXJpZmllZEFjY2Vzc0luc3RhbmNlOiAoXG4gICAgYXJnczogTW9kaWZ5VmVyaWZpZWRBY2Nlc3NJbnN0YW5jZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlWZXJpZmllZEFjY2Vzc0luc3RhbmNlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlWZXJpZmllZEFjY2Vzc0luc3RhbmNlTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5VmVyaWZpZWRBY2Nlc3NJbnN0YW5jZUxvZ2dpbmdDb25maWd1cmF0aW9uOiAoXG4gICAgYXJnczogTW9kaWZ5VmVyaWZpZWRBY2Nlc3NJbnN0YW5jZUxvZ2dpbmdDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVZlcmlmaWVkQWNjZXNzSW5zdGFuY2VMb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5VmVyaWZpZWRBY2Nlc3NUcnVzdFByb3ZpZGVyQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlcjogKFxuICAgIGFyZ3M6IE1vZGlmeVZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlWZXJpZmllZEFjY2Vzc1RydXN0UHJvdmlkZXJDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeVZvbHVtZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlWb2x1bWU6IChcbiAgICBhcmdzOiBNb2RpZnlWb2x1bWVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8TW9kaWZ5Vm9sdW1lQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlWb2x1bWVBdHRyaWJ1dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5Vm9sdW1lQXR0cmlidXRlOiAoXG4gICAgYXJnczogTW9kaWZ5Vm9sdW1lQXR0cmlidXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVZvbHVtZUF0dHJpYnV0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5VnBjQXR0cmlidXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeVZwY0F0dHJpYnV0ZTogKFxuICAgIGFyZ3M6IE1vZGlmeVZwY0F0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlWcGNBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeVZwY0VuZHBvaW50Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeVZwY0VuZHBvaW50OiAoXG4gICAgYXJnczogTW9kaWZ5VnBjRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5VnBjRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeVZwY0VuZHBvaW50Q29ubmVjdGlvbk5vdGlmaWNhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb246IChcbiAgICBhcmdzOiBNb2RpZnlWcGNFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5VnBjRW5kcG9pbnRDb25uZWN0aW9uTm90aWZpY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeVZwY0VuZHBvaW50U2VydmljZUNvbmZpZ3VyYXRpb246IChcbiAgICBhcmdzOiBNb2RpZnlWcGNFbmRwb2ludFNlcnZpY2VDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVZwY0VuZHBvaW50U2VydmljZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeVZwY0VuZHBvaW50U2VydmljZVBheWVyUmVzcG9uc2liaWxpdHlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5VnBjRW5kcG9pbnRTZXJ2aWNlUGF5ZXJSZXNwb25zaWJpbGl0eTogKFxuICAgIGFyZ3M6IE1vZGlmeVZwY0VuZHBvaW50U2VydmljZVBheWVyUmVzcG9uc2liaWxpdHlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgTW9kaWZ5VnBjRW5kcG9pbnRTZXJ2aWNlUGF5ZXJSZXNwb25zaWJpbGl0eUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5VnBjRW5kcG9pbnRTZXJ2aWNlUGVybWlzc2lvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5VnBjRW5kcG9pbnRTZXJ2aWNlUGVybWlzc2lvbnM6IChcbiAgICBhcmdzOiBNb2RpZnlWcGNFbmRwb2ludFNlcnZpY2VQZXJtaXNzaW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlWcGNFbmRwb2ludFNlcnZpY2VQZXJtaXNzaW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5VnBjUGVlcmluZ0Nvbm5lY3Rpb25PcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeVZwY1BlZXJpbmdDb25uZWN0aW9uT3B0aW9uczogKFxuICAgIGFyZ3M6IE1vZGlmeVZwY1BlZXJpbmdDb25uZWN0aW9uT3B0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlWcGNQZWVyaW5nQ29ubmVjdGlvbk9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vZGlmeVZwY1RlbmFuY3lDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kaWZ5VnBjVGVuYW5jeTogKFxuICAgIGFyZ3M6IE1vZGlmeVZwY1RlbmFuY3lDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8TW9kaWZ5VnBjVGVuYW5jeUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW9kaWZ5VnBuQ29ubmVjdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlWcG5Db25uZWN0aW9uOiAoXG4gICAgYXJnczogTW9kaWZ5VnBuQ29ubmVjdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBNb2RpZnlWcG5Db25uZWN0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlWcG5Db25uZWN0aW9uT3B0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlWcG5Db25uZWN0aW9uT3B0aW9uczogKFxuICAgIGFyZ3M6IE1vZGlmeVZwbkNvbm5lY3Rpb25PcHRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVZwbkNvbm5lY3Rpb25PcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlWcG5UdW5uZWxDZXJ0aWZpY2F0ZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb2RpZnlWcG5UdW5uZWxDZXJ0aWZpY2F0ZTogKFxuICAgIGFyZ3M6IE1vZGlmeVZwblR1bm5lbENlcnRpZmljYXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVZwblR1bm5lbENlcnRpZmljYXRlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb2RpZnlWcG5UdW5uZWxPcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vZGlmeVZwblR1bm5lbE9wdGlvbnM6IChcbiAgICBhcmdzOiBNb2RpZnlWcG5UdW5uZWxPcHRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vZGlmeVZwblR1bm5lbE9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE1vbml0b3JJbnN0YW5jZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbW9uaXRvckluc3RhbmNlczogKFxuICAgIGFyZ3M6IE1vbml0b3JJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8TW9uaXRvckluc3RhbmNlc0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTW92ZUFkZHJlc3NUb1ZwY0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBtb3ZlQWRkcmVzc1RvVnBjOiAoXG4gICAgYXJnczogTW92ZUFkZHJlc3NUb1ZwY0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxNb3ZlQWRkcmVzc1RvVnBjQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBNb3ZlQnlvaXBDaWRyVG9JcGFtQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IG1vdmVCeW9pcENpZHJUb0lwYW06IChcbiAgICBhcmdzOiBNb3ZlQnlvaXBDaWRyVG9JcGFtQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIE1vdmVCeW9pcENpZHJUb0lwYW1Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFByb3Zpc2lvbkJ5b2lwQ2lkckNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwcm92aXNpb25CeW9pcENpZHI6IChcbiAgICBhcmdzOiBQcm92aXNpb25CeW9pcENpZHJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHJvdmlzaW9uQnlvaXBDaWRyQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQcm92aXNpb25JcGFtQnlvYXNuQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHByb3Zpc2lvbklwYW1CeW9hc246IChcbiAgICBhcmdzOiBQcm92aXNpb25JcGFtQnlvYXNuQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFByb3Zpc2lvbklwYW1CeW9hc25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFByb3Zpc2lvbklwYW1Qb29sQ2lkckNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwcm92aXNpb25JcGFtUG9vbENpZHI6IChcbiAgICBhcmdzOiBQcm92aXNpb25JcGFtUG9vbENpZHJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHJvdmlzaW9uSXBhbVBvb2xDaWRyQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQcm92aXNpb25QdWJsaWNJcHY0UG9vbENpZHJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlzaW9uUHVibGljSXB2NFBvb2xDaWRyOiAoXG4gICAgYXJnczogUHJvdmlzaW9uUHVibGljSXB2NFBvb2xDaWRyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFByb3Zpc2lvblB1YmxpY0lwdjRQb29sQ2lkckNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHVyY2hhc2VDYXBhY2l0eUJsb2NrQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHB1cmNoYXNlQ2FwYWNpdHlCbG9jazogKFxuICAgIGFyZ3M6IFB1cmNoYXNlQ2FwYWNpdHlCbG9ja0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBQdXJjaGFzZUNhcGFjaXR5QmxvY2tDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1cmNoYXNlSG9zdFJlc2VydmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHB1cmNoYXNlSG9zdFJlc2VydmF0aW9uOiAoXG4gICAgYXJnczogUHVyY2hhc2VIb3N0UmVzZXJ2YXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHVyY2hhc2VIb3N0UmVzZXJ2YXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1cmNoYXNlUmVzZXJ2ZWRJbnN0YW5jZXNPZmZlcmluZ0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXJjaGFzZVJlc2VydmVkSW5zdGFuY2VzT2ZmZXJpbmc6IChcbiAgICBhcmdzOiBQdXJjaGFzZVJlc2VydmVkSW5zdGFuY2VzT2ZmZXJpbmdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHVyY2hhc2VSZXNlcnZlZEluc3RhbmNlc09mZmVyaW5nQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXJjaGFzZVNjaGVkdWxlZEluc3RhbmNlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXJjaGFzZVNjaGVkdWxlZEluc3RhbmNlczogKFxuICAgIGFyZ3M6IFB1cmNoYXNlU2NoZWR1bGVkSW5zdGFuY2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1cmNoYXNlU2NoZWR1bGVkSW5zdGFuY2VzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZWJvb3RJbnN0YW5jZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcmVib290SW5zdGFuY2VzOiAoXG4gICAgYXJnczogUmVib290SW5zdGFuY2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFJlYm9vdEluc3RhbmNlc0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVnaXN0ZXJJbWFnZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZWdpc3RlckltYWdlOiAoXG4gICAgYXJnczogUmVnaXN0ZXJJbWFnZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxSZWdpc3RlckltYWdlQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZWdpc3Rlckluc3RhbmNlRXZlbnROb3RpZmljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lzdGVySW5zdGFuY2VFdmVudE5vdGlmaWNhdGlvbkF0dHJpYnV0ZXM6IChcbiAgICBhcmdzOiBSZWdpc3Rlckluc3RhbmNlRXZlbnROb3RpZmljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlZ2lzdGVySW5zdGFuY2VFdmVudE5vdGlmaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cE1lbWJlcnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcmVnaXN0ZXJUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3VwTWVtYmVyczogKFxuICAgIGFyZ3M6IFJlZ2lzdGVyVHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cE1lbWJlcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVnaXN0ZXJUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3VwTWVtYmVyc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVnaXN0ZXJUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3VwU291cmNlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZWdpc3RlclRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBTb3VyY2VzOiAoXG4gICAgYXJnczogUmVnaXN0ZXJUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3VwU291cmNlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBSZWdpc3RlclRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBTb3VyY2VzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZWplY3RUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkFzc29jaWF0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZWplY3RUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbkFzc29jaWF0aW9uczogKFxuICAgIGFyZ3M6IFJlamVjdFRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluQXNzb2NpYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlamVjdFRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluQXNzb2NpYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZWplY3RUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlamVjdFRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnQ6IChcbiAgICBhcmdzOiBSZWplY3RUcmFuc2l0R2F0ZXdheVBlZXJpbmdBdHRhY2htZW50Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlamVjdFRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlamVjdFRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZWplY3RUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnQ6IChcbiAgICBhcmdzOiBSZWplY3RUcmFuc2l0R2F0ZXdheVZwY0F0dGFjaG1lbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVqZWN0VHJhbnNpdEdhdGV3YXlWcGNBdHRhY2htZW50Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZWplY3RWcGNFbmRwb2ludENvbm5lY3Rpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlamVjdFZwY0VuZHBvaW50Q29ubmVjdGlvbnM6IChcbiAgICBhcmdzOiBSZWplY3RWcGNFbmRwb2ludENvbm5lY3Rpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlamVjdFZwY0VuZHBvaW50Q29ubmVjdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlamVjdFZwY1BlZXJpbmdDb25uZWN0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlamVjdFZwY1BlZXJpbmdDb25uZWN0aW9uOiAoXG4gICAgYXJnczogUmVqZWN0VnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVqZWN0VnBjUGVlcmluZ0Nvbm5lY3Rpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlbGVhc2VBZGRyZXNzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VBZGRyZXNzOiAoXG4gICAgYXJnczogUmVsZWFzZUFkZHJlc3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8UmVsZWFzZUFkZHJlc3NDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlbGVhc2VIb3N0c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZWxlYXNlSG9zdHM6IChcbiAgICBhcmdzOiBSZWxlYXNlSG9zdHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8UmVsZWFzZUhvc3RzQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZWxlYXNlSXBhbVBvb2xBbGxvY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VJcGFtUG9vbEFsbG9jYXRpb246IChcbiAgICBhcmdzOiBSZWxlYXNlSXBhbVBvb2xBbGxvY2F0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlbGVhc2VJcGFtUG9vbEFsbG9jYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlcGxhY2VJYW1JbnN0YW5jZVByb2ZpbGVBc3NvY2lhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZXBsYWNlSWFtSW5zdGFuY2VQcm9maWxlQXNzb2NpYXRpb246IChcbiAgICBhcmdzOiBSZXBsYWNlSWFtSW5zdGFuY2VQcm9maWxlQXNzb2NpYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVwbGFjZUlhbUluc3RhbmNlUHJvZmlsZUFzc29jaWF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZXBsYWNlTmV0d29ya0FjbEFzc29jaWF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlcGxhY2VOZXR3b3JrQWNsQXNzb2NpYXRpb246IChcbiAgICBhcmdzOiBSZXBsYWNlTmV0d29ya0FjbEFzc29jaWF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlcGxhY2VOZXR3b3JrQWNsQXNzb2NpYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlcGxhY2VOZXR3b3JrQWNsRW50cnlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcmVwbGFjZU5ldHdvcmtBY2xFbnRyeTogKFxuICAgIGFyZ3M6IFJlcGxhY2VOZXR3b3JrQWNsRW50cnlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVwbGFjZU5ldHdvcmtBY2xFbnRyeUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVwbGFjZVJvdXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlcGxhY2VSb3V0ZTogKFxuICAgIGFyZ3M6IFJlcGxhY2VSb3V0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxSZXBsYWNlUm91dGVDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlcGxhY2VSb3V0ZVRhYmxlQXNzb2NpYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcmVwbGFjZVJvdXRlVGFibGVBc3NvY2lhdGlvbjogKFxuICAgIGFyZ3M6IFJlcGxhY2VSb3V0ZVRhYmxlQXNzb2NpYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVwbGFjZVJvdXRlVGFibGVBc3NvY2lhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVwbGFjZVRyYW5zaXRHYXRld2F5Um91dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcmVwbGFjZVRyYW5zaXRHYXRld2F5Um91dGU6IChcbiAgICBhcmdzOiBSZXBsYWNlVHJhbnNpdEdhdGV3YXlSb3V0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBSZXBsYWNlVHJhbnNpdEdhdGV3YXlSb3V0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVwbGFjZVZwblR1bm5lbENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZXBsYWNlVnBuVHVubmVsOiAoXG4gICAgYXJnczogUmVwbGFjZVZwblR1bm5lbENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxSZXBsYWNlVnBuVHVubmVsQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZXBvcnRJbnN0YW5jZVN0YXR1c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZXBvcnRJbnN0YW5jZVN0YXR1czogKFxuICAgIGFyZ3M6IFJlcG9ydEluc3RhbmNlU3RhdHVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlcG9ydEluc3RhbmNlU3RhdHVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZXF1ZXN0U3BvdEZsZWV0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlcXVlc3RTcG90RmxlZXQ6IChcbiAgICBhcmdzOiBSZXF1ZXN0U3BvdEZsZWV0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFJlcXVlc3RTcG90RmxlZXRDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlcXVlc3RTcG90SW5zdGFuY2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlcXVlc3RTcG90SW5zdGFuY2VzOiAoXG4gICAgYXJnczogUmVxdWVzdFNwb3RJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVxdWVzdFNwb3RJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlc2V0QWRkcmVzc0F0dHJpYnV0ZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZXNldEFkZHJlc3NBdHRyaWJ1dGU6IChcbiAgICBhcmdzOiBSZXNldEFkZHJlc3NBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVzZXRBZGRyZXNzQXR0cmlidXRlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZXNldEVic0RlZmF1bHRLbXNLZXlJZENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZXNldEVic0RlZmF1bHRLbXNLZXlJZDogKFxuICAgIGFyZ3M6IFJlc2V0RWJzRGVmYXVsdEttc0tleUlkQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlc2V0RWJzRGVmYXVsdEttc0tleUlkQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZXNldEZwZ2FJbWFnZUF0dHJpYnV0ZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZXNldEZwZ2FJbWFnZUF0dHJpYnV0ZTogKFxuICAgIGFyZ3M6IFJlc2V0RnBnYUltYWdlQXR0cmlidXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlc2V0RnBnYUltYWdlQXR0cmlidXRlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZXNldEltYWdlQXR0cmlidXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlc2V0SW1hZ2VBdHRyaWJ1dGU6IChcbiAgICBhcmdzOiBSZXNldEltYWdlQXR0cmlidXRlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlc2V0SW1hZ2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlc2V0SW5zdGFuY2VBdHRyaWJ1dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcmVzZXRJbnN0YW5jZUF0dHJpYnV0ZTogKFxuICAgIGFyZ3M6IFJlc2V0SW5zdGFuY2VBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVzZXRJbnN0YW5jZUF0dHJpYnV0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVzZXROZXR3b3JrSW50ZXJmYWNlQXR0cmlidXRlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlc2V0TmV0d29ya0ludGVyZmFjZUF0dHJpYnV0ZTogKFxuICAgIGFyZ3M6IFJlc2V0TmV0d29ya0ludGVyZmFjZUF0dHJpYnV0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBSZXNldE5ldHdvcmtJbnRlcmZhY2VBdHRyaWJ1dGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlc2V0U25hcHNob3RBdHRyaWJ1dGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcmVzZXRTbmFwc2hvdEF0dHJpYnV0ZTogKFxuICAgIGFyZ3M6IFJlc2V0U25hcHNob3RBdHRyaWJ1dGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVzZXRTbmFwc2hvdEF0dHJpYnV0ZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVzdG9yZUFkZHJlc3NUb0NsYXNzaWNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcmVzdG9yZUFkZHJlc3NUb0NsYXNzaWM6IChcbiAgICBhcmdzOiBSZXN0b3JlQWRkcmVzc1RvQ2xhc3NpY0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBSZXN0b3JlQWRkcmVzc1RvQ2xhc3NpY0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVzdG9yZUltYWdlRnJvbVJlY3ljbGVCaW5Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcmVzdG9yZUltYWdlRnJvbVJlY3ljbGVCaW46IChcbiAgICBhcmdzOiBSZXN0b3JlSW1hZ2VGcm9tUmVjeWNsZUJpbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBSZXN0b3JlSW1hZ2VGcm9tUmVjeWNsZUJpbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVzdG9yZU1hbmFnZWRQcmVmaXhMaXN0VmVyc2lvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZXN0b3JlTWFuYWdlZFByZWZpeExpc3RWZXJzaW9uOiAoXG4gICAgYXJnczogUmVzdG9yZU1hbmFnZWRQcmVmaXhMaXN0VmVyc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBSZXN0b3JlTWFuYWdlZFByZWZpeExpc3RWZXJzaW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZXN0b3JlU25hcHNob3RGcm9tUmVjeWNsZUJpbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZXN0b3JlU25hcHNob3RGcm9tUmVjeWNsZUJpbjogKFxuICAgIGFyZ3M6IFJlc3RvcmVTbmFwc2hvdEZyb21SZWN5Y2xlQmluQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlc3RvcmVTbmFwc2hvdEZyb21SZWN5Y2xlQmluQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZXN0b3JlU25hcHNob3RUaWVyQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJlc3RvcmVTbmFwc2hvdFRpZXI6IChcbiAgICBhcmdzOiBSZXN0b3JlU25hcHNob3RUaWVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlc3RvcmVTbmFwc2hvdFRpZXJDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJldm9rZUNsaWVudFZwbkluZ3Jlc3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcmV2b2tlQ2xpZW50VnBuSW5ncmVzczogKFxuICAgIGFyZ3M6IFJldm9rZUNsaWVudFZwbkluZ3Jlc3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmV2b2tlQ2xpZW50VnBuSW5ncmVzc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmV2b2tlU2VjdXJpdHlHcm91cEVncmVzc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZXZva2VTZWN1cml0eUdyb3VwRWdyZXNzOiAoXG4gICAgYXJnczogUmV2b2tlU2VjdXJpdHlHcm91cEVncmVzc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBSZXZva2VTZWN1cml0eUdyb3VwRWdyZXNzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZXZva2VTZWN1cml0eUdyb3VwSW5ncmVzc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZXZva2VTZWN1cml0eUdyb3VwSW5ncmVzczogKFxuICAgIGFyZ3M6IFJldm9rZVNlY3VyaXR5R3JvdXBJbmdyZXNzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFJldm9rZVNlY3VyaXR5R3JvdXBJbmdyZXNzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSdW5JbnN0YW5jZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcnVuSW5zdGFuY2VzOiAoXG4gICAgYXJnczogUnVuSW5zdGFuY2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFJ1bkluc3RhbmNlc0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUnVuU2NoZWR1bGVkSW5zdGFuY2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHJ1blNjaGVkdWxlZEluc3RhbmNlczogKFxuICAgIGFyZ3M6IFJ1blNjaGVkdWxlZEluc3RhbmNlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBSdW5TY2hlZHVsZWRJbnN0YW5jZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNlYXJjaExvY2FsR2F0ZXdheVJvdXRlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBzZWFyY2hMb2NhbEdhdGV3YXlSb3V0ZXM6IChcbiAgICBhcmdzOiBTZWFyY2hMb2NhbEdhdGV3YXlSb3V0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgU2VhcmNoTG9jYWxHYXRld2F5Um91dGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZWFyY2hUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3Vwc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBzZWFyY2hUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3VwczogKFxuICAgIGFyZ3M6IFNlYXJjaFRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFNlYXJjaFRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZWFyY2hUcmFuc2l0R2F0ZXdheVJvdXRlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBzZWFyY2hUcmFuc2l0R2F0ZXdheVJvdXRlczogKFxuICAgIGFyZ3M6IFNlYXJjaFRyYW5zaXRHYXRld2F5Um91dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFNlYXJjaFRyYW5zaXRHYXRld2F5Um91dGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZW5kRGlhZ25vc3RpY0ludGVycnVwdENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBzZW5kRGlhZ25vc3RpY0ludGVycnVwdDogKFxuICAgIGFyZ3M6IFNlbmREaWFnbm9zdGljSW50ZXJydXB0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFNlbmREaWFnbm9zdGljSW50ZXJydXB0Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTdGFydEluc3RhbmNlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBzdGFydEluc3RhbmNlczogKFxuICAgIGFyZ3M6IFN0YXJ0SW5zdGFuY2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFN0YXJ0SW5zdGFuY2VzQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTdGFydE5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzaXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgc3RhcnROZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUFuYWx5c2lzOiAoXG4gICAgYXJnczogU3RhcnROZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUFuYWx5c2lzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFN0YXJ0TmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGVBbmFseXNpc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU3RhcnROZXR3b3JrSW5zaWdodHNBbmFseXNpc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBzdGFydE5ldHdvcmtJbnNpZ2h0c0FuYWx5c2lzOiAoXG4gICAgYXJnczogU3RhcnROZXR3b3JrSW5zaWdodHNBbmFseXNpc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBTdGFydE5ldHdvcmtJbnNpZ2h0c0FuYWx5c2lzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTdGFydFZwY0VuZHBvaW50U2VydmljZVByaXZhdGVEbnNWZXJpZmljYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgc3RhcnRWcGNFbmRwb2ludFNlcnZpY2VQcml2YXRlRG5zVmVyaWZpY2F0aW9uOiAoXG4gICAgYXJnczogU3RhcnRWcGNFbmRwb2ludFNlcnZpY2VQcml2YXRlRG5zVmVyaWZpY2F0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFN0YXJ0VnBjRW5kcG9pbnRTZXJ2aWNlUHJpdmF0ZURuc1ZlcmlmaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU3RvcEluc3RhbmNlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBzdG9wSW5zdGFuY2VzOiAoXG4gICAgYXJnczogU3RvcEluc3RhbmNlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxTdG9wSW5zdGFuY2VzQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBUZXJtaW5hdGVDbGllbnRWcG5Db25uZWN0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSB0ZXJtaW5hdGVDbGllbnRWcG5Db25uZWN0aW9uczogKFxuICAgIGFyZ3M6IFRlcm1pbmF0ZUNsaWVudFZwbkNvbm5lY3Rpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFRlcm1pbmF0ZUNsaWVudFZwbkNvbm5lY3Rpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBUZXJtaW5hdGVJbnN0YW5jZXNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgdGVybWluYXRlSW5zdGFuY2VzOiAoXG4gICAgYXJnczogVGVybWluYXRlSW5zdGFuY2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFRlcm1pbmF0ZUluc3RhbmNlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVW5hc3NpZ25JcHY2QWRkcmVzc2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHVuYXNzaWduSXB2NkFkZHJlc3NlczogKFxuICAgIGFyZ3M6IFVuYXNzaWduSXB2NkFkZHJlc3Nlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBVbmFzc2lnbklwdjZBZGRyZXNzZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVuYXNzaWduUHJpdmF0ZUlwQWRkcmVzc2VzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHVuYXNzaWduUHJpdmF0ZUlwQWRkcmVzc2VzOiAoXG4gICAgYXJnczogVW5hc3NpZ25Qcml2YXRlSXBBZGRyZXNzZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgVW5hc3NpZ25Qcml2YXRlSXBBZGRyZXNzZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVuYXNzaWduUHJpdmF0ZU5hdEdhdGV3YXlBZGRyZXNzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHVuYXNzaWduUHJpdmF0ZU5hdEdhdGV3YXlBZGRyZXNzOiAoXG4gICAgYXJnczogVW5hc3NpZ25Qcml2YXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgVW5hc3NpZ25Qcml2YXRlTmF0R2F0ZXdheUFkZHJlc3NDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgRUMyU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVubG9ja1NuYXBzaG90Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHVubG9ja1NuYXBzaG90OiAoXG4gICAgYXJnczogVW5sb2NrU25hcHNob3RDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8VW5sb2NrU25hcHNob3RDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVubW9uaXRvckluc3RhbmNlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSB1bm1vbml0b3JJbnN0YW5jZXM6IChcbiAgICBhcmdzOiBVbm1vbml0b3JJbnN0YW5jZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgVW5tb25pdG9ySW5zdGFuY2VzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVTZWN1cml0eUdyb3VwUnVsZURlc2NyaXB0aW9uc0VncmVzc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSB1cGRhdGVTZWN1cml0eUdyb3VwUnVsZURlc2NyaXB0aW9uc0VncmVzczogKFxuICAgIGFyZ3M6IFVwZGF0ZVNlY3VyaXR5R3JvdXBSdWxlRGVzY3JpcHRpb25zRWdyZXNzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFVwZGF0ZVNlY3VyaXR5R3JvdXBSdWxlRGVzY3JpcHRpb25zRWdyZXNzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEVDMlNlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVTZWN1cml0eUdyb3VwUnVsZURlc2NyaXB0aW9uc0luZ3Jlc3NDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgdXBkYXRlU2VjdXJpdHlHcm91cFJ1bGVEZXNjcmlwdGlvbnNJbmdyZXNzOiAoXG4gICAgYXJnczogVXBkYXRlU2VjdXJpdHlHcm91cFJ1bGVEZXNjcmlwdGlvbnNJbmdyZXNzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFVwZGF0ZVNlY3VyaXR5R3JvdXBSdWxlRGVzY3JpcHRpb25zSW5ncmVzc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgV2l0aGRyYXdCeW9pcENpZHJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgd2l0aGRyYXdCeW9pcENpZHI6IChcbiAgICBhcmdzOiBXaXRoZHJhd0J5b2lwQ2lkckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBXaXRoZHJhd0J5b2lwQ2lkckNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBFQzJTZXJ2aWNlRXJyb3JcbiAgPjtcbn07XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY29uc3QgRUMyU2VydmljZSA9IENvbnRleHQuR2VuZXJpY1RhZzxFQzJTZXJ2aWNlPihcbiAgXCJAZWZmZWN0LWF3cy9jbGllbnQtZWMyL0VDMlNlcnZpY2VcIixcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlRUMyU2VydmljZSA9IEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gIGNvbnN0IGNsaWVudCA9IHlpZWxkKiBfKEVDMkNsaWVudEluc3RhbmNlKTtcblxuICByZXR1cm4gUmVhZG9ubHlSZWNvcmQudG9FbnRyaWVzKGNvbW1hbmRzKS5yZWR1Y2UoKGFjYywgW2NvbW1hbmRdKSA9PiB7XG4gICAgY29uc3QgQ29tbWFuZEN0b3IgPSBjb21tYW5kc1tjb21tYW5kXSBhcyBhbnk7XG4gICAgY29uc3QgbWV0aG9kSW1wbCA9IChhcmdzOiBhbnksIG9wdGlvbnM6IGFueSkgPT5cbiAgICAgIEVmZmVjdC50cnlQcm9taXNlKHtcbiAgICAgICAgdHJ5OiAoKSA9PiBjbGllbnQuc2VuZChuZXcgQ29tbWFuZEN0b3IoYXJncyksIG9wdGlvbnMgPz8ge30pLFxuICAgICAgICBjYXRjaDogKGUpID0+IHtcbiAgICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIEVDMlNlcnZpY2VFeGNlcHRpb24pIHtcbiAgICAgICAgICAgIGNvbnN0IFNlcnZpY2VFeGNlcHRpb24gPSBEYXRhLnRhZ2dlZDxcbiAgICAgICAgICAgICAgVGFnZ2VkRXhjZXB0aW9uPEVDMlNlcnZpY2VFeGNlcHRpb24+XG4gICAgICAgICAgICA+KGUubmFtZSk7XG5cbiAgICAgICAgICAgIHJldHVybiBTZXJ2aWNlRXhjZXB0aW9uKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbWVzc2FnZTogZS5tZXNzYWdlLFxuICAgICAgICAgICAgICBzdGFjazogZS5zdGFjayxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4gU2RrRXJyb3Ioe1xuICAgICAgICAgICAgICAuLi5lLFxuICAgICAgICAgICAgICBuYW1lOiBcIlNka0Vycm9yXCIsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIGNvbnN0IG1ldGhvZE5hbWUgPSAoY29tbWFuZFswXS50b0xvd2VyQ2FzZSgpICsgY29tbWFuZC5zbGljZSgxKSkucmVwbGFjZShcbiAgICAgIC9Db21tYW5kJC8sXG4gICAgICBcIlwiLFxuICAgICk7XG4gICAgcmV0dXJuIHsgLi4uYWNjLCBbbWV0aG9kTmFtZV06IG1ldGhvZEltcGwgfTtcbiAgfSwge30pIGFzIEVDMlNlcnZpY2U7XG59KTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VFQzJTZXJ2aWNlTGF5ZXIgPSBMYXllci5lZmZlY3QoRUMyU2VydmljZSwgbWFrZUVDMlNlcnZpY2UpO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRUMyU2VydmljZUxheWVyID0gQmFzZUVDMlNlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKEVDMkNsaWVudEluc3RhbmNlTGF5ZXIpLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRFQzJTZXJ2aWNlTGF5ZXIgPSBFQzJTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShEZWZhdWx0RUMyQ2xpZW50Q29uZmlnTGF5ZXIpLFxuKTtcbiJdfQ==