@cdk_utils/iam 1.24.0 → 1.25.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.
- package/.jsii +2 -2
- package/lib/generated/services/a2c.js +1 -1
- package/lib/generated/services/a4b.js +3 -3
- package/lib/generated/services/access-analyzer.js +4 -4
- package/lib/generated/services/account-access.js +4 -4
- package/lib/generated/services/account.js +4 -4
- package/lib/generated/services/acm-pca.js +4 -4
- package/lib/generated/services/acm.js +4 -4
- package/lib/generated/services/aco-automation.js +4 -4
- package/lib/generated/services/action-recommendations.js +1 -1
- package/lib/generated/services/activate.js +1 -1
- package/lib/generated/services/agent-registry.js +4 -4
- package/lib/generated/services/agentaccess-mcp.js +2 -2
- package/lib/generated/services/aidevops.js +4 -4
- package/lib/generated/services/aiops.js +4 -4
- package/lib/generated/services/airflow-serverless.js +4 -4
- package/lib/generated/services/airflow.js +4 -4
- package/lib/generated/services/amplify.js +4 -4
- package/lib/generated/services/amplifybackend.js +3 -3
- package/lib/generated/services/amplifyuibuilder.js +4 -4
- package/lib/generated/services/aoss.js +4 -4
- package/lib/generated/services/apigateway.js +4 -4
- package/lib/generated/services/app-integrations.js +4 -4
- package/lib/generated/services/appconfig.js +4 -4
- package/lib/generated/services/appfabric.js +4 -4
- package/lib/generated/services/appflow.js +4 -4
- package/lib/generated/services/application-autoscaling.js +4 -4
- package/lib/generated/services/application-signals-mcp.js +3 -3
- package/lib/generated/services/application-signals.js +4 -4
- package/lib/generated/services/application-transformation.js +1 -1
- package/lib/generated/services/applicationinsights.js +3 -3
- package/lib/generated/services/appmesh-preview.js +2 -2
- package/lib/generated/services/appmesh.js +4 -4
- package/lib/generated/services/apprunner.js +4 -4
- package/lib/generated/services/appstream.js +4 -4
- package/lib/generated/services/appstudio.js +2 -2
- package/lib/generated/services/appsync.js +4 -4
- package/lib/generated/services/apptest.js +3 -3
- package/lib/generated/services/aps.js +4 -4
- package/lib/generated/services/arc-region-switch.js +4 -4
- package/lib/generated/services/arc-zonal-shift.js +4 -4
- package/lib/generated/services/arsenal.js +1 -1
- package/lib/generated/services/artifact.js +4 -4
- package/lib/generated/services/athena.js +4 -4
- package/lib/generated/services/auditmanager.js +4 -4
- package/lib/generated/services/autoscaling-plans.js +2 -2
- package/lib/generated/services/autoscaling.js +4 -4
- package/lib/generated/services/aws-external-anthropic.js +3 -3
- package/lib/generated/services/aws-marketplace-management.js +1 -1
- package/lib/generated/services/aws-marketplace.js +4 -4
- package/lib/generated/services/aws-portal.js +1 -1
- package/lib/generated/services/awsconnector.js +1 -1
- package/lib/generated/services/b2bi.js +4 -4
- package/lib/generated/services/backup-gateway.js +4 -4
- package/lib/generated/services/backup-search.js +4 -4
- package/lib/generated/services/backup-storage.js +1 -1
- package/lib/generated/services/backup.js +4 -4
- package/lib/generated/services/batch.js +4 -4
- package/lib/generated/services/bcm-dashboards.js +4 -4
- package/lib/generated/services/bcm-data-exports.js +4 -4
- package/lib/generated/services/bcm-pricing-calculator.js +4 -4
- package/lib/generated/services/bcm-recommended-actions.js +2 -2
- package/lib/generated/services/bedrock-agentcore.js +4 -4
- package/lib/generated/services/bedrock-mantle.js +3 -3
- package/lib/generated/services/bedrock-websearch.js +2 -2
- package/lib/generated/services/bedrock.js +4 -4
- package/lib/generated/services/billing.js +4 -4
- package/lib/generated/services/billingconductor.js +4 -4
- package/lib/generated/services/braket.js +4 -4
- package/lib/generated/services/budgets.js +4 -4
- package/lib/generated/services/bugbust.js +3 -3
- package/lib/generated/services/cases.js +4 -4
- package/lib/generated/services/cassandra.js +4 -4
- package/lib/generated/services/ce.js +4 -4
- package/lib/generated/services/chatbot.js +4 -4
- package/lib/generated/services/chime.js +4 -4
- package/lib/generated/services/cleanrooms-ml.js +4 -4
- package/lib/generated/services/cleanrooms.js +4 -4
- package/lib/generated/services/cloud9.js +4 -4
- package/lib/generated/services/clouddirectory.js +3 -3
- package/lib/generated/services/cloudformation.js +4 -4
- package/lib/generated/services/cloudfront-keyvaluestore.js +3 -3
- package/lib/generated/services/cloudfront.js +4 -4
- package/lib/generated/services/cloudhsm.js +4 -4
- package/lib/generated/services/cloudsearch.js +3 -3
- package/lib/generated/services/cloudshell.js +3 -3
- package/lib/generated/services/cloudtrail-data.js +4 -4
- package/lib/generated/services/cloudtrail.js +4 -4
- package/lib/generated/services/cloudwatch.js +4 -4
- package/lib/generated/services/codeartifact.js +4 -4
- package/lib/generated/services/codebuild.js +4 -4
- package/lib/generated/services/codecatalyst.js +4 -4
- package/lib/generated/services/codecommit.js +4 -4
- package/lib/generated/services/codeconnections.js +4 -4
- package/lib/generated/services/codedeploy-commands-secure.js +1 -1
- package/lib/generated/services/codedeploy.js +4 -4
- package/lib/generated/services/codeguru-profiler.js +4 -4
- package/lib/generated/services/codeguru-reviewer.js +4 -4
- package/lib/generated/services/codeguru-security.js +4 -4
- package/lib/generated/services/codeguru.js +1 -1
- package/lib/generated/services/codepipeline.js +4 -4
- package/lib/generated/services/codestar-connections.js +4 -4
- package/lib/generated/services/codestar-notifications.js +4 -4
- package/lib/generated/services/codestar.js +3 -3
- package/lib/generated/services/codewhisperer.js +3 -3
- package/lib/generated/services/cognito-identity.js +4 -4
- package/lib/generated/services/cognito-idp.js +4 -4
- package/lib/generated/services/cognito-sync.js +3 -3
- package/lib/generated/services/comprehend.js +4 -4
- package/lib/generated/services/comprehendmedical.js +3 -3
- package/lib/generated/services/compute-optimizer.js +3 -3
- package/lib/generated/services/config.js +6 -5
- package/lib/generated/services/connect-campaigns.js +4 -4
- package/lib/generated/services/connect.js +4 -4
- package/lib/generated/services/consoleapp.js +2 -2
- package/lib/generated/services/consolidatedbilling.js +1 -1
- package/lib/generated/services/controlcatalog.js +3 -3
- package/lib/generated/services/controltower.js +4 -4
- package/lib/generated/services/cost-optimization-hub.js +2 -2
- package/lib/generated/services/cur.js +4 -4
- package/lib/generated/services/customer-verification.js +1 -1
- package/lib/generated/services/databrew.js +4 -4
- package/lib/generated/services/dataexchange.js +4 -4
- package/lib/generated/services/datapipeline.js +4 -4
- package/lib/generated/services/datasync.js +4 -4
- package/lib/generated/services/datazone.js +4 -4
- package/lib/generated/services/dax.js +4 -4
- package/lib/generated/services/dbqms.js +1 -1
- package/lib/generated/services/deadline.js +4 -4
- package/lib/generated/services/detective.js +4 -4
- package/lib/generated/services/devicefarm.js +4 -4
- package/lib/generated/services/devops-guru.js +4 -4
- package/lib/generated/services/directconnect.js +4 -4
- package/lib/generated/services/discovery.js +3 -3
- package/lib/generated/services/dlm.js +4 -4
- package/lib/generated/services/dms.js +4 -4
- package/lib/generated/services/docdb-elastic.js +4 -4
- package/lib/generated/services/drs.js +4 -4
- package/lib/generated/services/ds-data.js +4 -4
- package/lib/generated/services/ds.js +4 -4
- package/lib/generated/services/dsql.js +4 -4
- package/lib/generated/services/dynamodb.js +4 -4
- package/lib/generated/services/ebs.js +4 -4
- package/lib/generated/services/ec2-instance-connect.js +4 -4
- package/lib/generated/services/ec2.js +4 -4
- package/lib/generated/services/ec2messages.js +2 -2
- package/lib/generated/services/ecr-public.js +4 -4
- package/lib/generated/services/ecr.js +4 -4
- package/lib/generated/services/ecs-mcp.js +1 -1
- package/lib/generated/services/ecs.js +4 -4
- package/lib/generated/services/eks-auth.js +4 -4
- package/lib/generated/services/eks-mcp.js +1 -1
- package/lib/generated/services/eks.js +4 -4
- package/lib/generated/services/elasticache.js +4 -4
- package/lib/generated/services/elasticbeanstalk.js +4 -4
- package/lib/generated/services/elasticfilesystem.js +4 -4
- package/lib/generated/services/elasticloadbalancing.js +4 -4
- package/lib/generated/services/elasticmapreduce.js +4 -4
- package/lib/generated/services/elastictranscoder.js +2 -2
- package/lib/generated/services/elemental-activations.js +1 -1
- package/lib/generated/services/elemental-appliances-software.js +2 -2
- package/lib/generated/services/elemental-inference.js +4 -4
- package/lib/generated/services/elemental-support-cases.js +3 -3
- package/lib/generated/services/elemental-support-content.js +1 -1
- package/lib/generated/services/emr-containers.js +4 -4
- package/lib/generated/services/emr-serverless.js +4 -4
- package/lib/generated/services/entityresolution.js +4 -4
- package/lib/generated/services/es.js +4 -4
- package/lib/generated/services/events.js +4 -4
- package/lib/generated/services/eventsbilltoaws.js +3 -3
- package/lib/generated/services/evidently.js +3 -3
- package/lib/generated/services/evs.js +4 -4
- package/lib/generated/services/execute-api.js +4 -4
- package/lib/generated/services/finops-agent.js +1 -1
- package/lib/generated/services/finspace-api.js +3 -3
- package/lib/generated/services/finspace.js +4 -4
- package/lib/generated/services/firehose.js +4 -4
- package/lib/generated/services/fis.js +4 -4
- package/lib/generated/services/fms.js +4 -4
- package/lib/generated/services/forecast.js +4 -4
- package/lib/generated/services/frauddetector.js +4 -4
- package/lib/generated/services/freertos.js +3 -3
- package/lib/generated/services/freetier.js +2 -2
- package/lib/generated/services/fsx.js +4 -4
- package/lib/generated/services/gamelift.js +4 -4
- package/lib/generated/services/gameliftstreams.js +4 -4
- package/lib/generated/services/geo-maps.js +3 -3
- package/lib/generated/services/geo-places.js +3 -3
- package/lib/generated/services/geo-routes.js +3 -3
- package/lib/generated/services/geo.js +4 -4
- package/lib/generated/services/glacier.js +4 -4
- package/lib/generated/services/globalaccelerator.js +4 -4
- package/lib/generated/services/glue.js +4 -4
- package/lib/generated/services/grafana.js +4 -4
- package/lib/generated/services/greengrass.js +4 -4
- package/lib/generated/services/groundstation.js +4 -4
- package/lib/generated/services/groundtruthlabeling.js +1 -1
- package/lib/generated/services/guardduty.js +4 -4
- package/lib/generated/services/health-agent.js +4 -4
- package/lib/generated/services/health.js +4 -4
- package/lib/generated/services/healthlake.d.ts +4 -0
- package/lib/generated/services/healthlake.js +11 -5
- package/lib/generated/services/honeycode.js +2 -2
- package/lib/generated/services/iam.js +4 -4
- package/lib/generated/services/identity-sync.js +2 -2
- package/lib/generated/services/identitystore-auth.js +1 -1
- package/lib/generated/services/identitystore.js +4 -4
- package/lib/generated/services/imagebuilder.js +4 -4
- package/lib/generated/services/importexport.js +2 -2
- package/lib/generated/services/inspector-scan.js +2 -2
- package/lib/generated/services/inspector.js +2 -2
- package/lib/generated/services/inspector2-telemetry.js +1 -1
- package/lib/generated/services/inspector2.js +4 -4
- package/lib/generated/services/interconnect.js +4 -4
- package/lib/generated/services/internetmonitor.js +4 -4
- package/lib/generated/services/invoicing.js +4 -4
- package/lib/generated/services/iot-device-tester.js +1 -1
- package/lib/generated/services/iot.js +4 -4
- package/lib/generated/services/iotanalytics.js +3 -3
- package/lib/generated/services/iotdeviceadvisor.js +4 -4
- package/lib/generated/services/iotevents.js +3 -3
- package/lib/generated/services/iotfleethub.js +3 -3
- package/lib/generated/services/iotfleetwise.js +4 -4
- package/lib/generated/services/iotjobsdata.js +4 -4
- package/lib/generated/services/iotmanagedintegrations.js +4 -4
- package/lib/generated/services/iotsitewise.js +4 -4
- package/lib/generated/services/iottwinmaker.js +4 -4
- package/lib/generated/services/iotwireless.js +4 -4
- package/lib/generated/services/iq-permission.js +2 -2
- package/lib/generated/services/iq.js +2 -2
- package/lib/generated/services/ivs.js +4 -4
- package/lib/generated/services/ivschat.js +4 -4
- package/lib/generated/services/kafka-cluster.js +3 -3
- package/lib/generated/services/kafka.js +4 -4
- package/lib/generated/services/kafkaconnect.js +4 -4
- package/lib/generated/services/kendra-ranking.js +4 -4
- package/lib/generated/services/kendra.js +4 -4
- package/lib/generated/services/kinesis.js +4 -4
- package/lib/generated/services/kinesisanalytics.js +4 -4
- package/lib/generated/services/kinesisvideo.js +4 -4
- package/lib/generated/services/kms.js +4 -4
- package/lib/generated/services/lakeformation.js +3 -3
- package/lib/generated/services/lambda.js +4 -4
- package/lib/generated/services/launchwizard.js +4 -4
- package/lib/generated/services/lex.js +4 -4
- package/lib/generated/services/license-manager-linux-subscriptions.js +4 -4
- package/lib/generated/services/license-manager-user-subscriptions.js +4 -4
- package/lib/generated/services/license-manager.js +4 -4
- package/lib/generated/services/lightsail.js +4 -4
- package/lib/generated/services/logs.js +4 -4
- package/lib/generated/services/lookoutequipment.js +4 -4
- package/lib/generated/services/lookoutmetrics.js +3 -3
- package/lib/generated/services/lookoutvision.js +3 -3
- package/lib/generated/services/m2.js +4 -4
- package/lib/generated/services/machinelearning.js +3 -3
- package/lib/generated/services/macie2.js +4 -4
- package/lib/generated/services/managedblockchain-query.js +2 -2
- package/lib/generated/services/managedblockchain.js +4 -4
- package/lib/generated/services/mapcredits.js +2 -2
- package/lib/generated/services/marketplacecommerceanalytics.js +2 -2
- package/lib/generated/services/mechanicalturk.js +2 -2
- package/lib/generated/services/mediaconnect.js +4 -4
- package/lib/generated/services/mediaconvert.js +4 -4
- package/lib/generated/services/mediaimport.js +1 -1
- package/lib/generated/services/medialive.js +4 -4
- package/lib/generated/services/mediapackage-vod.js +4 -4
- package/lib/generated/services/mediapackage.js +4 -4
- package/lib/generated/services/mediapackagev2.js +4 -4
- package/lib/generated/services/mediastore.js +4 -4
- package/lib/generated/services/mediatailor.js +4 -4
- package/lib/generated/services/medical-imaging.js +4 -4
- package/lib/generated/services/memorydb.js +4 -4
- package/lib/generated/services/mgh.js +4 -4
- package/lib/generated/services/mgn.js +4 -4
- package/lib/generated/services/migrationhub-orchestrator.js +4 -4
- package/lib/generated/services/migrationhub-strategy.js +2 -2
- package/lib/generated/services/mobileanalytics.js +1 -1
- package/lib/generated/services/mobiletargeting.js +4 -4
- package/lib/generated/services/monitron.js +3 -3
- package/lib/generated/services/mpa.js +4 -4
- package/lib/generated/services/mq.js +4 -4
- package/lib/generated/services/neptune-db.js +4 -4
- package/lib/generated/services/neptune-graph.js +4 -4
- package/lib/generated/services/network-firewall.js +4 -4
- package/lib/generated/services/network-security-director.js +1 -1
- package/lib/generated/services/networkflowmonitor.js +4 -4
- package/lib/generated/services/networkmanager-chat.js +1 -1
- package/lib/generated/services/networkmanager.js +4 -4
- package/lib/generated/services/networkmonitor.js +4 -4
- package/lib/generated/services/nimble.js +3 -3
- package/lib/generated/services/notifications-contacts.js +4 -4
- package/lib/generated/services/notifications.d.ts +6 -0
- package/lib/generated/services/notifications.js +18 -5
- package/lib/generated/services/nova-act.js +3 -3
- package/lib/generated/services/oam.js +4 -4
- package/lib/generated/services/observabilityadmin.js +4 -4
- package/lib/generated/services/odb.js +4 -4
- package/lib/generated/services/omics.js +4 -4
- package/lib/generated/services/one.js +3 -3
- package/lib/generated/services/opensearch.js +3 -3
- package/lib/generated/services/opsworks-cm.js +2 -2
- package/lib/generated/services/opsworks.js +2 -2
- package/lib/generated/services/organizations.js +4 -4
- package/lib/generated/services/osis.js +4 -4
- package/lib/generated/services/outposts.js +4 -4
- package/lib/generated/services/panorama.js +3 -3
- package/lib/generated/services/partnercentral-account-management.js +2 -2
- package/lib/generated/services/partnercentral.js +4 -4
- package/lib/generated/services/payment-cryptography.js +4 -4
- package/lib/generated/services/payments.js +3 -3
- package/lib/generated/services/pca-connector-ad.js +4 -4
- package/lib/generated/services/pca-connector-scep.js +4 -4
- package/lib/generated/services/pcs.js +4 -4
- package/lib/generated/services/personalize.js +4 -4
- package/lib/generated/services/pi.js +4 -4
- package/lib/generated/services/pipes.js +4 -4
- package/lib/generated/services/polly.js +3 -3
- package/lib/generated/services/pricing.js +2 -2
- package/lib/generated/services/pricingplanmanager.js +3 -3
- package/lib/generated/services/private-networks.js +3 -3
- package/lib/generated/services/profile.d.ts +2 -0
- package/lib/generated/services/profile.js +7 -5
- package/lib/generated/services/proton.js +4 -4
- package/lib/generated/services/purchase-orders.js +3 -3
- package/lib/generated/services/q.js +3 -3
- package/lib/generated/services/qapps.js +4 -4
- package/lib/generated/services/qbusiness.js +4 -4
- package/lib/generated/services/qdeveloper.js +3 -3
- package/lib/generated/services/qldb.js +3 -3
- package/lib/generated/services/quicksight.js +4 -4
- package/lib/generated/services/ram.js +4 -4
- package/lib/generated/services/rbin.js +4 -4
- package/lib/generated/services/rds-data.js +4 -4
- package/lib/generated/services/rds-db.js +2 -2
- package/lib/generated/services/rds.js +4 -4
- package/lib/generated/services/redshift-data.js +4 -4
- package/lib/generated/services/redshift-serverless.js +4 -4
- package/lib/generated/services/redshift.js +4 -4
- package/lib/generated/services/refactor-spaces.js +4 -4
- package/lib/generated/services/rekognition.js +4 -4
- package/lib/generated/services/repostspace.js +4 -4
- package/lib/generated/services/researchstudio.js +1 -1
- package/lib/generated/services/resiliencehub.d.ts +6 -0
- package/lib/generated/services/resiliencehub.js +11 -5
- package/lib/generated/services/resource-explorer-2.js +4 -4
- package/lib/generated/services/resource-explorer.js +1 -1
- package/lib/generated/services/resource-groups.js +4 -4
- package/lib/generated/services/rhelkb.js +1 -1
- package/lib/generated/services/robomaker.js +3 -3
- package/lib/generated/services/rolesanywhere.js +4 -4
- package/lib/generated/services/route53-recovery-cluster.js +4 -4
- package/lib/generated/services/route53-recovery-control-config.js +4 -4
- package/lib/generated/services/route53-recovery-readiness.js +4 -4
- package/lib/generated/services/route53.js +4 -4
- package/lib/generated/services/route53domains.js +2 -2
- package/lib/generated/services/route53globalresolver.js +4 -4
- package/lib/generated/services/route53profiles.js +4 -4
- package/lib/generated/services/route53resolver.js +4 -4
- package/lib/generated/services/rtbfabric.js +4 -4
- package/lib/generated/services/rum.js +4 -4
- package/lib/generated/services/s3-object-lambda.js +3 -3
- package/lib/generated/services/s3-outposts.js +4 -4
- package/lib/generated/services/s3.js +4 -4
- package/lib/generated/services/s3express.js +3 -3
- package/lib/generated/services/s3files.js +4 -4
- package/lib/generated/services/s3tables.js +4 -4
- package/lib/generated/services/s3vectors.js +4 -4
- package/lib/generated/services/sagemaker-data-science-assistant.js +1 -1
- package/lib/generated/services/sagemaker-geospatial.js +4 -4
- package/lib/generated/services/sagemaker-mlflow.js +3 -3
- package/lib/generated/services/sagemaker-unified-studio-mcp.js +1 -1
- package/lib/generated/services/sagemaker.js +4 -4
- package/lib/generated/services/savingsplans.js +4 -4
- package/lib/generated/services/scheduler.js +4 -4
- package/lib/generated/services/schemas.js +4 -4
- package/lib/generated/services/scn.js +4 -4
- package/lib/generated/services/sdb.js +3 -3
- package/lib/generated/services/secretsmanager.js +4 -4
- package/lib/generated/services/security-ir.js +4 -4
- package/lib/generated/services/securityagent.js +4 -4
- package/lib/generated/services/securityhub.js +4 -4
- package/lib/generated/services/securitylake.js +4 -4
- package/lib/generated/services/serverlessrepo.js +4 -4
- package/lib/generated/services/servicecatalog.js +4 -4
- package/lib/generated/services/servicediscovery.js +4 -4
- package/lib/generated/services/serviceextract.js +1 -1
- package/lib/generated/services/servicequotas.js +4 -4
- package/lib/generated/services/ses.js +4 -4
- package/lib/generated/services/shield.js +4 -4
- package/lib/generated/services/signer.js +4 -4
- package/lib/generated/services/signin.js +4 -4
- package/lib/generated/services/simspaceweaver.js +3 -3
- package/lib/generated/services/sms-voice.js +4 -4
- package/lib/generated/services/sms.js +1 -1
- package/lib/generated/services/snow-device-management.js +4 -4
- package/lib/generated/services/snowball.js +2 -2
- package/lib/generated/services/sns.js +4 -4
- package/lib/generated/services/social-messaging.js +4 -4
- package/lib/generated/services/sqlworkbench.js +3 -3
- package/lib/generated/services/sqs.js +4 -4
- package/lib/generated/services/ssm-contacts.js +4 -4
- package/lib/generated/services/ssm-guiconnect.js +2 -2
- package/lib/generated/services/ssm-incidents.js +4 -4
- package/lib/generated/services/ssm-quicksetup.js +4 -4
- package/lib/generated/services/ssm-sap.js +4 -4
- package/lib/generated/services/ssm.js +4 -4
- package/lib/generated/services/ssmmessages.js +2 -2
- package/lib/generated/services/sso-directory.js +1 -1
- package/lib/generated/services/sso-oauth.js +3 -3
- package/lib/generated/services/sso.js +4 -4
- package/lib/generated/services/states.js +4 -4
- package/lib/generated/services/storagegateway.js +4 -4
- package/lib/generated/services/sts.js +4 -4
- package/lib/generated/services/support-console.js +1 -1
- package/lib/generated/services/support.js +2 -2
- package/lib/generated/services/supportapp.js +2 -2
- package/lib/generated/services/supportauthz.js +4 -4
- package/lib/generated/services/supportplans.js +1 -1
- package/lib/generated/services/sustainability.js +2 -2
- package/lib/generated/services/swf.js +4 -4
- package/lib/generated/services/synthetics.js +4 -4
- package/lib/generated/services/tag.js +2 -2
- package/lib/generated/services/tax.js +2 -2
- package/lib/generated/services/textract.js +4 -4
- package/lib/generated/services/thinclient.js +4 -4
- package/lib/generated/services/timestream-influxdb.js +4 -4
- package/lib/generated/services/timestream.js +4 -4
- package/lib/generated/services/tiros.js +1 -1
- package/lib/generated/services/tnb.js +4 -4
- package/lib/generated/services/transcribe.js +4 -4
- package/lib/generated/services/transfer.js +4 -4
- package/lib/generated/services/transform-custom.js +3 -3
- package/lib/generated/services/transform.js +3 -3
- package/lib/generated/services/translate.js +4 -4
- package/lib/generated/services/trustedadvisor.js +3 -3
- package/lib/generated/services/ts.js +3 -3
- package/lib/generated/services/user-subscriptions.d.ts +12 -0
- package/lib/generated/services/user-subscriptions.js +21 -3
- package/lib/generated/services/uxc.js +2 -2
- package/lib/generated/services/vendor-insights.js +3 -3
- package/lib/generated/services/verified-access.js +1 -1
- package/lib/generated/services/verifiedpermissions.js +4 -4
- package/lib/generated/services/voiceid.js +4 -4
- package/lib/generated/services/vpc-lattice-svcs.js +3 -3
- package/lib/generated/services/vpc-lattice.js +4 -4
- package/lib/generated/services/vpce.js +2 -2
- package/lib/generated/services/waf-regional.js +4 -4
- package/lib/generated/services/waf.js +4 -4
- package/lib/generated/services/wafv2.js +4 -4
- package/lib/generated/services/wam.js +1 -1
- package/lib/generated/services/wellarchitected.js +4 -4
- package/lib/generated/services/wickr.js +4 -4
- package/lib/generated/services/wisdom.js +4 -4
- package/lib/generated/services/workdocs.js +3 -3
- package/lib/generated/services/worklink.js +3 -3
- package/lib/generated/services/workmail.js +4 -4
- package/lib/generated/services/workmailmessageflow.js +3 -3
- package/lib/generated/services/workspaces-instances.js +4 -4
- package/lib/generated/services/workspaces-web.js +4 -4
- package/lib/generated/services/workspaces.js +4 -4
- package/lib/generated/services/xray.js +4 -4
- package/package.json +1 -1
|
@@ -16,7 +16,7 @@ class ResiliencehubActions {
|
|
|
16
16
|
}
|
|
17
17
|
exports.ResiliencehubActions = ResiliencehubActions;
|
|
18
18
|
_a = JSII_RTTI_SYMBOL_1;
|
|
19
|
-
ResiliencehubActions[_a] = { fqn: "@cdk_utils/iam.resiliencehub.ResiliencehubActions", version: "1.
|
|
19
|
+
ResiliencehubActions[_a] = { fqn: "@cdk_utils/iam.resiliencehub.ResiliencehubActions", version: "1.25.0" };
|
|
20
20
|
/** The IAM service prefix. */
|
|
21
21
|
ResiliencehubActions.SERVICE_PREFIX = "resiliencehub";
|
|
22
22
|
/** [Write] resiliencehub:AcceptResourceGroupingRecommendations */
|
|
@@ -662,7 +662,7 @@ class ResiliencehubResources {
|
|
|
662
662
|
}
|
|
663
663
|
exports.ResiliencehubResources = ResiliencehubResources;
|
|
664
664
|
_b = JSII_RTTI_SYMBOL_1;
|
|
665
|
-
ResiliencehubResources[_b] = { fqn: "@cdk_utils/iam.resiliencehub.ResiliencehubResources", version: "1.
|
|
665
|
+
ResiliencehubResources[_b] = { fqn: "@cdk_utils/iam.resiliencehub.ResiliencehubResources", version: "1.25.0" };
|
|
666
666
|
/**
|
|
667
667
|
* API operation to required IAM actions mapping for resiliencehub.
|
|
668
668
|
*/
|
|
@@ -670,7 +670,7 @@ class ResiliencehubOperations {
|
|
|
670
670
|
}
|
|
671
671
|
exports.ResiliencehubOperations = ResiliencehubOperations;
|
|
672
672
|
_c = JSII_RTTI_SYMBOL_1;
|
|
673
|
-
ResiliencehubOperations[_c] = { fqn: "@cdk_utils/iam.resiliencehub.ResiliencehubOperations", version: "1.
|
|
673
|
+
ResiliencehubOperations[_c] = { fqn: "@cdk_utils/iam.resiliencehub.ResiliencehubOperations", version: "1.25.0" };
|
|
674
674
|
/** IAM actions required for the AcceptResourceGroupingRecommendations API call. */
|
|
675
675
|
ResiliencehubOperations.AcceptResourceGroupingRecommendations = [
|
|
676
676
|
"resiliencehub:AcceptResourceGroupingRecommendations",
|
|
@@ -846,6 +846,8 @@ ResiliencehubOperations.DescribeResiliencyPolicy = [
|
|
|
846
846
|
ResiliencehubOperations.DescribeResourceGroupingRecommendationTask = [
|
|
847
847
|
"resiliencehub:DescribeResourceGroupingRecommendationTask",
|
|
848
848
|
];
|
|
849
|
+
/** IAM actions required for the GetDependencyInsights API call. */
|
|
850
|
+
ResiliencehubOperations.opGetDependencyInsights = [];
|
|
849
851
|
/** IAM actions required for the GetFailureModeFinding API call. */
|
|
850
852
|
ResiliencehubOperations.opGetFailureModeFinding = [
|
|
851
853
|
"resiliencehub:GetFailureModeFinding",
|
|
@@ -943,6 +945,8 @@ ResiliencehubOperations.ListInputSources = [
|
|
|
943
945
|
ResiliencehubOperations.ListMetrics = ["resiliencehub:ListMetrics"];
|
|
944
946
|
/** IAM actions required for the ListPolicies API call. */
|
|
945
947
|
ResiliencehubOperations.ListPolicies = ["resiliencehub:ListPolicies"];
|
|
948
|
+
/** IAM actions required for the ListPolicyEvents API call. */
|
|
949
|
+
ResiliencehubOperations.ListPolicyEvents = [];
|
|
946
950
|
/** IAM actions required for the ListRecommendationTemplates API call. */
|
|
947
951
|
ResiliencehubOperations.ListRecommendationTemplates = [
|
|
948
952
|
"resiliencehub:ListRecommendationTemplates",
|
|
@@ -1060,6 +1064,8 @@ ResiliencehubOperations.StartAppAssessment = [
|
|
|
1060
1064
|
"resiliencehub:StartAppAssessment",
|
|
1061
1065
|
"resiliencehub:TagResource",
|
|
1062
1066
|
];
|
|
1067
|
+
/** IAM actions required for the StartDependencyInsights API call. */
|
|
1068
|
+
ResiliencehubOperations.StartDependencyInsights = [];
|
|
1063
1069
|
/** IAM actions required for the StartFailureModeAssessment API call. */
|
|
1064
1070
|
ResiliencehubOperations.StartFailureModeAssessment = [
|
|
1065
1071
|
"resiliencehub:StartFailureModeAssessment",
|
|
@@ -1158,7 +1164,7 @@ class ResiliencehubConditions {
|
|
|
1158
1164
|
}
|
|
1159
1165
|
exports.ResiliencehubConditions = ResiliencehubConditions;
|
|
1160
1166
|
_d = JSII_RTTI_SYMBOL_1;
|
|
1161
|
-
ResiliencehubConditions[_d] = { fqn: "@cdk_utils/iam.resiliencehub.ResiliencehubConditions", version: "1.
|
|
1167
|
+
ResiliencehubConditions[_d] = { fqn: "@cdk_utils/iam.resiliencehub.ResiliencehubConditions", version: "1.25.0" };
|
|
1162
1168
|
/** Condition keys applicable to the CreateApp action. */
|
|
1163
1169
|
ResiliencehubConditions.CreateAppConditionKeys = [
|
|
1164
1170
|
"aws:RequestTag/${TagKey}",
|
|
@@ -1192,4 +1198,4 @@ ResiliencehubConditions.AWS_REQUEST_TAG = "aws:RequestTag/${TagKey}";
|
|
|
1192
1198
|
ResiliencehubConditions.AWS_RESOURCE_TAG = "aws:ResourceTag/${TagKey}";
|
|
1193
1199
|
/** Condition key: aws:TagKeys (ArrayOfString) */
|
|
1194
1200
|
ResiliencehubConditions.AWS_TAG_KEYS = "aws:TagKeys";
|
|
1195
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaWxpZW5jZWh1Yi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9nZW5lcmF0ZWQvc2VydmljZXMvcmVzaWxpZW5jZWh1Yi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdGQUFnRjtBQUNoRiw2Q0FBNkM7QUFDN0MsMERBQTBEO0FBQzFELG9EQUFvRDtBQUNwRCxvREFBb0Q7QUFDcEQsZ0ZBQWdGO0FBRWhGOztHQUVHO0FBQ0gsTUFBYSxvQkFBb0I7O0FBQWpDLG9EQThjQzs7O0FBN2NBLDhCQUE4QjtBQUNkLG1DQUFjLEdBQUcsZUFBZSxDQUFDO0FBRWpELGtFQUFrRTtBQUNsRCwwREFBcUMsR0FDcEQscURBQXFELENBQUM7QUFDdkQsK0RBQStEO0FBQy9DLHVEQUFrQyxHQUNqRCxrREFBa0QsQ0FBQztBQUNwRCw0REFBNEQ7QUFDNUMsb0RBQStCLEdBQzlDLCtDQUErQyxDQUFDO0FBQ2pELHNDQUFzQztBQUN0Qiw4QkFBUyxHQUFHLHlCQUF5QixDQUFDO0FBQ3RELHlEQUF5RDtBQUN6QyxpREFBNEIsR0FDM0MsNENBQTRDLENBQUM7QUFDOUMscURBQXFEO0FBQ3JDLDZDQUF3QixHQUN2Qyx3Q0FBd0MsQ0FBQztBQUMxQyw0Q0FBNEM7QUFDNUIsb0NBQWUsR0FBRywrQkFBK0IsQ0FBQztBQUNsRSw4Q0FBOEM7QUFDOUIsc0NBQWlCLEdBQUcsaUNBQWlDLENBQUM7QUFDdEUseUNBQXlDO0FBQ3pCLGlDQUFZLEdBQUcsNEJBQTRCLENBQUM7QUFDNUQseURBQXlEO0FBQ3pDLGlEQUE0QixHQUMzQyw0Q0FBNEMsQ0FBQztBQUM5Qyx5Q0FBeUM7QUFDekIsaUNBQVksR0FBRyw0QkFBNEIsQ0FBQztBQUM1RCxtREFBbUQ7QUFDbkMsMkNBQXNCLEdBQ3JDLHNDQUFzQyxDQUFDO0FBQ3hDLDBDQUEwQztBQUMxQixrQ0FBYSxHQUFHLDZCQUE2QixDQUFDO0FBQzlELGtEQUFrRDtBQUNsQywwQ0FBcUIsR0FBRyxx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S0FBSyxFQUFFLEVBQUUsQ0FBQztJQUNqRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQWdCO1FBQzlCLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDO0lBQ25FLENBQUM7O0FBdkRGLDBEQXdEQzs7O0FBdkRBLHlEQUF5RDtBQUN6Qyw4Q0FBc0IsR0FBYTtJQUNsRCwwQkFBMEI7SUFDMUIsYUFBYTtDQUNiLENBQUM7QUFDRiw0RUFBNEU7QUFDNUQsaUVBQXlDLEdBQWE7SUFDckUsMEJBQTBCO0lBQzFCLGFBQWE7Q0FDYixDQUFDO0FBQ0Ysc0VBQXNFO0FBQ3RELDJEQUFtQyxHQUFhO0lBQy9ELDBCQUEwQjtJQUMxQixhQUFhO0NBQ2IsQ0FBQztBQUNGLGtFQUFrRTtBQUNsRCx1REFBK0IsR0FBYTtJQUMzRCwwQkFBMEI7SUFDMUIsYUFBYTtDQUNiLENBQUM7QUFDRiwyREFBMkQ7QUFDM0MsZ0RBQXdCLEdBQWE7SUFDcEQsMEJBQTBCO0lBQzFCLGFBQWE7Q0FDYixDQUFDO0FBQ0YsNkRBQTZEO0FBQzdDLGtEQUEwQixHQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7QUFFdkUsdURBQXVEO0FBQ3ZDLHVDQUFlLEdBQUcsMEJBQTBCLENBQUM7QUFDN0Qsd0RBQXdEO0FBQ3hDLHdDQUFnQixHQUFHLDJCQUEyQixDQUFDO0FBQy9ELGlEQUFpRDtBQUNqQyxvQ0FBWSxHQUFHLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBBVVRPLUdFTkVSQVRFRCBGSUxFIOKAlCBETyBOT1QgRURJVCBNQU5VQUxMWVxuLy8gR2VuZXJhdGVkIGZyb20gQVdTIFNlcnZpY2UgQXV0aG9yaXphdGlvbiBSZWZlcmVuY2UgZGF0YVxuLy8gU291cmNlOiBkYXRhL3NlcnZpY2UtcmVmZXJlbmNlL3Jlc2lsaWVuY2VodWIuanNvblxuLy8gUnVuIGBucHggcHJvamVuIGdlbmVyYXRlLWNvbnN0YW50c2AgdG8gcmVnZW5lcmF0ZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBJQU0gYWN0aW9uIGNvbnN0YW50cyBmb3IgdGhlIHJlc2lsaWVuY2VodWIgc2VydmljZS5cbiAqL1xuZXhwb3J0IGNsYXNzIFJlc2lsaWVuY2VodWJBY3Rpb25zIHtcblx0LyoqIFRoZSBJQU0gc2VydmljZSBwcmVmaXguICovXG5cdHN0YXRpYyByZWFkb25seSBTRVJWSUNFX1BSRUZJWCA9IFwicmVzaWxpZW5jZWh1YlwiO1xuXG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6QWNjZXB0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWNjZXB0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9ucyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkFjY2VwdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpBZGREcmFmdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzICovXG5cdHN0YXRpYyByZWFkb25seSBBZGREcmFmdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzID1cblx0XHRcInJlc2lsaWVuY2VodWI6QWRkRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5nc1wiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkJhdGNoVXBkYXRlUmVjb21tZW5kYXRpb25TdGF0dXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoVXBkYXRlUmVjb21tZW5kYXRpb25TdGF0dXMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpCYXRjaFVwZGF0ZVJlY29tbWVuZGF0aW9uU3RhdHVzXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6Q3JlYXRlQXBwICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBcHAgPSBcInJlc2lsaWVuY2VodWI6Q3JlYXRlQXBwXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6Q3JlYXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudCA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkNyZWF0ZUFwcFZlcnNpb25BcHBDb21wb25lbnRcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpDcmVhdGVBcHBWZXJzaW9uUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFwcFZlcnNpb25SZXNvdXJjZSA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkNyZWF0ZUFwcFZlcnNpb25SZXNvdXJjZVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZUFzc2VydGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXNzZXJ0aW9uID0gXCJyZXNpbGllbmNlaHViOkNyZWF0ZUFzc2VydGlvblwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZUlucHV0U291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVJbnB1dFNvdXJjZSA9IFwicmVzaWxpZW5jZWh1YjpDcmVhdGVJbnB1dFNvdXJjZVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUG9saWN5ID0gXCJyZXNpbGllbmNlaHViOkNyZWF0ZVBvbGljeVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZVJlY29tbWVuZGF0aW9uVGVtcGxhdGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlY29tbWVuZGF0aW9uVGVtcGxhdGUgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVSZWNvbW1lbmRhdGlvblRlbXBsYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6Q3JlYXRlUmVwb3J0ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZXBvcnQgPSBcInJlc2lsaWVuY2VodWI6Q3JlYXRlUmVwb3J0XCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6Q3JlYXRlUmVzaWxpZW5jeVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVzaWxpZW5jeVBvbGljeSA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkNyZWF0ZVJlc2lsaWVuY3lQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpDcmVhdGVTZXJ2aWNlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVTZXJ2aWNlID0gXCJyZXNpbGllbmNlaHViOkNyZWF0ZVNlcnZpY2VcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpDcmVhdGVTZXJ2aWNlRnVuY3Rpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVNlcnZpY2VGdW5jdGlvbiA9IFwicmVzaWxpZW5jZWh1YjpDcmVhdGVTZXJ2aWNlRnVuY3Rpb25cIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpDcmVhdGVTZXJ2aWNlRnVuY3Rpb25SZXNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVNlcnZpY2VGdW5jdGlvblJlc291cmNlcyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkNyZWF0ZVNlcnZpY2VGdW5jdGlvblJlc291cmNlc1wiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZVN5c3RlbSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlU3lzdGVtID0gXCJyZXNpbGllbmNlaHViOkNyZWF0ZVN5c3RlbVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZVRlc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRlc3QgPSBcInJlc2lsaWVuY2VodWI6Q3JlYXRlVGVzdFwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZVVzZXJKb3VybmV5ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVVc2VySm91cm5leSA9IFwicmVzaWxpZW5jZWh1YjpDcmVhdGVVc2VySm91cm5leVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkRlbGV0ZUFwcCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQXBwID0gXCJyZXNpbGllbmNlaHViOkRlbGV0ZUFwcFwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkRlbGV0ZUFwcEFzc2Vzc21lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwcEFzc2Vzc21lbnQgPSBcInJlc2lsaWVuY2VodWI6RGVsZXRlQXBwQXNzZXNzbWVudFwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkRlbGV0ZUFwcElucHV0U291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcHBJbnB1dFNvdXJjZSA9IFwicmVzaWxpZW5jZWh1YjpEZWxldGVBcHBJbnB1dFNvdXJjZVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkRlbGV0ZUFwcFZlcnNpb25BcHBDb21wb25lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwcFZlcnNpb25BcHBDb21wb25lbnQgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50XCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6RGVsZXRlQXBwVmVyc2lvblJlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcHBWZXJzaW9uUmVzb3VyY2UgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVBcHBWZXJzaW9uUmVzb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVBc3NlcnRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFzc2VydGlvbiA9IFwicmVzaWxpZW5jZWh1YjpEZWxldGVBc3NlcnRpb25cIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVJbnB1dFNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSW5wdXRTb3VyY2UgPSBcInJlc2lsaWVuY2VodWI6RGVsZXRlSW5wdXRTb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVBvbGljeSA9IFwicmVzaWxpZW5jZWh1YjpEZWxldGVQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVSZWNvbW1lbmRhdGlvblRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWNvbW1lbmRhdGlvblRlbXBsYXRlID1cblx0XHRcInJlc2lsaWVuY2VodWI6RGVsZXRlUmVjb21tZW5kYXRpb25UZW1wbGF0ZVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkRlbGV0ZVJlc2lsaWVuY3lQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlc2lsaWVuY3lQb2xpY3kgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVSZXNpbGllbmN5UG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6RGVsZXRlU2VydmljZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlU2VydmljZSA9IFwicmVzaWxpZW5jZWh1YjpEZWxldGVTZXJ2aWNlXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6RGVsZXRlU2VydmljZUZ1bmN0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVTZXJ2aWNlRnVuY3Rpb24gPSBcInJlc2lsaWVuY2VodWI6RGVsZXRlU2VydmljZUZ1bmN0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6RGVsZXRlU2VydmljZUZ1bmN0aW9uUmVzb3VyY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVTZXJ2aWNlRnVuY3Rpb25SZXNvdXJjZXMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVTZXJ2aWNlRnVuY3Rpb25SZXNvdXJjZXNcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVTeXN0ZW0gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVN5c3RlbSA9IFwicmVzaWxpZW5jZWh1YjpEZWxldGVTeXN0ZW1cIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVUZXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVUZXN0ID0gXCJyZXNpbGllbmNlaHViOkRlbGV0ZVRlc3RcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVUZXN0U291cmNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGVzdFNvdXJjZXMgPSBcInJlc2lsaWVuY2VodWI6RGVsZXRlVGVzdFNvdXJjZXNcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVVc2VySm91cm5leSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVXNlckpvdXJuZXkgPSBcInJlc2lsaWVuY2VodWI6RGVsZXRlVXNlckpvdXJuZXlcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFwcCA9IFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFwiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBBc3Nlc3NtZW50ICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFwcEFzc2Vzc21lbnQgPSBcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBBc3Nlc3NtZW50XCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFZlcnNpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQXBwVmVyc2lvbiA9IFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFZlcnNpb25cIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwVmVyc2lvbkFwcENvbXBvbmVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBcHBWZXJzaW9uQXBwQ29tcG9uZW50ID1cblx0XHRcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBWZXJzaW9uQXBwQ29tcG9uZW50XCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFZlcnNpb25SZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBcHBWZXJzaW9uUmVzb3VyY2UgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFZlcnNpb25SZXNvdXJjZVwiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBWZXJzaW9uUmVzb3VyY2VzUmVzb2x1dGlvblN0YXR1cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBcHBWZXJzaW9uUmVzb3VyY2VzUmVzb2x1dGlvblN0YXR1cyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwVmVyc2lvblJlc291cmNlc1Jlc29sdXRpb25TdGF0dXNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwVmVyc2lvblRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFwcFZlcnNpb25UZW1wbGF0ZSA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwVmVyc2lvblRlbXBsYXRlXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpEZXNjcmliZURyYWZ0QXBwVmVyc2lvblJlc291cmNlc0ltcG9ydFN0YXR1cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEcmFmdEFwcFZlcnNpb25SZXNvdXJjZXNJbXBvcnRTdGF0dXMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZURyYWZ0QXBwVmVyc2lvblJlc291cmNlc0ltcG9ydFN0YXR1c1wiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6RGVzY3JpYmVNZXRyaWNzRXhwb3J0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZU1ldHJpY3NFeHBvcnQgPSBcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVNZXRyaWNzRXhwb3J0XCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpEZXNjcmliZVJlc2lsaWVuY3lQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlUmVzaWxpZW5jeVBvbGljeSA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlUmVzaWxpZW5jeVBvbGljeVwiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6RGVzY3JpYmVSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25UYXNrICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvblRhc2sgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZVJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvblRhc2tcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkdldEZhaWx1cmVNb2RlRmluZGluZyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RmFpbHVyZU1vZGVGaW5kaW5nID1cblx0XHRcInJlc2lsaWVuY2VodWI6R2V0RmFpbHVyZU1vZGVGaW5kaW5nXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpHZXRQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFBvbGljeSA9IFwicmVzaWxpZW5jZWh1YjpHZXRQb2xpY3lcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkdldFNlcnZpY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFNlcnZpY2UgPSBcInJlc2lsaWVuY2VodWI6R2V0U2VydmljZVwiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6R2V0U3lzdGVtICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRTeXN0ZW0gPSBcInJlc2lsaWVuY2VodWI6R2V0U3lzdGVtXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpHZXRUZXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRUZXN0ID0gXCJyZXNpbGllbmNlaHViOkdldFRlc3RcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkdldFRlc3RSdW4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFRlc3RSdW4gPSBcInJlc2lsaWVuY2VodWI6R2V0VGVzdFJ1blwiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6R2V0VGVzdFRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRUZXN0VGVtcGxhdGUgPSBcInJlc2lsaWVuY2VodWI6R2V0VGVzdFRlbXBsYXRlXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpHZXRVc2VySm91cm5leSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0VXNlckpvdXJuZXkgPSBcInJlc2lsaWVuY2VodWI6R2V0VXNlckpvdXJuZXlcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpJbXBvcnRBcHAgKi9cblx0c3RhdGljIHJlYWRvbmx5IEltcG9ydEFwcCA9IFwicmVzaWxpZW5jZWh1YjpJbXBvcnRBcHBcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpJbXBvcnRQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IEltcG9ydFBvbGljeSA9IFwicmVzaWxpZW5jZWh1YjpJbXBvcnRQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpJbXBvcnRSZXNvdXJjZXNUb0RyYWZ0QXBwVmVyc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW1wb3J0UmVzb3VyY2VzVG9EcmFmdEFwcFZlcnNpb24gPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpJbXBvcnRSZXNvdXJjZXNUb0RyYWZ0QXBwVmVyc2lvblwiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdEFsYXJtUmVjb21tZW5kYXRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWxhcm1SZWNvbW1lbmRhdGlvbnMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0QWxhcm1SZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtMaXN0XSByZXNpbGllbmNlaHViOkxpc3RBcHBBc3Nlc3NtZW50Q29tcGxpYW5jZURyaWZ0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcEFzc2Vzc21lbnRDb21wbGlhbmNlRHJpZnRzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcEFzc2Vzc21lbnRDb21wbGlhbmNlRHJpZnRzXCI7XG5cdC8qKiBbTGlzdF0gcmVzaWxpZW5jZWh1YjpMaXN0QXBwQXNzZXNzbWVudFJlc291cmNlRHJpZnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwQXNzZXNzbWVudFJlc291cmNlRHJpZnRzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcEFzc2Vzc21lbnRSZXNvdXJjZURyaWZ0c1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdEFwcEFzc2Vzc21lbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwQXNzZXNzbWVudHMgPSBcInJlc2lsaWVuY2VodWI6TGlzdEFwcEFzc2Vzc21lbnRzXCI7XG5cdC8qKiBbTGlzdF0gcmVzaWxpZW5jZWh1YjpMaXN0QXBwQ29tcG9uZW50Q29tcGxpYW5jZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBDb21wb25lbnRDb21wbGlhbmNlcyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RBcHBDb21wb25lbnRDb21wbGlhbmNlc1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdEFwcENvbXBvbmVudFJlY29tbWVuZGF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcENvbXBvbmVudFJlY29tbWVuZGF0aW9ucyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RBcHBDb21wb25lbnRSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtMaXN0XSByZXNpbGllbmNlaHViOkxpc3RBcHBJbnB1dFNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBJbnB1dFNvdXJjZXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdEFwcElucHV0U291cmNlc1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdEFwcFZlcnNpb25BcHBDb21wb25lbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwVmVyc2lvbkFwcENvbXBvbmVudHMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0QXBwVmVyc2lvbkFwcENvbXBvbmVudHNcIjtcblx0LyoqIFtMaXN0XSByZXNpbGllbmNlaHViOkxpc3RBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5ncyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzXCI7XG5cdC8qKiBbTGlzdF0gcmVzaWxpZW5jZWh1YjpMaXN0QXBwVmVyc2lvblJlc291cmNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcFZlcnNpb25SZXNvdXJjZXMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0QXBwVmVyc2lvblJlc291cmNlc1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdEFwcFZlcnNpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwVmVyc2lvbnMgPSBcInJlc2lsaWVuY2VodWI6TGlzdEFwcFZlcnNpb25zXCI7XG5cdC8qKiBbTGlzdF0gcmVzaWxpZW5jZWh1YjpMaXN0QXBwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcHMgPSBcInJlc2lsaWVuY2VodWI6TGlzdEFwcHNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RBc3NlcnRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXNzZXJ0aW9ucyA9IFwicmVzaWxpZW5jZWh1YjpMaXN0QXNzZXJ0aW9uc1wiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6TGlzdERlcGVuZGVuY2llcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERlcGVuZGVuY2llcyA9IFwicmVzaWxpZW5jZWh1YjpMaXN0RGVwZW5kZW5jaWVzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0RmFpbHVyZU1vZGVBc3Nlc3NtZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEZhaWx1cmVNb2RlQXNzZXNzbWVudHMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0RmFpbHVyZU1vZGVBc3Nlc3NtZW50c1wiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6TGlzdEZhaWx1cmVNb2RlRmluZGluZ3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RGYWlsdXJlTW9kZUZpbmRpbmdzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEZhaWx1cmVNb2RlRmluZGluZ3NcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RJbnB1dFNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJbnB1dFNvdXJjZXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdElucHV0U291cmNlc1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdE1ldHJpY3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNZXRyaWNzID0gXCJyZXNpbGllbmNlaHViOkxpc3RNZXRyaWNzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0UG9saWNpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY2llcyA9IFwicmVzaWxpZW5jZWh1YjpMaXN0UG9saWNpZXNcIjtcblx0LyoqIFtMaXN0XSByZXNpbGllbmNlaHViOkxpc3RSZWNvbW1lbmRhdGlvblRlbXBsYXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlY29tbWVuZGF0aW9uVGVtcGxhdGVzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFJlY29tbWVuZGF0aW9uVGVtcGxhdGVzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0UmVwb3J0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlcG9ydHMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFJlcG9ydHNcIjtcblx0LyoqIFtMaXN0XSByZXNpbGllbmNlaHViOkxpc3RSZXNpbGllbmN5UG9saWNpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXNpbGllbmN5UG9saWNpZXMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0UmVzaWxpZW5jeVBvbGljaWVzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0UmVzb2x2ZWRUZXN0UnVuVGFyZ2V0UmVzb3VyY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVzb2x2ZWRUZXN0UnVuVGFyZ2V0UmVzb3VyY2VzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFJlc29sdmVkVGVzdFJ1blRhcmdldFJlc291cmNlc1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25zID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RSZXNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXNvdXJjZXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFJlc291cmNlc1wiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6TGlzdFNlcnZpY2VFdmVudHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTZXJ2aWNlRXZlbnRzID0gXCJyZXNpbGllbmNlaHViOkxpc3RTZXJ2aWNlRXZlbnRzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0U2VydmljZUZ1bmN0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlcnZpY2VGdW5jdGlvbnMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFNlcnZpY2VGdW5jdGlvbnNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RTZXJ2aWNlVG9wb2xvZ3lFZGdlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlcnZpY2VUb3BvbG9neUVkZ2VzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFNlcnZpY2VUb3BvbG9neUVkZ2VzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0U2VydmljZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTZXJ2aWNlcyA9IFwicmVzaWxpZW5jZWh1YjpMaXN0U2VydmljZXNcIjtcblx0LyoqIFtMaXN0XSByZXNpbGllbmNlaHViOkxpc3RTb3BSZWNvbW1lbmRhdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTb3BSZWNvbW1lbmRhdGlvbnMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0U29wUmVjb21tZW5kYXRpb25zXCI7XG5cdC8qKiBbTGlzdF0gcmVzaWxpZW5jZWh1YjpMaXN0U3VnZ2VzdGVkUmVzaWxpZW5jeVBvbGljaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U3VnZ2VzdGVkUmVzaWxpZW5jeVBvbGljaWVzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFN1Z2dlc3RlZFJlc2lsaWVuY3lQb2xpY2llc1wiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6TGlzdFN5c3RlbUV2ZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFN5c3RlbUV2ZW50cyA9IFwicmVzaWxpZW5jZWh1YjpMaXN0U3lzdGVtRXZlbnRzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0U3lzdGVtcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFN5c3RlbXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFN5c3RlbXNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RUYWdzRm9yUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUYWdzRm9yUmVzb3VyY2UgPSBcInJlc2lsaWVuY2VodWI6TGlzdFRhZ3NGb3JSZXNvdXJjZVwiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdFRlc3RSZWNvbW1lbmRhdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZXN0UmVjb21tZW5kYXRpb25zID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuRGVwZW5kZW5jaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVzdFJ1bkRlcGVuZGVuY2llcyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuRGVwZW5kZW5jaWVzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0VGVzdFJ1bkV2ZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RSdW5FdmVudHMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RSdW5FdmVudHNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuU291cmNlRXZlbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVzdFJ1blNvdXJjZUV2ZW50cyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuU291cmNlRXZlbnRzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0VGVzdFJ1blNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZXN0UnVuU291cmNlcyA9IFwicmVzaWxpZW5jZWh1YjpMaXN0VGVzdFJ1blNvdXJjZXNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RUZXN0UnVucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RSdW5zID0gXCJyZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuc1wiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6TGlzdFRlc3RTb3VyY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVzdFNvdXJjZXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RTb3VyY2VzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0VGVzdFRlbXBsYXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RUZW1wbGF0ZXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RUZW1wbGF0ZXNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RUZXN0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RzID0gXCJyZXNpbGllbmNlaHViOkxpc3RUZXN0c1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdFVuc3VwcG9ydGVkQXBwVmVyc2lvblJlc291cmNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFVuc3VwcG9ydGVkQXBwVmVyc2lvblJlc291cmNlcyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RVbnN1cHBvcnRlZEFwcFZlcnNpb25SZXNvdXJjZXNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RVc2VySm91cm5leXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RVc2VySm91cm5leXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFVzZXJKb3VybmV5c1wiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlB1Ymxpc2hBcHBWZXJzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBQdWJsaXNoQXBwVmVyc2lvbiA9IFwicmVzaWxpZW5jZWh1YjpQdWJsaXNoQXBwVmVyc2lvblwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlB1dERyYWZ0QXBwVmVyc2lvblRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBQdXREcmFmdEFwcFZlcnNpb25UZW1wbGF0ZSA9XG5cdFx0XCJyZXNpbGllbmNlaHViOlB1dERyYWZ0QXBwVmVyc2lvblRlbXBsYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6UHV0VGVzdFNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dFRlc3RTb3VyY2VzID0gXCJyZXNpbGllbmNlaHViOlB1dFRlc3RTb3VyY2VzXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6UmVqZWN0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVqZWN0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9ucyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOlJlamVjdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpSZW1vdmVEcmFmdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzICovXG5cdHN0YXRpYyByZWFkb25seSBSZW1vdmVEcmFmdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzID1cblx0XHRcInJlc2lsaWVuY2VodWI6UmVtb3ZlRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5nc1wiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlJlc29sdmVBcHBWZXJzaW9uUmVzb3VyY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBSZXNvbHZlQXBwVmVyc2lvblJlc291cmNlcyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOlJlc29sdmVBcHBWZXJzaW9uUmVzb3VyY2VzXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6U3RhcnRBcHBBc3Nlc3NtZW50ICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEFwcEFzc2Vzc21lbnQgPSBcInJlc2lsaWVuY2VodWI6U3RhcnRBcHBBc3Nlc3NtZW50XCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6U3RhcnRGYWlsdXJlTW9kZUFzc2Vzc21lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0RmFpbHVyZU1vZGVBc3Nlc3NtZW50ID1cblx0XHRcInJlc2lsaWVuY2VodWI6U3RhcnRGYWlsdXJlTW9kZUFzc2Vzc21lbnRcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpTdGFydE1ldHJpY3NFeHBvcnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0TWV0cmljc0V4cG9ydCA9IFwicmVzaWxpZW5jZWh1YjpTdGFydE1ldHJpY3NFeHBvcnRcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpTdGFydFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvblRhc2sgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9uVGFzayA9XG5cdFx0XCJyZXNpbGllbmNlaHViOlN0YXJ0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9uVGFza1wiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlN0YXJ0VGVzdFJ1biAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRUZXN0UnVuID0gXCJyZXNpbGllbmNlaHViOlN0YXJ0VGVzdFJ1blwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlN0b3BUZXN0UnVuICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wVGVzdFJ1biA9IFwicmVzaWxpZW5jZWh1YjpTdG9wVGVzdFJ1blwiO1xuXHQvKiogW1RhZ2dpbmddIHJlc2lsaWVuY2VodWI6VGFnUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IFRhZ1Jlc291cmNlID0gXCJyZXNpbGllbmNlaHViOlRhZ1Jlc291cmNlXCI7XG5cdC8qKiBbVGFnZ2luZ10gcmVzaWxpZW5jZWh1YjpVbnRhZ1Jlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBVbnRhZ1Jlc291cmNlID0gXCJyZXNpbGllbmNlaHViOlVudGFnUmVzb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpVcGRhdGVBcHAgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFwcCA9IFwicmVzaWxpZW5jZWh1YjpVcGRhdGVBcHBcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpVcGRhdGVBcHBWZXJzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBcHBWZXJzaW9uID0gXCJyZXNpbGllbmNlaHViOlVwZGF0ZUFwcFZlcnNpb25cIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpVcGRhdGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50ID1cblx0XHRcInJlc2lsaWVuY2VodWI6VXBkYXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudFwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlVwZGF0ZUFwcFZlcnNpb25SZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQXBwVmVyc2lvblJlc291cmNlID1cblx0XHRcInJlc2lsaWVuY2VodWI6VXBkYXRlQXBwVmVyc2lvblJlc291cmNlXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6VXBkYXRlQXNzZXJ0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBc3NlcnRpb24gPSBcInJlc2lsaWVuY2VodWI6VXBkYXRlQXNzZXJ0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6VXBkYXRlRGVwZW5kZW5jeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlRGVwZW5kZW5jeSA9IFwicmVzaWxpZW5jZWh1YjpVcGRhdGVEZXBlbmRlbmN5XCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6VXBkYXRlRmFpbHVyZU1vZGVGaW5kaW5nICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVGYWlsdXJlTW9kZUZpbmRpbmcgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpVcGRhdGVGYWlsdXJlTW9kZUZpbmRpbmdcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpVcGRhdGVQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBvbGljeSA9IFwicmVzaWxpZW5jZWh1YjpVcGRhdGVQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpVcGRhdGVSZXNpbGllbmN5UG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZXNpbGllbmN5UG9saWN5ID1cblx0XHRcInJlc2lsaWVuY2VodWI6VXBkYXRlUmVzaWxpZW5jeVBvbGljeVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlVwZGF0ZVNlcnZpY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVNlcnZpY2UgPSBcInJlc2lsaWVuY2VodWI6VXBkYXRlU2VydmljZVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlVwZGF0ZVNlcnZpY2VGdW5jdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlU2VydmljZUZ1bmN0aW9uID0gXCJyZXNpbGllbmNlaHViOlVwZGF0ZVNlcnZpY2VGdW5jdGlvblwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlVwZGF0ZVN5c3RlbSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlU3lzdGVtID0gXCJyZXNpbGllbmNlaHViOlVwZGF0ZVN5c3RlbVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlVwZGF0ZVRlc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVRlc3QgPSBcInJlc2lsaWVuY2VodWI6VXBkYXRlVGVzdFwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlVwZGF0ZVVzZXJKb3VybmV5ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVVc2VySm91cm5leSA9IFwicmVzaWxpZW5jZWh1YjpVcGRhdGVVc2VySm91cm5leVwiO1xuXG5cdC8qKiBBbGwgcmVhZC1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsUmVhZEFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlc2NyaWJlQXBwLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlc2NyaWJlQXBwQXNzZXNzbWVudCxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZXNjcmliZUFwcFZlcnNpb24sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVzY3JpYmVBcHBWZXJzaW9uQXBwQ29tcG9uZW50LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlc2NyaWJlQXBwVmVyc2lvblJlc291cmNlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlc2NyaWJlQXBwVmVyc2lvblJlc291cmNlc1Jlc29sdXRpb25TdGF0dXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVzY3JpYmVBcHBWZXJzaW9uVGVtcGxhdGUsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVzY3JpYmVEcmFmdEFwcFZlcnNpb25SZXNvdXJjZXNJbXBvcnRTdGF0dXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVzY3JpYmVNZXRyaWNzRXhwb3J0LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlc2NyaWJlUmVzaWxpZW5jeVBvbGljeSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZXNjcmliZVJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvblRhc2ssXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuYWN0aW9uR2V0RmFpbHVyZU1vZGVGaW5kaW5nLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLmFjdGlvbkdldFBvbGljeSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5hY3Rpb25HZXRTZXJ2aWNlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLmFjdGlvbkdldFN5c3RlbSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5hY3Rpb25HZXRUZXN0LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLmFjdGlvbkdldFRlc3RSdW4sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuYWN0aW9uR2V0VGVzdFRlbXBsYXRlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLmFjdGlvbkdldFVzZXJKb3VybmV5LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RBc3NlcnRpb25zLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3REZXBlbmRlbmNpZXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdEZhaWx1cmVNb2RlQXNzZXNzbWVudHMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdEZhaWx1cmVNb2RlRmluZGluZ3MsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdElucHV0U291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0UG9saWNpZXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFJlcG9ydHMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFJlc29sdmVkVGVzdFJ1blRhcmdldFJlc291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0UmVzb3VyY2VzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RTZXJ2aWNlRXZlbnRzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RTZXJ2aWNlRnVuY3Rpb25zLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RTZXJ2aWNlVG9wb2xvZ3lFZGdlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0U2VydmljZXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFN5c3RlbUV2ZW50cyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0U3lzdGVtcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0VGFnc0ZvclJlc291cmNlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0UnVuRGVwZW5kZW5jaWVzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0UnVuRXZlbnRzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0UnVuU291cmNlRXZlbnRzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0UnVuU291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0VGVzdFJ1bnMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFRlc3RTb3VyY2VzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0VGVtcGxhdGVzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0cyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0VXNlckpvdXJuZXlzLFxuXHRdO1xuXHQvKiogQWxsIHdyaXRlLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxXcml0ZUFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkFjY2VwdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuQWRkRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5ncyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5CYXRjaFVwZGF0ZVJlY29tbWVuZGF0aW9uU3RhdHVzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkNyZWF0ZUFwcCxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5DcmVhdGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkNyZWF0ZUFwcFZlcnNpb25SZXNvdXJjZSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5DcmVhdGVBc3NlcnRpb24sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuQ3JlYXRlSW5wdXRTb3VyY2UsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuQ3JlYXRlUG9saWN5LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkNyZWF0ZVJlY29tbWVuZGF0aW9uVGVtcGxhdGUsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuQ3JlYXRlUmVwb3J0LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkNyZWF0ZVJlc2lsaWVuY3lQb2xpY3ksXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuQ3JlYXRlU2VydmljZSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5DcmVhdGVTZXJ2aWNlRnVuY3Rpb24sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuQ3JlYXRlU2VydmljZUZ1bmN0aW9uUmVzb3VyY2VzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkNyZWF0ZVN5c3RlbSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5DcmVhdGVUZXN0LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkNyZWF0ZVVzZXJKb3VybmV5LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlbGV0ZUFwcCxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVBcHBBc3Nlc3NtZW50LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlbGV0ZUFwcElucHV0U291cmNlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlbGV0ZUFwcFZlcnNpb25BcHBDb21wb25lbnQsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVsZXRlQXBwVmVyc2lvblJlc291cmNlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlbGV0ZUFzc2VydGlvbixcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVJbnB1dFNvdXJjZSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVQb2xpY3ksXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVsZXRlUmVjb21tZW5kYXRpb25UZW1wbGF0ZSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVSZXNpbGllbmN5UG9saWN5LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlbGV0ZVNlcnZpY2UsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVsZXRlU2VydmljZUZ1bmN0aW9uLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlbGV0ZVNlcnZpY2VGdW5jdGlvblJlc291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVTeXN0ZW0sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVsZXRlVGVzdCxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVUZXN0U291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVVc2VySm91cm5leSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5JbXBvcnRBcHAsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuSW1wb3J0UG9saWN5LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkltcG9ydFJlc291cmNlc1RvRHJhZnRBcHBWZXJzaW9uLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlB1Ymxpc2hBcHBWZXJzaW9uLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlB1dERyYWZ0QXBwVmVyc2lvblRlbXBsYXRlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlB1dFRlc3RTb3VyY2VzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlJlamVjdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuUmVtb3ZlRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5ncyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5SZXNvbHZlQXBwVmVyc2lvblJlc291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5TdGFydEFwcEFzc2Vzc21lbnQsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuU3RhcnRGYWlsdXJlTW9kZUFzc2Vzc21lbnQsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuU3RhcnRNZXRyaWNzRXhwb3J0LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlN0YXJ0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9uVGFzayxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5TdGFydFRlc3RSdW4sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuU3RvcFRlc3RSdW4sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuVXBkYXRlQXBwLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVwZGF0ZUFwcFZlcnNpb24sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuVXBkYXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudCxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5VcGRhdGVBcHBWZXJzaW9uUmVzb3VyY2UsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuVXBkYXRlQXNzZXJ0aW9uLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVwZGF0ZURlcGVuZGVuY3ksXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuVXBkYXRlRmFpbHVyZU1vZGVGaW5kaW5nLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVwZGF0ZVBvbGljeSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5VcGRhdGVSZXNpbGllbmN5UG9saWN5LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVwZGF0ZVNlcnZpY2UsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuVXBkYXRlU2VydmljZUZ1bmN0aW9uLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVwZGF0ZVN5c3RlbSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5VcGRhdGVUZXN0LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVwZGF0ZVVzZXJKb3VybmV5LFxuXHRdO1xuXHQvKiogQWxsIGxpc3QtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbExpc3RBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0QWxhcm1SZWNvbW1lbmRhdGlvbnMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdEFwcEFzc2Vzc21lbnRDb21wbGlhbmNlRHJpZnRzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RBcHBBc3Nlc3NtZW50UmVzb3VyY2VEcmlmdHMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdEFwcEFzc2Vzc21lbnRzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RBcHBDb21wb25lbnRDb21wbGlhbmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0QXBwQ29tcG9uZW50UmVjb21tZW5kYXRpb25zLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RBcHBJbnB1dFNvdXJjZXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdEFwcFZlcnNpb25BcHBDb21wb25lbnRzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5ncyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0QXBwVmVyc2lvblJlc291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0QXBwVmVyc2lvbnMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdEFwcHMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdE1ldHJpY3MsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFJlY29tbWVuZGF0aW9uVGVtcGxhdGVzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RSZXNpbGllbmN5UG9saWNpZXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFNvcFJlY29tbWVuZGF0aW9ucyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0U3VnZ2VzdGVkUmVzaWxpZW5jeVBvbGljaWVzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0UmVjb21tZW5kYXRpb25zLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RVbnN1cHBvcnRlZEFwcFZlcnNpb25SZXNvdXJjZXMsXG5cdF07XG5cdC8qKiBBbGwgcGVybWlzc2lvbi1tYW5hZ2VtZW50LWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxQZXJtaXNzaW9uTWFuYWdlbWVudEFjdGlvbnM6IHN0cmluZ1tdID0gW107XG5cdC8qKiBBbGwgdGFnZ2luZy1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsVGFnZ2luZ0FjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlRhZ1Jlc291cmNlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVudGFnUmVzb3VyY2UsXG5cdF07XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBhcHAtYXNzZXNzbWVudCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YkFwcEFzc2Vzc21lbnRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQXBwQXNzZXNzbWVudElkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBhcHBBc3Nlc3NtZW50SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBhcHAtYXNzZXNzbWVudCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YkFwcEFzc2Vzc21lbnRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEFwcEFzc2Vzc21lbnRJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGFwcEFzc2Vzc21lbnRJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgYXBwbGljYXRpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc2lsaWVuY2VodWJBcHBsaWNhdGlvbkFyblByb3BzIHtcblx0LyoqIFRoZSBBcHBJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgYXBwSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBhcHBsaWNhdGlvbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YkFwcGxpY2F0aW9uQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBBcHBJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGFwcElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBwb2xpY3kgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc2lsaWVuY2VodWJQb2xpY3lBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUG9saWN5SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHBvbGljeUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcG9saWN5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNpbGllbmNlaHViUG9saWN5QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBQb2xpY3lJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHBvbGljeUlkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSByZWNvbW1lbmRhdGlvbi10ZW1wbGF0ZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YlJlY29tbWVuZGF0aW9uVGVtcGxhdGVBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUmVjb21tZW5kYXRpb25UZW1wbGF0ZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSByZWNvbW1lbmRhdGlvblRlbXBsYXRlSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSByZWNvbW1lbmRhdGlvbi10ZW1wbGF0ZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YlJlY29tbWVuZGF0aW9uVGVtcGxhdGVBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFJlY29tbWVuZGF0aW9uVGVtcGxhdGVJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHJlY29tbWVuZGF0aW9uVGVtcGxhdGVJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgcmVzaWxpZW5jeS1wb2xpY3kgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc2lsaWVuY2VodWJSZXNpbGllbmN5UG9saWN5QXJuUHJvcHMge1xuXHQvKiogVGhlIFJlc2lsaWVuY3lQb2xpY3lJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcmVzaWxpZW5jeVBvbGljeUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcmVzaWxpZW5jeS1wb2xpY3kgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc2lsaWVuY2VodWJSZXNpbGllbmN5UG9saWN5QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBSZXNpbGllbmN5UG9saWN5SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSByZXNpbGllbmN5UG9saWN5SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHNlcnZpY2UgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc2lsaWVuY2VodWJTZXJ2aWNlQXJuUHJvcHMge1xuXHQvKiogVGhlIFNlcnZpY2VJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgc2VydmljZUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgc2VydmljZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YlNlcnZpY2VBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFNlcnZpY2VJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHNlcnZpY2VJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgc3lzdGVtIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNpbGllbmNlaHViU3lzdGVtQXJuUHJvcHMge1xuXHQvKiogVGhlIFN5c3RlbUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBzeXN0ZW1JZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHN5c3RlbSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YlN5c3RlbUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgU3lzdGVtSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBzeXN0ZW1JZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgdGVzdC10ZW1wbGF0ZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YlRlc3RUZW1wbGF0ZUFyblByb3BzIHtcblx0LyoqIFRoZSBUZXN0VGVtcGxhdGVJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgdGVzdFRlbXBsYXRlSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSB0ZXN0LXRlbXBsYXRlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNpbGllbmNlaHViVGVzdFRlbXBsYXRlQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBUZXN0VGVtcGxhdGVJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHRlc3RUZW1wbGF0ZUlkOiBzdHJpbmc7XG59XG5cbmNvbnN0IEFwcEFzc2Vzc21lbnRBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmVzaWxpZW5jZWh1YjooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmFwcC1hc3Nlc3NtZW50XFwvKD88YXBwQXNzZXNzbWVudElkPlteOi8/XSspJC87XG5jb25zdCBBcHBsaWNhdGlvbkFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZXNpbGllbmNlaHViOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6YXBwXFwvKD88YXBwSWQ+W146Lz9dKykkLztcbmNvbnN0IFBvbGljeUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZXNpbGllbmNlaHViOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6cG9saWN5XFwvKD88cG9saWN5SWQ+W146Lz9dKykkLztcbmNvbnN0IFJlY29tbWVuZGF0aW9uVGVtcGxhdGVBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmVzaWxpZW5jZWh1YjooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnJlY29tbWVuZGF0aW9uLXRlbXBsYXRlXFwvKD88cmVjb21tZW5kYXRpb25UZW1wbGF0ZUlkPlteOi8/XSspJC87XG5jb25zdCBSZXNpbGllbmN5UG9saWN5QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJlc2lsaWVuY2VodWI6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpyZXNpbGllbmN5LXBvbGljeVxcLyg/PHJlc2lsaWVuY3lQb2xpY3lJZD5bXjovP10rKSQvO1xuY29uc3QgU2VydmljZUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZXNpbGllbmNlaHViOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6c2VydmljZVxcLyg/PHNlcnZpY2VJZD5bXjovP10rKSQvO1xuY29uc3QgU3lzdGVtQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJlc2lsaWVuY2VodWI6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpzeXN0ZW1cXC8oPzxzeXN0ZW1JZD5bXjovP10rKSQvO1xuY29uc3QgVGVzdFRlbXBsYXRlQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJlc2lsaWVuY2VodWI6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTp0ZXN0LXRlbXBsYXRlXFwvKD88dGVzdFRlbXBsYXRlSWQ+W146Lz9dKykkLztcblxuLyoqXG4gKiBBUk4gYnVpbGRlcnMsIHZhbGlkYXRvcnMsIGFuZCBwYXJzZXJzIGZvciByZXNpbGllbmNlaHViIHJlc291cmNlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFJlc2lsaWVuY2VodWJSZXNvdXJjZXMge1xuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGFwcC1hc3Nlc3NtZW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGFwcEFzc2Vzc21lbnQocHJvcHM6IFJlc2lsaWVuY2VodWJBcHBBc3Nlc3NtZW50QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06YXBwLWFzc2Vzc21lbnQvJHtwcm9wcy5hcHBBc3Nlc3NtZW50SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGFwcC1hc3Nlc3NtZW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRBcHBBc3Nlc3NtZW50QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEFwcEFzc2Vzc21lbnRBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgYXBwLWFzc2Vzc21lbnQgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQXBwQXNzZXNzbWVudEFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogUmVzaWxpZW5jZWh1YkFwcEFzc2Vzc21lbnRBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEFwcEFzc2Vzc21lbnRBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgYXBwLWFzc2Vzc21lbnQgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0YXBwQXNzZXNzbWVudElkOiBtYXRjaC5ncm91cHMhLmFwcEFzc2Vzc21lbnRJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBhcHBsaWNhdGlvbiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBhcHBsaWNhdGlvbihwcm9wczogUmVzaWxpZW5jZWh1YkFwcGxpY2F0aW9uQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06YXBwLyR7cHJvcHMuYXBwSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGFwcGxpY2F0aW9uIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRBcHBsaWNhdGlvbkFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBBcHBsaWNhdGlvbkFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBhcHBsaWNhdGlvbiBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VBcHBsaWNhdGlvbkFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogUmVzaWxpZW5jZWh1YkFwcGxpY2F0aW9uQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBBcHBsaWNhdGlvbkFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBhcHBsaWNhdGlvbiBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRhcHBJZDogbWF0Y2guZ3JvdXBzIS5hcHBJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBwb2xpY3kgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgcG9saWN5KHByb3BzOiBSZXNpbGllbmNlaHViUG9saWN5QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cG9saWN5LyR7cHJvcHMucG9saWN5SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHBvbGljeSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUG9saWN5QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFBvbGljeUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBwb2xpY3kgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUG9saWN5QXJuKGFybjogc3RyaW5nKTogUmVzaWxpZW5jZWh1YlBvbGljeUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUG9saWN5QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHBvbGljeSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRwb2xpY3lJZDogbWF0Y2guZ3JvdXBzIS5wb2xpY3lJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSByZWNvbW1lbmRhdGlvbi10ZW1wbGF0ZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyByZWNvbW1lbmRhdGlvblRlbXBsYXRlKFxuXHRcdHByb3BzOiBSZXNpbGllbmNlaHViUmVjb21tZW5kYXRpb25UZW1wbGF0ZUFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cmVjb21tZW5kYXRpb24tdGVtcGxhdGUvJHtwcm9wcy5yZWNvbW1lbmRhdGlvblRlbXBsYXRlSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHJlY29tbWVuZGF0aW9uLXRlbXBsYXRlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRSZWNvbW1lbmRhdGlvblRlbXBsYXRlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFJlY29tbWVuZGF0aW9uVGVtcGxhdGVBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcmVjb21tZW5kYXRpb24tdGVtcGxhdGUgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUmVjb21tZW5kYXRpb25UZW1wbGF0ZUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogUmVzaWxpZW5jZWh1YlJlY29tbWVuZGF0aW9uVGVtcGxhdGVBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFJlY29tbWVuZGF0aW9uVGVtcGxhdGVBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcmVjb21tZW5kYXRpb24tdGVtcGxhdGUgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cmVjb21tZW5kYXRpb25UZW1wbGF0ZUlkOiBtYXRjaC5ncm91cHMhLnJlY29tbWVuZGF0aW9uVGVtcGxhdGVJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSByZXNpbGllbmN5LXBvbGljeSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyByZXNpbGllbmN5UG9saWN5KFxuXHRcdHByb3BzOiBSZXNpbGllbmNlaHViUmVzaWxpZW5jeVBvbGljeUFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cmVzaWxpZW5jeS1wb2xpY3kvJHtwcm9wcy5yZXNpbGllbmN5UG9saWN5SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHJlc2lsaWVuY3ktcG9saWN5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRSZXNpbGllbmN5UG9saWN5QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFJlc2lsaWVuY3lQb2xpY3lBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcmVzaWxpZW5jeS1wb2xpY3kgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUmVzaWxpZW5jeVBvbGljeUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogUmVzaWxpZW5jZWh1YlJlc2lsaWVuY3lQb2xpY3lBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFJlc2lsaWVuY3lQb2xpY3lBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcmVzaWxpZW5jeS1wb2xpY3kgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cmVzaWxpZW5jeVBvbGljeUlkOiBtYXRjaC5ncm91cHMhLnJlc2lsaWVuY3lQb2xpY3lJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBzZXJ2aWNlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHNlcnZpY2UocHJvcHM6IFJlc2lsaWVuY2VodWJTZXJ2aWNlQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06c2VydmljZS8ke3Byb3BzLnNlcnZpY2VJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgc2VydmljZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkU2VydmljZUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBTZXJ2aWNlQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHNlcnZpY2UgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlU2VydmljZUFybihhcm46IHN0cmluZyk6IFJlc2lsaWVuY2VodWJTZXJ2aWNlQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBTZXJ2aWNlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHNlcnZpY2UgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0c2VydmljZUlkOiBtYXRjaC5ncm91cHMhLnNlcnZpY2VJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBzeXN0ZW0gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgc3lzdGVtKHByb3BzOiBSZXNpbGllbmNlaHViU3lzdGVtQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06c3lzdGVtLyR7cHJvcHMuc3lzdGVtSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHN5c3RlbSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkU3lzdGVtQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFN5c3RlbUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBzeXN0ZW0gQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlU3lzdGVtQXJuKGFybjogc3RyaW5nKTogUmVzaWxpZW5jZWh1YlN5c3RlbUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gU3lzdGVtQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHN5c3RlbSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRzeXN0ZW1JZDogbWF0Y2guZ3JvdXBzIS5zeXN0ZW1JZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSB0ZXN0LXRlbXBsYXRlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHRlc3RUZW1wbGF0ZShwcm9wczogUmVzaWxpZW5jZWh1YlRlc3RUZW1wbGF0ZUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZXNpbGllbmNlaHViOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnRlc3QtdGVtcGxhdGUvJHtwcm9wcy50ZXN0VGVtcGxhdGVJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgdGVzdC10ZW1wbGF0ZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkVGVzdFRlbXBsYXRlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFRlc3RUZW1wbGF0ZUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSB0ZXN0LXRlbXBsYXRlIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVRlc3RUZW1wbGF0ZUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogUmVzaWxpZW5jZWh1YlRlc3RUZW1wbGF0ZUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gVGVzdFRlbXBsYXRlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHRlc3QtdGVtcGxhdGUgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0dGVzdFRlbXBsYXRlSWQ6IG1hdGNoLmdyb3VwcyEudGVzdFRlbXBsYXRlSWQsXG5cdFx0fTtcblx0fVxufVxuXG4vKipcbiAqIEFQSSBvcGVyYXRpb24gdG8gcmVxdWlyZWQgSUFNIGFjdGlvbnMgbWFwcGluZyBmb3IgcmVzaWxpZW5jZWh1Yi5cbiAqL1xuZXhwb3J0IGNsYXNzIFJlc2lsaWVuY2VodWJPcGVyYXRpb25zIHtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQWNjZXB0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFjY2VwdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpBY2NlcHRSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEFkZERyYWZ0QXBwVmVyc2lvblJlc291cmNlTWFwcGluZ3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBBZGREcmFmdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6QWRkRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5nc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaFVwZGF0ZVJlY29tbWVuZGF0aW9uU3RhdHVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hVcGRhdGVSZWNvbW1lbmRhdGlvblN0YXR1czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkJhdGNoVXBkYXRlUmVjb21tZW5kYXRpb25TdGF0dXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQXBwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXBwOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6Q3JlYXRlQXBwXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInJlc2lsaWVuY2VodWI6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFwcFZlcnNpb25BcHBDb21wb25lbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUFwcFZlcnNpb25SZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFwcFZlcnNpb25SZXNvdXJjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkNyZWF0ZUFwcFZlcnNpb25SZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVBc3NlcnRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBc3NlcnRpb246IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpDcmVhdGVBc3NlcnRpb25cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUlucHV0U291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSW5wdXRTb3VyY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVJbnB1dFNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVQb2xpY3lcIixcblx0XHRcInJlc2lsaWVuY2VodWI6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUmVjb21tZW5kYXRpb25UZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlY29tbWVuZGF0aW9uVGVtcGxhdGU6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVSZWNvbW1lbmRhdGlvblRlbXBsYXRlXCIsXG5cdFx0XCJyZXNpbGllbmNlaHViOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVJlcG9ydCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlcG9ydDogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkNyZWF0ZVJlcG9ydFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUmVzaWxpZW5jeVBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlc2lsaWVuY3lQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVSZXNpbGllbmN5UG9saWN5XCIsXG5cdFx0XCJyZXNpbGllbmNlaHViOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVNlcnZpY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVTZXJ2aWNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6Q3JlYXRlU2VydmljZVwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJyZXNpbGllbmNlaHViOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVNlcnZpY2VGdW5jdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVNlcnZpY2VGdW5jdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkNyZWF0ZVNlcnZpY2VGdW5jdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVTZXJ2aWNlRnVuY3Rpb25SZXNvdXJjZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVTZXJ2aWNlRnVuY3Rpb25SZXNvdXJjZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVTZXJ2aWNlRnVuY3Rpb25SZXNvdXJjZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlU3lzdGVtIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlU3lzdGVtOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6Q3JlYXRlU3lzdGVtXCIsXG5cdFx0XCJyZXNpbGllbmNlaHViOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVRlc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUZXN0OiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6Q3JlYXRlVGVzdFwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVVzZXJKb3VybmV5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVXNlckpvdXJuZXk6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVVc2VySm91cm5leVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBcHAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcHA6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpEZWxldGVBcHBcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFwcEFzc2Vzc21lbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcHBBc3Nlc3NtZW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVsZXRlQXBwQXNzZXNzbWVudFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBcHBJbnB1dFNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwcElucHV0U291cmNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVsZXRlQXBwSW5wdXRTb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwcFZlcnNpb25BcHBDb21wb25lbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFwcFZlcnNpb25SZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwcFZlcnNpb25SZXNvdXJjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlbGV0ZUFwcFZlcnNpb25SZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBc3NlcnRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBc3NlcnRpb246IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpEZWxldGVBc3NlcnRpb25cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUlucHV0U291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSW5wdXRTb3VyY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVJbnB1dFNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQb2xpY3k6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpEZWxldGVQb2xpY3lcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVJlY29tbWVuZGF0aW9uVGVtcGxhdGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWNvbW1lbmRhdGlvblRlbXBsYXRlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVsZXRlUmVjb21tZW5kYXRpb25UZW1wbGF0ZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVSZXNpbGllbmN5UG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVzaWxpZW5jeVBvbGljeTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlbGV0ZVJlc2lsaWVuY3lQb2xpY3lcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlU2VydmljZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVNlcnZpY2U6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpEZWxldGVTZXJ2aWNlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVTZXJ2aWNlRnVuY3Rpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVTZXJ2aWNlRnVuY3Rpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVTZXJ2aWNlRnVuY3Rpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlU2VydmljZUZ1bmN0aW9uUmVzb3VyY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlU2VydmljZUZ1bmN0aW9uUmVzb3VyY2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVsZXRlU2VydmljZUZ1bmN0aW9uUmVzb3VyY2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVN5c3RlbSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVN5c3RlbTogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkRlbGV0ZVN5c3RlbVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlVGVzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVRlc3Q6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpEZWxldGVUZXN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVUZXN0U291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVRlc3RTb3VyY2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVsZXRlVGVzdFNvdXJjZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlVXNlckpvdXJuZXkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVVc2VySm91cm5leTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlbGV0ZVVzZXJKb3VybmV5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlQXBwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBcHA6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVBcHBBc3Nlc3NtZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBcHBBc3Nlc3NtZW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBBc3Nlc3NtZW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlQXBwVmVyc2lvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQXBwVmVyc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUFwcFZlcnNpb25BcHBDb21wb25lbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFwcFZlcnNpb25BcHBDb21wb25lbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFZlcnNpb25BcHBDb21wb25lbnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVBcHBWZXJzaW9uUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFwcFZlcnNpb25SZXNvdXJjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwVmVyc2lvblJlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlQXBwVmVyc2lvblJlc291cmNlc1Jlc29sdXRpb25TdGF0dXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFwcFZlcnNpb25SZXNvdXJjZXNSZXNvbHV0aW9uU3RhdHVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBWZXJzaW9uUmVzb3VyY2VzUmVzb2x1dGlvblN0YXR1c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUFwcFZlcnNpb25UZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQXBwVmVyc2lvblRlbXBsYXRlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBWZXJzaW9uVGVtcGxhdGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEcmFmdEFwcFZlcnNpb25SZXNvdXJjZXNJbXBvcnRTdGF0dXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURyYWZ0QXBwVmVyc2lvblJlc291cmNlc0ltcG9ydFN0YXR1czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VzSW1wb3J0U3RhdHVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlTWV0cmljc0V4cG9ydCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlTWV0cmljc0V4cG9ydDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlTWV0cmljc0V4cG9ydFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZVJlc2lsaWVuY3lQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlc2lsaWVuY3lQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZVJlc2lsaWVuY3lQb2xpY3lcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25UYXNrIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25UYXNrOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25UYXNrXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEZhaWx1cmVNb2RlRmluZGluZyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0RmFpbHVyZU1vZGVGaW5kaW5nOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6R2V0RmFpbHVyZU1vZGVGaW5kaW5nXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0UG9saWN5OiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6R2V0UG9saWN5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRTZXJ2aWNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRTZXJ2aWNlOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6R2V0U2VydmljZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0U3lzdGVtIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRTeXN0ZW06IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpHZXRTeXN0ZW1cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFRlc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFRlc3Q6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpHZXRUZXN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRUZXN0UnVuIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRUZXN0UnVuOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6R2V0VGVzdFJ1blwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0VGVzdFRlbXBsYXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRUZXN0VGVtcGxhdGU6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpHZXRUZXN0VGVtcGxhdGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0VXNlckpvdXJuZXkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFVzZXJKb3VybmV5OiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6R2V0VXNlckpvdXJuZXlcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEltcG9ydEFwcCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEltcG9ydEFwcDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkltcG9ydEFwcFwiLFxuXHRcdFwicmVzaWxpZW5jZWh1YjpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBJbXBvcnRQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBJbXBvcnRQb2xpY3k6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpJbXBvcnRQb2xpY3lcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEltcG9ydFJlc291cmNlc1RvRHJhZnRBcHBWZXJzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW1wb3J0UmVzb3VyY2VzVG9EcmFmdEFwcFZlcnNpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpJbXBvcnRSZXNvdXJjZXNUb0RyYWZ0QXBwVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QWxhcm1SZWNvbW1lbmRhdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWxhcm1SZWNvbW1lbmRhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0QWxhcm1SZWNvbW1lbmRhdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFwcEFzc2Vzc21lbnRDb21wbGlhbmNlRHJpZnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcEFzc2Vzc21lbnRDb21wbGlhbmNlRHJpZnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcEFzc2Vzc21lbnRDb21wbGlhbmNlRHJpZnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBcHBBc3Nlc3NtZW50UmVzb3VyY2VEcmlmdHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwQXNzZXNzbWVudFJlc291cmNlRHJpZnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcEFzc2Vzc21lbnRSZXNvdXJjZURyaWZ0c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXBwQXNzZXNzbWVudHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwQXNzZXNzbWVudHM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0QXBwQXNzZXNzbWVudHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFwcENvbXBvbmVudENvbXBsaWFuY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcENvbXBvbmVudENvbXBsaWFuY2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcENvbXBvbmVudENvbXBsaWFuY2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBcHBDb21wb25lbnRSZWNvbW1lbmRhdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwQ29tcG9uZW50UmVjb21tZW5kYXRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcENvbXBvbmVudFJlY29tbWVuZGF0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXBwSW5wdXRTb3VyY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcElucHV0U291cmNlczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RBcHBJbnB1dFNvdXJjZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFwcFZlcnNpb25BcHBDb21wb25lbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcFZlcnNpb25BcHBDb21wb25lbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcFZlcnNpb25BcHBDb21wb25lbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5ncyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5nczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5nc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXBwVmVyc2lvblJlc291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBWZXJzaW9uUmVzb3VyY2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcFZlcnNpb25SZXNvdXJjZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFwcFZlcnNpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcFZlcnNpb25zOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6TGlzdEFwcFZlcnNpb25zXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXBwcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBzOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6TGlzdEFwcHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBc3NlcnRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFzc2VydGlvbnM6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpMaXN0QXNzZXJ0aW9uc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdERlcGVuZGVuY2llcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3REZXBlbmRlbmNpZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0RGVwZW5kZW5jaWVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RGYWlsdXJlTW9kZUFzc2Vzc21lbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEZhaWx1cmVNb2RlQXNzZXNzbWVudHM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0RmFpbHVyZU1vZGVBc3Nlc3NtZW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0RmFpbHVyZU1vZGVGaW5kaW5ncyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RGYWlsdXJlTW9kZUZpbmRpbmdzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEZhaWx1cmVNb2RlRmluZGluZ3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdElucHV0U291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJbnB1dFNvdXJjZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0SW5wdXRTb3VyY2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RNZXRyaWNzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE1ldHJpY3M6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpMaXN0TWV0cmljc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFBvbGljaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBvbGljaWVzOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6TGlzdFBvbGljaWVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVjb21tZW5kYXRpb25UZW1wbGF0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVjb21tZW5kYXRpb25UZW1wbGF0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0UmVjb21tZW5kYXRpb25UZW1wbGF0ZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFJlcG9ydHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVwb3J0czogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkxpc3RSZXBvcnRzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVzaWxpZW5jeVBvbGljaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlc2lsaWVuY3lQb2xpY2llczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RSZXNpbGllbmN5UG9saWNpZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFJlc29sdmVkVGVzdFJ1blRhcmdldFJlc291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXNvbHZlZFRlc3RSdW5UYXJnZXRSZXNvdXJjZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0UmVzb2x2ZWRUZXN0UnVuVGFyZ2V0UmVzb3VyY2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVzb3VyY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlc291cmNlczogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkxpc3RSZXNvdXJjZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RTZXJ2aWNlRXZlbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlcnZpY2VFdmVudHM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0U2VydmljZUV2ZW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0U2VydmljZUZ1bmN0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTZXJ2aWNlRnVuY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFNlcnZpY2VGdW5jdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFNlcnZpY2VUb3BvbG9neUVkZ2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlcnZpY2VUb3BvbG9neUVkZ2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFNlcnZpY2VUb3BvbG9neUVkZ2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RTZXJ2aWNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTZXJ2aWNlczogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkxpc3RTZXJ2aWNlc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFNvcFJlY29tbWVuZGF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTb3BSZWNvbW1lbmRhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0U29wUmVjb21tZW5kYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RTdWdnZXN0ZWRSZXNpbGllbmN5UG9saWNpZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U3VnZ2VzdGVkUmVzaWxpZW5jeVBvbGljaWVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFN1Z2dlc3RlZFJlc2lsaWVuY3lQb2xpY2llc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0U3lzdGVtRXZlbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFN5c3RlbUV2ZW50czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RTeXN0ZW1FdmVudHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFN5c3RlbXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U3lzdGVtczogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkxpc3RTeXN0ZW1zXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGFnc0ZvclJlc291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRhZ3NGb3JSZXNvdXJjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RUYWdzRm9yUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRlc3RSZWNvbW1lbmRhdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVzdFJlY29tbWVuZGF0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RUZXN0UmVjb21tZW5kYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUZXN0UnVuRGVwZW5kZW5jaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RSdW5EZXBlbmRlbmNpZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0VGVzdFJ1bkRlcGVuZGVuY2llc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGVzdFJ1bkV2ZW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZXN0UnVuRXZlbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RSdW5FdmVudHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRlc3RSdW5Tb3VyY2VFdmVudHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVzdFJ1blNvdXJjZUV2ZW50czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuU291cmNlRXZlbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUZXN0UnVuU291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZXN0UnVuU291cmNlczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuU291cmNlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGVzdFJ1bnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVzdFJ1bnM6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpMaXN0VGVzdFJ1bnNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUZXN0U291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZXN0U291cmNlczogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkxpc3RUZXN0U291cmNlc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRlc3RUZW1wbGF0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVzdFRlbXBsYXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RUZXN0VGVtcGxhdGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUZXN0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZXN0czogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkxpc3RUZXN0c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFVuc3VwcG9ydGVkQXBwVmVyc2lvblJlc291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RVbnN1cHBvcnRlZEFwcFZlcnNpb25SZXNvdXJjZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0VW5zdXBwb3J0ZWRBcHBWZXJzaW9uUmVzb3VyY2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RVc2VySm91cm5leXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VXNlckpvdXJuZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFVzZXJKb3VybmV5c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdWJsaXNoQXBwVmVyc2lvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1Ymxpc2hBcHBWZXJzaW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6UHVibGlzaEFwcFZlcnNpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHV0RHJhZnRBcHBWZXJzaW9uVGVtcGxhdGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXREcmFmdEFwcFZlcnNpb25UZW1wbGF0ZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOlB1dERyYWZ0QXBwVmVyc2lvblRlbXBsYXRlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1dFRlc3RTb3VyY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0VGVzdFNvdXJjZXM6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpQdXRUZXN0U291cmNlc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVqZWN0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlamVjdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpSZWplY3RSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFJlbW92ZURyYWZ0QXBwVmVyc2lvblJlc291cmNlTWFwcGluZ3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBSZW1vdmVEcmFmdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6UmVtb3ZlRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5nc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZXNvbHZlQXBwVmVyc2lvblJlc291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc29sdmVBcHBWZXJzaW9uUmVzb3VyY2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6UmVzb2x2ZUFwcFZlcnNpb25SZXNvdXJjZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRBcHBBc3Nlc3NtZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRBcHBBc3Nlc3NtZW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6U3RhcnRBcHBBc3Nlc3NtZW50XCIsXG5cdFx0XCJyZXNpbGllbmNlaHViOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0YXJ0RmFpbHVyZU1vZGVBc3Nlc3NtZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRGYWlsdXJlTW9kZUFzc2Vzc21lbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpTdGFydEZhaWx1cmVNb2RlQXNzZXNzbWVudFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydE1ldHJpY3NFeHBvcnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydE1ldHJpY3NFeHBvcnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpTdGFydE1ldHJpY3NFeHBvcnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25UYXNrIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25UYXNrOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6U3RhcnRSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25UYXNrXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0YXJ0VGVzdFJ1biBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0VGVzdFJ1bjogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOlN0YXJ0VGVzdFJ1blwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RvcFRlc3RSdW4gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wVGVzdFJ1bjogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOlN0b3BUZXN0UnVuXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBUYWdSZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFRhZ1Jlc291cmNlOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6VGFnUmVzb3VyY2VcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVudGFnUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVbnRhZ1Jlc291cmNlOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6VW50YWdSZXNvdXJjZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQXBwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQXBwOiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwicmVzaWxpZW5jZWh1YjpVcGRhdGVBcHBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQXBwVmVyc2lvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFwcFZlcnNpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpVcGRhdGVBcHBWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUFwcFZlcnNpb25BcHBDb21wb25lbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6VXBkYXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVBcHBWZXJzaW9uUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBcHBWZXJzaW9uUmVzb3VyY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpVcGRhdGVBcHBWZXJzaW9uUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQXNzZXJ0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQXNzZXJ0aW9uOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6VXBkYXRlQXNzZXJ0aW9uXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVEZXBlbmRlbmN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlRGVwZW5kZW5jeTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOlVwZGF0ZURlcGVuZGVuY3lcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlRmFpbHVyZU1vZGVGaW5kaW5nIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlRmFpbHVyZU1vZGVGaW5kaW5nOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6VXBkYXRlRmFpbHVyZU1vZGVGaW5kaW5nXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBvbGljeTogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOlVwZGF0ZVBvbGljeVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlUmVzaWxpZW5jeVBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVJlc2lsaWVuY3lQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpVcGRhdGVSZXNpbGllbmN5UG9saWN5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVNlcnZpY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVTZXJ2aWNlOiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwicmVzaWxpZW5jZWh1YjpVcGRhdGVTZXJ2aWNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVNlcnZpY2VGdW5jdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVNlcnZpY2VGdW5jdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOlVwZGF0ZVNlcnZpY2VGdW5jdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVTeXN0ZW0gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVTeXN0ZW06IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpVcGRhdGVTeXN0ZW1cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVRlc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVUZXN0OiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwicmVzaWxpZW5jZWh1YjpVcGRhdGVUZXN0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVVzZXJKb3VybmV5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlVXNlckpvdXJuZXk6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpVcGRhdGVVc2VySm91cm5leVwiLFxuXHRdO1xufVxuXG4vKipcbiAqIENvbmRpdGlvbiBrZXkgY29uc3RhbnRzIGFuZCBidWlsZGVycyBmb3IgcmVzaWxpZW5jZWh1Yi5cbiAqL1xuZXhwb3J0IGNsYXNzIFJlc2lsaWVuY2VodWJDb25kaXRpb25zIHtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUFwcCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBcHBDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZVJlY29tbWVuZGF0aW9uVGVtcGxhdGUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVjb21tZW5kYXRpb25UZW1wbGF0ZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlUmVzaWxpZW5jeVBvbGljeSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZXNpbGllbmN5UG9saWN5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBTdGFydEFwcEFzc2Vzc21lbnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRBcHBBc3Nlc3NtZW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBUYWdSZXNvdXJjZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBUYWdSZXNvdXJjZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVW50YWdSZXNvdXJjZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVbnRhZ1Jlc291cmNlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXCJhd3M6VGFnS2V5c1wiXTtcblxuXHQvKiogQ29uZGl0aW9uIGtleTogYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBV1NfUkVRVUVTVF9UQUcgPSBcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1JFU09VUkNFX1RBRyA9IFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYXdzOlRhZ0tleXMgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBV1NfVEFHX0tFWVMgPSBcImF3czpUYWdLZXlzXCI7XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgcmVxdWVzdFRhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgcmVzb3VyY2VUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBhd3M6VGFnS2V5c2AuXG5cdCAqL1xuXHRzdGF0aWMgdGFnS2V5cyh2YWx1ZXM6IHN0cmluZ1tdKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+PiB7XG5cdFx0cmV0dXJuIHsgXCJGb3JBbGxWYWx1ZXM6U3RyaW5nRXF1YWxzXCI6IHsgXCJhd3M6VGFnS2V5c1wiOiB2YWx1ZXMgfSB9O1xuXHR9XG59XG4iXX0=
|
|
1201
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaWxpZW5jZWh1Yi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9nZW5lcmF0ZWQvc2VydmljZXMvcmVzaWxpZW5jZWh1Yi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdGQUFnRjtBQUNoRiw2Q0FBNkM7QUFDN0MsMERBQTBEO0FBQzFELG9EQUFvRDtBQUNwRCxvREFBb0Q7QUFDcEQsZ0ZBQWdGO0FBRWhGOztHQUVHO0FBQ0gsTUFBYSxvQkFBb0I7O0FBQWpDLG9EQThjQzs7O0FBN2NBLDhCQUE4QjtBQUNkLG1DQUFjLEdBQUcsZUFBZSxDQUFDO0FBRWpELGtFQUFrRTtBQUNsRCwwREFBcUMsR0FDcEQscURBQXFELENBQUM7QUFDdkQsK0RBQStEO0FBQy9DLHVEQUFrQyxHQUNqRCxrREFBa0QsQ0FBQztBQUNwRCw0REFBNEQ7QUFDNUMsb0RBQStCLEdBQzlDLCtDQUErQyxDQUFDO0FBQ2pELHNDQUFzQztBQUN0Qiw4QkFBUyxHQUFHLHlCQUF5QixDQUFDO0FBQ3RELHlEQUF5RDtBQUN6QyxpREFBNEIsR0FDM0MsNENBQTRDLENBQUM7QUFDOUMscURBQXFEO0FBQ3JDLDZDQUF3QixHQUN2Qyx3Q0FBd0MsQ0FBQztBQUMxQyw0Q0FBNEM7QUFDNUIsb0NBQWUsR0FBRywrQkFBK0IsQ0FBQztBQUNsRSw4Q0FBOEM7QUFDOUIsc0NBQWlCLEdBQUcsaUNBQWlDLENBQUM7QUFDdEUseUNBQXlDO0FBQ3pCLGlDQUFZLEdBQUcsNEJBQTRCLENBQUM7QUFDNUQseURBQXlEO0FBQ3pDLGlEQUE0QixHQUMzQyw0Q0FBNEMsQ0FBQztBQUM5Qyx5Q0FBeUM7QUFDekIsaUNBQVksR0FBRyw0QkFBNEIsQ0FBQztBQUM1RCxtREFBbUQ7QUFDbkMsMkNBQXNCLEdBQ3JDLHNDQUFzQyxDQUFDO0FBQ3hDLDBDQUEwQztBQUMxQixrQ0FBYSxHQUFHLDZCQUE2QixDQUFDO0FBQzlELGtEQUFrRDtBQUNsQywwQ0FBcUIsR0FBRyxx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MEIsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO0lBQ2hFLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBYTtRQUMvQixPQUFPLEVBQUUsWUFBWSxFQUFFLEVBQUUsMkJBQTJCLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztJQUNqRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQWdCO1FBQzlCLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDO0lBQ25FLENBQUM7O0FBdkRGLDBEQXdEQzs7O0FBdkRBLHlEQUF5RDtBQUN6Qyw4Q0FBc0IsR0FBYTtJQUNsRCwwQkFBMEI7SUFDMUIsYUFBYTtDQUNiLENBQUM7QUFDRiw0RUFBNEU7QUFDNUQsaUVBQXlDLEdBQWE7SUFDckUsMEJBQTBCO0lBQzFCLGFBQWE7Q0FDYixDQUFDO0FBQ0Ysc0VBQXNFO0FBQ3RELDJEQUFtQyxHQUFhO0lBQy9ELDBCQUEwQjtJQUMxQixhQUFhO0NBQ2IsQ0FBQztBQUNGLGtFQUFrRTtBQUNsRCx1REFBK0IsR0FBYTtJQUMzRCwwQkFBMEI7SUFDMUIsYUFBYTtDQUNiLENBQUM7QUFDRiwyREFBMkQ7QUFDM0MsZ0RBQXdCLEdBQWE7SUFDcEQsMEJBQTBCO0lBQzFCLGFBQWE7Q0FDYixDQUFDO0FBQ0YsNkRBQTZEO0FBQzdDLGtEQUEwQixHQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7QUFFdkUsdURBQXVEO0FBQ3ZDLHVDQUFlLEdBQUcsMEJBQTBCLENBQUM7QUFDN0Qsd0RBQXdEO0FBQ3hDLHdDQUFnQixHQUFHLDJCQUEyQixDQUFDO0FBQy9ELGlEQUFpRDtBQUNqQyxvQ0FBWSxHQUFHLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBBVVRPLUdFTkVSQVRFRCBGSUxFIOKAlCBETyBOT1QgRURJVCBNQU5VQUxMWVxuLy8gR2VuZXJhdGVkIGZyb20gQVdTIFNlcnZpY2UgQXV0aG9yaXphdGlvbiBSZWZlcmVuY2UgZGF0YVxuLy8gU291cmNlOiBkYXRhL3NlcnZpY2UtcmVmZXJlbmNlL3Jlc2lsaWVuY2VodWIuanNvblxuLy8gUnVuIGBucHggcHJvamVuIGdlbmVyYXRlLWNvbnN0YW50c2AgdG8gcmVnZW5lcmF0ZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBJQU0gYWN0aW9uIGNvbnN0YW50cyBmb3IgdGhlIHJlc2lsaWVuY2VodWIgc2VydmljZS5cbiAqL1xuZXhwb3J0IGNsYXNzIFJlc2lsaWVuY2VodWJBY3Rpb25zIHtcblx0LyoqIFRoZSBJQU0gc2VydmljZSBwcmVmaXguICovXG5cdHN0YXRpYyByZWFkb25seSBTRVJWSUNFX1BSRUZJWCA9IFwicmVzaWxpZW5jZWh1YlwiO1xuXG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6QWNjZXB0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWNjZXB0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9ucyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkFjY2VwdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpBZGREcmFmdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzICovXG5cdHN0YXRpYyByZWFkb25seSBBZGREcmFmdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzID1cblx0XHRcInJlc2lsaWVuY2VodWI6QWRkRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5nc1wiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkJhdGNoVXBkYXRlUmVjb21tZW5kYXRpb25TdGF0dXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoVXBkYXRlUmVjb21tZW5kYXRpb25TdGF0dXMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpCYXRjaFVwZGF0ZVJlY29tbWVuZGF0aW9uU3RhdHVzXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6Q3JlYXRlQXBwICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBcHAgPSBcInJlc2lsaWVuY2VodWI6Q3JlYXRlQXBwXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6Q3JlYXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudCA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkNyZWF0ZUFwcFZlcnNpb25BcHBDb21wb25lbnRcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpDcmVhdGVBcHBWZXJzaW9uUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFwcFZlcnNpb25SZXNvdXJjZSA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkNyZWF0ZUFwcFZlcnNpb25SZXNvdXJjZVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZUFzc2VydGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXNzZXJ0aW9uID0gXCJyZXNpbGllbmNlaHViOkNyZWF0ZUFzc2VydGlvblwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZUlucHV0U291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVJbnB1dFNvdXJjZSA9IFwicmVzaWxpZW5jZWh1YjpDcmVhdGVJbnB1dFNvdXJjZVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUG9saWN5ID0gXCJyZXNpbGllbmNlaHViOkNyZWF0ZVBvbGljeVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZVJlY29tbWVuZGF0aW9uVGVtcGxhdGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlY29tbWVuZGF0aW9uVGVtcGxhdGUgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVSZWNvbW1lbmRhdGlvblRlbXBsYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6Q3JlYXRlUmVwb3J0ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZXBvcnQgPSBcInJlc2lsaWVuY2VodWI6Q3JlYXRlUmVwb3J0XCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6Q3JlYXRlUmVzaWxpZW5jeVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVzaWxpZW5jeVBvbGljeSA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkNyZWF0ZVJlc2lsaWVuY3lQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpDcmVhdGVTZXJ2aWNlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVTZXJ2aWNlID0gXCJyZXNpbGllbmNlaHViOkNyZWF0ZVNlcnZpY2VcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpDcmVhdGVTZXJ2aWNlRnVuY3Rpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVNlcnZpY2VGdW5jdGlvbiA9IFwicmVzaWxpZW5jZWh1YjpDcmVhdGVTZXJ2aWNlRnVuY3Rpb25cIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpDcmVhdGVTZXJ2aWNlRnVuY3Rpb25SZXNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVNlcnZpY2VGdW5jdGlvblJlc291cmNlcyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkNyZWF0ZVNlcnZpY2VGdW5jdGlvblJlc291cmNlc1wiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZVN5c3RlbSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlU3lzdGVtID0gXCJyZXNpbGllbmNlaHViOkNyZWF0ZVN5c3RlbVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZVRlc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRlc3QgPSBcInJlc2lsaWVuY2VodWI6Q3JlYXRlVGVzdFwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkNyZWF0ZVVzZXJKb3VybmV5ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVVc2VySm91cm5leSA9IFwicmVzaWxpZW5jZWh1YjpDcmVhdGVVc2VySm91cm5leVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkRlbGV0ZUFwcCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQXBwID0gXCJyZXNpbGllbmNlaHViOkRlbGV0ZUFwcFwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkRlbGV0ZUFwcEFzc2Vzc21lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwcEFzc2Vzc21lbnQgPSBcInJlc2lsaWVuY2VodWI6RGVsZXRlQXBwQXNzZXNzbWVudFwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkRlbGV0ZUFwcElucHV0U291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcHBJbnB1dFNvdXJjZSA9IFwicmVzaWxpZW5jZWh1YjpEZWxldGVBcHBJbnB1dFNvdXJjZVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkRlbGV0ZUFwcFZlcnNpb25BcHBDb21wb25lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwcFZlcnNpb25BcHBDb21wb25lbnQgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50XCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6RGVsZXRlQXBwVmVyc2lvblJlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcHBWZXJzaW9uUmVzb3VyY2UgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVBcHBWZXJzaW9uUmVzb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVBc3NlcnRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFzc2VydGlvbiA9IFwicmVzaWxpZW5jZWh1YjpEZWxldGVBc3NlcnRpb25cIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVJbnB1dFNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSW5wdXRTb3VyY2UgPSBcInJlc2lsaWVuY2VodWI6RGVsZXRlSW5wdXRTb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVBvbGljeSA9IFwicmVzaWxpZW5jZWh1YjpEZWxldGVQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVSZWNvbW1lbmRhdGlvblRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWNvbW1lbmRhdGlvblRlbXBsYXRlID1cblx0XHRcInJlc2lsaWVuY2VodWI6RGVsZXRlUmVjb21tZW5kYXRpb25UZW1wbGF0ZVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOkRlbGV0ZVJlc2lsaWVuY3lQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlc2lsaWVuY3lQb2xpY3kgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVSZXNpbGllbmN5UG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6RGVsZXRlU2VydmljZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlU2VydmljZSA9IFwicmVzaWxpZW5jZWh1YjpEZWxldGVTZXJ2aWNlXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6RGVsZXRlU2VydmljZUZ1bmN0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVTZXJ2aWNlRnVuY3Rpb24gPSBcInJlc2lsaWVuY2VodWI6RGVsZXRlU2VydmljZUZ1bmN0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6RGVsZXRlU2VydmljZUZ1bmN0aW9uUmVzb3VyY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVTZXJ2aWNlRnVuY3Rpb25SZXNvdXJjZXMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVTZXJ2aWNlRnVuY3Rpb25SZXNvdXJjZXNcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVTeXN0ZW0gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVN5c3RlbSA9IFwicmVzaWxpZW5jZWh1YjpEZWxldGVTeXN0ZW1cIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVUZXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVUZXN0ID0gXCJyZXNpbGllbmNlaHViOkRlbGV0ZVRlc3RcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVUZXN0U291cmNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGVzdFNvdXJjZXMgPSBcInJlc2lsaWVuY2VodWI6RGVsZXRlVGVzdFNvdXJjZXNcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpEZWxldGVVc2VySm91cm5leSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVXNlckpvdXJuZXkgPSBcInJlc2lsaWVuY2VodWI6RGVsZXRlVXNlckpvdXJuZXlcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFwcCA9IFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFwiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBBc3Nlc3NtZW50ICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFwcEFzc2Vzc21lbnQgPSBcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBBc3Nlc3NtZW50XCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFZlcnNpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQXBwVmVyc2lvbiA9IFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFZlcnNpb25cIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwVmVyc2lvbkFwcENvbXBvbmVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBcHBWZXJzaW9uQXBwQ29tcG9uZW50ID1cblx0XHRcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBWZXJzaW9uQXBwQ29tcG9uZW50XCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFZlcnNpb25SZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBcHBWZXJzaW9uUmVzb3VyY2UgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFZlcnNpb25SZXNvdXJjZVwiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBWZXJzaW9uUmVzb3VyY2VzUmVzb2x1dGlvblN0YXR1cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBcHBWZXJzaW9uUmVzb3VyY2VzUmVzb2x1dGlvblN0YXR1cyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwVmVyc2lvblJlc291cmNlc1Jlc29sdXRpb25TdGF0dXNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwVmVyc2lvblRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFwcFZlcnNpb25UZW1wbGF0ZSA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwVmVyc2lvblRlbXBsYXRlXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpEZXNjcmliZURyYWZ0QXBwVmVyc2lvblJlc291cmNlc0ltcG9ydFN0YXR1cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEcmFmdEFwcFZlcnNpb25SZXNvdXJjZXNJbXBvcnRTdGF0dXMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZURyYWZ0QXBwVmVyc2lvblJlc291cmNlc0ltcG9ydFN0YXR1c1wiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6RGVzY3JpYmVNZXRyaWNzRXhwb3J0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZU1ldHJpY3NFeHBvcnQgPSBcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVNZXRyaWNzRXhwb3J0XCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpEZXNjcmliZVJlc2lsaWVuY3lQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlUmVzaWxpZW5jeVBvbGljeSA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlUmVzaWxpZW5jeVBvbGljeVwiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6RGVzY3JpYmVSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25UYXNrICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvblRhc2sgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZVJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvblRhc2tcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkdldEZhaWx1cmVNb2RlRmluZGluZyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RmFpbHVyZU1vZGVGaW5kaW5nID1cblx0XHRcInJlc2lsaWVuY2VodWI6R2V0RmFpbHVyZU1vZGVGaW5kaW5nXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpHZXRQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFBvbGljeSA9IFwicmVzaWxpZW5jZWh1YjpHZXRQb2xpY3lcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkdldFNlcnZpY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFNlcnZpY2UgPSBcInJlc2lsaWVuY2VodWI6R2V0U2VydmljZVwiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6R2V0U3lzdGVtICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRTeXN0ZW0gPSBcInJlc2lsaWVuY2VodWI6R2V0U3lzdGVtXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpHZXRUZXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRUZXN0ID0gXCJyZXNpbGllbmNlaHViOkdldFRlc3RcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkdldFRlc3RSdW4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFRlc3RSdW4gPSBcInJlc2lsaWVuY2VodWI6R2V0VGVzdFJ1blwiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6R2V0VGVzdFRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRUZXN0VGVtcGxhdGUgPSBcInJlc2lsaWVuY2VodWI6R2V0VGVzdFRlbXBsYXRlXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpHZXRVc2VySm91cm5leSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0VXNlckpvdXJuZXkgPSBcInJlc2lsaWVuY2VodWI6R2V0VXNlckpvdXJuZXlcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpJbXBvcnRBcHAgKi9cblx0c3RhdGljIHJlYWRvbmx5IEltcG9ydEFwcCA9IFwicmVzaWxpZW5jZWh1YjpJbXBvcnRBcHBcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpJbXBvcnRQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IEltcG9ydFBvbGljeSA9IFwicmVzaWxpZW5jZWh1YjpJbXBvcnRQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpJbXBvcnRSZXNvdXJjZXNUb0RyYWZ0QXBwVmVyc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW1wb3J0UmVzb3VyY2VzVG9EcmFmdEFwcFZlcnNpb24gPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpJbXBvcnRSZXNvdXJjZXNUb0RyYWZ0QXBwVmVyc2lvblwiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdEFsYXJtUmVjb21tZW5kYXRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWxhcm1SZWNvbW1lbmRhdGlvbnMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0QWxhcm1SZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtMaXN0XSByZXNpbGllbmNlaHViOkxpc3RBcHBBc3Nlc3NtZW50Q29tcGxpYW5jZURyaWZ0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcEFzc2Vzc21lbnRDb21wbGlhbmNlRHJpZnRzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcEFzc2Vzc21lbnRDb21wbGlhbmNlRHJpZnRzXCI7XG5cdC8qKiBbTGlzdF0gcmVzaWxpZW5jZWh1YjpMaXN0QXBwQXNzZXNzbWVudFJlc291cmNlRHJpZnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwQXNzZXNzbWVudFJlc291cmNlRHJpZnRzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcEFzc2Vzc21lbnRSZXNvdXJjZURyaWZ0c1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdEFwcEFzc2Vzc21lbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwQXNzZXNzbWVudHMgPSBcInJlc2lsaWVuY2VodWI6TGlzdEFwcEFzc2Vzc21lbnRzXCI7XG5cdC8qKiBbTGlzdF0gcmVzaWxpZW5jZWh1YjpMaXN0QXBwQ29tcG9uZW50Q29tcGxpYW5jZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBDb21wb25lbnRDb21wbGlhbmNlcyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RBcHBDb21wb25lbnRDb21wbGlhbmNlc1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdEFwcENvbXBvbmVudFJlY29tbWVuZGF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcENvbXBvbmVudFJlY29tbWVuZGF0aW9ucyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RBcHBDb21wb25lbnRSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtMaXN0XSByZXNpbGllbmNlaHViOkxpc3RBcHBJbnB1dFNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBJbnB1dFNvdXJjZXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdEFwcElucHV0U291cmNlc1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdEFwcFZlcnNpb25BcHBDb21wb25lbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwVmVyc2lvbkFwcENvbXBvbmVudHMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0QXBwVmVyc2lvbkFwcENvbXBvbmVudHNcIjtcblx0LyoqIFtMaXN0XSByZXNpbGllbmNlaHViOkxpc3RBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5ncyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzXCI7XG5cdC8qKiBbTGlzdF0gcmVzaWxpZW5jZWh1YjpMaXN0QXBwVmVyc2lvblJlc291cmNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcFZlcnNpb25SZXNvdXJjZXMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0QXBwVmVyc2lvblJlc291cmNlc1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdEFwcFZlcnNpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwVmVyc2lvbnMgPSBcInJlc2lsaWVuY2VodWI6TGlzdEFwcFZlcnNpb25zXCI7XG5cdC8qKiBbTGlzdF0gcmVzaWxpZW5jZWh1YjpMaXN0QXBwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcHMgPSBcInJlc2lsaWVuY2VodWI6TGlzdEFwcHNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RBc3NlcnRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXNzZXJ0aW9ucyA9IFwicmVzaWxpZW5jZWh1YjpMaXN0QXNzZXJ0aW9uc1wiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6TGlzdERlcGVuZGVuY2llcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERlcGVuZGVuY2llcyA9IFwicmVzaWxpZW5jZWh1YjpMaXN0RGVwZW5kZW5jaWVzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0RmFpbHVyZU1vZGVBc3Nlc3NtZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEZhaWx1cmVNb2RlQXNzZXNzbWVudHMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0RmFpbHVyZU1vZGVBc3Nlc3NtZW50c1wiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6TGlzdEZhaWx1cmVNb2RlRmluZGluZ3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RGYWlsdXJlTW9kZUZpbmRpbmdzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEZhaWx1cmVNb2RlRmluZGluZ3NcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RJbnB1dFNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RJbnB1dFNvdXJjZXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdElucHV0U291cmNlc1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdE1ldHJpY3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNZXRyaWNzID0gXCJyZXNpbGllbmNlaHViOkxpc3RNZXRyaWNzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0UG9saWNpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY2llcyA9IFwicmVzaWxpZW5jZWh1YjpMaXN0UG9saWNpZXNcIjtcblx0LyoqIFtMaXN0XSByZXNpbGllbmNlaHViOkxpc3RSZWNvbW1lbmRhdGlvblRlbXBsYXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlY29tbWVuZGF0aW9uVGVtcGxhdGVzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFJlY29tbWVuZGF0aW9uVGVtcGxhdGVzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0UmVwb3J0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlcG9ydHMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFJlcG9ydHNcIjtcblx0LyoqIFtMaXN0XSByZXNpbGllbmNlaHViOkxpc3RSZXNpbGllbmN5UG9saWNpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXNpbGllbmN5UG9saWNpZXMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0UmVzaWxpZW5jeVBvbGljaWVzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0UmVzb2x2ZWRUZXN0UnVuVGFyZ2V0UmVzb3VyY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVzb2x2ZWRUZXN0UnVuVGFyZ2V0UmVzb3VyY2VzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFJlc29sdmVkVGVzdFJ1blRhcmdldFJlc291cmNlc1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25zID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RSZXNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXNvdXJjZXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFJlc291cmNlc1wiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6TGlzdFNlcnZpY2VFdmVudHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTZXJ2aWNlRXZlbnRzID0gXCJyZXNpbGllbmNlaHViOkxpc3RTZXJ2aWNlRXZlbnRzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0U2VydmljZUZ1bmN0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlcnZpY2VGdW5jdGlvbnMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFNlcnZpY2VGdW5jdGlvbnNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RTZXJ2aWNlVG9wb2xvZ3lFZGdlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlcnZpY2VUb3BvbG9neUVkZ2VzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFNlcnZpY2VUb3BvbG9neUVkZ2VzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0U2VydmljZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTZXJ2aWNlcyA9IFwicmVzaWxpZW5jZWh1YjpMaXN0U2VydmljZXNcIjtcblx0LyoqIFtMaXN0XSByZXNpbGllbmNlaHViOkxpc3RTb3BSZWNvbW1lbmRhdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTb3BSZWNvbW1lbmRhdGlvbnMgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0U29wUmVjb21tZW5kYXRpb25zXCI7XG5cdC8qKiBbTGlzdF0gcmVzaWxpZW5jZWh1YjpMaXN0U3VnZ2VzdGVkUmVzaWxpZW5jeVBvbGljaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U3VnZ2VzdGVkUmVzaWxpZW5jeVBvbGljaWVzID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFN1Z2dlc3RlZFJlc2lsaWVuY3lQb2xpY2llc1wiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6TGlzdFN5c3RlbUV2ZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFN5c3RlbUV2ZW50cyA9IFwicmVzaWxpZW5jZWh1YjpMaXN0U3lzdGVtRXZlbnRzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0U3lzdGVtcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFN5c3RlbXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFN5c3RlbXNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RUYWdzRm9yUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUYWdzRm9yUmVzb3VyY2UgPSBcInJlc2lsaWVuY2VodWI6TGlzdFRhZ3NGb3JSZXNvdXJjZVwiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdFRlc3RSZWNvbW1lbmRhdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZXN0UmVjb21tZW5kYXRpb25zID1cblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuRGVwZW5kZW5jaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVzdFJ1bkRlcGVuZGVuY2llcyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuRGVwZW5kZW5jaWVzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0VGVzdFJ1bkV2ZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RSdW5FdmVudHMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RSdW5FdmVudHNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuU291cmNlRXZlbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVzdFJ1blNvdXJjZUV2ZW50cyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuU291cmNlRXZlbnRzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0VGVzdFJ1blNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZXN0UnVuU291cmNlcyA9IFwicmVzaWxpZW5jZWh1YjpMaXN0VGVzdFJ1blNvdXJjZXNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RUZXN0UnVucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RSdW5zID0gXCJyZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuc1wiO1xuXHQvKiogW1JlYWRdIHJlc2lsaWVuY2VodWI6TGlzdFRlc3RTb3VyY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVzdFNvdXJjZXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RTb3VyY2VzXCI7XG5cdC8qKiBbUmVhZF0gcmVzaWxpZW5jZWh1YjpMaXN0VGVzdFRlbXBsYXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RUZW1wbGF0ZXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RUZW1wbGF0ZXNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RUZXN0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RzID0gXCJyZXNpbGllbmNlaHViOkxpc3RUZXN0c1wiO1xuXHQvKiogW0xpc3RdIHJlc2lsaWVuY2VodWI6TGlzdFVuc3VwcG9ydGVkQXBwVmVyc2lvblJlc291cmNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFVuc3VwcG9ydGVkQXBwVmVyc2lvblJlc291cmNlcyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RVbnN1cHBvcnRlZEFwcFZlcnNpb25SZXNvdXJjZXNcIjtcblx0LyoqIFtSZWFkXSByZXNpbGllbmNlaHViOkxpc3RVc2VySm91cm5leXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RVc2VySm91cm5leXMgPSBcInJlc2lsaWVuY2VodWI6TGlzdFVzZXJKb3VybmV5c1wiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlB1Ymxpc2hBcHBWZXJzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBQdWJsaXNoQXBwVmVyc2lvbiA9IFwicmVzaWxpZW5jZWh1YjpQdWJsaXNoQXBwVmVyc2lvblwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlB1dERyYWZ0QXBwVmVyc2lvblRlbXBsYXRlICovXG5cdHN0YXRpYyByZWFkb25seSBQdXREcmFmdEFwcFZlcnNpb25UZW1wbGF0ZSA9XG5cdFx0XCJyZXNpbGllbmNlaHViOlB1dERyYWZ0QXBwVmVyc2lvblRlbXBsYXRlXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6UHV0VGVzdFNvdXJjZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dFRlc3RTb3VyY2VzID0gXCJyZXNpbGllbmNlaHViOlB1dFRlc3RTb3VyY2VzXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6UmVqZWN0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVqZWN0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9ucyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOlJlamVjdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpSZW1vdmVEcmFmdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzICovXG5cdHN0YXRpYyByZWFkb25seSBSZW1vdmVEcmFmdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzID1cblx0XHRcInJlc2lsaWVuY2VodWI6UmVtb3ZlRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5nc1wiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlJlc29sdmVBcHBWZXJzaW9uUmVzb3VyY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBSZXNvbHZlQXBwVmVyc2lvblJlc291cmNlcyA9XG5cdFx0XCJyZXNpbGllbmNlaHViOlJlc29sdmVBcHBWZXJzaW9uUmVzb3VyY2VzXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6U3RhcnRBcHBBc3Nlc3NtZW50ICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEFwcEFzc2Vzc21lbnQgPSBcInJlc2lsaWVuY2VodWI6U3RhcnRBcHBBc3Nlc3NtZW50XCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6U3RhcnRGYWlsdXJlTW9kZUFzc2Vzc21lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0RmFpbHVyZU1vZGVBc3Nlc3NtZW50ID1cblx0XHRcInJlc2lsaWVuY2VodWI6U3RhcnRGYWlsdXJlTW9kZUFzc2Vzc21lbnRcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpTdGFydE1ldHJpY3NFeHBvcnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0TWV0cmljc0V4cG9ydCA9IFwicmVzaWxpZW5jZWh1YjpTdGFydE1ldHJpY3NFeHBvcnRcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpTdGFydFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvblRhc2sgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9uVGFzayA9XG5cdFx0XCJyZXNpbGllbmNlaHViOlN0YXJ0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9uVGFza1wiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlN0YXJ0VGVzdFJ1biAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRUZXN0UnVuID0gXCJyZXNpbGllbmNlaHViOlN0YXJ0VGVzdFJ1blwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlN0b3BUZXN0UnVuICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wVGVzdFJ1biA9IFwicmVzaWxpZW5jZWh1YjpTdG9wVGVzdFJ1blwiO1xuXHQvKiogW1RhZ2dpbmddIHJlc2lsaWVuY2VodWI6VGFnUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IFRhZ1Jlc291cmNlID0gXCJyZXNpbGllbmNlaHViOlRhZ1Jlc291cmNlXCI7XG5cdC8qKiBbVGFnZ2luZ10gcmVzaWxpZW5jZWh1YjpVbnRhZ1Jlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBVbnRhZ1Jlc291cmNlID0gXCJyZXNpbGllbmNlaHViOlVudGFnUmVzb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpVcGRhdGVBcHAgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFwcCA9IFwicmVzaWxpZW5jZWh1YjpVcGRhdGVBcHBcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpVcGRhdGVBcHBWZXJzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBcHBWZXJzaW9uID0gXCJyZXNpbGllbmNlaHViOlVwZGF0ZUFwcFZlcnNpb25cIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpVcGRhdGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50ID1cblx0XHRcInJlc2lsaWVuY2VodWI6VXBkYXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudFwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlVwZGF0ZUFwcFZlcnNpb25SZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQXBwVmVyc2lvblJlc291cmNlID1cblx0XHRcInJlc2lsaWVuY2VodWI6VXBkYXRlQXBwVmVyc2lvblJlc291cmNlXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6VXBkYXRlQXNzZXJ0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBc3NlcnRpb24gPSBcInJlc2lsaWVuY2VodWI6VXBkYXRlQXNzZXJ0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6VXBkYXRlRGVwZW5kZW5jeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlRGVwZW5kZW5jeSA9IFwicmVzaWxpZW5jZWh1YjpVcGRhdGVEZXBlbmRlbmN5XCI7XG5cdC8qKiBbV3JpdGVdIHJlc2lsaWVuY2VodWI6VXBkYXRlRmFpbHVyZU1vZGVGaW5kaW5nICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVGYWlsdXJlTW9kZUZpbmRpbmcgPVxuXHRcdFwicmVzaWxpZW5jZWh1YjpVcGRhdGVGYWlsdXJlTW9kZUZpbmRpbmdcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpVcGRhdGVQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBvbGljeSA9IFwicmVzaWxpZW5jZWh1YjpVcGRhdGVQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gcmVzaWxpZW5jZWh1YjpVcGRhdGVSZXNpbGllbmN5UG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZXNpbGllbmN5UG9saWN5ID1cblx0XHRcInJlc2lsaWVuY2VodWI6VXBkYXRlUmVzaWxpZW5jeVBvbGljeVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlVwZGF0ZVNlcnZpY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVNlcnZpY2UgPSBcInJlc2lsaWVuY2VodWI6VXBkYXRlU2VydmljZVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlVwZGF0ZVNlcnZpY2VGdW5jdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlU2VydmljZUZ1bmN0aW9uID0gXCJyZXNpbGllbmNlaHViOlVwZGF0ZVNlcnZpY2VGdW5jdGlvblwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlVwZGF0ZVN5c3RlbSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlU3lzdGVtID0gXCJyZXNpbGllbmNlaHViOlVwZGF0ZVN5c3RlbVwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlVwZGF0ZVRlc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVRlc3QgPSBcInJlc2lsaWVuY2VodWI6VXBkYXRlVGVzdFwiO1xuXHQvKiogW1dyaXRlXSByZXNpbGllbmNlaHViOlVwZGF0ZVVzZXJKb3VybmV5ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVVc2VySm91cm5leSA9IFwicmVzaWxpZW5jZWh1YjpVcGRhdGVVc2VySm91cm5leVwiO1xuXG5cdC8qKiBBbGwgcmVhZC1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsUmVhZEFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlc2NyaWJlQXBwLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlc2NyaWJlQXBwQXNzZXNzbWVudCxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZXNjcmliZUFwcFZlcnNpb24sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVzY3JpYmVBcHBWZXJzaW9uQXBwQ29tcG9uZW50LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlc2NyaWJlQXBwVmVyc2lvblJlc291cmNlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlc2NyaWJlQXBwVmVyc2lvblJlc291cmNlc1Jlc29sdXRpb25TdGF0dXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVzY3JpYmVBcHBWZXJzaW9uVGVtcGxhdGUsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVzY3JpYmVEcmFmdEFwcFZlcnNpb25SZXNvdXJjZXNJbXBvcnRTdGF0dXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVzY3JpYmVNZXRyaWNzRXhwb3J0LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlc2NyaWJlUmVzaWxpZW5jeVBvbGljeSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZXNjcmliZVJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvblRhc2ssXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuYWN0aW9uR2V0RmFpbHVyZU1vZGVGaW5kaW5nLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLmFjdGlvbkdldFBvbGljeSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5hY3Rpb25HZXRTZXJ2aWNlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLmFjdGlvbkdldFN5c3RlbSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5hY3Rpb25HZXRUZXN0LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLmFjdGlvbkdldFRlc3RSdW4sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuYWN0aW9uR2V0VGVzdFRlbXBsYXRlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLmFjdGlvbkdldFVzZXJKb3VybmV5LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RBc3NlcnRpb25zLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3REZXBlbmRlbmNpZXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdEZhaWx1cmVNb2RlQXNzZXNzbWVudHMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdEZhaWx1cmVNb2RlRmluZGluZ3MsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdElucHV0U291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0UG9saWNpZXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFJlcG9ydHMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFJlc29sdmVkVGVzdFJ1blRhcmdldFJlc291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0UmVzb3VyY2VzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RTZXJ2aWNlRXZlbnRzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RTZXJ2aWNlRnVuY3Rpb25zLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RTZXJ2aWNlVG9wb2xvZ3lFZGdlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0U2VydmljZXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFN5c3RlbUV2ZW50cyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0U3lzdGVtcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0VGFnc0ZvclJlc291cmNlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0UnVuRGVwZW5kZW5jaWVzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0UnVuRXZlbnRzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0UnVuU291cmNlRXZlbnRzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0UnVuU291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0VGVzdFJ1bnMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFRlc3RTb3VyY2VzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0VGVtcGxhdGVzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0cyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0VXNlckpvdXJuZXlzLFxuXHRdO1xuXHQvKiogQWxsIHdyaXRlLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxXcml0ZUFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkFjY2VwdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuQWRkRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5ncyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5CYXRjaFVwZGF0ZVJlY29tbWVuZGF0aW9uU3RhdHVzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkNyZWF0ZUFwcCxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5DcmVhdGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkNyZWF0ZUFwcFZlcnNpb25SZXNvdXJjZSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5DcmVhdGVBc3NlcnRpb24sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuQ3JlYXRlSW5wdXRTb3VyY2UsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuQ3JlYXRlUG9saWN5LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkNyZWF0ZVJlY29tbWVuZGF0aW9uVGVtcGxhdGUsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuQ3JlYXRlUmVwb3J0LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkNyZWF0ZVJlc2lsaWVuY3lQb2xpY3ksXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuQ3JlYXRlU2VydmljZSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5DcmVhdGVTZXJ2aWNlRnVuY3Rpb24sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuQ3JlYXRlU2VydmljZUZ1bmN0aW9uUmVzb3VyY2VzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkNyZWF0ZVN5c3RlbSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5DcmVhdGVUZXN0LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkNyZWF0ZVVzZXJKb3VybmV5LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlbGV0ZUFwcCxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVBcHBBc3Nlc3NtZW50LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlbGV0ZUFwcElucHV0U291cmNlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlbGV0ZUFwcFZlcnNpb25BcHBDb21wb25lbnQsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVsZXRlQXBwVmVyc2lvblJlc291cmNlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlbGV0ZUFzc2VydGlvbixcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVJbnB1dFNvdXJjZSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVQb2xpY3ksXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVsZXRlUmVjb21tZW5kYXRpb25UZW1wbGF0ZSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVSZXNpbGllbmN5UG9saWN5LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlbGV0ZVNlcnZpY2UsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVsZXRlU2VydmljZUZ1bmN0aW9uLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkRlbGV0ZVNlcnZpY2VGdW5jdGlvblJlc291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVTeXN0ZW0sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuRGVsZXRlVGVzdCxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVUZXN0U291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5EZWxldGVVc2VySm91cm5leSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5JbXBvcnRBcHAsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuSW1wb3J0UG9saWN5LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkltcG9ydFJlc291cmNlc1RvRHJhZnRBcHBWZXJzaW9uLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlB1Ymxpc2hBcHBWZXJzaW9uLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlB1dERyYWZ0QXBwVmVyc2lvblRlbXBsYXRlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlB1dFRlc3RTb3VyY2VzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlJlamVjdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuUmVtb3ZlRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5ncyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5SZXNvbHZlQXBwVmVyc2lvblJlc291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5TdGFydEFwcEFzc2Vzc21lbnQsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuU3RhcnRGYWlsdXJlTW9kZUFzc2Vzc21lbnQsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuU3RhcnRNZXRyaWNzRXhwb3J0LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlN0YXJ0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9uVGFzayxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5TdGFydFRlc3RSdW4sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuU3RvcFRlc3RSdW4sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuVXBkYXRlQXBwLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVwZGF0ZUFwcFZlcnNpb24sXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuVXBkYXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudCxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5VcGRhdGVBcHBWZXJzaW9uUmVzb3VyY2UsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuVXBkYXRlQXNzZXJ0aW9uLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVwZGF0ZURlcGVuZGVuY3ksXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuVXBkYXRlRmFpbHVyZU1vZGVGaW5kaW5nLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVwZGF0ZVBvbGljeSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5VcGRhdGVSZXNpbGllbmN5UG9saWN5LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVwZGF0ZVNlcnZpY2UsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuVXBkYXRlU2VydmljZUZ1bmN0aW9uLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVwZGF0ZVN5c3RlbSxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5VcGRhdGVUZXN0LFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVwZGF0ZVVzZXJKb3VybmV5LFxuXHRdO1xuXHQvKiogQWxsIGxpc3QtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbExpc3RBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0QWxhcm1SZWNvbW1lbmRhdGlvbnMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdEFwcEFzc2Vzc21lbnRDb21wbGlhbmNlRHJpZnRzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RBcHBBc3Nlc3NtZW50UmVzb3VyY2VEcmlmdHMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdEFwcEFzc2Vzc21lbnRzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RBcHBDb21wb25lbnRDb21wbGlhbmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0QXBwQ29tcG9uZW50UmVjb21tZW5kYXRpb25zLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RBcHBJbnB1dFNvdXJjZXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdEFwcFZlcnNpb25BcHBDb21wb25lbnRzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5ncyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0QXBwVmVyc2lvblJlc291cmNlcyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0QXBwVmVyc2lvbnMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdEFwcHMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdE1ldHJpY3MsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFJlY29tbWVuZGF0aW9uVGVtcGxhdGVzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RSZXNpbGllbmN5UG9saWNpZXMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnMsXG5cdFx0UmVzaWxpZW5jZWh1YkFjdGlvbnMuTGlzdFNvcFJlY29tbWVuZGF0aW9ucyxcblx0XHRSZXNpbGllbmNlaHViQWN0aW9ucy5MaXN0U3VnZ2VzdGVkUmVzaWxpZW5jeVBvbGljaWVzLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RUZXN0UmVjb21tZW5kYXRpb25zLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLkxpc3RVbnN1cHBvcnRlZEFwcFZlcnNpb25SZXNvdXJjZXMsXG5cdF07XG5cdC8qKiBBbGwgcGVybWlzc2lvbi1tYW5hZ2VtZW50LWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxQZXJtaXNzaW9uTWFuYWdlbWVudEFjdGlvbnM6IHN0cmluZ1tdID0gW107XG5cdC8qKiBBbGwgdGFnZ2luZy1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsVGFnZ2luZ0FjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlRhZ1Jlc291cmNlLFxuXHRcdFJlc2lsaWVuY2VodWJBY3Rpb25zLlVudGFnUmVzb3VyY2UsXG5cdF07XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBhcHAtYXNzZXNzbWVudCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YkFwcEFzc2Vzc21lbnRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQXBwQXNzZXNzbWVudElkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBhcHBBc3Nlc3NtZW50SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBhcHAtYXNzZXNzbWVudCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YkFwcEFzc2Vzc21lbnRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEFwcEFzc2Vzc21lbnRJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGFwcEFzc2Vzc21lbnRJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgYXBwbGljYXRpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc2lsaWVuY2VodWJBcHBsaWNhdGlvbkFyblByb3BzIHtcblx0LyoqIFRoZSBBcHBJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgYXBwSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBhcHBsaWNhdGlvbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YkFwcGxpY2F0aW9uQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBBcHBJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGFwcElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBwb2xpY3kgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc2lsaWVuY2VodWJQb2xpY3lBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUG9saWN5SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHBvbGljeUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcG9saWN5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNpbGllbmNlaHViUG9saWN5QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBQb2xpY3lJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHBvbGljeUlkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSByZWNvbW1lbmRhdGlvbi10ZW1wbGF0ZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YlJlY29tbWVuZGF0aW9uVGVtcGxhdGVBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUmVjb21tZW5kYXRpb25UZW1wbGF0ZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSByZWNvbW1lbmRhdGlvblRlbXBsYXRlSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSByZWNvbW1lbmRhdGlvbi10ZW1wbGF0ZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YlJlY29tbWVuZGF0aW9uVGVtcGxhdGVBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFJlY29tbWVuZGF0aW9uVGVtcGxhdGVJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHJlY29tbWVuZGF0aW9uVGVtcGxhdGVJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgcmVzaWxpZW5jeS1wb2xpY3kgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc2lsaWVuY2VodWJSZXNpbGllbmN5UG9saWN5QXJuUHJvcHMge1xuXHQvKiogVGhlIFJlc2lsaWVuY3lQb2xpY3lJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcmVzaWxpZW5jeVBvbGljeUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcmVzaWxpZW5jeS1wb2xpY3kgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc2lsaWVuY2VodWJSZXNpbGllbmN5UG9saWN5QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBSZXNpbGllbmN5UG9saWN5SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSByZXNpbGllbmN5UG9saWN5SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHNlcnZpY2UgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc2lsaWVuY2VodWJTZXJ2aWNlQXJuUHJvcHMge1xuXHQvKiogVGhlIFNlcnZpY2VJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgc2VydmljZUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgc2VydmljZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YlNlcnZpY2VBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFNlcnZpY2VJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHNlcnZpY2VJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgc3lzdGVtIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNpbGllbmNlaHViU3lzdGVtQXJuUHJvcHMge1xuXHQvKiogVGhlIFN5c3RlbUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBzeXN0ZW1JZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHN5c3RlbSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YlN5c3RlbUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgU3lzdGVtSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBzeXN0ZW1JZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgdGVzdC10ZW1wbGF0ZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaWxpZW5jZWh1YlRlc3RUZW1wbGF0ZUFyblByb3BzIHtcblx0LyoqIFRoZSBUZXN0VGVtcGxhdGVJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgdGVzdFRlbXBsYXRlSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSB0ZXN0LXRlbXBsYXRlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNpbGllbmNlaHViVGVzdFRlbXBsYXRlQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBUZXN0VGVtcGxhdGVJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHRlc3RUZW1wbGF0ZUlkOiBzdHJpbmc7XG59XG5cbmNvbnN0IEFwcEFzc2Vzc21lbnRBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmVzaWxpZW5jZWh1YjooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmFwcC1hc3Nlc3NtZW50XFwvKD88YXBwQXNzZXNzbWVudElkPlteOi8/XSspJC87XG5jb25zdCBBcHBsaWNhdGlvbkFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZXNpbGllbmNlaHViOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6YXBwXFwvKD88YXBwSWQ+W146Lz9dKykkLztcbmNvbnN0IFBvbGljeUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZXNpbGllbmNlaHViOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6cG9saWN5XFwvKD88cG9saWN5SWQ+W146Lz9dKykkLztcbmNvbnN0IFJlY29tbWVuZGF0aW9uVGVtcGxhdGVBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmVzaWxpZW5jZWh1YjooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnJlY29tbWVuZGF0aW9uLXRlbXBsYXRlXFwvKD88cmVjb21tZW5kYXRpb25UZW1wbGF0ZUlkPlteOi8/XSspJC87XG5jb25zdCBSZXNpbGllbmN5UG9saWN5QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJlc2lsaWVuY2VodWI6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpyZXNpbGllbmN5LXBvbGljeVxcLyg/PHJlc2lsaWVuY3lQb2xpY3lJZD5bXjovP10rKSQvO1xuY29uc3QgU2VydmljZUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZXNpbGllbmNlaHViOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6c2VydmljZVxcLyg/PHNlcnZpY2VJZD5bXjovP10rKSQvO1xuY29uc3QgU3lzdGVtQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJlc2lsaWVuY2VodWI6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpzeXN0ZW1cXC8oPzxzeXN0ZW1JZD5bXjovP10rKSQvO1xuY29uc3QgVGVzdFRlbXBsYXRlQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJlc2lsaWVuY2VodWI6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTp0ZXN0LXRlbXBsYXRlXFwvKD88dGVzdFRlbXBsYXRlSWQ+W146Lz9dKykkLztcblxuLyoqXG4gKiBBUk4gYnVpbGRlcnMsIHZhbGlkYXRvcnMsIGFuZCBwYXJzZXJzIGZvciByZXNpbGllbmNlaHViIHJlc291cmNlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFJlc2lsaWVuY2VodWJSZXNvdXJjZXMge1xuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGFwcC1hc3Nlc3NtZW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGFwcEFzc2Vzc21lbnQocHJvcHM6IFJlc2lsaWVuY2VodWJBcHBBc3Nlc3NtZW50QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06YXBwLWFzc2Vzc21lbnQvJHtwcm9wcy5hcHBBc3Nlc3NtZW50SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGFwcC1hc3Nlc3NtZW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRBcHBBc3Nlc3NtZW50QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEFwcEFzc2Vzc21lbnRBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgYXBwLWFzc2Vzc21lbnQgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQXBwQXNzZXNzbWVudEFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogUmVzaWxpZW5jZWh1YkFwcEFzc2Vzc21lbnRBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEFwcEFzc2Vzc21lbnRBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgYXBwLWFzc2Vzc21lbnQgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0YXBwQXNzZXNzbWVudElkOiBtYXRjaC5ncm91cHMhLmFwcEFzc2Vzc21lbnRJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBhcHBsaWNhdGlvbiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBhcHBsaWNhdGlvbihwcm9wczogUmVzaWxpZW5jZWh1YkFwcGxpY2F0aW9uQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06YXBwLyR7cHJvcHMuYXBwSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGFwcGxpY2F0aW9uIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRBcHBsaWNhdGlvbkFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBBcHBsaWNhdGlvbkFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBhcHBsaWNhdGlvbiBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VBcHBsaWNhdGlvbkFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogUmVzaWxpZW5jZWh1YkFwcGxpY2F0aW9uQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBBcHBsaWNhdGlvbkFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBhcHBsaWNhdGlvbiBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRhcHBJZDogbWF0Y2guZ3JvdXBzIS5hcHBJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBwb2xpY3kgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgcG9saWN5KHByb3BzOiBSZXNpbGllbmNlaHViUG9saWN5QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cG9saWN5LyR7cHJvcHMucG9saWN5SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHBvbGljeSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUG9saWN5QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFBvbGljeUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBwb2xpY3kgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUG9saWN5QXJuKGFybjogc3RyaW5nKTogUmVzaWxpZW5jZWh1YlBvbGljeUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUG9saWN5QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHBvbGljeSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRwb2xpY3lJZDogbWF0Y2guZ3JvdXBzIS5wb2xpY3lJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSByZWNvbW1lbmRhdGlvbi10ZW1wbGF0ZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyByZWNvbW1lbmRhdGlvblRlbXBsYXRlKFxuXHRcdHByb3BzOiBSZXNpbGllbmNlaHViUmVjb21tZW5kYXRpb25UZW1wbGF0ZUFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cmVjb21tZW5kYXRpb24tdGVtcGxhdGUvJHtwcm9wcy5yZWNvbW1lbmRhdGlvblRlbXBsYXRlSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHJlY29tbWVuZGF0aW9uLXRlbXBsYXRlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRSZWNvbW1lbmRhdGlvblRlbXBsYXRlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFJlY29tbWVuZGF0aW9uVGVtcGxhdGVBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcmVjb21tZW5kYXRpb24tdGVtcGxhdGUgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUmVjb21tZW5kYXRpb25UZW1wbGF0ZUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogUmVzaWxpZW5jZWh1YlJlY29tbWVuZGF0aW9uVGVtcGxhdGVBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFJlY29tbWVuZGF0aW9uVGVtcGxhdGVBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcmVjb21tZW5kYXRpb24tdGVtcGxhdGUgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cmVjb21tZW5kYXRpb25UZW1wbGF0ZUlkOiBtYXRjaC5ncm91cHMhLnJlY29tbWVuZGF0aW9uVGVtcGxhdGVJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSByZXNpbGllbmN5LXBvbGljeSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyByZXNpbGllbmN5UG9saWN5KFxuXHRcdHByb3BzOiBSZXNpbGllbmNlaHViUmVzaWxpZW5jeVBvbGljeUFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cmVzaWxpZW5jeS1wb2xpY3kvJHtwcm9wcy5yZXNpbGllbmN5UG9saWN5SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHJlc2lsaWVuY3ktcG9saWN5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRSZXNpbGllbmN5UG9saWN5QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFJlc2lsaWVuY3lQb2xpY3lBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcmVzaWxpZW5jeS1wb2xpY3kgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUmVzaWxpZW5jeVBvbGljeUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogUmVzaWxpZW5jZWh1YlJlc2lsaWVuY3lQb2xpY3lBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFJlc2lsaWVuY3lQb2xpY3lBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcmVzaWxpZW5jeS1wb2xpY3kgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cmVzaWxpZW5jeVBvbGljeUlkOiBtYXRjaC5ncm91cHMhLnJlc2lsaWVuY3lQb2xpY3lJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBzZXJ2aWNlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHNlcnZpY2UocHJvcHM6IFJlc2lsaWVuY2VodWJTZXJ2aWNlQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06c2VydmljZS8ke3Byb3BzLnNlcnZpY2VJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgc2VydmljZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkU2VydmljZUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBTZXJ2aWNlQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHNlcnZpY2UgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlU2VydmljZUFybihhcm46IHN0cmluZyk6IFJlc2lsaWVuY2VodWJTZXJ2aWNlQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBTZXJ2aWNlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHNlcnZpY2UgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0c2VydmljZUlkOiBtYXRjaC5ncm91cHMhLnNlcnZpY2VJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBzeXN0ZW0gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgc3lzdGVtKHByb3BzOiBSZXNpbGllbmNlaHViU3lzdGVtQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJlc2lsaWVuY2VodWI6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06c3lzdGVtLyR7cHJvcHMuc3lzdGVtSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHN5c3RlbSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkU3lzdGVtQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFN5c3RlbUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBzeXN0ZW0gQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlU3lzdGVtQXJuKGFybjogc3RyaW5nKTogUmVzaWxpZW5jZWh1YlN5c3RlbUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gU3lzdGVtQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHN5c3RlbSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRzeXN0ZW1JZDogbWF0Y2guZ3JvdXBzIS5zeXN0ZW1JZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSB0ZXN0LXRlbXBsYXRlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHRlc3RUZW1wbGF0ZShwcm9wczogUmVzaWxpZW5jZWh1YlRlc3RUZW1wbGF0ZUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZXNpbGllbmNlaHViOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnRlc3QtdGVtcGxhdGUvJHtwcm9wcy50ZXN0VGVtcGxhdGVJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgdGVzdC10ZW1wbGF0ZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkVGVzdFRlbXBsYXRlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFRlc3RUZW1wbGF0ZUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSB0ZXN0LXRlbXBsYXRlIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVRlc3RUZW1wbGF0ZUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogUmVzaWxpZW5jZWh1YlRlc3RUZW1wbGF0ZUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gVGVzdFRlbXBsYXRlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHRlc3QtdGVtcGxhdGUgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0dGVzdFRlbXBsYXRlSWQ6IG1hdGNoLmdyb3VwcyEudGVzdFRlbXBsYXRlSWQsXG5cdFx0fTtcblx0fVxufVxuXG4vKipcbiAqIEFQSSBvcGVyYXRpb24gdG8gcmVxdWlyZWQgSUFNIGFjdGlvbnMgbWFwcGluZyBmb3IgcmVzaWxpZW5jZWh1Yi5cbiAqL1xuZXhwb3J0IGNsYXNzIFJlc2lsaWVuY2VodWJPcGVyYXRpb25zIHtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQWNjZXB0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFjY2VwdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpBY2NlcHRSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEFkZERyYWZ0QXBwVmVyc2lvblJlc291cmNlTWFwcGluZ3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBBZGREcmFmdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6QWRkRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5nc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaFVwZGF0ZVJlY29tbWVuZGF0aW9uU3RhdHVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hVcGRhdGVSZWNvbW1lbmRhdGlvblN0YXR1czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkJhdGNoVXBkYXRlUmVjb21tZW5kYXRpb25TdGF0dXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQXBwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXBwOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6Q3JlYXRlQXBwXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInJlc2lsaWVuY2VodWI6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFwcFZlcnNpb25BcHBDb21wb25lbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUFwcFZlcnNpb25SZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFwcFZlcnNpb25SZXNvdXJjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkNyZWF0ZUFwcFZlcnNpb25SZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVBc3NlcnRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBc3NlcnRpb246IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpDcmVhdGVBc3NlcnRpb25cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUlucHV0U291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSW5wdXRTb3VyY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVJbnB1dFNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVQb2xpY3lcIixcblx0XHRcInJlc2lsaWVuY2VodWI6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUmVjb21tZW5kYXRpb25UZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlY29tbWVuZGF0aW9uVGVtcGxhdGU6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVSZWNvbW1lbmRhdGlvblRlbXBsYXRlXCIsXG5cdFx0XCJyZXNpbGllbmNlaHViOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVJlcG9ydCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlcG9ydDogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkNyZWF0ZVJlcG9ydFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUmVzaWxpZW5jeVBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlc2lsaWVuY3lQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVSZXNpbGllbmN5UG9saWN5XCIsXG5cdFx0XCJyZXNpbGllbmNlaHViOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVNlcnZpY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVTZXJ2aWNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6Q3JlYXRlU2VydmljZVwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJyZXNpbGllbmNlaHViOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVNlcnZpY2VGdW5jdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVNlcnZpY2VGdW5jdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkNyZWF0ZVNlcnZpY2VGdW5jdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVTZXJ2aWNlRnVuY3Rpb25SZXNvdXJjZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVTZXJ2aWNlRnVuY3Rpb25SZXNvdXJjZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVTZXJ2aWNlRnVuY3Rpb25SZXNvdXJjZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlU3lzdGVtIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlU3lzdGVtOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6Q3JlYXRlU3lzdGVtXCIsXG5cdFx0XCJyZXNpbGllbmNlaHViOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVRlc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUZXN0OiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6Q3JlYXRlVGVzdFwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVVzZXJKb3VybmV5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVXNlckpvdXJuZXk6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpDcmVhdGVVc2VySm91cm5leVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBcHAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcHA6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpEZWxldGVBcHBcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFwcEFzc2Vzc21lbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcHBBc3Nlc3NtZW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVsZXRlQXBwQXNzZXNzbWVudFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBcHBJbnB1dFNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwcElucHV0U291cmNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVsZXRlQXBwSW5wdXRTb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwcFZlcnNpb25BcHBDb21wb25lbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFwcFZlcnNpb25SZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwcFZlcnNpb25SZXNvdXJjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlbGV0ZUFwcFZlcnNpb25SZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBc3NlcnRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBc3NlcnRpb246IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpEZWxldGVBc3NlcnRpb25cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUlucHV0U291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSW5wdXRTb3VyY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVJbnB1dFNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQb2xpY3k6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpEZWxldGVQb2xpY3lcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVJlY29tbWVuZGF0aW9uVGVtcGxhdGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWNvbW1lbmRhdGlvblRlbXBsYXRlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVsZXRlUmVjb21tZW5kYXRpb25UZW1wbGF0ZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVSZXNpbGllbmN5UG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVzaWxpZW5jeVBvbGljeTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlbGV0ZVJlc2lsaWVuY3lQb2xpY3lcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlU2VydmljZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVNlcnZpY2U6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpEZWxldGVTZXJ2aWNlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVTZXJ2aWNlRnVuY3Rpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVTZXJ2aWNlRnVuY3Rpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpEZWxldGVTZXJ2aWNlRnVuY3Rpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlU2VydmljZUZ1bmN0aW9uUmVzb3VyY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlU2VydmljZUZ1bmN0aW9uUmVzb3VyY2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVsZXRlU2VydmljZUZ1bmN0aW9uUmVzb3VyY2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVN5c3RlbSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVN5c3RlbTogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkRlbGV0ZVN5c3RlbVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlVGVzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVRlc3Q6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpEZWxldGVUZXN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVUZXN0U291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVRlc3RTb3VyY2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVsZXRlVGVzdFNvdXJjZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlVXNlckpvdXJuZXkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVVc2VySm91cm5leTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlbGV0ZVVzZXJKb3VybmV5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlQXBwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBcHA6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVBcHBBc3Nlc3NtZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBcHBBc3Nlc3NtZW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBBc3Nlc3NtZW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlQXBwVmVyc2lvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQXBwVmVyc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUFwcFZlcnNpb25BcHBDb21wb25lbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFwcFZlcnNpb25BcHBDb21wb25lbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZUFwcFZlcnNpb25BcHBDb21wb25lbnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVBcHBWZXJzaW9uUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFwcFZlcnNpb25SZXNvdXJjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlQXBwVmVyc2lvblJlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlQXBwVmVyc2lvblJlc291cmNlc1Jlc29sdXRpb25TdGF0dXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFwcFZlcnNpb25SZXNvdXJjZXNSZXNvbHV0aW9uU3RhdHVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBWZXJzaW9uUmVzb3VyY2VzUmVzb2x1dGlvblN0YXR1c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUFwcFZlcnNpb25UZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQXBwVmVyc2lvblRlbXBsYXRlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVBcHBWZXJzaW9uVGVtcGxhdGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEcmFmdEFwcFZlcnNpb25SZXNvdXJjZXNJbXBvcnRTdGF0dXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURyYWZ0QXBwVmVyc2lvblJlc291cmNlc0ltcG9ydFN0YXR1czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VzSW1wb3J0U3RhdHVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlTWV0cmljc0V4cG9ydCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlTWV0cmljc0V4cG9ydDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkRlc2NyaWJlTWV0cmljc0V4cG9ydFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZVJlc2lsaWVuY3lQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlc2lsaWVuY3lQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpEZXNjcmliZVJlc2lsaWVuY3lQb2xpY3lcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25UYXNrIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25UYXNrOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6RGVzY3JpYmVSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25UYXNrXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldERlcGVuZGVuY3lJbnNpZ2h0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0RGVwZW5kZW5jeUluc2lnaHRzOiBzdHJpbmdbXSA9IFtdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRGYWlsdXJlTW9kZUZpbmRpbmcgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEZhaWx1cmVNb2RlRmluZGluZzogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkdldEZhaWx1cmVNb2RlRmluZGluZ1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFBvbGljeTogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkdldFBvbGljeVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0U2VydmljZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0U2VydmljZTogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkdldFNlcnZpY2VcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFN5c3RlbSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0U3lzdGVtOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6R2V0U3lzdGVtXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRUZXN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRUZXN0OiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6R2V0VGVzdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0VGVzdFJ1biBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0VGVzdFJ1bjogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkdldFRlc3RSdW5cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFRlc3RUZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0VGVzdFRlbXBsYXRlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6R2V0VGVzdFRlbXBsYXRlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFVzZXJKb3VybmV5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRVc2VySm91cm5leTogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkdldFVzZXJKb3VybmV5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBJbXBvcnRBcHAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBJbXBvcnRBcHA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpJbXBvcnRBcHBcIixcblx0XHRcInJlc2lsaWVuY2VodWI6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgSW1wb3J0UG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW1wb3J0UG9saWN5OiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6SW1wb3J0UG9saWN5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBJbXBvcnRSZXNvdXJjZXNUb0RyYWZ0QXBwVmVyc2lvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEltcG9ydFJlc291cmNlc1RvRHJhZnRBcHBWZXJzaW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6SW1wb3J0UmVzb3VyY2VzVG9EcmFmdEFwcFZlcnNpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFsYXJtUmVjb21tZW5kYXRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFsYXJtUmVjb21tZW5kYXRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFsYXJtUmVjb21tZW5kYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBcHBBc3Nlc3NtZW50Q29tcGxpYW5jZURyaWZ0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBBc3Nlc3NtZW50Q29tcGxpYW5jZURyaWZ0czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RBcHBBc3Nlc3NtZW50Q29tcGxpYW5jZURyaWZ0c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXBwQXNzZXNzbWVudFJlc291cmNlRHJpZnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcEFzc2Vzc21lbnRSZXNvdXJjZURyaWZ0czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RBcHBBc3Nlc3NtZW50UmVzb3VyY2VEcmlmdHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFwcEFzc2Vzc21lbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcEFzc2Vzc21lbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEFwcEFzc2Vzc21lbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBcHBDb21wb25lbnRDb21wbGlhbmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBDb21wb25lbnRDb21wbGlhbmNlczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RBcHBDb21wb25lbnRDb21wbGlhbmNlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXBwQ29tcG9uZW50UmVjb21tZW5kYXRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwcENvbXBvbmVudFJlY29tbWVuZGF0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RBcHBDb21wb25lbnRSZWNvbW1lbmRhdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFwcElucHV0U291cmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBJbnB1dFNvdXJjZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0QXBwSW5wdXRTb3VyY2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBcHBWZXJzaW9uQXBwQ29tcG9uZW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBWZXJzaW9uQXBwQ29tcG9uZW50czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RBcHBWZXJzaW9uQXBwQ29tcG9uZW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXBwVmVyc2lvblJlc291cmNlTWFwcGluZ3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwVmVyc2lvblJlc291cmNlTWFwcGluZ3M6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0QXBwVmVyc2lvblJlc291cmNlTWFwcGluZ3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFwcFZlcnNpb25SZXNvdXJjZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwVmVyc2lvblJlc291cmNlczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RBcHBWZXJzaW9uUmVzb3VyY2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBcHBWZXJzaW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcHBWZXJzaW9uczogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkxpc3RBcHBWZXJzaW9uc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFwcHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBwczogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkxpc3RBcHBzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXNzZXJ0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBc3NlcnRpb25zOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6TGlzdEFzc2VydGlvbnNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3REZXBlbmRlbmNpZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGVwZW5kZW5jaWVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdERlcGVuZGVuY2llc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0RmFpbHVyZU1vZGVBc3Nlc3NtZW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RGYWlsdXJlTW9kZUFzc2Vzc21lbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdEZhaWx1cmVNb2RlQXNzZXNzbWVudHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEZhaWx1cmVNb2RlRmluZGluZ3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RmFpbHVyZU1vZGVGaW5kaW5nczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RGYWlsdXJlTW9kZUZpbmRpbmdzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RJbnB1dFNvdXJjZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SW5wdXRTb3VyY2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdElucHV0U291cmNlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0TWV0cmljcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNZXRyaWNzOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6TGlzdE1ldHJpY3NcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RQb2xpY2llcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY2llczogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkxpc3RQb2xpY2llc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFBvbGljeUV2ZW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY3lFdmVudHM6IHN0cmluZ1tdID0gW107XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RSZWNvbW1lbmRhdGlvblRlbXBsYXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWNvbW1lbmRhdGlvblRlbXBsYXRlczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RSZWNvbW1lbmRhdGlvblRlbXBsYXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVwb3J0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZXBvcnRzOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6TGlzdFJlcG9ydHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RSZXNpbGllbmN5UG9saWNpZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVzaWxpZW5jeVBvbGljaWVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFJlc2lsaWVuY3lQb2xpY2llc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVzb2x2ZWRUZXN0UnVuVGFyZ2V0UmVzb3VyY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlc29sdmVkVGVzdFJ1blRhcmdldFJlc291cmNlczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RSZXNvbHZlZFRlc3RSdW5UYXJnZXRSZXNvdXJjZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RSZXNvdXJjZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVzb3VyY2VzOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6TGlzdFJlc291cmNlc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFNlcnZpY2VFdmVudHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U2VydmljZUV2ZW50czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RTZXJ2aWNlRXZlbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RTZXJ2aWNlRnVuY3Rpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlcnZpY2VGdW5jdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0U2VydmljZUZ1bmN0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0U2VydmljZVRvcG9sb2d5RWRnZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U2VydmljZVRvcG9sb2d5RWRnZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0U2VydmljZVRvcG9sb2d5RWRnZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFNlcnZpY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlcnZpY2VzOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6TGlzdFNlcnZpY2VzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0U29wUmVjb21tZW5kYXRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNvcFJlY29tbWVuZGF0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RTb3BSZWNvbW1lbmRhdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFN1Z2dlc3RlZFJlc2lsaWVuY3lQb2xpY2llcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTdWdnZXN0ZWRSZXNpbGllbmN5UG9saWNpZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0U3VnZ2VzdGVkUmVzaWxpZW5jeVBvbGljaWVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RTeXN0ZW1FdmVudHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U3lzdGVtRXZlbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFN5c3RlbUV2ZW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0U3lzdGVtcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RTeXN0ZW1zOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6TGlzdFN5c3RlbXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUYWdzRm9yUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGFnc0ZvclJlc291cmNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFRhZ3NGb3JSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGVzdFJlY29tbWVuZGF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZXN0UmVjb21tZW5kYXRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RSZWNvbW1lbmRhdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRlc3RSdW5EZXBlbmRlbmNpZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGVzdFJ1bkRlcGVuZGVuY2llczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuRGVwZW5kZW5jaWVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUZXN0UnVuRXZlbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RSdW5FdmVudHM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0VGVzdFJ1bkV2ZW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGVzdFJ1blNvdXJjZUV2ZW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZXN0UnVuU291cmNlRXZlbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RSdW5Tb3VyY2VFdmVudHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRlc3RSdW5Tb3VyY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RSdW5Tb3VyY2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RSdW5Tb3VyY2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUZXN0UnVucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZXN0UnVuczogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOkxpc3RUZXN0UnVuc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRlc3RTb3VyY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RTb3VyY2VzOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RTb3VyY2VzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGVzdFRlbXBsYXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUZXN0VGVtcGxhdGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RUZW1wbGF0ZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRlc3RzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRlc3RzOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6TGlzdFRlc3RzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VW5zdXBwb3J0ZWRBcHBWZXJzaW9uUmVzb3VyY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFVuc3VwcG9ydGVkQXBwVmVyc2lvblJlc291cmNlczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOkxpc3RVbnN1cHBvcnRlZEFwcFZlcnNpb25SZXNvdXJjZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFVzZXJKb3VybmV5cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RVc2VySm91cm5leXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpMaXN0VXNlckpvdXJuZXlzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFB1Ymxpc2hBcHBWZXJzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHVibGlzaEFwcFZlcnNpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpQdWJsaXNoQXBwVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXREcmFmdEFwcFZlcnNpb25UZW1wbGF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dERyYWZ0QXBwVmVyc2lvblRlbXBsYXRlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6UHV0RHJhZnRBcHBWZXJzaW9uVGVtcGxhdGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHV0VGVzdFNvdXJjZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRUZXN0U291cmNlczogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOlB1dFRlc3RTb3VyY2VzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZWplY3RSZXNvdXJjZUdyb3VwaW5nUmVjb21tZW5kYXRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVqZWN0UmVzb3VyY2VHcm91cGluZ1JlY29tbWVuZGF0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOlJlamVjdFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVtb3ZlRHJhZnRBcHBWZXJzaW9uUmVzb3VyY2VNYXBwaW5ncyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlbW92ZURyYWZ0QXBwVmVyc2lvblJlc291cmNlTWFwcGluZ3M6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpSZW1vdmVEcmFmdEFwcFZlcnNpb25SZXNvdXJjZU1hcHBpbmdzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFJlc29sdmVBcHBWZXJzaW9uUmVzb3VyY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzb2x2ZUFwcFZlcnNpb25SZXNvdXJjZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpSZXNvbHZlQXBwVmVyc2lvblJlc291cmNlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydEFwcEFzc2Vzc21lbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEFwcEFzc2Vzc21lbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpTdGFydEFwcEFzc2Vzc21lbnRcIixcblx0XHRcInJlc2lsaWVuY2VodWI6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnREZXBlbmRlbmN5SW5zaWdodHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydERlcGVuZGVuY3lJbnNpZ2h0czogc3RyaW5nW10gPSBbXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRGYWlsdXJlTW9kZUFzc2Vzc21lbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEZhaWx1cmVNb2RlQXNzZXNzbWVudDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOlN0YXJ0RmFpbHVyZU1vZGVBc3Nlc3NtZW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0YXJ0TWV0cmljc0V4cG9ydCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0TWV0cmljc0V4cG9ydDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOlN0YXJ0TWV0cmljc0V4cG9ydFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvblRhc2sgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvblRhc2s6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpTdGFydFJlc291cmNlR3JvdXBpbmdSZWNvbW1lbmRhdGlvblRhc2tcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRUZXN0UnVuIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRUZXN0UnVuOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6U3RhcnRUZXN0UnVuXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdG9wVGVzdFJ1biBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BUZXN0UnVuOiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6U3RvcFRlc3RSdW5cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFRhZ1Jlc291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVGFnUmVzb3VyY2U6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpUYWdSZXNvdXJjZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVW50YWdSZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVudGFnUmVzb3VyY2U6IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpVbnRhZ1Jlc291cmNlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVBcHAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBcHA6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJyZXNpbGllbmNlaHViOlVwZGF0ZUFwcFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVBcHBWZXJzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQXBwVmVyc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOlVwZGF0ZUFwcFZlcnNpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQXBwVmVyc2lvbkFwcENvbXBvbmVudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFwcFZlcnNpb25BcHBDb21wb25lbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpVcGRhdGVBcHBWZXJzaW9uQXBwQ29tcG9uZW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUFwcFZlcnNpb25SZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFwcFZlcnNpb25SZXNvdXJjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOlVwZGF0ZUFwcFZlcnNpb25SZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVBc3NlcnRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBc3NlcnRpb246IHN0cmluZ1tdID0gW1wicmVzaWxpZW5jZWh1YjpVcGRhdGVBc3NlcnRpb25cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZURlcGVuZGVuY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVEZXBlbmRlbmN5OiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6VXBkYXRlRGVwZW5kZW5jeVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVGYWlsdXJlTW9kZUZpbmRpbmcgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVGYWlsdXJlTW9kZUZpbmRpbmc6IHN0cmluZ1tdID0gW1xuXHRcdFwicmVzaWxpZW5jZWh1YjpVcGRhdGVGYWlsdXJlTW9kZUZpbmRpbmdcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlUG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUG9saWN5OiBzdHJpbmdbXSA9IFtcInJlc2lsaWVuY2VodWI6VXBkYXRlUG9saWN5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVSZXNpbGllbmN5UG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVzaWxpZW5jeVBvbGljeTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOlVwZGF0ZVJlc2lsaWVuY3lQb2xpY3lcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlU2VydmljZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVNlcnZpY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJyZXNpbGllbmNlaHViOlVwZGF0ZVNlcnZpY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlU2VydmljZUZ1bmN0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlU2VydmljZUZ1bmN0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInJlc2lsaWVuY2VodWI6VXBkYXRlU2VydmljZUZ1bmN0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVN5c3RlbSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVN5c3RlbTogc3RyaW5nW10gPSBbXCJyZXNpbGllbmNlaHViOlVwZGF0ZVN5c3RlbVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlVGVzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVRlc3Q6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJyZXNpbGllbmNlaHViOlVwZGF0ZVRlc3RcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlVXNlckpvdXJuZXkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVVc2VySm91cm5leTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZXNpbGllbmNlaHViOlVwZGF0ZVVzZXJKb3VybmV5XCIsXG5cdF07XG59XG5cbi8qKlxuICogQ29uZGl0aW9uIGtleSBjb25zdGFudHMgYW5kIGJ1aWxkZXJzIGZvciByZXNpbGllbmNlaHViLlxuICovXG5leHBvcnQgY2xhc3MgUmVzaWxpZW5jZWh1YkNvbmRpdGlvbnMge1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlQXBwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFwcENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlUmVjb21tZW5kYXRpb25UZW1wbGF0ZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZWNvbW1lbmRhdGlvblRlbXBsYXRlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVSZXNpbGllbmN5UG9saWN5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlc2lsaWVuY3lQb2xpY3lDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFN0YXJ0QXBwQXNzZXNzbWVudCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEFwcEFzc2Vzc21lbnRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFRhZ1Jlc291cmNlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFRhZ1Jlc291cmNlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVbnRhZ1Jlc291cmNlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVudGFnUmVzb3VyY2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcImF3czpUYWdLZXlzXCJdO1xuXG5cdC8qKiBDb25kaXRpb24ga2V5OiBhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFXU19SRVFVRVNUX1RBRyA9IFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBV1NfUkVTT1VSQ0VfVEFHID0gXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBhd3M6VGFnS2V5cyAoQXJyYXlPZlN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFXU19UQUdfS0VZUyA9IFwiYXdzOlRhZ0tleXNcIjtcblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9YC5cblx0ICovXG5cdHN0YXRpYyByZXF1ZXN0VGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9YC5cblx0ICovXG5cdHN0YXRpYyByZXNvdXJjZVRhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGF3czpUYWdLZXlzYC5cblx0ICovXG5cdHN0YXRpYyB0YWdLZXlzKHZhbHVlczogc3RyaW5nW10pOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4+IHtcblx0XHRyZXR1cm4geyBcIkZvckFsbFZhbHVlczpTdHJpbmdFcXVhbHNcIjogeyBcImF3czpUYWdLZXlzXCI6IHZhbHVlcyB9IH07XG5cdH1cbn1cbiJdfQ==
|