@cdk_utils/iam 1.33.0 → 1.35.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.d.ts +8 -0
- package/lib/generated/services/account.js +17 -5
- 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 +6 -5
- 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 +4 -4
- 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.d.ts +0 -28
- package/lib/generated/services/datazone.js +5 -47
- 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 +7 -5
- 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.d.ts +6 -0
- package/lib/generated/services/elasticache.js +13 -5
- package/lib/generated/services/elasticbeanstalk.js +4 -4
- package/lib/generated/services/elasticfilesystem.js +4 -4
- package/lib/generated/services/elasticloadbalancing.js +5 -6
- 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.js +4 -4
- 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.d.ts +6 -0
- package/lib/generated/services/identitystore.js +17 -5
- 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/network-security-manager.js +4 -4
- 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.js +4 -4
- 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.js +4 -4
- 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 +5 -6
- 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.js +4 -4
- 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.d.ts +12 -0
- package/lib/generated/services/s3vectors.js +25 -5
- 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 +6 -5
- 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.d.ts +2 -0
- package/lib/generated/services/securityagent.js +9 -5
- package/lib/generated/services/securityhub.d.ts +4 -0
- package/lib/generated/services/securityhub.js +11 -5
- package/lib/generated/services/securitylake.js +4 -4
- package/lib/generated/services/serverlessrepo.js +4 -4
- package/lib/generated/services/servicecatalog.js +5 -11
- 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/startups.js +1 -1
- 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.js +2 -2
- 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 RDSActions {
|
|
|
16
16
|
}
|
|
17
17
|
exports.RDSActions = RDSActions;
|
|
18
18
|
_a = JSII_RTTI_SYMBOL_1;
|
|
19
|
-
RDSActions[_a] = { fqn: "@cdk_utils/iam.rds.RDSActions", version: "1.
|
|
19
|
+
RDSActions[_a] = { fqn: "@cdk_utils/iam.rds.RDSActions", version: "1.35.0" };
|
|
20
20
|
/** The IAM service prefix. */
|
|
21
21
|
RDSActions.SERVICE_PREFIX = "rds";
|
|
22
22
|
/** [Write] rds:AddRoleToDBCluster */
|
|
@@ -1246,7 +1246,7 @@ class RDSResources {
|
|
|
1246
1246
|
}
|
|
1247
1247
|
exports.RDSResources = RDSResources;
|
|
1248
1248
|
_b = JSII_RTTI_SYMBOL_1;
|
|
1249
|
-
RDSResources[_b] = { fqn: "@cdk_utils/iam.rds.RDSResources", version: "1.
|
|
1249
|
+
RDSResources[_b] = { fqn: "@cdk_utils/iam.rds.RDSResources", version: "1.35.0" };
|
|
1250
1250
|
/**
|
|
1251
1251
|
* API operation to required IAM actions mapping for rds.
|
|
1252
1252
|
*/
|
|
@@ -1254,7 +1254,7 @@ class RDSOperations {
|
|
|
1254
1254
|
}
|
|
1255
1255
|
exports.RDSOperations = RDSOperations;
|
|
1256
1256
|
_c = JSII_RTTI_SYMBOL_1;
|
|
1257
|
-
RDSOperations[_c] = { fqn: "@cdk_utils/iam.rds.RDSOperations", version: "1.
|
|
1257
|
+
RDSOperations[_c] = { fqn: "@cdk_utils/iam.rds.RDSOperations", version: "1.35.0" };
|
|
1258
1258
|
/** IAM actions required for the AddRoleToDBCluster API call. */
|
|
1259
1259
|
RDSOperations.AddRoleToDBCluster = [
|
|
1260
1260
|
"rds:AddRoleToDBCluster",
|
|
@@ -1301,7 +1301,6 @@ RDSOperations.CopyDBParameterGroup = [
|
|
|
1301
1301
|
/** IAM actions required for the CopyDBSnapshot API call. */
|
|
1302
1302
|
RDSOperations.CopyDBSnapshot = [
|
|
1303
1303
|
"rds:AddTagsToResource",
|
|
1304
|
-
"rds:CopyCustomDBEngineVersion",
|
|
1305
1304
|
"rds:CopyDBSnapshot",
|
|
1306
1305
|
];
|
|
1307
1306
|
/** IAM actions required for the CopyOptionGroup API call. */
|
|
@@ -2112,7 +2111,7 @@ class RDSConditions {
|
|
|
2112
2111
|
}
|
|
2113
2112
|
exports.RDSConditions = RDSConditions;
|
|
2114
2113
|
_d = JSII_RTTI_SYMBOL_1;
|
|
2115
|
-
RDSConditions[_d] = { fqn: "@cdk_utils/iam.rds.RDSConditions", version: "1.
|
|
2114
|
+
RDSConditions[_d] = { fqn: "@cdk_utils/iam.rds.RDSConditions", version: "1.35.0" };
|
|
2116
2115
|
/** Condition keys applicable to the AddTagsToResource action. */
|
|
2117
2116
|
RDSConditions.AddTagsToResourceConditionKeys = [
|
|
2118
2117
|
"aws:RequestTag/${TagKey}",
|
|
@@ -2454,4 +2453,4 @@ RDSConditions.SECGRP_TAG = "rds:secgrp-tag/${TagKey}";
|
|
|
2454
2453
|
RDSConditions.SNAPSHOT_TAG = "rds:snapshot-tag/${TagKey}";
|
|
2455
2454
|
/** Condition key: rds:subgrp-tag/${TagKey} (String) */
|
|
2456
2455
|
RDSConditions.SUBGRP_TAG = "rds:subgrp-tag/${TagKey}";
|
|
2457
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2dlbmVyYXRlZC9zZXJ2aWNlcy9yZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxnRkFBZ0Y7QUFDaEYsNkNBQTZDO0FBQzdDLDBEQUEwRDtBQUMxRCwwQ0FBMEM7QUFDMUMsb0RBQW9EO0FBQ3BELGdGQUFnRjtBQUVoRjs7R0FFRztBQUNILE1BQWEsVUFBVTs7QUFBdkIsZ0NBNmpCQzs7O0FBNWpCQSw4QkFBOEI7QUFDZCx5QkFBYyxHQUFHLEtBQUssQ0FBQztBQUV2QyxxQ0FBcUM7QUFDckIsNkJBQWtCLEdBQUcsd0JBQXdCLENBQUM7QUFDOUQsc0NBQXNDO0FBQ3RCLDhCQUFtQixHQUFHLHlCQUF5QixDQUFDO0FBQ2hFLG9EQUFvRDtBQUNwQyw0Q0FBaUMsR0FDaEQsdUNBQXVDLENBQUM7QUFDekMsc0NBQXNDO0FBQ3RCLDRCQUFpQixHQUFHLHVCQUF1QixDQUFDO0FBQzVELGdEQUFnRDtBQUNoQyx3Q0FBNkIsR0FDNUMsbUNBQW1DLENBQUM7QUFDckMsaUVBQWlFO0FBQ2pELDBDQUErQixHQUM5QyxxQ0FBcUMsQ0FBQztBQUN2QyxxQ0FBcUM7QUFDckIsNkJBQWtCLEdBQUcsd0JBQXdCLENBQUM7QUFDOUQsbUNBQW1DO0FBQ25CLDJCQUFnQixHQUFHLHNCQUFzQixDQUFDO0FBQzFELDRDQUE0QztBQUM1QixvQ0FBeUIsR0FBRywrQkFBK0IsQ0FBQztBQUM1RSw4Q0FBOEM7QUFDOUIsc0NBQTJCLEdBQzFDLGlDQUFpQyxDQUFDO0FBQ25DLHdDQUF3QztBQUN4QixnQ0FBcUIsR0FBRywyQkFBMkIsQ0FBQztBQUNwRSx1Q0FBdUM7QUFDdkIsK0JBQW9CLEdBQUcsMEJBQTBCLENBQUM7QUFDbEUsaUNBQWlDO0FBQ2pCLHlCQUFjLEdBQUcsb0JBQW9CLENBQUM7QUFDdEQsa0NBQWtDO0FBQ2xCLDBCQUFlLEdBQUcscUJBQXFCLENBQUM7QUFDeEQsNENB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O0FBQ3hCLHNCQUFRLEdBQUcsYUFBYSxDQUFDO0FBQ3pDLHlDQUF5QztBQUN6QixtQkFBSyxHQUFHLFdBQVcsQ0FBQztBQUNwQyxtREFBbUQ7QUFDbkMsaUNBQW1CLEdBQUcsd0JBQXdCLENBQUM7QUFDL0QsaURBQWlEO0FBQ2pDLCtCQUFpQixHQUFHLHNCQUFzQixDQUFDO0FBQzNELCtDQUErQztBQUMvQiwwQkFBWSxHQUFHLGlCQUFpQixDQUFDO0FBQ2pELGdEQUFnRDtBQUNoQywrQkFBaUIsR0FBRyxxQkFBcUIsQ0FBQztBQUMxRCxxREFBcUQ7QUFDckMsa0NBQW9CLEdBQUcsd0JBQXdCLENBQUM7QUFDaEUsb0NBQW9DO0FBQ3BCLGlCQUFHLEdBQUcsU0FBUyxDQUFDO0FBQ2hDLDJEQUEyRDtBQUMzQyw0QkFBYyxHQUFHLDhCQUE4QixDQUFDO0FBQ2hFLGlFQUFpRTtBQUNqRCxrQ0FBb0IsR0FBRyxvQ0FBb0MsQ0FBQztBQUM1RSx3REFBd0Q7QUFDeEMseUJBQVcsR0FBRywyQkFBMkIsQ0FBQztBQUMxRCxtREFBbUQ7QUFDbkMsb0JBQU0sR0FBRyxzQkFBc0IsQ0FBQztBQUNoRCxtREFBbUQ7QUFDbkMsb0JBQU0sR0FBRyxzQkFBc0IsQ0FBQztBQUNoRCxtREFBbUQ7QUFDbkMsb0JBQU0sR0FBRyxzQkFBc0IsQ0FBQztBQUNoRCxtREFBbUQ7QUFDbkMsb0JBQU0sR0FBRyxzQkFBc0IsQ0FBQztBQUNoRCxvREFBb0Q7QUFDcEMscUJBQU8sR0FBRyx1QkFBdUIsQ0FBQztBQUNsRCxtREFBbUQ7QUFDbkMsb0JBQU0sR0FBRyxzQkFBc0IsQ0FBQztBQUNoRCx1REFBdUQ7QUFDdkMsd0JBQVUsR0FBRywwQkFBMEIsQ0FBQztBQUN4RCx5REFBeUQ7QUFDekMsMEJBQVksR0FBRyw0QkFBNEIsQ0FBQztBQUM1RCx1REFBdUQ7QUFDdkMsd0JBQVUsR0FBRywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBBVVRPLUdFTkVSQVRFRCBGSUxFIOKAlCBETyBOT1QgRURJVCBNQU5VQUxMWVxuLy8gR2VuZXJhdGVkIGZyb20gQVdTIFNlcnZpY2UgQXV0aG9yaXphdGlvbiBSZWZlcmVuY2UgZGF0YVxuLy8gU291cmNlOiBkYXRhL3NlcnZpY2UtcmVmZXJlbmNlL3Jkcy5qc29uXG4vLyBSdW4gYG5weCBwcm9qZW4gZ2VuZXJhdGUtY29uc3RhbnRzYCB0byByZWdlbmVyYXRlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIElBTSBhY3Rpb24gY29uc3RhbnRzIGZvciB0aGUgcmRzIHNlcnZpY2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBSRFNBY3Rpb25zIHtcblx0LyoqIFRoZSBJQU0gc2VydmljZSBwcmVmaXguICovXG5cdHN0YXRpYyByZWFkb25seSBTRVJWSUNFX1BSRUZJWCA9IFwicmRzXCI7XG5cblx0LyoqIFtXcml0ZV0gcmRzOkFkZFJvbGVUb0RCQ2x1c3RlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWRkUm9sZVRvREJDbHVzdGVyID0gXCJyZHM6QWRkUm9sZVRvREJDbHVzdGVyXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpBZGRSb2xlVG9EQkluc3RhbmNlICovXG5cdHN0YXRpYyByZWFkb25seSBBZGRSb2xlVG9EQkluc3RhbmNlID0gXCJyZHM6QWRkUm9sZVRvREJJbnN0YW5jZVwiO1xuXHQvKiogW1dyaXRlXSByZHM6QWRkU291cmNlSWRlbnRpZmllclRvU3Vic2NyaXB0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBBZGRTb3VyY2VJZGVudGlmaWVyVG9TdWJzY3JpcHRpb24gPVxuXHRcdFwicmRzOkFkZFNvdXJjZUlkZW50aWZpZXJUb1N1YnNjcmlwdGlvblwiO1xuXHQvKiogW1RhZ2dpbmddIHJkczpBZGRUYWdzVG9SZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWRkVGFnc1RvUmVzb3VyY2UgPSBcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiO1xuXHQvKiogW1dyaXRlXSByZHM6QXBwbHlQZW5kaW5nTWFpbnRlbmFuY2VBY3Rpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFwcGx5UGVuZGluZ01haW50ZW5hbmNlQWN0aW9uID1cblx0XHRcInJkczpBcHBseVBlbmRpbmdNYWludGVuYW5jZUFjdGlvblwiO1xuXHQvKiogW1Blcm1pc3Npb25NYW5hZ2VtZW50XSByZHM6QXV0aG9yaXplREJTZWN1cml0eUdyb3VwSW5ncmVzcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQXV0aG9yaXplREJTZWN1cml0eUdyb3VwSW5ncmVzcyA9XG5cdFx0XCJyZHM6QXV0aG9yaXplREJTZWN1cml0eUdyb3VwSW5ncmVzc1wiO1xuXHQvKiogW1dyaXRlXSByZHM6QmFja3RyYWNrREJDbHVzdGVyICovXG5cdHN0YXRpYyByZWFkb25seSBCYWNrdHJhY2tEQkNsdXN0ZXIgPSBcInJkczpCYWNrdHJhY2tEQkNsdXN0ZXJcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNhbmNlbEV4cG9ydFRhc2sgKi9cblx0c3RhdGljIHJlYWRvbmx5IENhbmNlbEV4cG9ydFRhc2sgPSBcInJkczpDYW5jZWxFeHBvcnRUYXNrXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDb3B5Q3VzdG9tREJFbmdpbmVWZXJzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5Q3VzdG9tREJFbmdpbmVWZXJzaW9uID0gXCJyZHM6Q29weUN1c3RvbURCRW5naW5lVmVyc2lvblwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q29weURCQ2x1c3RlclBhcmFtZXRlckdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5REJDbHVzdGVyUGFyYW1ldGVyR3JvdXAgPVxuXHRcdFwicmRzOkNvcHlEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q29weURCQ2x1c3RlclNuYXBzaG90ICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5REJDbHVzdGVyU25hcHNob3QgPSBcInJkczpDb3B5REJDbHVzdGVyU25hcHNob3RcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNvcHlEQlBhcmFtZXRlckdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5REJQYXJhbWV0ZXJHcm91cCA9IFwicmRzOkNvcHlEQlBhcmFtZXRlckdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDb3B5REJTbmFwc2hvdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ29weURCU25hcHNob3QgPSBcInJkczpDb3B5REJTbmFwc2hvdFwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q29weU9wdGlvbkdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5T3B0aW9uR3JvdXAgPSBcInJkczpDb3B5T3B0aW9uR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZUJsdWVHcmVlbkRlcGxveW1lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUJsdWVHcmVlbkRlcGxveW1lbnQgPSBcInJkczpDcmVhdGVCbHVlR3JlZW5EZXBsb3ltZW50XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVDdXN0b21EQkVuZ2luZVZlcnNpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUN1c3RvbURCRW5naW5lVmVyc2lvbiA9XG5cdFx0XCJyZHM6Q3JlYXRlQ3VzdG9tREJFbmdpbmVWZXJzaW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVEQkNsdXN0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCQ2x1c3RlciA9IFwicmRzOkNyZWF0ZURCQ2x1c3RlclwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlREJDbHVzdGVyRW5kcG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCQ2x1c3RlckVuZHBvaW50ID0gXCJyZHM6Q3JlYXRlREJDbHVzdGVyRW5kcG9pbnRcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCA9XG5cdFx0XCJyZHM6Q3JlYXRlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZURCQ2x1c3RlclNuYXBzaG90ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQkNsdXN0ZXJTbmFwc2hvdCA9IFwicmRzOkNyZWF0ZURCQ2x1c3RlclNuYXBzaG90XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVEQkluc3RhbmNlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQkluc3RhbmNlID0gXCJyZHM6Q3JlYXRlREJJbnN0YW5jZVwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlREJJbnN0YW5jZVJlYWRSZXBsaWNhICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQkluc3RhbmNlUmVhZFJlcGxpY2EgPVxuXHRcdFwicmRzOkNyZWF0ZURCSW5zdGFuY2VSZWFkUmVwbGljYVwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlREJQYXJhbWV0ZXJHcm91cCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJQYXJhbWV0ZXJHcm91cCA9IFwicmRzOkNyZWF0ZURCUGFyYW1ldGVyR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZURCUHJveHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCUHJveHkgPSBcInJkczpDcmVhdGVEQlByb3h5XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVEQlByb3h5RW5kcG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCUHJveHlFbmRwb2ludCA9IFwicmRzOkNyZWF0ZURCUHJveHlFbmRwb2ludFwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlREJTZWN1cml0eUdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlNlY3VyaXR5R3JvdXAgPSBcInJkczpDcmVhdGVEQlNlY3VyaXR5R3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZURCU2hhcmRHcm91cCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJTaGFyZEdyb3VwID0gXCJyZHM6Q3JlYXRlREJTaGFyZEdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVEQlNuYXBzaG90ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlNuYXBzaG90ID0gXCJyZHM6Q3JlYXRlREJTbmFwc2hvdFwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlREJTdWJuZXRHcm91cCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJTdWJuZXRHcm91cCA9IFwicmRzOkNyZWF0ZURCU3VibmV0R3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZUV2ZW50U3Vic2NyaXB0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFdmVudFN1YnNjcmlwdGlvbiA9IFwicmRzOkNyZWF0ZUV2ZW50U3Vic2NyaXB0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVHbG9iYWxDbHVzdGVyICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVHbG9iYWxDbHVzdGVyID0gXCJyZHM6Q3JlYXRlR2xvYmFsQ2x1c3RlclwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlSW50ZWdyYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUludGVncmF0aW9uID0gXCJyZHM6Q3JlYXRlSW50ZWdyYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZU9wdGlvbkdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVPcHRpb25Hcm91cCA9IFwicmRzOkNyZWF0ZU9wdGlvbkdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVUZW5hbnREYXRhYmFzZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGVuYW50RGF0YWJhc2UgPSBcInJkczpDcmVhdGVUZW5hbnREYXRhYmFzZVwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3Jvc3NSZWdpb25Db21tdW5pY2F0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBDcm9zc1JlZ2lvbkNvbW11bmljYXRpb24gPSBcInJkczpDcm9zc1JlZ2lvbkNvbW11bmljYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZUJsdWVHcmVlbkRlcGxveW1lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUJsdWVHcmVlbkRlcGxveW1lbnQgPSBcInJkczpEZWxldGVCbHVlR3JlZW5EZXBsb3ltZW50XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVDdXN0b21EQkVuZ2luZVZlcnNpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUN1c3RvbURCRW5naW5lVmVyc2lvbiA9XG5cdFx0XCJyZHM6RGVsZXRlQ3VzdG9tREJFbmdpbmVWZXJzaW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVEQkNsdXN0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCQ2x1c3RlciA9IFwicmRzOkRlbGV0ZURCQ2x1c3RlclwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlREJDbHVzdGVyQXV0b21hdGVkQmFja3VwICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQkNsdXN0ZXJBdXRvbWF0ZWRCYWNrdXAgPVxuXHRcdFwicmRzOkRlbGV0ZURCQ2x1c3RlckF1dG9tYXRlZEJhY2t1cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlREJDbHVzdGVyRW5kcG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCQ2x1c3RlckVuZHBvaW50ID0gXCJyZHM6RGVsZXRlREJDbHVzdGVyRW5kcG9pbnRcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCA9XG5cdFx0XCJyZHM6RGVsZXRlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZURCQ2x1c3RlclNuYXBzaG90ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQkNsdXN0ZXJTbmFwc2hvdCA9IFwicmRzOkRlbGV0ZURCQ2x1c3RlclNuYXBzaG90XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVEQkluc3RhbmNlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQkluc3RhbmNlID0gXCJyZHM6RGVsZXRlREJJbnN0YW5jZVwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cCA9XG5cdFx0XCJyZHM6RGVsZXRlREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlREJQYXJhbWV0ZXJHcm91cCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJQYXJhbWV0ZXJHcm91cCA9IFwicmRzOkRlbGV0ZURCUGFyYW1ldGVyR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZURCUHJveHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCUHJveHkgPSBcInJkczpEZWxldGVEQlByb3h5XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVEQlByb3h5RW5kcG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCUHJveHlFbmRwb2ludCA9IFwicmRzOkRlbGV0ZURCUHJveHlFbmRwb2ludFwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlREJTZWN1cml0eUdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQlNlY3VyaXR5R3JvdXAgPSBcInJkczpEZWxldGVEQlNlY3VyaXR5R3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZURCU2hhcmRHcm91cCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJTaGFyZEdyb3VwID0gXCJyZHM6RGVsZXRlREJTaGFyZEdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVEQlNuYXBzaG90ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQlNuYXBzaG90ID0gXCJyZHM6RGVsZXRlREJTbmFwc2hvdFwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlREJTdWJuZXRHcm91cCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJTdWJuZXRHcm91cCA9IFwicmRzOkRlbGV0ZURCU3VibmV0R3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZUV2ZW50U3Vic2NyaXB0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFdmVudFN1YnNjcmlwdGlvbiA9IFwicmRzOkRlbGV0ZUV2ZW50U3Vic2NyaXB0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVHbG9iYWxDbHVzdGVyICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHbG9iYWxDbHVzdGVyID0gXCJyZHM6RGVsZXRlR2xvYmFsQ2x1c3RlclwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlSW50ZWdyYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUludGVncmF0aW9uID0gXCJyZHM6RGVsZXRlSW50ZWdyYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZU9wdGlvbkdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVPcHRpb25Hcm91cCA9IFwicmRzOkRlbGV0ZU9wdGlvbkdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVUZW5hbnREYXRhYmFzZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGVuYW50RGF0YWJhc2UgPSBcInJkczpEZWxldGVUZW5hbnREYXRhYmFzZVwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVyZWdpc3RlckRCUHJveHlUYXJnZXRzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXJlZ2lzdGVyREJQcm94eVRhcmdldHMgPSBcInJkczpEZXJlZ2lzdGVyREJQcm94eVRhcmdldHNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVBY2NvdW50QXR0cmlidXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVBY2NvdW50QXR0cmlidXRlcyA9IFwicmRzOkRlc2NyaWJlQWNjb3VudEF0dHJpYnV0ZXNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVCbHVlR3JlZW5EZXBsb3ltZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVCbHVlR3JlZW5EZXBsb3ltZW50cyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVCbHVlR3JlZW5EZXBsb3ltZW50c1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZUNlcnRpZmljYXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVDZXJ0aWZpY2F0ZXMgPSBcInJkczpEZXNjcmliZUNlcnRpZmljYXRlc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCQ2x1c3RlckF1dG9tYXRlZEJhY2t1cHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyQXV0b21hdGVkQmFja3VwcyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVEQkNsdXN0ZXJBdXRvbWF0ZWRCYWNrdXBzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJDbHVzdGVyQmFja3RyYWNrcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkNsdXN0ZXJCYWNrdHJhY2tzID1cblx0XHRcInJkczpEZXNjcmliZURCQ2x1c3RlckJhY2t0cmFja3NcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQkNsdXN0ZXJFbmRwb2ludHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyRW5kcG9pbnRzID0gXCJyZHM6RGVzY3JpYmVEQkNsdXN0ZXJFbmRwb2ludHNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXBzID1cblx0XHRcInJkczpEZXNjcmliZURCQ2x1c3RlclBhcmFtZXRlckdyb3Vwc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCQ2x1c3RlclBhcmFtZXRlcnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyUGFyYW1ldGVycyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVEQkNsdXN0ZXJQYXJhbWV0ZXJzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJDbHVzdGVyU25hcHNob3RBdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCQ2x1c3RlclNuYXBzaG90QXR0cmlidXRlcyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVEQkNsdXN0ZXJTbmFwc2hvdEF0dHJpYnV0ZXNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQkNsdXN0ZXJTbmFwc2hvdHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyU25hcHNob3RzID0gXCJyZHM6RGVzY3JpYmVEQkNsdXN0ZXJTbmFwc2hvdHNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQkNsdXN0ZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCQ2x1c3RlcnMgPSBcInJkczpEZXNjcmliZURCQ2x1c3RlcnNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQkVuZ2luZVZlcnNpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCRW5naW5lVmVyc2lvbnMgPSBcInJkczpEZXNjcmliZURCRW5naW5lVmVyc2lvbnNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQkluc3RhbmNlQXV0b21hdGVkQmFja3VwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkluc3RhbmNlQXV0b21hdGVkQmFja3VwcyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVEQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCSW5zdGFuY2VzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCSW5zdGFuY2VzID0gXCJyZHM6RGVzY3JpYmVEQkluc3RhbmNlc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCTG9nRmlsZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJMb2dGaWxlcyA9IFwicmRzOkRlc2NyaWJlREJMb2dGaWxlc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCTWFqb3JFbmdpbmVWZXJzaW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQk1ham9yRW5naW5lVmVyc2lvbnMgPVxuXHRcdFwicmRzOkRlc2NyaWJlREJNYWpvckVuZ2luZVZlcnNpb25zXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJQYXJhbWV0ZXJHcm91cHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJQYXJhbWV0ZXJHcm91cHMgPSBcInJkczpEZXNjcmliZURCUGFyYW1ldGVyR3JvdXBzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJQYXJhbWV0ZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCUGFyYW1ldGVycyA9IFwicmRzOkRlc2NyaWJlREJQYXJhbWV0ZXJzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJQcm94aWVzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCUHJveGllcyA9IFwicmRzOkRlc2NyaWJlREJQcm94aWVzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJQcm94eUVuZHBvaW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlByb3h5RW5kcG9pbnRzID0gXCJyZHM6RGVzY3JpYmVEQlByb3h5RW5kcG9pbnRzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJQcm94eVRhcmdldEdyb3VwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlByb3h5VGFyZ2V0R3JvdXBzID1cblx0XHRcInJkczpEZXNjcmliZURCUHJveHlUYXJnZXRHcm91cHNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQlByb3h5VGFyZ2V0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlByb3h5VGFyZ2V0cyA9IFwicmRzOkRlc2NyaWJlREJQcm94eVRhcmdldHNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQlJlY29tbWVuZGF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlJlY29tbWVuZGF0aW9ucyA9IFwicmRzOkRlc2NyaWJlREJSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQlNlY3VyaXR5R3JvdXBzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCU2VjdXJpdHlHcm91cHMgPSBcInJkczpEZXNjcmliZURCU2VjdXJpdHlHcm91cHNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQlNoYXJkR3JvdXBzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCU2hhcmRHcm91cHMgPSBcInJkczpEZXNjcmliZURCU2hhcmRHcm91cHNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQlNuYXBzaG90QXR0cmlidXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlNuYXBzaG90QXR0cmlidXRlcyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVEQlNuYXBzaG90QXR0cmlidXRlc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCU25hcHNob3RUZW5hbnREYXRhYmFzZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJTbmFwc2hvdFRlbmFudERhdGFiYXNlcyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVEQlNuYXBzaG90VGVuYW50RGF0YWJhc2VzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJTbmFwc2hvdHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJTbmFwc2hvdHMgPSBcInJkczpEZXNjcmliZURCU25hcHNob3RzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJTdWJuZXRHcm91cHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJTdWJuZXRHcm91cHMgPSBcInJkczpEZXNjcmliZURCU3VibmV0R3JvdXBzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlRW5naW5lRGVmYXVsdENsdXN0ZXJQYXJhbWV0ZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUVuZ2luZURlZmF1bHRDbHVzdGVyUGFyYW1ldGVycyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVFbmdpbmVEZWZhdWx0Q2x1c3RlclBhcmFtZXRlcnNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVFbmdpbmVEZWZhdWx0UGFyYW1ldGVycyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVFbmdpbmVEZWZhdWx0UGFyYW1ldGVycyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVFbmdpbmVEZWZhdWx0UGFyYW1ldGVyc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZUV2ZW50Q2F0ZWdvcmllcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVFdmVudENhdGVnb3JpZXMgPSBcInJkczpEZXNjcmliZUV2ZW50Q2F0ZWdvcmllc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZUV2ZW50U3Vic2NyaXB0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVFdmVudFN1YnNjcmlwdGlvbnMgPSBcInJkczpEZXNjcmliZUV2ZW50U3Vic2NyaXB0aW9uc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZUV2ZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVFdmVudHMgPSBcInJkczpEZXNjcmliZUV2ZW50c1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZUV4cG9ydFRhc2tzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUV4cG9ydFRhc2tzID0gXCJyZHM6RGVzY3JpYmVFeHBvcnRUYXNrc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZUdsb2JhbENsdXN0ZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUdsb2JhbENsdXN0ZXJzID0gXCJyZHM6RGVzY3JpYmVHbG9iYWxDbHVzdGVyc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZUludGVncmF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVJbnRlZ3JhdGlvbnMgPSBcInJkczpEZXNjcmliZUludGVncmF0aW9uc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZU9wdGlvbkdyb3VwT3B0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVPcHRpb25Hcm91cE9wdGlvbnMgPSBcInJkczpEZXNjcmliZU9wdGlvbkdyb3VwT3B0aW9uc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZU9wdGlvbkdyb3VwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVPcHRpb25Hcm91cHMgPSBcInJkczpEZXNjcmliZU9wdGlvbkdyb3Vwc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZU9yZGVyYWJsZURCSW5zdGFuY2VPcHRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZU9yZGVyYWJsZURCSW5zdGFuY2VPcHRpb25zID1cblx0XHRcInJkczpEZXNjcmliZU9yZGVyYWJsZURCSW5zdGFuY2VPcHRpb25zXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlUGVuZGluZ01haW50ZW5hbmNlQWN0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVQZW5kaW5nTWFpbnRlbmFuY2VBY3Rpb25zID1cblx0XHRcInJkczpEZXNjcmliZVBlbmRpbmdNYWludGVuYW5jZUFjdGlvbnNcIjtcblx0LyoqIFtSZWFkXSByZHM6RGVzY3JpYmVSZWNvbW1lbmRhdGlvbkdyb3VwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZWNvbW1lbmRhdGlvbkdyb3VwcyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVSZWNvbW1lbmRhdGlvbkdyb3Vwc1wiO1xuXHQvKiogW1JlYWRdIHJkczpEZXNjcmliZVJlY29tbWVuZGF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZWNvbW1lbmRhdGlvbnMgPSBcInJkczpEZXNjcmliZVJlY29tbWVuZGF0aW9uc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZVJlc2VydmVkREJJbnN0YW5jZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlUmVzZXJ2ZWREQkluc3RhbmNlcyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVSZXNlcnZlZERCSW5zdGFuY2VzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlUmVzZXJ2ZWREQkluc3RhbmNlc09mZmVyaW5ncyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZXNlcnZlZERCSW5zdGFuY2VzT2ZmZXJpbmdzID1cblx0XHRcInJkczpEZXNjcmliZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZ3NcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVTb3VyY2VSZWdpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVNvdXJjZVJlZ2lvbnMgPSBcInJkczpEZXNjcmliZVNvdXJjZVJlZ2lvbnNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVUZW5hbnREYXRhYmFzZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlVGVuYW50RGF0YWJhc2VzID0gXCJyZHM6RGVzY3JpYmVUZW5hbnREYXRhYmFzZXNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVWYWxpZERCSW5zdGFuY2VNb2RpZmljYXRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVZhbGlkREJJbnN0YW5jZU1vZGlmaWNhdGlvbnMgPVxuXHRcdFwicmRzOkRlc2NyaWJlVmFsaWREQkluc3RhbmNlTW9kaWZpY2F0aW9uc1wiO1xuXHQvKiogW1dyaXRlXSByZHM6RGlzYWJsZUh0dHBFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGlzYWJsZUh0dHBFbmRwb2ludCA9IFwicmRzOkRpc2FibGVIdHRwRW5kcG9pbnRcIjtcblx0LyoqIFtSZWFkXSByZHM6RG93bmxvYWRDb21wbGV0ZURCTG9nRmlsZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRG93bmxvYWRDb21wbGV0ZURCTG9nRmlsZSA9IFwicmRzOkRvd25sb2FkQ29tcGxldGVEQkxvZ0ZpbGVcIjtcblx0LyoqIFtSZWFkXSByZHM6RG93bmxvYWREQkxvZ0ZpbGVQb3J0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEb3dubG9hZERCTG9nRmlsZVBvcnRpb24gPSBcInJkczpEb3dubG9hZERCTG9nRmlsZVBvcnRpb25cIjtcblx0LyoqIFtXcml0ZV0gcmRzOkVuYWJsZUh0dHBFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRW5hYmxlSHR0cEVuZHBvaW50ID0gXCJyZHM6RW5hYmxlSHR0cEVuZHBvaW50XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpGYWlsb3ZlckRCQ2x1c3RlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRmFpbG92ZXJEQkNsdXN0ZXIgPSBcInJkczpGYWlsb3ZlckRCQ2x1c3RlclwiO1xuXHQvKiogW1dyaXRlXSByZHM6RmFpbG92ZXJHbG9iYWxDbHVzdGVyICovXG5cdHN0YXRpYyByZWFkb25seSBGYWlsb3Zlckdsb2JhbENsdXN0ZXIgPSBcInJkczpGYWlsb3Zlckdsb2JhbENsdXN0ZXJcIjtcblx0LyoqIFtSZWFkXSByZHM6TGlzdFRhZ3NGb3JSZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRhZ3NGb3JSZXNvdXJjZSA9IFwicmRzOkxpc3RUYWdzRm9yUmVzb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeUFjdGl2aXR5U3RyZWFtICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlBY3Rpdml0eVN0cmVhbSA9IFwicmRzOk1vZGlmeUFjdGl2aXR5U3RyZWFtXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlDZXJ0aWZpY2F0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeUNlcnRpZmljYXRlcyA9IFwicmRzOk1vZGlmeUNlcnRpZmljYXRlc1wiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5Q3VycmVudERCQ2x1c3RlckNhcGFjaXR5ICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlDdXJyZW50REJDbHVzdGVyQ2FwYWNpdHkgPVxuXHRcdFwicmRzOk1vZGlmeUN1cnJlbnREQkNsdXN0ZXJDYXBhY2l0eVwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5Q3VzdG9tREJFbmdpbmVWZXJzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlDdXN0b21EQkVuZ2luZVZlcnNpb24gPVxuXHRcdFwicmRzOk1vZGlmeUN1c3RvbURCRW5naW5lVmVyc2lvblwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5REJDbHVzdGVyICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQkNsdXN0ZXIgPSBcInJkczpNb2RpZnlEQkNsdXN0ZXJcIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeURCQ2x1c3RlckVuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQkNsdXN0ZXJFbmRwb2ludCA9IFwicmRzOk1vZGlmeURCQ2x1c3RlckVuZHBvaW50XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJDbHVzdGVyUGFyYW1ldGVyR3JvdXAgPVxuXHRcdFwicmRzOk1vZGlmeURCQ2x1c3RlclBhcmFtZXRlckdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlEQkNsdXN0ZXJTbmFwc2hvdEF0dHJpYnV0ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJDbHVzdGVyU25hcHNob3RBdHRyaWJ1dGUgPVxuXHRcdFwicmRzOk1vZGlmeURCQ2x1c3RlclNuYXBzaG90QXR0cmlidXRlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlEQkluc3RhbmNlICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQkluc3RhbmNlID0gXCJyZHM6TW9kaWZ5REJJbnN0YW5jZVwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5REJQYXJhbWV0ZXJHcm91cCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJQYXJhbWV0ZXJHcm91cCA9IFwicmRzOk1vZGlmeURCUGFyYW1ldGVyR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeURCUHJveHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCUHJveHkgPSBcInJkczpNb2RpZnlEQlByb3h5XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlEQlByb3h5RW5kcG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCUHJveHlFbmRwb2ludCA9IFwicmRzOk1vZGlmeURCUHJveHlFbmRwb2ludFwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5REJQcm94eVRhcmdldEdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQlByb3h5VGFyZ2V0R3JvdXAgPSBcInJkczpNb2RpZnlEQlByb3h5VGFyZ2V0R3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeURCUmVjb21tZW5kYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCUmVjb21tZW5kYXRpb24gPSBcInJkczpNb2RpZnlEQlJlY29tbWVuZGF0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlEQlNoYXJkR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCU2hhcmRHcm91cCA9IFwicmRzOk1vZGlmeURCU2hhcmRHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5REJTbmFwc2hvdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJTbmFwc2hvdCA9IFwicmRzOk1vZGlmeURCU25hcHNob3RcIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeURCU25hcHNob3RBdHRyaWJ1dGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCU25hcHNob3RBdHRyaWJ1dGUgPSBcInJkczpNb2RpZnlEQlNuYXBzaG90QXR0cmlidXRlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlEQlN1Ym5ldEdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQlN1Ym5ldEdyb3VwID0gXCJyZHM6TW9kaWZ5REJTdWJuZXRHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5RXZlbnRTdWJzY3JpcHRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeUV2ZW50U3Vic2NyaXB0aW9uID0gXCJyZHM6TW9kaWZ5RXZlbnRTdWJzY3JpcHRpb25cIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeUdsb2JhbENsdXN0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeUdsb2JhbENsdXN0ZXIgPSBcInJkczpNb2RpZnlHbG9iYWxDbHVzdGVyXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlJbnRlZ3JhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5SW50ZWdyYXRpb24gPSBcInJkczpNb2RpZnlJbnRlZ3JhdGlvblwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5T3B0aW9uR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeU9wdGlvbkdyb3VwID0gXCJyZHM6TW9kaWZ5T3B0aW9uR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeVJlY29tbWVuZGF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlSZWNvbW1lbmRhdGlvbiA9IFwicmRzOk1vZGlmeVJlY29tbWVuZGF0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlUZW5hbnREYXRhYmFzZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5VGVuYW50RGF0YWJhc2UgPSBcInJkczpNb2RpZnlUZW5hbnREYXRhYmFzZVwiO1xuXHQvKiogW1dyaXRlXSByZHM6UHJvbW90ZVJlYWRSZXBsaWNhICovXG5cdHN0YXRpYyByZWFkb25seSBQcm9tb3RlUmVhZFJlcGxpY2EgPSBcInJkczpQcm9tb3RlUmVhZFJlcGxpY2FcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlByb21vdGVSZWFkUmVwbGljYURCQ2x1c3RlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHJvbW90ZVJlYWRSZXBsaWNhREJDbHVzdGVyID1cblx0XHRcInJkczpQcm9tb3RlUmVhZFJlcGxpY2FEQkNsdXN0ZXJcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlB1cmNoYXNlUmVzZXJ2ZWREQkluc3RhbmNlc09mZmVyaW5nICovXG5cdHN0YXRpYyByZWFkb25seSBQdXJjaGFzZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZyA9XG5cdFx0XCJyZHM6UHVyY2hhc2VSZXNlcnZlZERCSW5zdGFuY2VzT2ZmZXJpbmdcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlYm9vdERCQ2x1c3RlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVib290REJDbHVzdGVyID0gXCJyZHM6UmVib290REJDbHVzdGVyXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpSZWJvb3REQkluc3RhbmNlICovXG5cdHN0YXRpYyByZWFkb25seSBSZWJvb3REQkluc3RhbmNlID0gXCJyZHM6UmVib290REJJbnN0YW5jZVwiO1xuXHQvKiogW1dyaXRlXSByZHM6UmVib290REJTaGFyZEdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBSZWJvb3REQlNoYXJkR3JvdXAgPSBcInJkczpSZWJvb3REQlNoYXJkR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlZ2lzdGVyREJQcm94eVRhcmdldHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlZ2lzdGVyREJQcm94eVRhcmdldHMgPSBcInJkczpSZWdpc3RlckRCUHJveHlUYXJnZXRzXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpSZW1vdmVGcm9tR2xvYmFsQ2x1c3RlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVtb3ZlRnJvbUdsb2JhbENsdXN0ZXIgPSBcInJkczpSZW1vdmVGcm9tR2xvYmFsQ2x1c3RlclwiO1xuXHQvKiogW1dyaXRlXSByZHM6UmVtb3ZlUm9sZUZyb21EQkNsdXN0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlbW92ZVJvbGVGcm9tREJDbHVzdGVyID0gXCJyZHM6UmVtb3ZlUm9sZUZyb21EQkNsdXN0ZXJcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlbW92ZVJvbGVGcm9tREJJbnN0YW5jZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVtb3ZlUm9sZUZyb21EQkluc3RhbmNlID0gXCJyZHM6UmVtb3ZlUm9sZUZyb21EQkluc3RhbmNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpSZW1vdmVTb3VyY2VJZGVudGlmaWVyRnJvbVN1YnNjcmlwdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVtb3ZlU291cmNlSWRlbnRpZmllckZyb21TdWJzY3JpcHRpb24gPVxuXHRcdFwicmRzOlJlbW92ZVNvdXJjZUlkZW50aWZpZXJGcm9tU3Vic2NyaXB0aW9uXCI7XG5cdC8qKiBbVGFnZ2luZ10gcmRzOlJlbW92ZVRhZ3NGcm9tUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlbW92ZVRhZ3NGcm9tUmVzb3VyY2UgPSBcInJkczpSZW1vdmVUYWdzRnJvbVJlc291cmNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpSZXNldERCQ2x1c3RlclBhcmFtZXRlckdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBSZXNldERCQ2x1c3RlclBhcmFtZXRlckdyb3VwID1cblx0XHRcInJkczpSZXNldERCQ2x1c3RlclBhcmFtZXRlckdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpSZXNldERCUGFyYW1ldGVyR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc2V0REJQYXJhbWV0ZXJHcm91cCA9IFwicmRzOlJlc2V0REJQYXJhbWV0ZXJHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6UmVzdG9yZURCQ2x1c3RlckZyb21TMyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzdG9yZURCQ2x1c3RlckZyb21TMyA9IFwicmRzOlJlc3RvcmVEQkNsdXN0ZXJGcm9tUzNcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlc3RvcmVEQkNsdXN0ZXJGcm9tU25hcHNob3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkNsdXN0ZXJGcm9tU25hcHNob3QgPVxuXHRcdFwicmRzOlJlc3RvcmVEQkNsdXN0ZXJGcm9tU25hcHNob3RcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlc3RvcmVEQkNsdXN0ZXJUb1BvaW50SW5UaW1lICovXG5cdHN0YXRpYyByZWFkb25seSBSZXN0b3JlREJDbHVzdGVyVG9Qb2ludEluVGltZSA9XG5cdFx0XCJyZHM6UmVzdG9yZURCQ2x1c3RlclRvUG9pbnRJblRpbWVcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlc3RvcmVEQkluc3RhbmNlRnJvbURCU25hcHNob3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkluc3RhbmNlRnJvbURCU25hcHNob3QgPVxuXHRcdFwicmRzOlJlc3RvcmVEQkluc3RhbmNlRnJvbURCU25hcHNob3RcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlc3RvcmVEQkluc3RhbmNlRnJvbVMzICovXG5cdHN0YXRpYyByZWFkb25seSBSZXN0b3JlREJJbnN0YW5jZUZyb21TMyA9IFwicmRzOlJlc3RvcmVEQkluc3RhbmNlRnJvbVMzXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpSZXN0b3JlREJJbnN0YW5jZVRvUG9pbnRJblRpbWUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkluc3RhbmNlVG9Qb2ludEluVGltZSA9XG5cdFx0XCJyZHM6UmVzdG9yZURCSW5zdGFuY2VUb1BvaW50SW5UaW1lXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpSZXZva2VEQlNlY3VyaXR5R3JvdXBJbmdyZXNzICovXG5cdHN0YXRpYyByZWFkb25seSBSZXZva2VEQlNlY3VyaXR5R3JvdXBJbmdyZXNzID1cblx0XHRcInJkczpSZXZva2VEQlNlY3VyaXR5R3JvdXBJbmdyZXNzXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpTdGFydEFjdGl2aXR5U3RyZWFtICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEFjdGl2aXR5U3RyZWFtID0gXCJyZHM6U3RhcnRBY3Rpdml0eVN0cmVhbVwiO1xuXHQvKiogW1dyaXRlXSByZHM6U3RhcnREQkNsdXN0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0REJDbHVzdGVyID0gXCJyZHM6U3RhcnREQkNsdXN0ZXJcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlN0YXJ0REJJbnN0YW5jZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnREQkluc3RhbmNlID0gXCJyZHM6U3RhcnREQkluc3RhbmNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpTdGFydERCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzUmVwbGljYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0REJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHNSZXBsaWNhdGlvbiA9XG5cdFx0XCJyZHM6U3RhcnREQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1JlcGxpY2F0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpTdGFydEV4cG9ydFRhc2sgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0RXhwb3J0VGFzayA9IFwicmRzOlN0YXJ0RXhwb3J0VGFza1wiO1xuXHQvKiogW1dyaXRlXSByZHM6U3RvcEFjdGl2aXR5U3RyZWFtICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wQWN0aXZpdHlTdHJlYW0gPSBcInJkczpTdG9wQWN0aXZpdHlTdHJlYW1cIjtcblx0LyoqIFtXcml0ZV0gcmRzOlN0b3BEQkNsdXN0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BEQkNsdXN0ZXIgPSBcInJkczpTdG9wREJDbHVzdGVyXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpTdG9wREJJbnN0YW5jZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcERCSW5zdGFuY2UgPSBcInJkczpTdG9wREJJbnN0YW5jZVwiO1xuXHQvKiogW1dyaXRlXSByZHM6U3RvcERCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzUmVwbGljYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BEQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1JlcGxpY2F0aW9uID1cblx0XHRcInJkczpTdG9wREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHNSZXBsaWNhdGlvblwiO1xuXHQvKiogW1dyaXRlXSByZHM6U3dpdGNob3ZlckJsdWVHcmVlbkRlcGxveW1lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN3aXRjaG92ZXJCbHVlR3JlZW5EZXBsb3ltZW50ID1cblx0XHRcInJkczpTd2l0Y2hvdmVyQmx1ZUdyZWVuRGVwbG95bWVudFwiO1xuXHQvKiogW1dyaXRlXSByZHM6U3dpdGNob3Zlckdsb2JhbENsdXN0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN3aXRjaG92ZXJHbG9iYWxDbHVzdGVyID0gXCJyZHM6U3dpdGNob3Zlckdsb2JhbENsdXN0ZXJcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlN3aXRjaG92ZXJSZWFkUmVwbGljYSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3dpdGNob3ZlclJlYWRSZXBsaWNhID0gXCJyZHM6U3dpdGNob3ZlclJlYWRSZXBsaWNhXCI7XG5cblx0LyoqIEFsbCByZWFkLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxSZWFkQWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZVJlY29tbWVuZGF0aW9uR3JvdXBzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVSZWNvbW1lbmRhdGlvbnMsXG5cdFx0UkRTQWN0aW9ucy5Eb3dubG9hZENvbXBsZXRlREJMb2dGaWxlLFxuXHRcdFJEU0FjdGlvbnMuRG93bmxvYWREQkxvZ0ZpbGVQb3J0aW9uLFxuXHRcdFJEU0FjdGlvbnMuTGlzdFRhZ3NGb3JSZXNvdXJjZSxcblx0XTtcblx0LyoqIEFsbCB3cml0ZS1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsV3JpdGVBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRSRFNBY3Rpb25zLkFkZFJvbGVUb0RCQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLkFkZFJvbGVUb0RCSW5zdGFuY2UsXG5cdFx0UkRTQWN0aW9ucy5BZGRTb3VyY2VJZGVudGlmaWVyVG9TdWJzY3JpcHRpb24sXG5cdFx0UkRTQWN0aW9ucy5BcHBseVBlbmRpbmdNYWludGVuYW5jZUFjdGlvbixcblx0XHRSRFNBY3Rpb25zLkJhY2t0cmFja0RCQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLkNhbmNlbEV4cG9ydFRhc2ssXG5cdFx0UkRTQWN0aW9ucy5Db3B5Q3VzdG9tREJFbmdpbmVWZXJzaW9uLFxuXHRcdFJEU0FjdGlvbnMuQ29weURCQ2x1c3RlclBhcmFtZXRlckdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuQ29weURCQ2x1c3RlclNuYXBzaG90LFxuXHRcdFJEU0FjdGlvbnMuQ29weURCUGFyYW1ldGVyR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5Db3B5REJTbmFwc2hvdCxcblx0XHRSRFNBY3Rpb25zLkNvcHlPcHRpb25Hcm91cCxcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZUJsdWVHcmVlbkRlcGxveW1lbnQsXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVDdXN0b21EQkVuZ2luZVZlcnNpb24sXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVEQkNsdXN0ZXIsXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVEQkNsdXN0ZXJFbmRwb2ludCxcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuQ3JlYXRlREJDbHVzdGVyU25hcHNob3QsXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVEQkluc3RhbmNlLFxuXHRcdFJEU0FjdGlvbnMuQ3JlYXRlREJJbnN0YW5jZVJlYWRSZXBsaWNhLFxuXHRcdFJEU0FjdGlvbnMuQ3JlYXRlREJQYXJhbWV0ZXJHcm91cCxcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZURCUHJveHksXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVEQlByb3h5RW5kcG9pbnQsXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVEQlNlY3VyaXR5R3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVEQlNoYXJkR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVEQlNuYXBzaG90LFxuXHRcdFJEU0FjdGlvbnMuQ3JlYXRlREJTdWJuZXRHcm91cCxcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZUV2ZW50U3Vic2NyaXB0aW9uLFxuXHRcdFJEU0FjdGlvbnMuQ3JlYXRlR2xvYmFsQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZUludGVncmF0aW9uLFxuXHRcdFJEU0FjdGlvbnMuQ3JlYXRlT3B0aW9uR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVUZW5hbnREYXRhYmFzZSxcblx0XHRSRFNBY3Rpb25zLkNyb3NzUmVnaW9uQ29tbXVuaWNhdGlvbixcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZUJsdWVHcmVlbkRlcGxveW1lbnQsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVDdXN0b21EQkVuZ2luZVZlcnNpb24sXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVEQkNsdXN0ZXIsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVEQkNsdXN0ZXJBdXRvbWF0ZWRCYWNrdXAsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVEQkNsdXN0ZXJFbmRwb2ludCxcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlREJDbHVzdGVyU25hcHNob3QsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVEQkluc3RhbmNlLFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cCxcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZURCUGFyYW1ldGVyR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVEQlByb3h5LFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlREJQcm94eUVuZHBvaW50LFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlREJTZWN1cml0eUdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlREJTaGFyZEdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlREJTbmFwc2hvdCxcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZURCU3VibmV0R3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVFdmVudFN1YnNjcmlwdGlvbixcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZUdsb2JhbENsdXN0ZXIsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVJbnRlZ3JhdGlvbixcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZU9wdGlvbkdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlVGVuYW50RGF0YWJhc2UsXG5cdFx0UkRTQWN0aW9ucy5EZXJlZ2lzdGVyREJQcm94eVRhcmdldHMsXG5cdFx0UkRTQWN0aW9ucy5EaXNhYmxlSHR0cEVuZHBvaW50LFxuXHRcdFJEU0FjdGlvbnMuRW5hYmxlSHR0cEVuZHBvaW50LFxuXHRcdFJEU0FjdGlvbnMuRmFpbG92ZXJEQkNsdXN0ZXIsXG5cdFx0UkRTQWN0aW9ucy5GYWlsb3Zlckdsb2JhbENsdXN0ZXIsXG5cdFx0UkRTQWN0aW9ucy5Nb2RpZnlBY3Rpdml0eVN0cmVhbSxcblx0XHRSRFNBY3Rpb25zLk1vZGlmeUNlcnRpZmljYXRlcyxcblx0XHRSRFNBY3Rpb25zLk1vZGlmeUN1cnJlbnREQkNsdXN0ZXJDYXBhY2l0eSxcblx0XHRSRFNBY3Rpb25zLk1vZGlmeUN1c3RvbURCRW5naW5lVmVyc2lvbixcblx0XHRSRFNBY3Rpb25zLk1vZGlmeURCQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLk1vZGlmeURCQ2x1c3RlckVuZHBvaW50LFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5REJDbHVzdGVyUGFyYW1ldGVyR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5Nb2RpZnlEQkNsdXN0ZXJTbmFwc2hvdEF0dHJpYnV0ZSxcblx0XHRSRFNBY3Rpb25zLk1vZGlmeURCSW5zdGFuY2UsXG5cdFx0UkRTQWN0aW9ucy5Nb2RpZnlEQlBhcmFtZXRlckdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5REJQcm94eSxcblx0XHRSRFNBY3Rpb25zLk1vZGlmeURCUHJveHlFbmRwb2ludCxcblx0XHRSRFNBY3Rpb25zLk1vZGlmeURCUHJveHlUYXJnZXRHcm91cCxcblx0XHRSRFNBY3Rpb25zLk1vZGlmeURCUmVjb21tZW5kYXRpb24sXG5cdFx0UkRTQWN0aW9ucy5Nb2RpZnlEQlNoYXJkR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5Nb2RpZnlEQlNuYXBzaG90LFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5REJTbmFwc2hvdEF0dHJpYnV0ZSxcblx0XHRSRFNBY3Rpb25zLk1vZGlmeURCU3VibmV0R3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5Nb2RpZnlFdmVudFN1YnNjcmlwdGlvbixcblx0XHRSRFNBY3Rpb25zLk1vZGlmeUdsb2JhbENsdXN0ZXIsXG5cdFx0UkRTQWN0aW9ucy5Nb2RpZnlJbnRlZ3JhdGlvbixcblx0XHRSRFNBY3Rpb25zLk1vZGlmeU9wdGlvbkdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5UmVjb21tZW5kYXRpb24sXG5cdFx0UkRTQWN0aW9ucy5Nb2RpZnlUZW5hbnREYXRhYmFzZSxcblx0XHRSRFNBY3Rpb25zLlByb21vdGVSZWFkUmVwbGljYSxcblx0XHRSRFNBY3Rpb25zLlByb21vdGVSZWFkUmVwbGljYURCQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLlB1cmNoYXNlUmVzZXJ2ZWREQkluc3RhbmNlc09mZmVyaW5nLFxuXHRcdFJEU0FjdGlvbnMuUmVib290REJDbHVzdGVyLFxuXHRcdFJEU0FjdGlvbnMuUmVib290REJJbnN0YW5jZSxcblx0XHRSRFNBY3Rpb25zLlJlYm9vdERCU2hhcmRHcm91cCxcblx0XHRSRFNBY3Rpb25zLlJlZ2lzdGVyREJQcm94eVRhcmdldHMsXG5cdFx0UkRTQWN0aW9ucy5SZW1vdmVGcm9tR2xvYmFsQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLlJlbW92ZVJvbGVGcm9tREJDbHVzdGVyLFxuXHRcdFJEU0FjdGlvbnMuUmVtb3ZlUm9sZUZyb21EQkluc3RhbmNlLFxuXHRcdFJEU0FjdGlvbnMuUmVtb3ZlU291cmNlSWRlbnRpZmllckZyb21TdWJzY3JpcHRpb24sXG5cdFx0UkRTQWN0aW9ucy5SZXNldERCQ2x1c3RlclBhcmFtZXRlckdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuUmVzZXREQlBhcmFtZXRlckdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuUmVzdG9yZURCQ2x1c3RlckZyb21TMyxcblx0XHRSRFNBY3Rpb25zLlJlc3RvcmVEQkNsdXN0ZXJGcm9tU25hcHNob3QsXG5cdFx0UkRTQWN0aW9ucy5SZXN0b3JlREJDbHVzdGVyVG9Qb2ludEluVGltZSxcblx0XHRSRFNBY3Rpb25zLlJlc3RvcmVEQkluc3RhbmNlRnJvbURCU25hcHNob3QsXG5cdFx0UkRTQWN0aW9ucy5SZXN0b3JlREJJbnN0YW5jZUZyb21TMyxcblx0XHRSRFNBY3Rpb25zLlJlc3RvcmVEQkluc3RhbmNlVG9Qb2ludEluVGltZSxcblx0XHRSRFNBY3Rpb25zLlJldm9rZURCU2VjdXJpdHlHcm91cEluZ3Jlc3MsXG5cdFx0UkRTQWN0aW9ucy5TdGFydEFjdGl2aXR5U3RyZWFtLFxuXHRcdFJEU0FjdGlvbnMuU3RhcnREQkNsdXN0ZXIsXG5cdFx0UkRTQWN0aW9ucy5TdGFydERCSW5zdGFuY2UsXG5cdFx0UkRTQWN0aW9ucy5TdGFydERCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzUmVwbGljYXRpb24sXG5cdFx0UkRTQWN0aW9ucy5TdGFydEV4cG9ydFRhc2ssXG5cdFx0UkRTQWN0aW9ucy5TdG9wQWN0aXZpdHlTdHJlYW0sXG5cdFx0UkRTQWN0aW9ucy5TdG9wREJDbHVzdGVyLFxuXHRcdFJEU0FjdGlvbnMuU3RvcERCSW5zdGFuY2UsXG5cdFx0UkRTQWN0aW9ucy5TdG9wREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHNSZXBsaWNhdGlvbixcblx0XHRSRFNBY3Rpb25zLlN3aXRjaG92ZXJCbHVlR3JlZW5EZXBsb3ltZW50LFxuXHRcdFJEU0FjdGlvbnMuU3dpdGNob3Zlckdsb2JhbENsdXN0ZXIsXG5cdFx0UkRTQWN0aW9ucy5Td2l0Y2hvdmVyUmVhZFJlcGxpY2EsXG5cdF07XG5cdC8qKiBBbGwgbGlzdC1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsTGlzdEFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVBY2NvdW50QXR0cmlidXRlcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlQmx1ZUdyZWVuRGVwbG95bWVudHMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZUNlcnRpZmljYXRlcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJDbHVzdGVyQXV0b21hdGVkQmFja3Vwcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJDbHVzdGVyQmFja3RyYWNrcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJDbHVzdGVyRW5kcG9pbnRzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cHMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCQ2x1c3RlclBhcmFtZXRlcnMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCQ2x1c3RlclNuYXBzaG90QXR0cmlidXRlcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJDbHVzdGVyU25hcHNob3RzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQkNsdXN0ZXJzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQkVuZ2luZVZlcnNpb25zLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJJbnN0YW5jZXMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCTG9nRmlsZXMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCTWFqb3JFbmdpbmVWZXJzaW9ucyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJQYXJhbWV0ZXJHcm91cHMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCUGFyYW1ldGVycyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJQcm94aWVzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQlByb3h5RW5kcG9pbnRzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQlByb3h5VGFyZ2V0R3JvdXBzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQlByb3h5VGFyZ2V0cyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJSZWNvbW1lbmRhdGlvbnMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCU2VjdXJpdHlHcm91cHMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCU2hhcmRHcm91cHMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCU25hcHNob3RBdHRyaWJ1dGVzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQlNuYXBzaG90VGVuYW50RGF0YWJhc2VzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQlNuYXBzaG90cyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJTdWJuZXRHcm91cHMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZUVuZ2luZURlZmF1bHRDbHVzdGVyUGFyYW1ldGVycyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlRW5naW5lRGVmYXVsdFBhcmFtZXRlcnMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZUV2ZW50Q2F0ZWdvcmllcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlRXZlbnRTdWJzY3JpcHRpb25zLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVFdmVudHMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZUV4cG9ydFRhc2tzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVHbG9iYWxDbHVzdGVycyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlSW50ZWdyYXRpb25zLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVPcHRpb25Hcm91cE9wdGlvbnMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZU9wdGlvbkdyb3Vwcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlT3JkZXJhYmxlREJJbnN0YW5jZU9wdGlvbnMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZVBlbmRpbmdNYWludGVuYW5jZUFjdGlvbnMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZVJlc2VydmVkREJJbnN0YW5jZXMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZ3MsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZVNvdXJjZVJlZ2lvbnMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZVRlbmFudERhdGFiYXNlcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlVmFsaWREQkluc3RhbmNlTW9kaWZpY2F0aW9ucyxcblx0XTtcblx0LyoqIEFsbCBwZXJtaXNzaW9uLW1hbmFnZW1lbnQtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFBlcm1pc3Npb25NYW5hZ2VtZW50QWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0UkRTQWN0aW9ucy5BdXRob3JpemVEQlNlY3VyaXR5R3JvdXBJbmdyZXNzLFxuXHRdO1xuXHQvKiogQWxsIHRhZ2dpbmctbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFRhZ2dpbmdBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRSRFNBY3Rpb25zLkFkZFRhZ3NUb1Jlc291cmNlLFxuXHRcdFJEU0FjdGlvbnMuUmVtb3ZlVGFnc0Zyb21SZXNvdXJjZSxcblx0XTtcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGF1dG8tYmFja3VwIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNBdXRvQmFja3VwQXJuUHJvcHMge1xuXHQvKiogVGhlIERiSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgZGJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgYXV0by1iYWNrdXAgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0F1dG9CYWNrdXBBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIERiSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGRiSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgY2V2IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNDZXZBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRW5naW5lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBlbmdpbmU6IHN0cmluZztcblx0LyoqIFRoZSBFbmdpbmVWZXJzaW9uIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBlbmdpbmVWZXJzaW9uOiBzdHJpbmc7XG5cdC8qKiBUaGUgQ3VzdG9tRGJFbmdpbmVWZXJzaW9uSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGN1c3RvbURCRW5naW5lVmVyc2lvbklkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgY2V2IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNDZXZBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEVuZ2luZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGVuZ2luZTogc3RyaW5nO1xuXHQvKiogVGhlIEVuZ2luZVZlcnNpb24gY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBlbmdpbmVWZXJzaW9uOiBzdHJpbmc7XG5cdC8qKiBUaGUgQ3VzdG9tRGJFbmdpbmVWZXJzaW9uSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBjdXN0b21EQkVuZ2luZVZlcnNpb25JZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgY2x1c3RlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTQ2x1c3RlckFyblByb3BzIHtcblx0LyoqIFRoZSBEYkNsdXN0ZXJJbnN0YW5jZU5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGRiQ2x1c3Rlckluc3RhbmNlTmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGNsdXN0ZXIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0NsdXN0ZXJBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIERiQ2x1c3Rlckluc3RhbmNlTmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGRiQ2x1c3Rlckluc3RhbmNlTmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgY2x1c3Rlci1hdXRvLWJhY2t1cCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTQ2x1c3RlckF1dG9CYWNrdXBBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRGJDbHVzdGVyQXV0b21hdGVkQmFja3VwSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGRiQ2x1c3RlckF1dG9tYXRlZEJhY2t1cElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgY2x1c3Rlci1hdXRvLWJhY2t1cCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTQ2x1c3RlckF1dG9CYWNrdXBBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIERiQ2x1c3RlckF1dG9tYXRlZEJhY2t1cElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZGJDbHVzdGVyQXV0b21hdGVkQmFja3VwSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGNsdXN0ZXItZW5kcG9pbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0NsdXN0ZXJFbmRwb2ludEFyblByb3BzIHtcblx0LyoqIFRoZSBEYkNsdXN0ZXJFbmRwb2ludCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgZGJDbHVzdGVyRW5kcG9pbnQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBjbHVzdGVyLWVuZHBvaW50IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNDbHVzdGVyRW5kcG9pbnRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIERiQ2x1c3RlckVuZHBvaW50IGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZGJDbHVzdGVyRW5kcG9pbnQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGNsdXN0ZXItcGcgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0NsdXN0ZXJQZ0FyblByb3BzIHtcblx0LyoqIFRoZSBDbHVzdGVyUGFyYW1ldGVyR3JvdXBOYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBjbHVzdGVyUGFyYW1ldGVyR3JvdXBOYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgY2x1c3Rlci1wZyBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTQ2x1c3RlclBnQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBDbHVzdGVyUGFyYW1ldGVyR3JvdXBOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgY2x1c3RlclBhcmFtZXRlckdyb3VwTmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgY2x1c3Rlci1zbmFwc2hvdCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTQ2x1c3RlclNuYXBzaG90QXJuUHJvcHMge1xuXHQvKiogVGhlIENsdXN0ZXJTbmFwc2hvdE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGNsdXN0ZXJTbmFwc2hvdE5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBjbHVzdGVyLXNuYXBzaG90IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNDbHVzdGVyU25hcHNob3RBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIENsdXN0ZXJTbmFwc2hvdE5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBjbHVzdGVyU25hcHNob3ROYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBkYiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTREJBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRGJJbnN0YW5jZU5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGRiSW5zdGFuY2VOYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgZGIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0RCQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBEYkluc3RhbmNlTmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGRiSW5zdGFuY2VOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBkZXBsb3ltZW50IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNEZXBsb3ltZW50QXJuUHJvcHMge1xuXHQvKiogVGhlIEJsdWVHcmVlbkRlcGxveW1lbnRJZGVudGlmaWVyIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBibHVlR3JlZW5EZXBsb3ltZW50SWRlbnRpZmllcjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGRlcGxveW1lbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0RlcGxveW1lbnRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEJsdWVHcmVlbkRlcGxveW1lbnRJZGVudGlmaWVyIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgYmx1ZUdyZWVuRGVwbG95bWVudElkZW50aWZpZXI6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGVzIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNFc0FyblByb3BzIHtcblx0LyoqIFRoZSBTdWJzY3JpcHRpb25OYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBzdWJzY3JpcHRpb25OYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgZXMgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0VzQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBTdWJzY3JpcHRpb25OYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgc3Vic2NyaXB0aW9uTmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgZ2xvYmFsLWNsdXN0ZXIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0dsb2JhbENsdXN0ZXJBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgR2xvYmFsQ2x1c3RlciBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgZ2xvYmFsQ2x1c3Rlcjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgZ2xvYmFsLWNsdXN0ZXIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0dsb2JhbENsdXN0ZXJBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBHbG9iYWxDbHVzdGVyIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZ2xvYmFsQ2x1c3Rlcjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgaW50ZWdyYXRpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0ludGVncmF0aW9uQXJuUHJvcHMge1xuXHQvKiogVGhlIEludGVncmF0aW9uSWRlbnRpZmllciBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgaW50ZWdyYXRpb25JZGVudGlmaWVyOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgaW50ZWdyYXRpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0ludGVncmF0aW9uQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBJbnRlZ3JhdGlvbklkZW50aWZpZXIgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBpbnRlZ3JhdGlvbklkZW50aWZpZXI6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIG9nIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNPZ0FyblByb3BzIHtcblx0LyoqIFRoZSBPcHRpb25Hcm91cE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IG9wdGlvbkdyb3VwTmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIG9nIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNPZ0FybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgT3B0aW9uR3JvdXBOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgb3B0aW9uR3JvdXBOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBwZyBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTUGdBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUGFyYW1ldGVyR3JvdXBOYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBwYXJhbWV0ZXJHcm91cE5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBwZyBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTUGdBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFBhcmFtZXRlckdyb3VwTmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHBhcmFtZXRlckdyb3VwTmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgcHJveHkgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1Byb3h5QXJuUHJvcHMge1xuXHQvKiogVGhlIERiUHJveHlJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgZGJQcm94eUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcHJveHkgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1Byb3h5QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBEYlByb3h5SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBkYlByb3h5SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHByb3h5LWVuZHBvaW50IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNQcm94eUVuZHBvaW50QXJuUHJvcHMge1xuXHQvKiogVGhlIERiUHJveHlFbmRwb2ludElkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBkYlByb3h5RW5kcG9pbnRJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHByb3h5LWVuZHBvaW50IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNQcm94eUVuZHBvaW50QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBEYlByb3h5RW5kcG9pbnRJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGRiUHJveHlFbmRwb2ludElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSByaSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTUmlBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUmVzZXJ2ZWREYkluc3RhbmNlTmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcmVzZXJ2ZWREQkluc3RhbmNlTmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHJpIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNSaUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUmVzZXJ2ZWREYkluc3RhbmNlTmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHJlc2VydmVkREJJbnN0YW5jZU5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHNlY2dycCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTU2VjZ3JwQXJuUHJvcHMge1xuXHQvKiogVGhlIFNlY3VyaXR5R3JvdXBOYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBzZWN1cml0eUdyb3VwTmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHNlY2dycCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTU2VjZ3JwQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBTZWN1cml0eUdyb3VwTmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHNlY3VyaXR5R3JvdXBOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBzaGFyZGdycCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTU2hhcmRncnBBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRGJTaGFyZEdyb3VwUmVzb3VyY2VJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgZGJTaGFyZEdyb3VwUmVzb3VyY2VJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHNoYXJkZ3JwIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNTaGFyZGdycEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgRGJTaGFyZEdyb3VwUmVzb3VyY2VJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGRiU2hhcmRHcm91cFJlc291cmNlSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHNuYXBzaG90IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNTbmFwc2hvdEFyblByb3BzIHtcblx0LyoqIFRoZSBTbmFwc2hvdE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHNuYXBzaG90TmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHNuYXBzaG90IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNTbmFwc2hvdEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgU25hcHNob3ROYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgc25hcHNob3ROYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBzbmFwc2hvdC10ZW5hbnQtZGF0YWJhc2UgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1NuYXBzaG90VGVuYW50RGF0YWJhc2VBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgU25hcHNob3ROYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBzbmFwc2hvdE5hbWU6IHN0cmluZztcblx0LyoqIFRoZSBUZW5hbnRSZXNvdXJjZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSB0ZW5hbnRSZXNvdXJjZUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgc25hcHNob3QtdGVuYW50LWRhdGFiYXNlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNTbmFwc2hvdFRlbmFudERhdGFiYXNlQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBTbmFwc2hvdE5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBzbmFwc2hvdE5hbWU6IHN0cmluZztcblx0LyoqIFRoZSBUZW5hbnRSZXNvdXJjZUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgdGVuYW50UmVzb3VyY2VJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgc3ViZ3JwIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNTdWJncnBBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgU3VibmV0R3JvdXBOYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBzdWJuZXRHcm91cE5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBzdWJncnAgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1N1YmdycEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgU3VibmV0R3JvdXBOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgc3VibmV0R3JvdXBOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSB0YXJnZXQtZ3JvdXAgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1RhcmdldEdyb3VwQXJuUHJvcHMge1xuXHQvKiogVGhlIFRhcmdldEdyb3VwSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHRhcmdldEdyb3VwSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSB0YXJnZXQtZ3JvdXAgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1RhcmdldEdyb3VwQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBUYXJnZXRHcm91cElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgdGFyZ2V0R3JvdXBJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgdGVuYW50LWRhdGFiYXNlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNUZW5hbnREYXRhYmFzZUFyblByb3BzIHtcblx0LyoqIFRoZSBUZW5hbnRSZXNvdXJjZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSB0ZW5hbnRSZXNvdXJjZUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgdGVuYW50LWRhdGFiYXNlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNUZW5hbnREYXRhYmFzZUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgVGVuYW50UmVzb3VyY2VJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHRlbmFudFJlc291cmNlSWQ6IHN0cmluZztcbn1cblxuY29uc3QgQXV0b0JhY2t1cEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTphdXRvLWJhY2t1cDooPzxkYkluc3RhbmNlQXV0b21hdGVkQmFja3VwSWQ+W146Lz9dKykkLztcbmNvbnN0IENldkFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpjZXY6KD88ZW5naW5lPlteOi8/XSspXFwvKD88ZW5naW5lVmVyc2lvbj5bXjovP10rKVxcLyg/PGN1c3RvbURCRW5naW5lVmVyc2lvbklkPlteOi8/XSspJC87XG5jb25zdCBDbHVzdGVyQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmNsdXN0ZXI6KD88ZGJDbHVzdGVySW5zdGFuY2VOYW1lPlteOi8/XSspJC87XG5jb25zdCBDbHVzdGVyQXV0b0JhY2t1cEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpjbHVzdGVyLWF1dG8tYmFja3VwOig/PGRiQ2x1c3RlckF1dG9tYXRlZEJhY2t1cElkPlteOi8/XSspJC87XG5jb25zdCBDbHVzdGVyRW5kcG9pbnRBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6Y2x1c3Rlci1lbmRwb2ludDooPzxkYkNsdXN0ZXJFbmRwb2ludD5bXjovP10rKSQvO1xuY29uc3QgQ2x1c3RlclBnQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmNsdXN0ZXItcGc6KD88Y2x1c3RlclBhcmFtZXRlckdyb3VwTmFtZT5bXjovP10rKSQvO1xuY29uc3QgQ2x1c3RlclNuYXBzaG90QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmNsdXN0ZXItc25hcHNob3Q6KD88Y2x1c3RlclNuYXBzaG90TmFtZT5bXjovP10rKSQvO1xuY29uc3QgREJBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6ZGI6KD88ZGJJbnN0YW5jZU5hbWU+W146Lz9dKykkLztcbmNvbnN0IERlcGxveW1lbnRBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6ZGVwbG95bWVudDooPzxibHVlR3JlZW5EZXBsb3ltZW50SWRlbnRpZmllcj5bXjovP10rKSQvO1xuY29uc3QgRXNBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6ZXM6KD88c3Vic2NyaXB0aW9uTmFtZT5bXjovP10rKSQvO1xuY29uc3QgR2xvYmFsQ2x1c3RlckFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6Oig/PGFjY291bnQ+W146XSopOmdsb2JhbC1jbHVzdGVyOig/PGdsb2JhbENsdXN0ZXI+W146Lz9dKykkLztcbmNvbnN0IEludGVncmF0aW9uQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmludGVncmF0aW9uOig/PGludGVncmF0aW9uSWRlbnRpZmllcj5bXjovP10rKSQvO1xuY29uc3QgT2dBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6b2c6KD88b3B0aW9uR3JvdXBOYW1lPlteOi8/XSspJC87XG5jb25zdCBQZ0FyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpwZzooPzxwYXJhbWV0ZXJHcm91cE5hbWU+W146Lz9dKykkLztcbmNvbnN0IFByb3h5QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmRiLXByb3h5Oig/PGRiUHJveHlJZD5bXjovP10rKSQvO1xuY29uc3QgUHJveHlFbmRwb2ludEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpkYi1wcm94eS1lbmRwb2ludDooPzxkYlByb3h5RW5kcG9pbnRJZD5bXjovP10rKSQvO1xuY29uc3QgUmlBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6cmk6KD88cmVzZXJ2ZWREQkluc3RhbmNlTmFtZT5bXjovP10rKSQvO1xuY29uc3QgU2VjZ3JwQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnNlY2dycDooPzxzZWN1cml0eUdyb3VwTmFtZT5bXjovP10rKSQvO1xuY29uc3QgU2hhcmRncnBBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6c2hhcmQtZ3JvdXA6KD88ZGJTaGFyZEdyb3VwUmVzb3VyY2VJZD5bXjovP10rKSQvO1xuY29uc3QgU25hcHNob3RBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6c25hcHNob3Q6KD88c25hcHNob3ROYW1lPlteOi8/XSspJC87XG5jb25zdCBTbmFwc2hvdFRlbmFudERhdGFiYXNlQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnNuYXBzaG90LXRlbmFudC1kYXRhYmFzZTooPzxzbmFwc2hvdE5hbWU+W146Lz9dKyk6KD88dGVuYW50UmVzb3VyY2VJZD5bXjovP10rKSQvO1xuY29uc3QgU3ViZ3JwQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnN1YmdycDooPzxzdWJuZXRHcm91cE5hbWU+W146Lz9dKykkLztcbmNvbnN0IFRhcmdldEdyb3VwQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnRhcmdldC1ncm91cDooPzx0YXJnZXRHcm91cElkPlteOi8/XSspJC87XG5jb25zdCBUZW5hbnREYXRhYmFzZUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTp0ZW5hbnQtZGF0YWJhc2U6KD88dGVuYW50UmVzb3VyY2VJZD5bXjovP10rKSQvO1xuXG4vKipcbiAqIEFSTiBidWlsZGVycywgdmFsaWRhdG9ycywgYW5kIHBhcnNlcnMgZm9yIHJkcyByZXNvdXJjZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBSRFNSZXNvdXJjZXMge1xuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGF1dG8tYmFja3VwIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGF1dG9CYWNrdXAocHJvcHM6IFJEU0F1dG9CYWNrdXBBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmF1dG8tYmFja3VwOiR7cHJvcHMuZGJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cElkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBhdXRvLWJhY2t1cCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQXV0b0JhY2t1cEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBBdXRvQmFja3VwQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGF1dG8tYmFja3VwIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUF1dG9CYWNrdXBBcm4oYXJuOiBzdHJpbmcpOiBSRFNBdXRvQmFja3VwQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBBdXRvQmFja3VwQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGF1dG8tYmFja3VwIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGRiSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBJZDogbWF0Y2guZ3JvdXBzIS5kYkluc3RhbmNlQXV0b21hdGVkQmFja3VwSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgY2V2IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGNldihwcm9wczogUkRTQ2V2QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpjZXY6JHtwcm9wcy5lbmdpbmV9LyR7cHJvcHMuZW5naW5lVmVyc2lvbn0vJHtwcm9wcy5jdXN0b21EQkVuZ2luZVZlcnNpb25JZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgY2V2IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRDZXZBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQ2V2QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGNldiBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VDZXZBcm4oYXJuOiBzdHJpbmcpOiBSRFNDZXZBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IENldkFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBjZXYgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0ZW5naW5lOiBtYXRjaC5ncm91cHMhLmVuZ2luZSxcblx0XHRcdGVuZ2luZVZlcnNpb246IG1hdGNoLmdyb3VwcyEuZW5naW5lVmVyc2lvbixcblx0XHRcdGN1c3RvbURCRW5naW5lVmVyc2lvbklkOiBtYXRjaC5ncm91cHMhLmN1c3RvbURCRW5naW5lVmVyc2lvbklkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGNsdXN0ZXIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgY2x1c3Rlcihwcm9wczogUkRTQ2x1c3RlckFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06Y2x1c3Rlcjoke3Byb3BzLmRiQ2x1c3Rlckluc3RhbmNlTmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgY2x1c3RlciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQ2x1c3RlckFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBDbHVzdGVyQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGNsdXN0ZXIgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQ2x1c3RlckFybihhcm46IHN0cmluZyk6IFJEU0NsdXN0ZXJBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IENsdXN0ZXJBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgY2x1c3RlciBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRkYkNsdXN0ZXJJbnN0YW5jZU5hbWU6IG1hdGNoLmdyb3VwcyEuZGJDbHVzdGVySW5zdGFuY2VOYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGNsdXN0ZXItYXV0by1iYWNrdXAgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgY2x1c3RlckF1dG9CYWNrdXAocHJvcHM6IFJEU0NsdXN0ZXJBdXRvQmFja3VwQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpjbHVzdGVyLWF1dG8tYmFja3VwOiR7cHJvcHMuZGJDbHVzdGVyQXV0b21hdGVkQmFja3VwSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGNsdXN0ZXItYXV0by1iYWNrdXAgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZENsdXN0ZXJBdXRvQmFja3VwQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIENsdXN0ZXJBdXRvQmFja3VwQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGNsdXN0ZXItYXV0by1iYWNrdXAgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQ2x1c3RlckF1dG9CYWNrdXBBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFJEU0NsdXN0ZXJBdXRvQmFja3VwQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBDbHVzdGVyQXV0b0JhY2t1cEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBjbHVzdGVyLWF1dG8tYmFja3VwIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGRiQ2x1c3RlckF1dG9tYXRlZEJhY2t1cElkOiBtYXRjaC5ncm91cHMhLmRiQ2x1c3RlckF1dG9tYXRlZEJhY2t1cElkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGNsdXN0ZXItZW5kcG9pbnQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgY2x1c3RlckVuZHBvaW50KHByb3BzOiBSRFNDbHVzdGVyRW5kcG9pbnRBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmNsdXN0ZXItZW5kcG9pbnQ6JHtwcm9wcy5kYkNsdXN0ZXJFbmRwb2ludH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgY2x1c3Rlci1lbmRwb2ludCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQ2x1c3RlckVuZHBvaW50QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIENsdXN0ZXJFbmRwb2ludEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBjbHVzdGVyLWVuZHBvaW50IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUNsdXN0ZXJFbmRwb2ludEFybihhcm46IHN0cmluZyk6IFJEU0NsdXN0ZXJFbmRwb2ludEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQ2x1c3RlckVuZHBvaW50QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGNsdXN0ZXItZW5kcG9pbnQgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0ZGJDbHVzdGVyRW5kcG9pbnQ6IG1hdGNoLmdyb3VwcyEuZGJDbHVzdGVyRW5kcG9pbnQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgY2x1c3Rlci1wZyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBjbHVzdGVyUGcocHJvcHM6IFJEU0NsdXN0ZXJQZ0FyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06Y2x1c3Rlci1wZzoke3Byb3BzLmNsdXN0ZXJQYXJhbWV0ZXJHcm91cE5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGNsdXN0ZXItcGcgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZENsdXN0ZXJQZ0Fybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBDbHVzdGVyUGdBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgY2x1c3Rlci1wZyBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VDbHVzdGVyUGdBcm4oYXJuOiBzdHJpbmcpOiBSRFNDbHVzdGVyUGdBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IENsdXN0ZXJQZ0FyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBjbHVzdGVyLXBnIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGNsdXN0ZXJQYXJhbWV0ZXJHcm91cE5hbWU6IG1hdGNoLmdyb3VwcyEuY2x1c3RlclBhcmFtZXRlckdyb3VwTmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBjbHVzdGVyLXNuYXBzaG90IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGNsdXN0ZXJTbmFwc2hvdChwcm9wczogUkRTQ2x1c3RlclNuYXBzaG90QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpjbHVzdGVyLXNuYXBzaG90OiR7cHJvcHMuY2x1c3RlclNuYXBzaG90TmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgY2x1c3Rlci1zbmFwc2hvdCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQ2x1c3RlclNuYXBzaG90QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIENsdXN0ZXJTbmFwc2hvdEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBjbHVzdGVyLXNuYXBzaG90IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUNsdXN0ZXJTbmFwc2hvdEFybihhcm46IHN0cmluZyk6IFJEU0NsdXN0ZXJTbmFwc2hvdEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQ2x1c3RlclNuYXBzaG90QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGNsdXN0ZXItc25hcHNob3QgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0Y2x1c3RlclNuYXBzaG90TmFtZTogbWF0Y2guZ3JvdXBzIS5jbHVzdGVyU25hcHNob3ROYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGRiIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGRiKHByb3BzOiBSRFNEQkFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06ZGI6JHtwcm9wcy5kYkluc3RhbmNlTmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgZGIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZERCQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIERCQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGRiIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZURCQXJuKGFybjogc3RyaW5nKTogUkRTREJBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IERCQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGRiIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGRiSW5zdGFuY2VOYW1lOiBtYXRjaC5ncm91cHMhLmRiSW5zdGFuY2VOYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGRlcGxveW1lbnQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgZGVwbG95bWVudChwcm9wczogUkRTRGVwbG95bWVudEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06ZGVwbG95bWVudDoke3Byb3BzLmJsdWVHcmVlbkRlcGxveW1lbnRJZGVudGlmaWVyfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBkZXBsb3ltZW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWREZXBsb3ltZW50QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIERlcGxveW1lbnRBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgZGVwbG95bWVudCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VEZXBsb3ltZW50QXJuKGFybjogc3RyaW5nKTogUkRTRGVwbG95bWVudEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gRGVwbG95bWVudEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBkZXBsb3ltZW50IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGJsdWVHcmVlbkRlcGxveW1lbnRJZGVudGlmaWVyOlxuXHRcdFx0XHRtYXRjaC5ncm91cHMhLmJsdWVHcmVlbkRlcGxveW1lbnRJZGVudGlmaWVyLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGVzIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGVzKHByb3BzOiBSRFNFc0FyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06ZXM6JHtwcm9wcy5zdWJzY3JpcHRpb25OYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBlcyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkRXNBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gRXNBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgZXMgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlRXNBcm4oYXJuOiBzdHJpbmcpOiBSRFNFc0FybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gRXNBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZXMgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0c3Vic2NyaXB0aW9uTmFtZTogbWF0Y2guZ3JvdXBzIS5zdWJzY3JpcHRpb25OYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGdsb2JhbC1jbHVzdGVyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGdsb2JhbENsdXN0ZXIocHJvcHM6IFJEU0dsb2JhbENsdXN0ZXJBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOjoke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9Omdsb2JhbC1jbHVzdGVyOiR7cHJvcHMuZ2xvYmFsQ2x1c3Rlcn1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgZ2xvYmFsLWNsdXN0ZXIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEdsb2JhbENsdXN0ZXJBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gR2xvYmFsQ2x1c3RlckFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBnbG9iYWwtY2x1c3RlciBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VHbG9iYWxDbHVzdGVyQXJuKGFybjogc3RyaW5nKTogUkRTR2xvYmFsQ2x1c3RlckFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gR2xvYmFsQ2x1c3RlckFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBnbG9iYWwtY2x1c3RlciBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRnbG9iYWxDbHVzdGVyOiBtYXRjaC5ncm91cHMhLmdsb2JhbENsdXN0ZXIsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgaW50ZWdyYXRpb24gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaW50ZWdyYXRpb24ocHJvcHM6IFJEU0ludGVncmF0aW9uQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTppbnRlZ3JhdGlvbjoke3Byb3BzLmludGVncmF0aW9uSWRlbnRpZmllcn1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgaW50ZWdyYXRpb24gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEludGVncmF0aW9uQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEludGVncmF0aW9uQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGludGVncmF0aW9uIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUludGVncmF0aW9uQXJuKGFybjogc3RyaW5nKTogUkRTSW50ZWdyYXRpb25Bcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEludGVncmF0aW9uQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGludGVncmF0aW9uIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGludGVncmF0aW9uSWRlbnRpZmllcjogbWF0Y2guZ3JvdXBzIS5pbnRlZ3JhdGlvbklkZW50aWZpZXIsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgb2cgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgb2cocHJvcHM6IFJEU09nQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpvZzoke3Byb3BzLm9wdGlvbkdyb3VwTmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgb2cgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZE9nQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIE9nQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIG9nIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZU9nQXJuKGFybjogc3RyaW5nKTogUkRTT2dBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IE9nQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG9nIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdG9wdGlvbkdyb3VwTmFtZTogbWF0Y2guZ3JvdXBzIS5vcHRpb25Hcm91cE5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgcGcgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgcGcocHJvcHM6IFJEU1BnQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpwZzoke3Byb3BzLnBhcmFtZXRlckdyb3VwTmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgcGcgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFBnQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFBnQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHBnIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVBnQXJuKGFybjogc3RyaW5nKTogUkRTUGdBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFBnQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHBnIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHBhcmFtZXRlckdyb3VwTmFtZTogbWF0Y2guZ3JvdXBzIS5wYXJhbWV0ZXJHcm91cE5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgcHJveHkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgcHJveHkocHJvcHM6IFJEU1Byb3h5QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpkYi1wcm94eToke3Byb3BzLmRiUHJveHlJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgcHJveHkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFByb3h5QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFByb3h5QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHByb3h5IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVByb3h5QXJuKGFybjogc3RyaW5nKTogUkRTUHJveHlBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFByb3h5QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHByb3h5IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGRiUHJveHlJZDogbWF0Y2guZ3JvdXBzIS5kYlByb3h5SWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgcHJveHktZW5kcG9pbnQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgcHJveHlFbmRwb2ludChwcm9wczogUkRTUHJveHlFbmRwb2ludEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06ZGItcHJveHktZW5kcG9pbnQ6JHtwcm9wcy5kYlByb3h5RW5kcG9pbnRJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgcHJveHktZW5kcG9pbnQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFByb3h5RW5kcG9pbnRBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUHJveHlFbmRwb2ludEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBwcm94eS1lbmRwb2ludCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VQcm94eUVuZHBvaW50QXJuKGFybjogc3RyaW5nKTogUkRTUHJveHlFbmRwb2ludEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUHJveHlFbmRwb2ludEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBwcm94eS1lbmRwb2ludCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRkYlByb3h5RW5kcG9pbnRJZDogbWF0Y2guZ3JvdXBzIS5kYlByb3h5RW5kcG9pbnRJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSByaSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyByaShwcm9wczogUkRTUmlBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnJpOiR7cHJvcHMucmVzZXJ2ZWREQkluc3RhbmNlTmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgcmkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFJpQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFJpQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHJpIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVJpQXJuKGFybjogc3RyaW5nKTogUkRTUmlBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFJpQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHJpIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHJlc2VydmVkREJJbnN0YW5jZU5hbWU6IG1hdGNoLmdyb3VwcyEucmVzZXJ2ZWREQkluc3RhbmNlTmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBzZWNncnAgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgc2VjZ3JwKHByb3BzOiBSRFNTZWNncnBBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnNlY2dycDoke3Byb3BzLnNlY3VyaXR5R3JvdXBOYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBzZWNncnAgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFNlY2dycEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBTZWNncnBBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgc2VjZ3JwIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVNlY2dycEFybihhcm46IHN0cmluZyk6IFJEU1NlY2dycEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gU2VjZ3JwQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHNlY2dycCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRzZWN1cml0eUdyb3VwTmFtZTogbWF0Y2guZ3JvdXBzIS5zZWN1cml0eUdyb3VwTmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBzaGFyZGdycCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBzaGFyZGdycChwcm9wczogUkRTU2hhcmRncnBBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnNoYXJkLWdyb3VwOiR7cHJvcHMuZGJTaGFyZEdyb3VwUmVzb3VyY2VJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgc2hhcmRncnAgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFNoYXJkZ3JwQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFNoYXJkZ3JwQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHNoYXJkZ3JwIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVNoYXJkZ3JwQXJuKGFybjogc3RyaW5nKTogUkRTU2hhcmRncnBBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFNoYXJkZ3JwQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHNoYXJkZ3JwIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGRiU2hhcmRHcm91cFJlc291cmNlSWQ6IG1hdGNoLmdyb3VwcyEuZGJTaGFyZEdyb3VwUmVzb3VyY2VJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBzbmFwc2hvdCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBzbmFwc2hvdChwcm9wczogUkRTU25hcHNob3RBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnNuYXBzaG90OiR7cHJvcHMuc25hcHNob3ROYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBzbmFwc2hvdCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkU25hcHNob3RBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gU25hcHNob3RBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgc25hcHNob3QgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlU25hcHNob3RBcm4oYXJuOiBzdHJpbmcpOiBSRFNTbmFwc2hvdEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gU25hcHNob3RBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgc25hcHNob3QgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0c25hcHNob3ROYW1lOiBtYXRjaC5ncm91cHMhLnNuYXBzaG90TmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBzbmFwc2hvdC10ZW5hbnQtZGF0YWJhc2UgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgc25hcHNob3RUZW5hbnREYXRhYmFzZShcblx0XHRwcm9wczogUkRTU25hcHNob3RUZW5hbnREYXRhYmFzZUFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpzbmFwc2hvdC10ZW5hbnQtZGF0YWJhc2U6JHtwcm9wcy5zbmFwc2hvdE5hbWV9OiR7cHJvcHMudGVuYW50UmVzb3VyY2VJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgc25hcHNob3QtdGVuYW50LWRhdGFiYXNlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRTbmFwc2hvdFRlbmFudERhdGFiYXNlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFNuYXBzaG90VGVuYW50RGF0YWJhc2VBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgc25hcHNob3QtdGVuYW50LWRhdGFiYXNlIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVNuYXBzaG90VGVuYW50RGF0YWJhc2VBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IFJEU1NuYXBzaG90VGVuYW50RGF0YWJhc2VBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFNuYXBzaG90VGVuYW50RGF0YWJhc2VBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgc25hcHNob3QtdGVuYW50LWRhdGFiYXNlIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHNuYXBzaG90TmFtZTogbWF0Y2guZ3JvdXBzIS5zbmFwc2hvdE5hbWUsXG5cdFx0XHR0ZW5hbnRSZXNvdXJjZUlkOiBtYXRjaC5ncm91cHMhLnRlbmFudFJlc291cmNlSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgc3ViZ3JwIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHN1YmdycChwcm9wczogUkRTU3ViZ3JwQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpzdWJncnA6JHtwcm9wcy5zdWJuZXRHcm91cE5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHN1YmdycCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkU3ViZ3JwQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFN1YmdycEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBzdWJncnAgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlU3ViZ3JwQXJuKGFybjogc3RyaW5nKTogUkRTU3ViZ3JwQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBTdWJncnBBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgc3ViZ3JwIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHN1Ym5ldEdyb3VwTmFtZTogbWF0Y2guZ3JvdXBzIS5zdWJuZXRHcm91cE5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgdGFyZ2V0LWdyb3VwIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHRhcmdldEdyb3VwKHByb3BzOiBSRFNUYXJnZXRHcm91cEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06dGFyZ2V0LWdyb3VwOiR7cHJvcHMudGFyZ2V0R3JvdXBJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgdGFyZ2V0LWdyb3VwIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRUYXJnZXRHcm91cEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBUYXJnZXRHcm91cEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSB0YXJnZXQtZ3JvdXAgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlVGFyZ2V0R3JvdXBBcm4oYXJuOiBzdHJpbmcpOiBSRFNUYXJnZXRHcm91cEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gVGFyZ2V0R3JvdXBBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgdGFyZ2V0LWdyb3VwIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHRhcmdldEdyb3VwSWQ6IG1hdGNoLmdyb3VwcyEudGFyZ2V0R3JvdXBJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSB0ZW5hbnQtZGF0YWJhc2UgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgdGVuYW50RGF0YWJhc2UocHJvcHM6IFJEU1RlbmFudERhdGFiYXNlQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTp0ZW5hbnQtZGF0YWJhc2U6JHtwcm9wcy50ZW5hbnRSZXNvdXJjZUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSB0ZW5hbnQtZGF0YWJhc2UgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFRlbmFudERhdGFiYXNlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFRlbmFudERhdGFiYXNlQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHRlbmFudC1kYXRhYmFzZSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VUZW5hbnREYXRhYmFzZUFybihhcm46IHN0cmluZyk6IFJEU1RlbmFudERhdGFiYXNlQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBUZW5hbnREYXRhYmFzZUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB0ZW5hbnQtZGF0YWJhc2UgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0dGVuYW50UmVzb3VyY2VJZDogbWF0Y2guZ3JvdXBzIS50ZW5hbnRSZXNvdXJjZUlkLFxuXHRcdH07XG5cdH1cbn1cblxuLyoqXG4gKiBBUEkgb3BlcmF0aW9uIHRvIHJlcXVpcmVkIElBTSBhY3Rpb25zIG1hcHBpbmcgZm9yIHJkcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFJEU09wZXJhdGlvbnMge1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBBZGRSb2xlVG9EQkNsdXN0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBBZGRSb2xlVG9EQkNsdXN0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFJvbGVUb0RCQ2x1c3RlclwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEFkZFJvbGVUb0RCSW5zdGFuY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBBZGRSb2xlVG9EQkluc3RhbmNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRSb2xlVG9EQkluc3RhbmNlXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQWRkU291cmNlSWRlbnRpZmllclRvU3Vic2NyaXB0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWRkU291cmNlSWRlbnRpZmllclRvU3Vic2NyaXB0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRTb3VyY2VJZGVudGlmaWVyVG9TdWJzY3JpcHRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQWRkVGFnc1RvUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBBZGRUYWdzVG9SZXNvdXJjZTogc3RyaW5nW10gPSBbXCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEFwcGx5UGVuZGluZ01haW50ZW5hbmNlQWN0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQXBwbHlQZW5kaW5nTWFpbnRlbmFuY2VBY3Rpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFwcGx5UGVuZGluZ01haW50ZW5hbmNlQWN0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEF1dGhvcml6ZURCU2VjdXJpdHlHcm91cEluZ3Jlc3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBBdXRob3JpemVEQlNlY3VyaXR5R3JvdXBJbmdyZXNzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBdXRob3JpemVEQlNlY3VyaXR5R3JvdXBJbmdyZXNzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhY2t0cmFja0RCQ2x1c3RlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhY2t0cmFja0RCQ2x1c3Rlcjogc3RyaW5nW10gPSBbXCJyZHM6QmFja3RyYWNrREJDbHVzdGVyXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDYW5jZWxFeHBvcnRUYXNrIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ2FuY2VsRXhwb3J0VGFzazogc3RyaW5nW10gPSBbXCJyZHM6Q2FuY2VsRXhwb3J0VGFza1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ29weURCQ2x1c3RlclBhcmFtZXRlckdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ29weURCQ2x1c3RlclBhcmFtZXRlckdyb3VwOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNvcHlEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDb3B5REJDbHVzdGVyU25hcHNob3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5REJDbHVzdGVyU25hcHNob3Q6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q29weURCQ2x1c3RlclNuYXBzaG90XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENvcHlEQlBhcmFtZXRlckdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ29weURCUGFyYW1ldGVyR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q29weURCUGFyYW1ldGVyR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ29weURCU25hcHNob3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5REJTbmFwc2hvdDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDb3B5Q3VzdG9tREJFbmdpbmVWZXJzaW9uXCIsXG5cdFx0XCJyZHM6Q29weURCU25hcHNob3RcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ29weU9wdGlvbkdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ29weU9wdGlvbkdyb3VwOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNvcHlPcHRpb25Hcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVCbHVlR3JlZW5EZXBsb3ltZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQmx1ZUdyZWVuRGVwbG95bWVudDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVCbHVlR3JlZW5EZXBsb3ltZW50XCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJDbHVzdGVyXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJDbHVzdGVyRW5kcG9pbnRcIixcblx0XHRcInJkczpDcmVhdGVEQkluc3RhbmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJJbnN0YW5jZVJlYWRSZXBsaWNhXCIsXG5cdFx0XCJyZHM6Q3JlYXRlR2xvYmFsQ2x1c3RlclwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUN1c3RvbURCRW5naW5lVmVyc2lvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUN1c3RvbURCRW5naW5lVmVyc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVDdXN0b21EQkVuZ2luZVZlcnNpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlREJDbHVzdGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJDbHVzdGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRSb2xlVG9EQkNsdXN0ZXJcIixcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCQ2x1c3RlclwiLFxuXHRcdFwicmRzOkNyZWF0ZURCSW5zdGFuY2VcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVEQkNsdXN0ZXJFbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCQ2x1c3RlckVuZHBvaW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCQ2x1c3RlckVuZHBvaW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlREJDbHVzdGVyU25hcHNob3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQkNsdXN0ZXJTbmFwc2hvdDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQkNsdXN0ZXJTbmFwc2hvdFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVEQkluc3RhbmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJJbnN0YW5jZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQkluc3RhbmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlVGVuYW50RGF0YWJhc2VcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVEQkluc3RhbmNlUmVhZFJlcGxpY2EgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQkluc3RhbmNlUmVhZFJlcGxpY2E6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJJbnN0YW5jZVJlYWRSZXBsaWNhXCIsXG5cdFx0XCJyZHM6Q3JlYXRlVGVuYW50RGF0YWJhc2VcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVEQlBhcmFtZXRlckdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJQYXJhbWV0ZXJHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQlBhcmFtZXRlckdyb3VwXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZURCUHJveHkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlByb3h5OiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCUHJveHlcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVEQlByb3h5RW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlByb3h5RW5kcG9pbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJQcm94eUVuZHBvaW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZURCU2VjdXJpdHlHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCU2VjdXJpdHlHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQlNlY3VyaXR5R3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlREJTaGFyZEdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJTaGFyZEdyb3VwOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCU2hhcmRHcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVEQlNuYXBzaG90IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJTbmFwc2hvdDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQlNuYXBzaG90XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZURCU3VibmV0R3JvdXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlN1Ym5ldEdyb3VwOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCU3VibmV0R3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlRXZlbnRTdWJzY3JpcHRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFdmVudFN1YnNjcmlwdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVFdmVudFN1YnNjcmlwdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVHbG9iYWxDbHVzdGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlR2xvYmFsQ2x1c3Rlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVHbG9iYWxDbHVzdGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUludGVncmF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSW50ZWdyYXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlSW50ZWdyYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlT3B0aW9uR3JvdXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVPcHRpb25Hcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVPcHRpb25Hcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVUZW5hbnREYXRhYmFzZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVRlbmFudERhdGFiYXNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZVRlbmFudERhdGFiYXNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUJsdWVHcmVlbkRlcGxveW1lbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVCbHVlR3JlZW5EZXBsb3ltZW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZWxldGVCbHVlR3JlZW5EZXBsb3ltZW50XCIsXG5cdFx0XCJyZHM6RGVsZXRlREJDbHVzdGVyXCIsXG5cdFx0XCJyZHM6RGVsZXRlREJDbHVzdGVyRW5kcG9pbnRcIixcblx0XHRcInJkczpEZWxldGVEQkluc3RhbmNlXCIsXG5cdFx0XCJyZHM6RGVsZXRlR2xvYmFsQ2x1c3RlclwiLFxuXHRcdFwicmRzOlByb21vdGVSZWFkUmVwbGljYVwiLFxuXHRcdFwicmRzOlByb21vdGVSZWFkUmVwbGljYURCQ2x1c3RlclwiLFxuXHRcdFwicmRzOlJlbW92ZUZyb21HbG9iYWxDbHVzdGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUN1c3RvbURCRW5naW5lVmVyc2lvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUN1c3RvbURCRW5naW5lVmVyc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVsZXRlQ3VzdG9tREJFbmdpbmVWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZURCQ2x1c3RlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCQ2x1c3Rlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQkNsdXN0ZXJTbmFwc2hvdFwiLFxuXHRcdFwicmRzOkRlbGV0ZURCQ2x1c3RlclwiLFxuXHRcdFwicmRzOkRlbGV0ZURCSW5zdGFuY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlREJDbHVzdGVyQXV0b21hdGVkQmFja3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJDbHVzdGVyQXV0b21hdGVkQmFja3VwOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZWxldGVEQkNsdXN0ZXJBdXRvbWF0ZWRCYWNrdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlREJDbHVzdGVyRW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQkNsdXN0ZXJFbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVsZXRlREJDbHVzdGVyRW5kcG9pbnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVsZXRlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlREJDbHVzdGVyU25hcHNob3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQkNsdXN0ZXJTbmFwc2hvdDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVsZXRlREJDbHVzdGVyU25hcHNob3RcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlREJJbnN0YW5jZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCSW5zdGFuY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJTbmFwc2hvdFwiLFxuXHRcdFwicmRzOkRlbGV0ZURCSW5zdGFuY2VcIixcblx0XHRcInJkczpEZWxldGVUZW5hbnREYXRhYmFzZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVEQkluc3RhbmNlQXV0b21hdGVkQmFja3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVsZXRlREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVEQlBhcmFtZXRlckdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJQYXJhbWV0ZXJHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVsZXRlREJQYXJhbWV0ZXJHcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVEQlByb3h5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJQcm94eTogc3RyaW5nW10gPSBbXCJyZHM6RGVsZXRlREJQcm94eVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlREJQcm94eUVuZHBvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJQcm94eUVuZHBvaW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZWxldGVEQlByb3h5RW5kcG9pbnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlREJTZWN1cml0eUdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJTZWN1cml0eUdyb3VwOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZWxldGVEQlNlY3VyaXR5R3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlREJTaGFyZEdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJTaGFyZEdyb3VwOiBzdHJpbmdbXSA9IFtcInJkczpEZWxldGVEQlNoYXJkR3JvdXBcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZURCU25hcHNob3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQlNuYXBzaG90OiBzdHJpbmdbXSA9IFtcInJkczpEZWxldGVEQlNuYXBzaG90XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVEQlN1Ym5ldEdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJTdWJuZXRHcm91cDogc3RyaW5nW10gPSBbXCJyZHM6RGVsZXRlREJTdWJuZXRHcm91cFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlRXZlbnRTdWJzY3JpcHRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFdmVudFN1YnNjcmlwdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVsZXRlRXZlbnRTdWJzY3JpcHRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlR2xvYmFsQ2x1c3RlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUdsb2JhbENsdXN0ZXI6IHN0cmluZ1tdID0gW1wicmRzOkRlbGV0ZUdsb2JhbENsdXN0ZXJcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUludGVncmF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSW50ZWdyYXRpb246IHN0cmluZ1tdID0gW1wicmRzOkRlbGV0ZUludGVncmF0aW9uXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVPcHRpb25Hcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU9wdGlvbkdyb3VwOiBzdHJpbmdbXSA9IFtcInJkczpEZWxldGVPcHRpb25Hcm91cFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlVGVuYW50RGF0YWJhc2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVUZW5hbnREYXRhYmFzZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQlNuYXBzaG90XCIsXG5cdFx0XCJyZHM6RGVsZXRlVGVuYW50RGF0YWJhc2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVyZWdpc3RlckRCUHJveHlUYXJnZXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVyZWdpc3RlckRCUHJveHlUYXJnZXRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXJlZ2lzdGVyREJQcm94eVRhcmdldHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVBY2NvdW50QXR0cmlidXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQWNjb3VudEF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlQWNjb3VudEF0dHJpYnV0ZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVCbHVlR3JlZW5EZXBsb3ltZW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlQmx1ZUdyZWVuRGVwbG95bWVudHM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlQmx1ZUdyZWVuRGVwbG95bWVudHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVDZXJ0aWZpY2F0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUNlcnRpZmljYXRlczogc3RyaW5nW10gPSBbXCJyZHM6RGVzY3JpYmVDZXJ0aWZpY2F0ZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJDbHVzdGVyQXV0b21hdGVkQmFja3VwcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyQXV0b21hdGVkQmFja3Vwczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVEQkNsdXN0ZXJBdXRvbWF0ZWRCYWNrdXBzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJDbHVzdGVyQmFja3RyYWNrcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyQmFja3RyYWNrczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVEQkNsdXN0ZXJCYWNrdHJhY2tzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJDbHVzdGVyRW5kcG9pbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkNsdXN0ZXJFbmRwb2ludHM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJDbHVzdGVyRW5kcG9pbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXBzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cHM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXBzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJDbHVzdGVyUGFyYW1ldGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyUGFyYW1ldGVyczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVEQkNsdXN0ZXJQYXJhbWV0ZXJzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJDbHVzdGVyU25hcHNob3RBdHRyaWJ1dGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkNsdXN0ZXJTbmFwc2hvdEF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJDbHVzdGVyU25hcHNob3RBdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJDbHVzdGVyU25hcHNob3RzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkNsdXN0ZXJTbmFwc2hvdHM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJDbHVzdGVyU25hcHNob3RzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJDbHVzdGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyczogc3RyaW5nW10gPSBbXCJyZHM6RGVzY3JpYmVEQkNsdXN0ZXJzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCRW5naW5lVmVyc2lvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCRW5naW5lVmVyc2lvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJFbmdpbmVWZXJzaW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVEQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCSW5zdGFuY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkluc3RhbmNlczogc3RyaW5nW10gPSBbXCJyZHM6RGVzY3JpYmVEQkluc3RhbmNlc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQkxvZ0ZpbGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkxvZ0ZpbGVzOiBzdHJpbmdbXSA9IFtcInJkczpEZXNjcmliZURCTG9nRmlsZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJNYWpvckVuZ2luZVZlcnNpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQk1ham9yRW5naW5lVmVyc2lvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJNYWpvckVuZ2luZVZlcnNpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJQYXJhbWV0ZXJHcm91cHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCUGFyYW1ldGVyR3JvdXBzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCUGFyYW1ldGVyR3JvdXBzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJQYXJhbWV0ZXJzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlBhcmFtZXRlcnM6IHN0cmluZ1tdID0gW1wicmRzOkRlc2NyaWJlREJQYXJhbWV0ZXJzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCUHJveGllcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJQcm94aWVzOiBzdHJpbmdbXSA9IFtcInJkczpEZXNjcmliZURCUHJveGllc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQlByb3h5RW5kcG9pbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlByb3h5RW5kcG9pbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCUHJveHlFbmRwb2ludHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQlByb3h5VGFyZ2V0R3JvdXBzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlByb3h5VGFyZ2V0R3JvdXBzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCUHJveHlUYXJnZXRHcm91cHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQlByb3h5VGFyZ2V0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJQcm94eVRhcmdldHM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJQcm94eVRhcmdldHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQlJlY29tbWVuZGF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJSZWNvbW1lbmRhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJSZWNvbW1lbmRhdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQlNlY3VyaXR5R3JvdXBzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlNlY3VyaXR5R3JvdXBzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCU2VjdXJpdHlHcm91cHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQlNoYXJkR3JvdXBzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlNoYXJkR3JvdXBzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCU2hhcmRHcm91cHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQlNuYXBzaG90QXR0cmlidXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJTbmFwc2hvdEF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJTbmFwc2hvdEF0dHJpYnV0ZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQlNuYXBzaG90VGVuYW50RGF0YWJhc2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlNuYXBzaG90VGVuYW50RGF0YWJhc2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCU25hcHNob3RUZW5hbnREYXRhYmFzZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQlNuYXBzaG90cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJTbmFwc2hvdHM6IHN0cmluZ1tdID0gW1wicmRzOkRlc2NyaWJlREJTbmFwc2hvdHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJTdWJuZXRHcm91cHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCU3VibmV0R3JvdXBzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCU3VibmV0R3JvdXBzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlRW5naW5lRGVmYXVsdENsdXN0ZXJQYXJhbWV0ZXJzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVFbmdpbmVEZWZhdWx0Q2x1c3RlclBhcmFtZXRlcnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlRW5naW5lRGVmYXVsdENsdXN0ZXJQYXJhbWV0ZXJzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlRW5naW5lRGVmYXVsdFBhcmFtZXRlcnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUVuZ2luZURlZmF1bHRQYXJhbWV0ZXJzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZUVuZ2luZURlZmF1bHRQYXJhbWV0ZXJzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlRXZlbnRDYXRlZ29yaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVFdmVudENhdGVnb3JpZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlRXZlbnRDYXRlZ29yaWVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlRXZlbnRTdWJzY3JpcHRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVFdmVudFN1YnNjcmlwdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlRXZlbnRTdWJzY3JpcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlRXZlbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVFdmVudHM6IHN0cmluZ1tdID0gW1wicmRzOkRlc2NyaWJlRXZlbnRzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUV4cG9ydFRhc2tzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVFeHBvcnRUYXNrczogc3RyaW5nW10gPSBbXCJyZHM6RGVzY3JpYmVFeHBvcnRUYXNrc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVHbG9iYWxDbHVzdGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlR2xvYmFsQ2x1c3RlcnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlR2xvYmFsQ2x1c3RlcnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVJbnRlZ3JhdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUludGVncmF0aW9uczogc3RyaW5nW10gPSBbXCJyZHM6RGVzY3JpYmVJbnRlZ3JhdGlvbnNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlT3B0aW9uR3JvdXBPcHRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVPcHRpb25Hcm91cE9wdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlT3B0aW9uR3JvdXBPcHRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlT3B0aW9uR3JvdXBzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVPcHRpb25Hcm91cHM6IHN0cmluZ1tdID0gW1wicmRzOkRlc2NyaWJlT3B0aW9uR3JvdXBzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZU9yZGVyYWJsZURCSW5zdGFuY2VPcHRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVPcmRlcmFibGVEQkluc3RhbmNlT3B0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVPcmRlcmFibGVEQkluc3RhbmNlT3B0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZVBlbmRpbmdNYWludGVuYW5jZUFjdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVBlbmRpbmdNYWludGVuYW5jZUFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlUGVuZGluZ01haW50ZW5hbmNlQWN0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZVJlc2VydmVkREJJbnN0YW5jZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlc2VydmVkREJJbnN0YW5jZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlUmVzZXJ2ZWREQkluc3RhbmNlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZ3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZ3M6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlUmVzZXJ2ZWREQkluc3RhbmNlc09mZmVyaW5nc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZVNlcnZlcmxlc3NWMlBsYXRmb3JtVmVyc2lvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVNlcnZlcmxlc3NWMlBsYXRmb3JtVmVyc2lvbnM6IHN0cmluZ1tdID0gW107XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlU291cmNlUmVnaW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlU291cmNlUmVnaW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVTb3VyY2VSZWdpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlVGVuYW50RGF0YWJhc2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVUZW5hbnREYXRhYmFzZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlVGVuYW50RGF0YWJhc2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlVmFsaWREQkluc3RhbmNlTW9kaWZpY2F0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlVmFsaWREQkluc3RhbmNlTW9kaWZpY2F0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVWYWxpZERCSW5zdGFuY2VNb2RpZmljYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERpc2FibGVIdHRwRW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEaXNhYmxlSHR0cEVuZHBvaW50OiBzdHJpbmdbXSA9IFtcInJkczpEaXNhYmxlSHR0cEVuZHBvaW50XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEb3dubG9hZERCTG9nRmlsZVBvcnRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEb3dubG9hZERCTG9nRmlsZVBvcnRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRvd25sb2FkREJMb2dGaWxlUG9ydGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBFbmFibGVIdHRwRW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBFbmFibGVIdHRwRW5kcG9pbnQ6IHN0cmluZ1tdID0gW1wicmRzOkVuYWJsZUh0dHBFbmRwb2ludFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRmFpbG92ZXJEQkNsdXN0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBGYWlsb3ZlckRCQ2x1c3Rlcjogc3RyaW5nW10gPSBbXCJyZHM6RmFpbG92ZXJEQkNsdXN0ZXJcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEZhaWxvdmVyR2xvYmFsQ2x1c3RlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEZhaWxvdmVyR2xvYmFsQ2x1c3Rlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RmFpbG92ZXJHbG9iYWxDbHVzdGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RUYWdzRm9yUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGFnc0ZvclJlc291cmNlOiBzdHJpbmdbXSA9IFtcInJkczpMaXN0VGFnc0ZvclJlc291cmNlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlBY3Rpdml0eVN0cmVhbSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeUFjdGl2aXR5U3RyZWFtOiBzdHJpbmdbXSA9IFtcInJkczpNb2RpZnlBY3Rpdml0eVN0cmVhbVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTW9kaWZ5Q2VydGlmaWNhdGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5Q2VydGlmaWNhdGVzOiBzdHJpbmdbXSA9IFtcInJkczpNb2RpZnlDZXJ0aWZpY2F0ZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeUN1cnJlbnREQkNsdXN0ZXJDYXBhY2l0eSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeUN1cnJlbnREQkNsdXN0ZXJDYXBhY2l0eTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6TW9kaWZ5Q3VycmVudERCQ2x1c3RlckNhcGFjaXR5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeUN1c3RvbURCRW5naW5lVmVyc2lvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeUN1c3RvbURCRW5naW5lVmVyc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6TW9kaWZ5Q3VzdG9tREJFbmdpbmVWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeURCQ2x1c3RlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCQ2x1c3Rlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6TW9kaWZ5REJDbHVzdGVyXCIsXG5cdFx0XCJyZHM6TW9kaWZ5REJJbnN0YW5jZVwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeURCQ2x1c3RlckVuZHBvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJDbHVzdGVyRW5kcG9pbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeURCQ2x1c3RlckVuZHBvaW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeURCQ2x1c3RlclBhcmFtZXRlckdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJDbHVzdGVyUGFyYW1ldGVyR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeURCQ2x1c3RlclBhcmFtZXRlckdyb3VwXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeURCQ2x1c3RlclNuYXBzaG90QXR0cmlidXRlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJDbHVzdGVyU25hcHNob3RBdHRyaWJ1dGU6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeURCQ2x1c3RlclNuYXBzaG90QXR0cmlidXRlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeURCSW5zdGFuY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQkluc3RhbmNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOk1vZGlmeURCSW5zdGFuY2VcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlEQlBhcmFtZXRlckdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJQYXJhbWV0ZXJHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6TW9kaWZ5REJQYXJhbWV0ZXJHcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlEQlByb3h5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJQcm94eTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6TW9kaWZ5REJQcm94eVwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeURCUHJveHlFbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCUHJveHlFbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6TW9kaWZ5REJQcm94eUVuZHBvaW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeURCUHJveHlUYXJnZXRHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCUHJveHlUYXJnZXRHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6TW9kaWZ5REJQcm94eVRhcmdldEdyb3VwXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeURCUmVjb21tZW5kYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQlJlY29tbWVuZGF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpNb2RpZnlEQlJlY29tbWVuZGF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeURCU2hhcmRHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCU2hhcmRHcm91cDogc3RyaW5nW10gPSBbXCJyZHM6TW9kaWZ5REJTaGFyZEdyb3VwXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlEQlNuYXBzaG90IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJTbmFwc2hvdDogc3RyaW5nW10gPSBbXCJyZHM6TW9kaWZ5REJTbmFwc2hvdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTW9kaWZ5REJTbmFwc2hvdEF0dHJpYnV0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCU25hcHNob3RBdHRyaWJ1dGU6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeURCU25hcHNob3RBdHRyaWJ1dGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTW9kaWZ5REJTdWJuZXRHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCU3VibmV0R3JvdXA6IHN0cmluZ1tdID0gW1wicmRzOk1vZGlmeURCU3VibmV0R3JvdXBcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeUV2ZW50U3Vic2NyaXB0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5RXZlbnRTdWJzY3JpcHRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeUV2ZW50U3Vic2NyaXB0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeUdsb2JhbENsdXN0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlHbG9iYWxDbHVzdGVyOiBzdHJpbmdbXSA9IFtcInJkczpNb2RpZnlHbG9iYWxDbHVzdGVyXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlJbnRlZ3JhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeUludGVncmF0aW9uOiBzdHJpbmdbXSA9IFtcInJkczpNb2RpZnlJbnRlZ3JhdGlvblwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTW9kaWZ5T3B0aW9uR3JvdXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlPcHRpb25Hcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6TW9kaWZ5T3B0aW9uR3JvdXBcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlUZW5hbnREYXRhYmFzZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeVRlbmFudERhdGFiYXNlOiBzdHJpbmdbXSA9IFtcInJkczpNb2RpZnlUZW5hbnREYXRhYmFzZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHJvbW90ZVJlYWRSZXBsaWNhIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHJvbW90ZVJlYWRSZXBsaWNhOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOlByb21vdGVSZWFkUmVwbGljYVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQcm9tb3RlUmVhZFJlcGxpY2FEQkNsdXN0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQcm9tb3RlUmVhZFJlcGxpY2FEQkNsdXN0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOlByb21vdGVSZWFkUmVwbGljYURCQ2x1c3RlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXJjaGFzZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1cmNoYXNlUmVzZXJ2ZWREQkluc3RhbmNlc09mZmVyaW5nOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOlB1cmNoYXNlUmVzZXJ2ZWREQkluc3RhbmNlc09mZmVyaW5nXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFJlYm9vdERCQ2x1c3RlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlYm9vdERCQ2x1c3Rlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6UmVib290REJDbHVzdGVyXCIsXG5cdFx0XCJyZHM6UmVib290REJJbnN0YW5jZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZWJvb3REQkluc3RhbmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVib290REJJbnN0YW5jZTogc3RyaW5nW10gPSBbXCJyZHM6UmVib290REJJbnN0YW5jZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVib290REJTaGFyZEdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVib290REJTaGFyZEdyb3VwOiBzdHJpbmdbXSA9IFtcInJkczpSZWJvb3REQlNoYXJkR3JvdXBcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFJlZ2lzdGVyREJQcm94eVRhcmdldHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBSZWdpc3RlckRCUHJveHlUYXJnZXRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpSZWdpc3RlckRCUHJveHlUYXJnZXRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFJlbW92ZUZyb21HbG9iYWxDbHVzdGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVtb3ZlRnJvbUdsb2JhbENsdXN0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOlJlbW92ZUZyb21HbG9iYWxDbHVzdGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFJlbW92ZVJvbGVGcm9tREJDbHVzdGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVtb3ZlUm9sZUZyb21EQkNsdXN0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJyZHM6UmVtb3ZlUm9sZUZyb21EQkNsdXN0ZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVtb3ZlUm9sZUZyb21EQkluc3RhbmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVtb3ZlUm9sZUZyb21EQkluc3RhbmNlOiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwicmRzOlJlbW92ZVJvbGVGcm9tREJJbnN0YW5jZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZW1vdmVTb3VyY2VJZGVudGlmaWVyRnJvbVN1YnNjcmlwdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlbW92ZVNvdXJjZUlkZW50aWZpZXJGcm9tU3Vic2NyaXB0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpSZW1vdmVTb3VyY2VJZGVudGlmaWVyRnJvbVN1YnNjcmlwdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZW1vdmVUYWdzRnJvbVJlc291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVtb3ZlVGFnc0Zyb21SZXNvdXJjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6UmVtb3ZlVGFnc0Zyb21SZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZXNldERCQ2x1c3RlclBhcmFtZXRlckdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzZXREQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6UmVzZXREQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZXNldERCUGFyYW1ldGVyR3JvdXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBSZXNldERCUGFyYW1ldGVyR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOlJlc2V0REJQYXJhbWV0ZXJHcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZXN0b3JlREJDbHVzdGVyRnJvbVMzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzdG9yZURCQ2x1c3RlckZyb21TMzogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkUm9sZVRvREJDbHVzdGVyXCIsXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwicmRzOlJlc3RvcmVEQkNsdXN0ZXJGcm9tUzNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVzdG9yZURCQ2x1c3RlckZyb21TbmFwc2hvdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkNsdXN0ZXJGcm9tU25hcHNob3Q6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFJvbGVUb0RCQ2x1c3RlclwiLFxuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJJbnN0YW5jZVwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJyZHM6UmVzdG9yZURCQ2x1c3RlckZyb21TbmFwc2hvdFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZXN0b3JlREJDbHVzdGVyVG9Qb2ludEluVGltZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkNsdXN0ZXJUb1BvaW50SW5UaW1lOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRSb2xlVG9EQkNsdXN0ZXJcIixcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCSW5zdGFuY2VcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwicmRzOlJlc3RvcmVEQkNsdXN0ZXJUb1BvaW50SW5UaW1lXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFJlc3RvcmVEQkluc3RhbmNlRnJvbURCU25hcHNob3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBSZXN0b3JlREJJbnN0YW5jZUZyb21EQlNuYXBzaG90OiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZVRlbmFudERhdGFiYXNlXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInJkczpSZXN0b3JlREJJbnN0YW5jZUZyb21EQlNuYXBzaG90XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFJlc3RvcmVEQkluc3RhbmNlRnJvbVMzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzdG9yZURCSW5zdGFuY2VGcm9tUzM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInJkczpSZXN0b3JlREJJbnN0YW5jZUZyb21TM1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZXN0b3JlREJJbnN0YW5jZVRvUG9pbnRJblRpbWUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBSZXN0b3JlREJJbnN0YW5jZVRvUG9pbnRJblRpbWU6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlVGVuYW50RGF0YWJhc2VcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwicmRzOlJlc3RvcmVEQkluc3RhbmNlVG9Qb2ludEluVGltZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZXZva2VEQlNlY3VyaXR5R3JvdXBJbmdyZXNzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmV2b2tlREJTZWN1cml0eUdyb3VwSW5ncmVzczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6UmV2b2tlREJTZWN1cml0eUdyb3VwSW5ncmVzc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydEFjdGl2aXR5U3RyZWFtIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRBY3Rpdml0eVN0cmVhbTogc3RyaW5nW10gPSBbXCJyZHM6U3RhcnRBY3Rpdml0eVN0cmVhbVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnREQkNsdXN0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydERCQ2x1c3Rlcjogc3RyaW5nW10gPSBbXCJyZHM6U3RhcnREQkNsdXN0ZXJcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0YXJ0REJJbnN0YW5jZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0REJJbnN0YW5jZTogc3RyaW5nW10gPSBbXCJyZHM6U3RhcnREQkluc3RhbmNlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydERCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzUmVwbGljYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydERCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzUmVwbGljYXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6U3RhcnREQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1JlcGxpY2F0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0YXJ0RXhwb3J0VGFzayBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0RXhwb3J0VGFzazogc3RyaW5nW10gPSBbXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInJkczpTdGFydEV4cG9ydFRhc2tcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RvcEFjdGl2aXR5U3RyZWFtIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcEFjdGl2aXR5U3RyZWFtOiBzdHJpbmdbXSA9IFtcInJkczpTdG9wQWN0aXZpdHlTdHJlYW1cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0b3BEQkNsdXN0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wREJDbHVzdGVyOiBzdHJpbmdbXSA9IFtcInJkczpTdG9wREJDbHVzdGVyXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdG9wREJJbnN0YW5jZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BEQkluc3RhbmNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCU25hcHNob3RcIixcblx0XHRcInJkczpTdG9wREJJbnN0YW5jZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdG9wREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHNSZXBsaWNhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BEQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1JlcGxpY2F0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpTdG9wREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHNSZXBsaWNhdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTd2l0Y2hvdmVyQmx1ZUdyZWVuRGVwbG95bWVudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN3aXRjaG92ZXJCbHVlR3JlZW5EZXBsb3ltZW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpNb2RpZnlEQkNsdXN0ZXJcIixcblx0XHRcInJkczpNb2RpZnlEQkluc3RhbmNlXCIsXG5cdFx0XCJyZHM6TW9kaWZ5R2xvYmFsQ2x1c3RlclwiLFxuXHRcdFwicmRzOlByb21vdGVSZWFkUmVwbGljYVwiLFxuXHRcdFwicmRzOlByb21vdGVSZWFkUmVwbGljYURCQ2x1c3RlclwiLFxuXHRcdFwicmRzOlN3aXRjaG92ZXJCbHVlR3JlZW5EZXBsb3ltZW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN3aXRjaG92ZXJHbG9iYWxDbHVzdGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3dpdGNob3Zlckdsb2JhbENsdXN0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOlN3aXRjaG92ZXJHbG9iYWxDbHVzdGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN3aXRjaG92ZXJSZWFkUmVwbGljYSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN3aXRjaG92ZXJSZWFkUmVwbGljYTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6U3dpdGNob3ZlclJlYWRSZXBsaWNhXCIsXG5cdF07XG59XG5cbi8qKlxuICogQ29uZGl0aW9uIGtleSBjb25zdGFudHMgYW5kIGJ1aWxkZXJzIGZvciByZHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBSRFNDb25kaXRpb25zIHtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIEFkZFRhZ3NUb1Jlc291cmNlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFkZFRhZ3NUb1Jlc291cmNlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6VGFnc0Zyb21SZXF1ZXN0XCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENvcHlEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5REJDbHVzdGVyUGFyYW1ldGVyR3JvdXBDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ29weURCQ2x1c3RlclNuYXBzaG90IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENvcHlEQkNsdXN0ZXJTbmFwc2hvdENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDb3B5REJQYXJhbWV0ZXJHcm91cCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5REJQYXJhbWV0ZXJHcm91cENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDb3B5REJTbmFwc2hvdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5REJTbmFwc2hvdENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOkNvcHlPcHRpb25Hcm91cFwiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDb3B5T3B0aW9uR3JvdXAgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ29weU9wdGlvbkdyb3VwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUJsdWVHcmVlbkRlcGxveW1lbnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQmx1ZUdyZWVuRGVwbG95bWVudENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOkRhdGFiYXNlQ2xhc3NcIixcblx0XHRcInJkczpEYXRhYmFzZUVuZ2luZVwiLFxuXHRcdFwicmRzOkRhdGFiYXNlTmFtZVwiLFxuXHRcdFwicmRzOk11bHRpQXpcIixcblx0XHRcInJkczpQaW9wc1wiLFxuXHRcdFwicmRzOlN0b3JhZ2VFbmNyeXB0ZWRcIixcblx0XHRcInJkczpTdG9yYWdlU2l6ZVwiLFxuXHRcdFwicmRzOlZwY1wiLFxuXHRcdFwicmRzOmNsdXN0ZXItcGctdGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwicmRzOmNsdXN0ZXItdGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwicmRzOmRiLXRhZy8ke1RhZ0tleX1cIixcblx0XHRcInJkczpwZy10YWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUN1c3RvbURCRW5naW5lVmVyc2lvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDdXN0b21EQkVuZ2luZVZlcnNpb25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlREJDbHVzdGVyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCQ2x1c3RlckNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOkRhdGFiYXNlQ2xhc3NcIixcblx0XHRcInJkczpEYXRhYmFzZUVuZ2luZVwiLFxuXHRcdFwicmRzOkRhdGFiYXNlTmFtZVwiLFxuXHRcdFwicmRzOk1hbmFnZU1hc3RlclVzZXJQYXNzd29yZFwiLFxuXHRcdFwicmRzOlBpb3BzXCIsXG5cdFx0XCJyZHM6U3RvcmFnZUVuY3J5cHRlZFwiLFxuXHRcdFwicmRzOlN0b3JhZ2VTaXplXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZURCQ2x1c3RlckVuZHBvaW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCQ2x1c3RlckVuZHBvaW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6RW5kcG9pbnRUeXBlXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZURCQ2x1c3RlclNuYXBzaG90IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCQ2x1c3RlclNuYXBzaG90Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZURCSW5zdGFuY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJJbnN0YW5jZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOkJhY2t1cFRhcmdldFwiLFxuXHRcdFwicmRzOk1hbmFnZU1hc3RlclVzZXJQYXNzd29yZFwiLFxuXHRcdFwicmRzOlB1YmxpY2x5QWNjZXNzaWJsZVwiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVEQkluc3RhbmNlUmVhZFJlcGxpY2EgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJJbnN0YW5jZVJlYWRSZXBsaWNhQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6UHVibGljbHlBY2Nlc3NpYmxlXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZURCUGFyYW1ldGVyR3JvdXAgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJQYXJhbWV0ZXJHcm91cENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVEQlByb3h5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCUHJveHlDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZURCUHJveHlFbmRwb2ludCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlByb3h5RW5kcG9pbnRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZURCU2VjdXJpdHlHcm91cCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlNlY3VyaXR5R3JvdXBDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlREJTaGFyZEdyb3VwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCU2hhcmRHcm91cENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOlB1YmxpY2x5QWNjZXNzaWJsZVwiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVEQlNuYXBzaG90IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCU25hcHNob3RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpCYWNrdXBUYXJnZXRcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlREJTdWJuZXRHcm91cCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlN1Ym5ldEdyb3VwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUV2ZW50U3Vic2NyaXB0aW9uIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUV2ZW50U3Vic2NyaXB0aW9uQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUdsb2JhbENsdXN0ZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlR2xvYmFsQ2x1c3RlckNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVJbnRlZ3JhdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVJbnRlZ3JhdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVPcHRpb25Hcm91cCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVPcHRpb25Hcm91cENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVUZW5hbnREYXRhYmFzZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUZW5hbnREYXRhYmFzZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOk1hbmFnZU1hc3RlclVzZXJQYXNzd29yZFwiLFxuXHRcdFwicmRzOlRlbmFudERhdGFiYXNlTmFtZVwiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVCbHVlR3JlZW5EZXBsb3ltZW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUJsdWVHcmVlbkRlcGxveW1lbnRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIERlc2NyaWJlSW50ZWdyYXRpb25zIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlSW50ZWdyYXRpb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBNb2RpZnlEQkNsdXN0ZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJDbHVzdGVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGF0YWJhc2VDbGFzc1wiLFxuXHRcdFwicmRzOk1hbmFnZU1hc3RlclVzZXJQYXNzd29yZFwiLFxuXHRcdFwicmRzOlBpb3BzXCIsXG5cdFx0XCJyZHM6U3RvcmFnZVNpemVcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIE1vZGlmeURCSW5zdGFuY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJJbnN0YW5jZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1hbmFnZU1hc3RlclVzZXJQYXNzd29yZFwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTW9kaWZ5VGVuYW50RGF0YWJhc2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5VGVuYW50RGF0YWJhc2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmRcIixcblx0XHRcInJkczpUZW5hbnREYXRhYmFzZU5hbWVcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFB1cmNoYXNlUmVzZXJ2ZWREQkluc3RhbmNlc09mZmVyaW5nIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1cmNoYXNlUmVzZXJ2ZWREQkluc3RhbmNlc09mZmVyaW5nQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFJlbW92ZVRhZ3NGcm9tUmVzb3VyY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVtb3ZlVGFnc0Zyb21SZXNvdXJjZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBSZXN0b3JlREJDbHVzdGVyRnJvbVMzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkNsdXN0ZXJGcm9tUzNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpEYXRhYmFzZUVuZ2luZVwiLFxuXHRcdFwicmRzOkRhdGFiYXNlTmFtZVwiLFxuXHRcdFwicmRzOk1hbmFnZU1hc3RlclVzZXJQYXNzd29yZFwiLFxuXHRcdFwicmRzOlN0b3JhZ2VFbmNyeXB0ZWRcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUmVzdG9yZURCQ2x1c3RlckZyb21TbmFwc2hvdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBSZXN0b3JlREJDbHVzdGVyRnJvbVNuYXBzaG90Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6RGF0YWJhc2VDbGFzc1wiLFxuXHRcdFwicmRzOlBpb3BzXCIsXG5cdFx0XCJyZHM6U3RvcmFnZVNpemVcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUmVzdG9yZURCQ2x1c3RlclRvUG9pbnRJblRpbWUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzdG9yZURCQ2x1c3RlclRvUG9pbnRJblRpbWVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpEYXRhYmFzZUNsYXNzXCIsXG5cdFx0XCJyZHM6UGlvcHNcIixcblx0XHRcInJkczpTdG9yYWdlU2l6ZVwiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBSZXN0b3JlREJJbnN0YW5jZUZyb21EQlNuYXBzaG90IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkluc3RhbmNlRnJvbURCU25hcHNob3RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpCYWNrdXBUYXJnZXRcIixcblx0XHRcInJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmRcIixcblx0XHRcInJkczpQdWJsaWNseUFjY2Vzc2libGVcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUmVzdG9yZURCSW5zdGFuY2VGcm9tUzMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzdG9yZURCSW5zdGFuY2VGcm9tUzNDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmRcIixcblx0XHRcInJkczpQdWJsaWNseUFjY2Vzc2libGVcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUmVzdG9yZURCSW5zdGFuY2VUb1BvaW50SW5UaW1lIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkluc3RhbmNlVG9Qb2ludEluVGltZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOkJhY2t1cFRhcmdldFwiLFxuXHRcdFwicmRzOk1hbmFnZU1hc3RlclVzZXJQYXNzd29yZFwiLFxuXHRcdFwicmRzOlB1YmxpY2x5QWNjZXNzaWJsZVwiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBTdGFydERCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzUmVwbGljYXRpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnREQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1JlcGxpY2F0aW9uQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLCBcImF3czpUYWdLZXlzXCIsIFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCJdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgU3dpdGNob3ZlckJsdWVHcmVlbkRlcGxveW1lbnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3dpdGNob3ZlckJsdWVHcmVlbkRlcGxveW1lbnRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XTtcblxuXHQvKiogQ29uZGl0aW9uIGtleTogYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBV1NfUkVRVUVTVF9UQUcgPSBcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1JFU09VUkNFX1RBRyA9IFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYXdzOlRhZ0tleXMgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBV1NfVEFHX0tFWVMgPSBcImF3czpUYWdLZXlzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6QmFja3VwVGFyZ2V0IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBCQUNLVVBfVEFSR0VUID0gXCJyZHM6QmFja3VwVGFyZ2V0XCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6Q29weU9wdGlvbkdyb3VwIChCb29sKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ09QWV9PUFRJT05fR1JPVVAgPSBcInJkczpDb3B5T3B0aW9uR3JvdXBcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpEYXRhYmFzZUNsYXNzIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBEQVRBQkFTRV9DTEFTUyA9IFwicmRzOkRhdGFiYXNlQ2xhc3NcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpEYXRhYmFzZUVuZ2luZSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgREFUQUJBU0VfRU5HSU5FID0gXCJyZHM6RGF0YWJhc2VFbmdpbmVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpEYXRhYmFzZU5hbWUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IERBVEFCQVNFX05BTUUgPSBcInJkczpEYXRhYmFzZU5hbWVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpFbmRwb2ludFR5cGUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEVORFBPSU5UX1RZUEUgPSBcInJkczpFbmRwb2ludFR5cGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmQgKEJvb2wpICovXG5cdHN0YXRpYyByZWFkb25seSBNQU5BR0VfTUFTVEVSX1VTRVJfUEFTU1dPUkQgPSBcInJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmRcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpNdWx0aUF6IChCb29sKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTVVMVElfQVogPSBcInJkczpNdWx0aUF6XCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6UGlvcHMgKE51bWVyaWMpICovXG5cdHN0YXRpYyByZWFkb25seSBQSU9QUyA9IFwicmRzOlBpb3BzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6UHVibGljbHlBY2Nlc3NpYmxlIChCb29sKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUFVCTElDTFlfQUNDRVNTSUJMRSA9IFwicmRzOlB1YmxpY2x5QWNjZXNzaWJsZVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOlN0b3JhZ2VFbmNyeXB0ZWQgKEJvb2wpICovXG5cdHN0YXRpYyByZWFkb25seSBTVE9SQUdFX0VOQ1JZUFRFRCA9IFwicmRzOlN0b3JhZ2VFbmNyeXB0ZWRcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpTdG9yYWdlU2l6ZSAoTnVtZXJpYykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFNUT1JBR0VfU0laRSA9IFwicmRzOlN0b3JhZ2VTaXplXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6VGFnc0Zyb21SZXF1ZXN0IChCb29sKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVEFHU19GUk9NX1JFUVVFU1QgPSBcInJkczpUYWdzRnJvbVJlcXVlc3RcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpUZW5hbnREYXRhYmFzZU5hbWUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFRFTkFOVF9EQVRBQkFTRV9OQU1FID0gXCJyZHM6VGVuYW50RGF0YWJhc2VOYW1lXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6VnBjIChCb29sKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVlBDID0gXCJyZHM6VnBjXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6Y2x1c3Rlci1wZy10YWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBDTFVTVEVSX1BHX1RBRyA9IFwicmRzOmNsdXN0ZXItcGctdGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOmNsdXN0ZXItc25hcHNob3QtdGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ0xVU1RFUl9TTkFQU0hPVF9UQUcgPSBcInJkczpjbHVzdGVyLXNuYXBzaG90LXRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpjbHVzdGVyLXRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IENMVVNURVJfVEFHID0gXCJyZHM6Y2x1c3Rlci10YWcvJHtUYWdLZXl9XCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6ZGItdGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgREJfVEFHID0gXCJyZHM6ZGItdGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOmVzLXRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEVTX1RBRyA9IFwicmRzOmVzLXRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpvZy10YWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBPR19UQUcgPSBcInJkczpvZy10YWcvJHtUYWdLZXl9XCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6cGctdGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUEdfVEFHID0gXCJyZHM6cGctdGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOnJlcS10YWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBSRVFfVEFHID0gXCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpyaS10YWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBSSV9UQUcgPSBcInJkczpyaS10YWcvJHtUYWdLZXl9XCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6c2VjZ3JwLXRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFNFQ0dSUF9UQUcgPSBcInJkczpzZWNncnAtdGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOnNuYXBzaG90LXRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFNOQVBTSE9UX1RBRyA9IFwicmRzOnNuYXBzaG90LXRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpzdWJncnAtdGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU1VCR1JQX1RBRyA9IFwicmRzOnN1YmdycC10YWcvJHtUYWdLZXl9XCI7XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgcmVxdWVzdFRhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgcmVzb3VyY2VUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBhd3M6VGFnS2V5c2AuXG5cdCAqL1xuXHRzdGF0aWMgdGFnS2V5cyh2YWx1ZXM6IHN0cmluZ1tdKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+PiB7XG5cdFx0cmV0dXJuIHsgXCJGb3JBbGxWYWx1ZXM6U3RyaW5nRXF1YWxzXCI6IHsgXCJhd3M6VGFnS2V5c1wiOiB2YWx1ZXMgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpCYWNrdXBUYXJnZXRgLlxuXHQgKi9cblx0c3RhdGljIGJhY2t1cFRhcmdldCh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczpCYWNrdXBUYXJnZXRcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpDb3B5T3B0aW9uR3JvdXBgLlxuXHQgKi9cblx0c3RhdGljIGNvcHlPcHRpb25Hcm91cChcblx0XHR2YWx1ZTogYm9vbGVhbixcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYm9vbGVhbj4+IHtcblx0XHRyZXR1cm4geyBCb29sOiB7IFwicmRzOkNvcHlPcHRpb25Hcm91cFwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOkRhdGFiYXNlQ2xhc3NgLlxuXHQgKi9cblx0c3RhdGljIGRhdGFiYXNlQ2xhc3ModmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJyZHM6RGF0YWJhc2VDbGFzc1wiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOkRhdGFiYXNlRW5naW5lYC5cblx0ICovXG5cdHN0YXRpYyBkYXRhYmFzZUVuZ2luZSh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczpEYXRhYmFzZUVuZ2luZVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOkRhdGFiYXNlTmFtZWAuXG5cdCAqL1xuXHRzdGF0aWMgZGF0YWJhc2VOYW1lKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOkRhdGFiYXNlTmFtZVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOkVuZHBvaW50VHlwZWAuXG5cdCAqL1xuXHRzdGF0aWMgZW5kcG9pbnRUeXBlKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOkVuZHBvaW50VHlwZVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOk1hbmFnZU1hc3RlclVzZXJQYXNzd29yZGAuXG5cdCAqL1xuXHRzdGF0aWMgbWFuYWdlTWFzdGVyVXNlclBhc3N3b3JkKFxuXHRcdHZhbHVlOiBib29sZWFuLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPj4ge1xuXHRcdHJldHVybiB7IEJvb2w6IHsgXCJyZHM6TWFuYWdlTWFzdGVyVXNlclBhc3N3b3JkXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6TXVsdGlBemAuXG5cdCAqL1xuXHRzdGF0aWMgbXVsdGlBeih2YWx1ZTogYm9vbGVhbik6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+PiB7XG5cdFx0cmV0dXJuIHsgQm9vbDogeyBcInJkczpNdWx0aUF6XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6UGlvcHNgLlxuXHQgKi9cblx0c3RhdGljIHBpb3BzKHZhbHVlOiBudW1iZXIpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+PiB7XG5cdFx0cmV0dXJuIHsgTnVtZXJpY0VxdWFsczogeyBcInJkczpQaW9wc1wiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOlB1YmxpY2x5QWNjZXNzaWJsZWAuXG5cdCAqL1xuXHRzdGF0aWMgcHVibGljbHlBY2Nlc3NpYmxlKFxuXHRcdHZhbHVlOiBib29sZWFuLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPj4ge1xuXHRcdHJldHVybiB7IEJvb2w6IHsgXCJyZHM6UHVibGljbHlBY2Nlc3NpYmxlXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6U3RvcmFnZUVuY3J5cHRlZGAuXG5cdCAqL1xuXHRzdGF0aWMgc3RvcmFnZUVuY3J5cHRlZChcblx0XHR2YWx1ZTogYm9vbGVhbixcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYm9vbGVhbj4+IHtcblx0XHRyZXR1cm4geyBCb29sOiB7IFwicmRzOlN0b3JhZ2VFbmNyeXB0ZWRcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpTdG9yYWdlU2l6ZWAuXG5cdCAqL1xuXHRzdGF0aWMgc3RvcmFnZVNpemUodmFsdWU6IG51bWJlcik6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIG51bWJlcj4+IHtcblx0XHRyZXR1cm4geyBOdW1lcmljRXF1YWxzOiB7IFwicmRzOlN0b3JhZ2VTaXplXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6VGFnc0Zyb21SZXF1ZXN0YC5cblx0ICovXG5cdHN0YXRpYyB0YWdzRnJvbVJlcXVlc3QoXG5cdFx0dmFsdWU6IGJvb2xlYW4sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+PiB7XG5cdFx0cmV0dXJuIHsgQm9vbDogeyBcInJkczpUYWdzRnJvbVJlcXVlc3RcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpUZW5hbnREYXRhYmFzZU5hbWVgLlxuXHQgKi9cblx0c3RhdGljIHRlbmFudERhdGFiYXNlTmFtZShcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOlRlbmFudERhdGFiYXNlTmFtZVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOlZwY2AuXG5cdCAqL1xuXHRzdGF0aWMgdnBjKHZhbHVlOiBib29sZWFuKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYm9vbGVhbj4+IHtcblx0XHRyZXR1cm4geyBCb29sOiB7IFwicmRzOlZwY1wiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOmNsdXN0ZXItcGctdGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgY2x1c3RlclBnVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOmNsdXN0ZXItcGctdGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOmNsdXN0ZXItc25hcHNob3QtdGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgY2x1c3RlclNuYXBzaG90VGFnKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJyZHM6Y2x1c3Rlci1zbmFwc2hvdC10YWcvJHtUYWdLZXl9XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6Y2x1c3Rlci10YWcvJHtUYWdLZXl9YC5cblx0ICovXG5cdHN0YXRpYyBjbHVzdGVyVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOmNsdXN0ZXItdGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOmRiLXRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIGRiVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOmRiLXRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczplcy10YWcvJHtUYWdLZXl9YC5cblx0ICovXG5cdHN0YXRpYyBlc1RhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczplcy10YWcvJHtUYWdLZXl9XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6b2ctdGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgb2dUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJyZHM6b2ctdGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOnBnLXRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHBnVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOnBnLXRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpyZXEtdGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgcmVxVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6cmktdGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgcmlUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJyZHM6cmktdGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOnNlY2dycC10YWcvJHtUYWdLZXl9YC5cblx0ICovXG5cdHN0YXRpYyBzZWNncnBUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJyZHM6c2VjZ3JwLXRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpzbmFwc2hvdC10YWcvJHtUYWdLZXl9YC5cblx0ICovXG5cdHN0YXRpYyBzbmFwc2hvdFRhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczpzbmFwc2hvdC10YWcvJHtUYWdLZXl9XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6c3ViZ3JwLXRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHN1YmdycFRhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczpzdWJncnAtdGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cbn1cbiJdfQ==
|
|
2456
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2dlbmVyYXRlZC9zZXJ2aWNlcy9yZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxnRkFBZ0Y7QUFDaEYsNkNBQTZDO0FBQzdDLDBEQUEwRDtBQUMxRCwwQ0FBMEM7QUFDMUMsb0RBQW9EO0FBQ3BELGdGQUFnRjtBQUVoRjs7R0FFRztBQUNILE1BQWEsVUFBVTs7QUFBdkIsZ0NBNmpCQzs7O0FBNWpCQSw4QkFBOEI7QUFDZCx5QkFBYyxHQUFHLEtBQUssQ0FBQztBQUV2QyxxQ0FBcUM7QUFDckIsNkJBQWtCLEdBQUcsd0JBQXdCLENBQUM7QUFDOUQsc0NBQXNDO0FBQ3RCLDhCQUFtQixHQUFHLHlCQUF5QixDQUFDO0FBQ2hFLG9EQUFvRDtBQUNwQyw0Q0FBaUMsR0FDaEQsdUNBQXVDLENBQUM7QUFDekMsc0NBQXNDO0FBQ3RCLDRCQUFpQixHQUFHLHVCQUF1QixDQUFDO0FBQzVELGdEQUFnRDtBQUNoQyx3Q0FBNkIsR0FDNUMsbUNBQW1DLENBQUM7QUFDckMsaUVBQWlFO0FBQ2pELDBDQUErQixHQUM5QyxxQ0FBcUMsQ0FBQztBQUN2QyxxQ0FBcUM7QUFDckIsNkJBQWtCLEdBQUcsd0JBQXdCLENBQUM7QUFDOUQsbUNBQW1DO0FBQ25CLDJCQUFnQixHQUFHLHNCQUFzQixDQUFDO0FBQzFELDRDQUE0QztBQUM1QixvQ0FBeUIsR0FBRywrQkFBK0IsQ0FBQztBQUM1RSw4Q0FBOEM7QUFDOUIsc0NBQTJCLEdBQzFDLGlDQUFpQyxDQUFDO0FBQ25DLHdDQUF3QztBQUN4QixnQ0FBcUIsR0FBRywyQkFBMkIsQ0FBQztBQUNwRSx1Q0FBdUM7QUFDdkIsK0JBQW9CLEdBQUcsMEJBQTBCLENBQUM7QUFDbEUsaUNBQWlDO0FBQ2pCLHlCQUFjLEdBQUcsb0JBQW9CLENBQUM7QUFDdEQsa0NBQWtDO0FBQ2xCLDBCQUFlLEdBQUcscUJBQXFCLENBQUM7QUFDeEQsNENB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R0FBRyxhQUFhLENBQUM7QUFDekMseUNBQXlDO0FBQ3pCLG1CQUFLLEdBQUcsV0FBVyxDQUFDO0FBQ3BDLG1EQUFtRDtBQUNuQyxpQ0FBbUIsR0FBRyx3QkFBd0IsQ0FBQztBQUMvRCxpREFBaUQ7QUFDakMsK0JBQWlCLEdBQUcsc0JBQXNCLENBQUM7QUFDM0QsK0NBQStDO0FBQy9CLDBCQUFZLEdBQUcsaUJBQWlCLENBQUM7QUFDakQsZ0RBQWdEO0FBQ2hDLCtCQUFpQixHQUFHLHFCQUFxQixDQUFDO0FBQzFELHFEQUFxRDtBQUNyQyxrQ0FBb0IsR0FBRyx3QkFBd0IsQ0FBQztBQUNoRSxvQ0FBb0M7QUFDcEIsaUJBQUcsR0FBRyxTQUFTLENBQUM7QUFDaEMsMkRBQTJEO0FBQzNDLDRCQUFjLEdBQUcsOEJBQThCLENBQUM7QUFDaEUsaUVBQWlFO0FBQ2pELGtDQUFvQixHQUFHLG9DQUFvQyxDQUFDO0FBQzVFLHdEQUF3RDtBQUN4Qyx5QkFBVyxHQUFHLDJCQUEyQixDQUFDO0FBQzFELG1EQUFtRDtBQUNuQyxvQkFBTSxHQUFHLHNCQUFzQixDQUFDO0FBQ2hELG1EQUFtRDtBQUNuQyxvQkFBTSxHQUFHLHNCQUFzQixDQUFDO0FBQ2hELG1EQUFtRDtBQUNuQyxvQkFBTSxHQUFHLHNCQUFzQixDQUFDO0FBQ2hELG1EQUFtRDtBQUNuQyxvQkFBTSxHQUFHLHNCQUFzQixDQUFDO0FBQ2hELG9EQUFvRDtBQUNwQyxxQkFBTyxHQUFHLHVCQUF1QixDQUFDO0FBQ2xELG1EQUFtRDtBQUNuQyxvQkFBTSxHQUFHLHNCQUFzQixDQUFDO0FBQ2hELHVEQUF1RDtBQUN2Qyx3QkFBVSxHQUFHLDBCQUEwQixDQUFDO0FBQ3hELHlEQUF5RDtBQUN6QywwQkFBWSxHQUFHLDRCQUE0QixDQUFDO0FBQzVELHVEQUF1RDtBQUN2Qyx3QkFBVSxHQUFHLDBCQUEwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEFVVE8tR0VORVJBVEVEIEZJTEUg4oCUIERPIE5PVCBFRElUIE1BTlVBTExZXG4vLyBHZW5lcmF0ZWQgZnJvbSBBV1MgU2VydmljZSBBdXRob3JpemF0aW9uIFJlZmVyZW5jZSBkYXRhXG4vLyBTb3VyY2U6IGRhdGEvc2VydmljZS1yZWZlcmVuY2UvcmRzLmpzb25cbi8vIFJ1biBgbnB4IHByb2plbiBnZW5lcmF0ZS1jb25zdGFudHNgIHRvIHJlZ2VuZXJhdGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogSUFNIGFjdGlvbiBjb25zdGFudHMgZm9yIHRoZSByZHMgc2VydmljZS5cbiAqL1xuZXhwb3J0IGNsYXNzIFJEU0FjdGlvbnMge1xuXHQvKiogVGhlIElBTSBzZXJ2aWNlIHByZWZpeC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNFUlZJQ0VfUFJFRklYID0gXCJyZHNcIjtcblxuXHQvKiogW1dyaXRlXSByZHM6QWRkUm9sZVRvREJDbHVzdGVyICovXG5cdHN0YXRpYyByZWFkb25seSBBZGRSb2xlVG9EQkNsdXN0ZXIgPSBcInJkczpBZGRSb2xlVG9EQkNsdXN0ZXJcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkFkZFJvbGVUb0RCSW5zdGFuY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFkZFJvbGVUb0RCSW5zdGFuY2UgPSBcInJkczpBZGRSb2xlVG9EQkluc3RhbmNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpBZGRTb3VyY2VJZGVudGlmaWVyVG9TdWJzY3JpcHRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFkZFNvdXJjZUlkZW50aWZpZXJUb1N1YnNjcmlwdGlvbiA9XG5cdFx0XCJyZHM6QWRkU291cmNlSWRlbnRpZmllclRvU3Vic2NyaXB0aW9uXCI7XG5cdC8qKiBbVGFnZ2luZ10gcmRzOkFkZFRhZ3NUb1Jlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBBZGRUYWdzVG9SZXNvdXJjZSA9IFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpBcHBseVBlbmRpbmdNYWludGVuYW5jZUFjdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQXBwbHlQZW5kaW5nTWFpbnRlbmFuY2VBY3Rpb24gPVxuXHRcdFwicmRzOkFwcGx5UGVuZGluZ01haW50ZW5hbmNlQWN0aW9uXCI7XG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIHJkczpBdXRob3JpemVEQlNlY3VyaXR5R3JvdXBJbmdyZXNzICovXG5cdHN0YXRpYyByZWFkb25seSBBdXRob3JpemVEQlNlY3VyaXR5R3JvdXBJbmdyZXNzID1cblx0XHRcInJkczpBdXRob3JpemVEQlNlY3VyaXR5R3JvdXBJbmdyZXNzXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpCYWNrdHJhY2tEQkNsdXN0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhY2t0cmFja0RCQ2x1c3RlciA9IFwicmRzOkJhY2t0cmFja0RCQ2x1c3RlclwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q2FuY2VsRXhwb3J0VGFzayAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ2FuY2VsRXhwb3J0VGFzayA9IFwicmRzOkNhbmNlbEV4cG9ydFRhc2tcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNvcHlDdXN0b21EQkVuZ2luZVZlcnNpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IENvcHlDdXN0b21EQkVuZ2luZVZlcnNpb24gPSBcInJkczpDb3B5Q3VzdG9tREJFbmdpbmVWZXJzaW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDb3B5REJDbHVzdGVyUGFyYW1ldGVyR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IENvcHlEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCA9XG5cdFx0XCJyZHM6Q29weURCQ2x1c3RlclBhcmFtZXRlckdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDb3B5REJDbHVzdGVyU25hcHNob3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IENvcHlEQkNsdXN0ZXJTbmFwc2hvdCA9IFwicmRzOkNvcHlEQkNsdXN0ZXJTbmFwc2hvdFwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q29weURCUGFyYW1ldGVyR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IENvcHlEQlBhcmFtZXRlckdyb3VwID0gXCJyZHM6Q29weURCUGFyYW1ldGVyR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNvcHlEQlNuYXBzaG90ICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5REJTbmFwc2hvdCA9IFwicmRzOkNvcHlEQlNuYXBzaG90XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDb3B5T3B0aW9uR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IENvcHlPcHRpb25Hcm91cCA9IFwicmRzOkNvcHlPcHRpb25Hcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlQmx1ZUdyZWVuRGVwbG95bWVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQmx1ZUdyZWVuRGVwbG95bWVudCA9IFwicmRzOkNyZWF0ZUJsdWVHcmVlbkRlcGxveW1lbnRcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZUN1c3RvbURCRW5naW5lVmVyc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ3VzdG9tREJFbmdpbmVWZXJzaW9uID1cblx0XHRcInJkczpDcmVhdGVDdXN0b21EQkVuZ2luZVZlcnNpb25cIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZURCQ2x1c3RlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJDbHVzdGVyID0gXCJyZHM6Q3JlYXRlREJDbHVzdGVyXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVEQkNsdXN0ZXJFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJDbHVzdGVyRW5kcG9pbnQgPSBcInJkczpDcmVhdGVEQkNsdXN0ZXJFbmRwb2ludFwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwID1cblx0XHRcInJkczpDcmVhdGVEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlREJDbHVzdGVyU25hcHNob3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCQ2x1c3RlclNuYXBzaG90ID0gXCJyZHM6Q3JlYXRlREJDbHVzdGVyU25hcHNob3RcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZURCSW5zdGFuY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCSW5zdGFuY2UgPSBcInJkczpDcmVhdGVEQkluc3RhbmNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVEQkluc3RhbmNlUmVhZFJlcGxpY2EgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCSW5zdGFuY2VSZWFkUmVwbGljYSA9XG5cdFx0XCJyZHM6Q3JlYXRlREJJbnN0YW5jZVJlYWRSZXBsaWNhXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVEQlBhcmFtZXRlckdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlBhcmFtZXRlckdyb3VwID0gXCJyZHM6Q3JlYXRlREJQYXJhbWV0ZXJHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlREJQcm94eSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJQcm94eSA9IFwicmRzOkNyZWF0ZURCUHJveHlcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZURCUHJveHlFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJQcm94eUVuZHBvaW50ID0gXCJyZHM6Q3JlYXRlREJQcm94eUVuZHBvaW50XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVEQlNlY3VyaXR5R3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCU2VjdXJpdHlHcm91cCA9IFwicmRzOkNyZWF0ZURCU2VjdXJpdHlHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlREJTaGFyZEdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlNoYXJkR3JvdXAgPSBcInJkczpDcmVhdGVEQlNoYXJkR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZURCU25hcHNob3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCU25hcHNob3QgPSBcInJkczpDcmVhdGVEQlNuYXBzaG90XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVEQlN1Ym5ldEdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlN1Ym5ldEdyb3VwID0gXCJyZHM6Q3JlYXRlREJTdWJuZXRHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlRXZlbnRTdWJzY3JpcHRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUV2ZW50U3Vic2NyaXB0aW9uID0gXCJyZHM6Q3JlYXRlRXZlbnRTdWJzY3JpcHRpb25cIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZUdsb2JhbENsdXN0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdsb2JhbENsdXN0ZXIgPSBcInJkczpDcmVhdGVHbG9iYWxDbHVzdGVyXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcmVhdGVJbnRlZ3JhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSW50ZWdyYXRpb24gPSBcInJkczpDcmVhdGVJbnRlZ3JhdGlvblwiO1xuXHQvKiogW1dyaXRlXSByZHM6Q3JlYXRlT3B0aW9uR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZU9wdGlvbkdyb3VwID0gXCJyZHM6Q3JlYXRlT3B0aW9uR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkNyZWF0ZVRlbmFudERhdGFiYXNlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUZW5hbnREYXRhYmFzZSA9IFwicmRzOkNyZWF0ZVRlbmFudERhdGFiYXNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpDcm9zc1JlZ2lvbkNvbW11bmljYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyb3NzUmVnaW9uQ29tbXVuaWNhdGlvbiA9IFwicmRzOkNyb3NzUmVnaW9uQ29tbXVuaWNhdGlvblwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlQmx1ZUdyZWVuRGVwbG95bWVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQmx1ZUdyZWVuRGVwbG95bWVudCA9IFwicmRzOkRlbGV0ZUJsdWVHcmVlbkRlcGxveW1lbnRcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZUN1c3RvbURCRW5naW5lVmVyc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ3VzdG9tREJFbmdpbmVWZXJzaW9uID1cblx0XHRcInJkczpEZWxldGVDdXN0b21EQkVuZ2luZVZlcnNpb25cIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZURCQ2x1c3RlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJDbHVzdGVyID0gXCJyZHM6RGVsZXRlREJDbHVzdGVyXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVEQkNsdXN0ZXJBdXRvbWF0ZWRCYWNrdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCQ2x1c3RlckF1dG9tYXRlZEJhY2t1cCA9XG5cdFx0XCJyZHM6RGVsZXRlREJDbHVzdGVyQXV0b21hdGVkQmFja3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVEQkNsdXN0ZXJFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJDbHVzdGVyRW5kcG9pbnQgPSBcInJkczpEZWxldGVEQkNsdXN0ZXJFbmRwb2ludFwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwID1cblx0XHRcInJkczpEZWxldGVEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlREJDbHVzdGVyU25hcHNob3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCQ2x1c3RlclNuYXBzaG90ID0gXCJyZHM6RGVsZXRlREJDbHVzdGVyU25hcHNob3RcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZURCSW5zdGFuY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCSW5zdGFuY2UgPSBcInJkczpEZWxldGVEQkluc3RhbmNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVEQkluc3RhbmNlQXV0b21hdGVkQmFja3VwICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQkluc3RhbmNlQXV0b21hdGVkQmFja3VwID1cblx0XHRcInJkczpEZWxldGVEQkluc3RhbmNlQXV0b21hdGVkQmFja3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVEQlBhcmFtZXRlckdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQlBhcmFtZXRlckdyb3VwID0gXCJyZHM6RGVsZXRlREJQYXJhbWV0ZXJHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlREJQcm94eSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJQcm94eSA9IFwicmRzOkRlbGV0ZURCUHJveHlcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZURCUHJveHlFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJQcm94eUVuZHBvaW50ID0gXCJyZHM6RGVsZXRlREJQcm94eUVuZHBvaW50XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVEQlNlY3VyaXR5R3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCU2VjdXJpdHlHcm91cCA9IFwicmRzOkRlbGV0ZURCU2VjdXJpdHlHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlREJTaGFyZEdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQlNoYXJkR3JvdXAgPSBcInJkczpEZWxldGVEQlNoYXJkR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZURCU25hcHNob3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCU25hcHNob3QgPSBcInJkczpEZWxldGVEQlNuYXBzaG90XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVEQlN1Ym5ldEdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQlN1Ym5ldEdyb3VwID0gXCJyZHM6RGVsZXRlREJTdWJuZXRHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlRXZlbnRTdWJzY3JpcHRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUV2ZW50U3Vic2NyaXB0aW9uID0gXCJyZHM6RGVsZXRlRXZlbnRTdWJzY3JpcHRpb25cIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZUdsb2JhbENsdXN0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUdsb2JhbENsdXN0ZXIgPSBcInJkczpEZWxldGVHbG9iYWxDbHVzdGVyXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZWxldGVJbnRlZ3JhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSW50ZWdyYXRpb24gPSBcInJkczpEZWxldGVJbnRlZ3JhdGlvblwiO1xuXHQvKiogW1dyaXRlXSByZHM6RGVsZXRlT3B0aW9uR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU9wdGlvbkdyb3VwID0gXCJyZHM6RGVsZXRlT3B0aW9uR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkRlbGV0ZVRlbmFudERhdGFiYXNlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVUZW5hbnREYXRhYmFzZSA9IFwicmRzOkRlbGV0ZVRlbmFudERhdGFiYXNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEZXJlZ2lzdGVyREJQcm94eVRhcmdldHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlcmVnaXN0ZXJEQlByb3h5VGFyZ2V0cyA9IFwicmRzOkRlcmVnaXN0ZXJEQlByb3h5VGFyZ2V0c1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZUFjY291bnRBdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFjY291bnRBdHRyaWJ1dGVzID0gXCJyZHM6RGVzY3JpYmVBY2NvdW50QXR0cmlidXRlc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZUJsdWVHcmVlbkRlcGxveW1lbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUJsdWVHcmVlbkRlcGxveW1lbnRzID1cblx0XHRcInJkczpEZXNjcmliZUJsdWVHcmVlbkRlcGxveW1lbnRzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlQ2VydGlmaWNhdGVzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUNlcnRpZmljYXRlcyA9IFwicmRzOkRlc2NyaWJlQ2VydGlmaWNhdGVzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJDbHVzdGVyQXV0b21hdGVkQmFja3VwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkNsdXN0ZXJBdXRvbWF0ZWRCYWNrdXBzID1cblx0XHRcInJkczpEZXNjcmliZURCQ2x1c3RlckF1dG9tYXRlZEJhY2t1cHNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQkNsdXN0ZXJCYWNrdHJhY2tzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCQ2x1c3RlckJhY2t0cmFja3MgPVxuXHRcdFwicmRzOkRlc2NyaWJlREJDbHVzdGVyQmFja3RyYWNrc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCQ2x1c3RlckVuZHBvaW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkNsdXN0ZXJFbmRwb2ludHMgPSBcInJkczpEZXNjcmliZURCQ2x1c3RlckVuZHBvaW50c1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cHMgPVxuXHRcdFwicmRzOkRlc2NyaWJlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXBzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJDbHVzdGVyUGFyYW1ldGVycyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkNsdXN0ZXJQYXJhbWV0ZXJzID1cblx0XHRcInJkczpEZXNjcmliZURCQ2x1c3RlclBhcmFtZXRlcnNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQkNsdXN0ZXJTbmFwc2hvdEF0dHJpYnV0ZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyU25hcHNob3RBdHRyaWJ1dGVzID1cblx0XHRcInJkczpEZXNjcmliZURCQ2x1c3RlclNuYXBzaG90QXR0cmlidXRlc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCQ2x1c3RlclNuYXBzaG90cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkNsdXN0ZXJTbmFwc2hvdHMgPSBcInJkczpEZXNjcmliZURCQ2x1c3RlclNuYXBzaG90c1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCQ2x1c3RlcnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVycyA9IFwicmRzOkRlc2NyaWJlREJDbHVzdGVyc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCRW5naW5lVmVyc2lvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJFbmdpbmVWZXJzaW9ucyA9IFwicmRzOkRlc2NyaWJlREJFbmdpbmVWZXJzaW9uc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzID1cblx0XHRcInJkczpEZXNjcmliZURCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJJbnN0YW5jZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJJbnN0YW5jZXMgPSBcInJkczpEZXNjcmliZURCSW5zdGFuY2VzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJMb2dGaWxlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkxvZ0ZpbGVzID0gXCJyZHM6RGVzY3JpYmVEQkxvZ0ZpbGVzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJNYWpvckVuZ2luZVZlcnNpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCTWFqb3JFbmdpbmVWZXJzaW9ucyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVEQk1ham9yRW5naW5lVmVyc2lvbnNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQlBhcmFtZXRlckdyb3VwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlBhcmFtZXRlckdyb3VwcyA9IFwicmRzOkRlc2NyaWJlREJQYXJhbWV0ZXJHcm91cHNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQlBhcmFtZXRlcnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJQYXJhbWV0ZXJzID0gXCJyZHM6RGVzY3JpYmVEQlBhcmFtZXRlcnNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQlByb3hpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJQcm94aWVzID0gXCJyZHM6RGVzY3JpYmVEQlByb3hpZXNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQlByb3h5RW5kcG9pbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCUHJveHlFbmRwb2ludHMgPSBcInJkczpEZXNjcmliZURCUHJveHlFbmRwb2ludHNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQlByb3h5VGFyZ2V0R3JvdXBzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCUHJveHlUYXJnZXRHcm91cHMgPVxuXHRcdFwicmRzOkRlc2NyaWJlREJQcm94eVRhcmdldEdyb3Vwc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCUHJveHlUYXJnZXRzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCUHJveHlUYXJnZXRzID0gXCJyZHM6RGVzY3JpYmVEQlByb3h5VGFyZ2V0c1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCUmVjb21tZW5kYXRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCUmVjb21tZW5kYXRpb25zID0gXCJyZHM6RGVzY3JpYmVEQlJlY29tbWVuZGF0aW9uc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCU2VjdXJpdHlHcm91cHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJTZWN1cml0eUdyb3VwcyA9IFwicmRzOkRlc2NyaWJlREJTZWN1cml0eUdyb3Vwc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCU2hhcmRHcm91cHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJTaGFyZEdyb3VwcyA9IFwicmRzOkRlc2NyaWJlREJTaGFyZEdyb3Vwc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZURCU25hcHNob3RBdHRyaWJ1dGVzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCU25hcHNob3RBdHRyaWJ1dGVzID1cblx0XHRcInJkczpEZXNjcmliZURCU25hcHNob3RBdHRyaWJ1dGVzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlREJTbmFwc2hvdFRlbmFudERhdGFiYXNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlNuYXBzaG90VGVuYW50RGF0YWJhc2VzID1cblx0XHRcInJkczpEZXNjcmliZURCU25hcHNob3RUZW5hbnREYXRhYmFzZXNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQlNuYXBzaG90cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlNuYXBzaG90cyA9IFwicmRzOkRlc2NyaWJlREJTbmFwc2hvdHNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVEQlN1Ym5ldEdyb3VwcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlN1Ym5ldEdyb3VwcyA9IFwicmRzOkRlc2NyaWJlREJTdWJuZXRHcm91cHNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVFbmdpbmVEZWZhdWx0Q2x1c3RlclBhcmFtZXRlcnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlRW5naW5lRGVmYXVsdENsdXN0ZXJQYXJhbWV0ZXJzID1cblx0XHRcInJkczpEZXNjcmliZUVuZ2luZURlZmF1bHRDbHVzdGVyUGFyYW1ldGVyc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZUVuZ2luZURlZmF1bHRQYXJhbWV0ZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUVuZ2luZURlZmF1bHRQYXJhbWV0ZXJzID1cblx0XHRcInJkczpEZXNjcmliZUVuZ2luZURlZmF1bHRQYXJhbWV0ZXJzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlRXZlbnRDYXRlZ29yaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUV2ZW50Q2F0ZWdvcmllcyA9IFwicmRzOkRlc2NyaWJlRXZlbnRDYXRlZ29yaWVzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlRXZlbnRTdWJzY3JpcHRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUV2ZW50U3Vic2NyaXB0aW9ucyA9IFwicmRzOkRlc2NyaWJlRXZlbnRTdWJzY3JpcHRpb25zXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlRXZlbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUV2ZW50cyA9IFwicmRzOkRlc2NyaWJlRXZlbnRzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlRXhwb3J0VGFza3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlRXhwb3J0VGFza3MgPSBcInJkczpEZXNjcmliZUV4cG9ydFRhc2tzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlR2xvYmFsQ2x1c3RlcnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlR2xvYmFsQ2x1c3RlcnMgPSBcInJkczpEZXNjcmliZUdsb2JhbENsdXN0ZXJzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlSW50ZWdyYXRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUludGVncmF0aW9ucyA9IFwicmRzOkRlc2NyaWJlSW50ZWdyYXRpb25zXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlT3B0aW9uR3JvdXBPcHRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZU9wdGlvbkdyb3VwT3B0aW9ucyA9IFwicmRzOkRlc2NyaWJlT3B0aW9uR3JvdXBPcHRpb25zXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlT3B0aW9uR3JvdXBzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZU9wdGlvbkdyb3VwcyA9IFwicmRzOkRlc2NyaWJlT3B0aW9uR3JvdXBzXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlT3JkZXJhYmxlREJJbnN0YW5jZU9wdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlT3JkZXJhYmxlREJJbnN0YW5jZU9wdGlvbnMgPVxuXHRcdFwicmRzOkRlc2NyaWJlT3JkZXJhYmxlREJJbnN0YW5jZU9wdGlvbnNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVQZW5kaW5nTWFpbnRlbmFuY2VBY3Rpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVBlbmRpbmdNYWludGVuYW5jZUFjdGlvbnMgPVxuXHRcdFwicmRzOkRlc2NyaWJlUGVuZGluZ01haW50ZW5hbmNlQWN0aW9uc1wiO1xuXHQvKiogW1JlYWRdIHJkczpEZXNjcmliZVJlY29tbWVuZGF0aW9uR3JvdXBzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlY29tbWVuZGF0aW9uR3JvdXBzID1cblx0XHRcInJkczpEZXNjcmliZVJlY29tbWVuZGF0aW9uR3JvdXBzXCI7XG5cdC8qKiBbUmVhZF0gcmRzOkRlc2NyaWJlUmVjb21tZW5kYXRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlY29tbWVuZGF0aW9ucyA9IFwicmRzOkRlc2NyaWJlUmVjb21tZW5kYXRpb25zXCI7XG5cdC8qKiBbTGlzdF0gcmRzOkRlc2NyaWJlUmVzZXJ2ZWREQkluc3RhbmNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZXNlcnZlZERCSW5zdGFuY2VzID1cblx0XHRcInJkczpEZXNjcmliZVJlc2VydmVkREJJbnN0YW5jZXNcIjtcblx0LyoqIFtMaXN0XSByZHM6RGVzY3JpYmVSZXNlcnZlZERCSW5zdGFuY2VzT2ZmZXJpbmdzICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZ3MgPVxuXHRcdFwicmRzOkRlc2NyaWJlUmVzZXJ2ZWREQkluc3RhbmNlc09mZmVyaW5nc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZVNvdXJjZVJlZ2lvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlU291cmNlUmVnaW9ucyA9IFwicmRzOkRlc2NyaWJlU291cmNlUmVnaW9uc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZVRlbmFudERhdGFiYXNlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVUZW5hbnREYXRhYmFzZXMgPSBcInJkczpEZXNjcmliZVRlbmFudERhdGFiYXNlc1wiO1xuXHQvKiogW0xpc3RdIHJkczpEZXNjcmliZVZhbGlkREJJbnN0YW5jZU1vZGlmaWNhdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlVmFsaWREQkluc3RhbmNlTW9kaWZpY2F0aW9ucyA9XG5cdFx0XCJyZHM6RGVzY3JpYmVWYWxpZERCSW5zdGFuY2VNb2RpZmljYXRpb25zXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpEaXNhYmxlSHR0cEVuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBEaXNhYmxlSHR0cEVuZHBvaW50ID0gXCJyZHM6RGlzYWJsZUh0dHBFbmRwb2ludFwiO1xuXHQvKiogW1JlYWRdIHJkczpEb3dubG9hZENvbXBsZXRlREJMb2dGaWxlICovXG5cdHN0YXRpYyByZWFkb25seSBEb3dubG9hZENvbXBsZXRlREJMb2dGaWxlID0gXCJyZHM6RG93bmxvYWRDb21wbGV0ZURCTG9nRmlsZVwiO1xuXHQvKiogW1JlYWRdIHJkczpEb3dubG9hZERCTG9nRmlsZVBvcnRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERvd25sb2FkREJMb2dGaWxlUG9ydGlvbiA9IFwicmRzOkRvd25sb2FkREJMb2dGaWxlUG9ydGlvblwiO1xuXHQvKiogW1dyaXRlXSByZHM6RW5hYmxlSHR0cEVuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBFbmFibGVIdHRwRW5kcG9pbnQgPSBcInJkczpFbmFibGVIdHRwRW5kcG9pbnRcIjtcblx0LyoqIFtXcml0ZV0gcmRzOkZhaWxvdmVyREJDbHVzdGVyICovXG5cdHN0YXRpYyByZWFkb25seSBGYWlsb3ZlckRCQ2x1c3RlciA9IFwicmRzOkZhaWxvdmVyREJDbHVzdGVyXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpGYWlsb3Zlckdsb2JhbENsdXN0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IEZhaWxvdmVyR2xvYmFsQ2x1c3RlciA9IFwicmRzOkZhaWxvdmVyR2xvYmFsQ2x1c3RlclwiO1xuXHQvKiogW1JlYWRdIHJkczpMaXN0VGFnc0ZvclJlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGFnc0ZvclJlc291cmNlID0gXCJyZHM6TGlzdFRhZ3NGb3JSZXNvdXJjZVwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5QWN0aXZpdHlTdHJlYW0gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeUFjdGl2aXR5U3RyZWFtID0gXCJyZHM6TW9kaWZ5QWN0aXZpdHlTdHJlYW1cIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeUNlcnRpZmljYXRlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5Q2VydGlmaWNhdGVzID0gXCJyZHM6TW9kaWZ5Q2VydGlmaWNhdGVzXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlDdXJyZW50REJDbHVzdGVyQ2FwYWNpdHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeUN1cnJlbnREQkNsdXN0ZXJDYXBhY2l0eSA9XG5cdFx0XCJyZHM6TW9kaWZ5Q3VycmVudERCQ2x1c3RlckNhcGFjaXR5XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlDdXN0b21EQkVuZ2luZVZlcnNpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeUN1c3RvbURCRW5naW5lVmVyc2lvbiA9XG5cdFx0XCJyZHM6TW9kaWZ5Q3VzdG9tREJFbmdpbmVWZXJzaW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlEQkNsdXN0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCQ2x1c3RlciA9IFwicmRzOk1vZGlmeURCQ2x1c3RlclwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5REJDbHVzdGVyRW5kcG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCQ2x1c3RlckVuZHBvaW50ID0gXCJyZHM6TW9kaWZ5REJDbHVzdGVyRW5kcG9pbnRcIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeURCQ2x1c3RlclBhcmFtZXRlckdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCA9XG5cdFx0XCJyZHM6TW9kaWZ5REJDbHVzdGVyUGFyYW1ldGVyR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeURCQ2x1c3RlclNuYXBzaG90QXR0cmlidXRlICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQkNsdXN0ZXJTbmFwc2hvdEF0dHJpYnV0ZSA9XG5cdFx0XCJyZHM6TW9kaWZ5REJDbHVzdGVyU25hcHNob3RBdHRyaWJ1dGVcIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeURCSW5zdGFuY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCSW5zdGFuY2UgPSBcInJkczpNb2RpZnlEQkluc3RhbmNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlEQlBhcmFtZXRlckdyb3VwICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQlBhcmFtZXRlckdyb3VwID0gXCJyZHM6TW9kaWZ5REJQYXJhbWV0ZXJHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5REJQcm94eSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJQcm94eSA9IFwicmRzOk1vZGlmeURCUHJveHlcIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeURCUHJveHlFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJQcm94eUVuZHBvaW50ID0gXCJyZHM6TW9kaWZ5REJQcm94eUVuZHBvaW50XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlEQlByb3h5VGFyZ2V0R3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCUHJveHlUYXJnZXRHcm91cCA9IFwicmRzOk1vZGlmeURCUHJveHlUYXJnZXRHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5REJSZWNvbW1lbmRhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJSZWNvbW1lbmRhdGlvbiA9IFwicmRzOk1vZGlmeURCUmVjb21tZW5kYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeURCU2hhcmRHcm91cCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJTaGFyZEdyb3VwID0gXCJyZHM6TW9kaWZ5REJTaGFyZEdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlEQlNuYXBzaG90ICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQlNuYXBzaG90ID0gXCJyZHM6TW9kaWZ5REJTbmFwc2hvdFwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5REJTbmFwc2hvdEF0dHJpYnV0ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJTbmFwc2hvdEF0dHJpYnV0ZSA9IFwicmRzOk1vZGlmeURCU25hcHNob3RBdHRyaWJ1dGVcIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeURCU3VibmV0R3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCU3VibmV0R3JvdXAgPSBcInJkczpNb2RpZnlEQlN1Ym5ldEdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlFdmVudFN1YnNjcmlwdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5RXZlbnRTdWJzY3JpcHRpb24gPSBcInJkczpNb2RpZnlFdmVudFN1YnNjcmlwdGlvblwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5R2xvYmFsQ2x1c3RlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5R2xvYmFsQ2x1c3RlciA9IFwicmRzOk1vZGlmeUdsb2JhbENsdXN0ZXJcIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeUludGVncmF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlJbnRlZ3JhdGlvbiA9IFwicmRzOk1vZGlmeUludGVncmF0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpNb2RpZnlPcHRpb25Hcm91cCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5T3B0aW9uR3JvdXAgPSBcInJkczpNb2RpZnlPcHRpb25Hcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6TW9kaWZ5UmVjb21tZW5kYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeVJlY29tbWVuZGF0aW9uID0gXCJyZHM6TW9kaWZ5UmVjb21tZW5kYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gcmRzOk1vZGlmeVRlbmFudERhdGFiYXNlICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlUZW5hbnREYXRhYmFzZSA9IFwicmRzOk1vZGlmeVRlbmFudERhdGFiYXNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpQcm9tb3RlUmVhZFJlcGxpY2EgKi9cblx0c3RhdGljIHJlYWRvbmx5IFByb21vdGVSZWFkUmVwbGljYSA9IFwicmRzOlByb21vdGVSZWFkUmVwbGljYVwiO1xuXHQvKiogW1dyaXRlXSByZHM6UHJvbW90ZVJlYWRSZXBsaWNhREJDbHVzdGVyICovXG5cdHN0YXRpYyByZWFkb25seSBQcm9tb3RlUmVhZFJlcGxpY2FEQkNsdXN0ZXIgPVxuXHRcdFwicmRzOlByb21vdGVSZWFkUmVwbGljYURCQ2x1c3RlclwiO1xuXHQvKiogW1dyaXRlXSByZHM6UHVyY2hhc2VSZXNlcnZlZERCSW5zdGFuY2VzT2ZmZXJpbmcgKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1cmNoYXNlUmVzZXJ2ZWREQkluc3RhbmNlc09mZmVyaW5nID1cblx0XHRcInJkczpQdXJjaGFzZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZ1wiO1xuXHQvKiogW1dyaXRlXSByZHM6UmVib290REJDbHVzdGVyICovXG5cdHN0YXRpYyByZWFkb25seSBSZWJvb3REQkNsdXN0ZXIgPSBcInJkczpSZWJvb3REQkNsdXN0ZXJcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlYm9vdERCSW5zdGFuY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlYm9vdERCSW5zdGFuY2UgPSBcInJkczpSZWJvb3REQkluc3RhbmNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpSZWJvb3REQlNoYXJkR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlYm9vdERCU2hhcmRHcm91cCA9IFwicmRzOlJlYm9vdERCU2hhcmRHcm91cFwiO1xuXHQvKiogW1dyaXRlXSByZHM6UmVnaXN0ZXJEQlByb3h5VGFyZ2V0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVnaXN0ZXJEQlByb3h5VGFyZ2V0cyA9IFwicmRzOlJlZ2lzdGVyREJQcm94eVRhcmdldHNcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlbW92ZUZyb21HbG9iYWxDbHVzdGVyICovXG5cdHN0YXRpYyByZWFkb25seSBSZW1vdmVGcm9tR2xvYmFsQ2x1c3RlciA9IFwicmRzOlJlbW92ZUZyb21HbG9iYWxDbHVzdGVyXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpSZW1vdmVSb2xlRnJvbURCQ2x1c3RlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVtb3ZlUm9sZUZyb21EQkNsdXN0ZXIgPSBcInJkczpSZW1vdmVSb2xlRnJvbURCQ2x1c3RlclwiO1xuXHQvKiogW1dyaXRlXSByZHM6UmVtb3ZlUm9sZUZyb21EQkluc3RhbmNlICovXG5cdHN0YXRpYyByZWFkb25seSBSZW1vdmVSb2xlRnJvbURCSW5zdGFuY2UgPSBcInJkczpSZW1vdmVSb2xlRnJvbURCSW5zdGFuY2VcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlbW92ZVNvdXJjZUlkZW50aWZpZXJGcm9tU3Vic2NyaXB0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBSZW1vdmVTb3VyY2VJZGVudGlmaWVyRnJvbVN1YnNjcmlwdGlvbiA9XG5cdFx0XCJyZHM6UmVtb3ZlU291cmNlSWRlbnRpZmllckZyb21TdWJzY3JpcHRpb25cIjtcblx0LyoqIFtUYWdnaW5nXSByZHM6UmVtb3ZlVGFnc0Zyb21SZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVtb3ZlVGFnc0Zyb21SZXNvdXJjZSA9IFwicmRzOlJlbW92ZVRhZ3NGcm9tUmVzb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlc2V0REJDbHVzdGVyUGFyYW1ldGVyR3JvdXAgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc2V0REJDbHVzdGVyUGFyYW1ldGVyR3JvdXAgPVxuXHRcdFwicmRzOlJlc2V0REJDbHVzdGVyUGFyYW1ldGVyR3JvdXBcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlc2V0REJQYXJhbWV0ZXJHcm91cCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzZXREQlBhcmFtZXRlckdyb3VwID0gXCJyZHM6UmVzZXREQlBhcmFtZXRlckdyb3VwXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpSZXN0b3JlREJDbHVzdGVyRnJvbVMzICovXG5cdHN0YXRpYyByZWFkb25seSBSZXN0b3JlREJDbHVzdGVyRnJvbVMzID0gXCJyZHM6UmVzdG9yZURCQ2x1c3RlckZyb21TM1wiO1xuXHQvKiogW1dyaXRlXSByZHM6UmVzdG9yZURCQ2x1c3RlckZyb21TbmFwc2hvdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzdG9yZURCQ2x1c3RlckZyb21TbmFwc2hvdCA9XG5cdFx0XCJyZHM6UmVzdG9yZURCQ2x1c3RlckZyb21TbmFwc2hvdFwiO1xuXHQvKiogW1dyaXRlXSByZHM6UmVzdG9yZURCQ2x1c3RlclRvUG9pbnRJblRpbWUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkNsdXN0ZXJUb1BvaW50SW5UaW1lID1cblx0XHRcInJkczpSZXN0b3JlREJDbHVzdGVyVG9Qb2ludEluVGltZVwiO1xuXHQvKiogW1dyaXRlXSByZHM6UmVzdG9yZURCSW5zdGFuY2VGcm9tREJTbmFwc2hvdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzdG9yZURCSW5zdGFuY2VGcm9tREJTbmFwc2hvdCA9XG5cdFx0XCJyZHM6UmVzdG9yZURCSW5zdGFuY2VGcm9tREJTbmFwc2hvdFwiO1xuXHQvKiogW1dyaXRlXSByZHM6UmVzdG9yZURCSW5zdGFuY2VGcm9tUzMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkluc3RhbmNlRnJvbVMzID0gXCJyZHM6UmVzdG9yZURCSW5zdGFuY2VGcm9tUzNcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJlc3RvcmVEQkluc3RhbmNlVG9Qb2ludEluVGltZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzdG9yZURCSW5zdGFuY2VUb1BvaW50SW5UaW1lID1cblx0XHRcInJkczpSZXN0b3JlREJJbnN0YW5jZVRvUG9pbnRJblRpbWVcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlJldm9rZURCU2VjdXJpdHlHcm91cEluZ3Jlc3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJldm9rZURCU2VjdXJpdHlHcm91cEluZ3Jlc3MgPVxuXHRcdFwicmRzOlJldm9rZURCU2VjdXJpdHlHcm91cEluZ3Jlc3NcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlN0YXJ0QWN0aXZpdHlTdHJlYW0gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0QWN0aXZpdHlTdHJlYW0gPSBcInJkczpTdGFydEFjdGl2aXR5U3RyZWFtXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpTdGFydERCQ2x1c3RlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnREQkNsdXN0ZXIgPSBcInJkczpTdGFydERCQ2x1c3RlclwiO1xuXHQvKiogW1dyaXRlXSByZHM6U3RhcnREQkluc3RhbmNlICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydERCSW5zdGFuY2UgPSBcInJkczpTdGFydERCSW5zdGFuY2VcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlN0YXJ0REJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHNSZXBsaWNhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnREQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1JlcGxpY2F0aW9uID1cblx0XHRcInJkczpTdGFydERCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzUmVwbGljYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gcmRzOlN0YXJ0RXhwb3J0VGFzayAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRFeHBvcnRUYXNrID0gXCJyZHM6U3RhcnRFeHBvcnRUYXNrXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpTdG9wQWN0aXZpdHlTdHJlYW0gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BBY3Rpdml0eVN0cmVhbSA9IFwicmRzOlN0b3BBY3Rpdml0eVN0cmVhbVwiO1xuXHQvKiogW1dyaXRlXSByZHM6U3RvcERCQ2x1c3RlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcERCQ2x1c3RlciA9IFwicmRzOlN0b3BEQkNsdXN0ZXJcIjtcblx0LyoqIFtXcml0ZV0gcmRzOlN0b3BEQkluc3RhbmNlICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wREJJbnN0YW5jZSA9IFwicmRzOlN0b3BEQkluc3RhbmNlXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpTdG9wREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHNSZXBsaWNhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcERCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzUmVwbGljYXRpb24gPVxuXHRcdFwicmRzOlN0b3BEQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1JlcGxpY2F0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIHJkczpTd2l0Y2hvdmVyQmx1ZUdyZWVuRGVwbG95bWVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3dpdGNob3ZlckJsdWVHcmVlbkRlcGxveW1lbnQgPVxuXHRcdFwicmRzOlN3aXRjaG92ZXJCbHVlR3JlZW5EZXBsb3ltZW50XCI7XG5cdC8qKiBbV3JpdGVdIHJkczpTd2l0Y2hvdmVyR2xvYmFsQ2x1c3RlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3dpdGNob3Zlckdsb2JhbENsdXN0ZXIgPSBcInJkczpTd2l0Y2hvdmVyR2xvYmFsQ2x1c3RlclwiO1xuXHQvKiogW1dyaXRlXSByZHM6U3dpdGNob3ZlclJlYWRSZXBsaWNhICovXG5cdHN0YXRpYyByZWFkb25seSBTd2l0Y2hvdmVyUmVhZFJlcGxpY2EgPSBcInJkczpTd2l0Y2hvdmVyUmVhZFJlcGxpY2FcIjtcblxuXHQvKiogQWxsIHJlYWQtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFJlYWRBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlUmVjb21tZW5kYXRpb25Hcm91cHMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZVJlY29tbWVuZGF0aW9ucyxcblx0XHRSRFNBY3Rpb25zLkRvd25sb2FkQ29tcGxldGVEQkxvZ0ZpbGUsXG5cdFx0UkRTQWN0aW9ucy5Eb3dubG9hZERCTG9nRmlsZVBvcnRpb24sXG5cdFx0UkRTQWN0aW9ucy5MaXN0VGFnc0ZvclJlc291cmNlLFxuXHRdO1xuXHQvKiogQWxsIHdyaXRlLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxXcml0ZUFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFJEU0FjdGlvbnMuQWRkUm9sZVRvREJDbHVzdGVyLFxuXHRcdFJEU0FjdGlvbnMuQWRkUm9sZVRvREJJbnN0YW5jZSxcblx0XHRSRFNBY3Rpb25zLkFkZFNvdXJjZUlkZW50aWZpZXJUb1N1YnNjcmlwdGlvbixcblx0XHRSRFNBY3Rpb25zLkFwcGx5UGVuZGluZ01haW50ZW5hbmNlQWN0aW9uLFxuXHRcdFJEU0FjdGlvbnMuQmFja3RyYWNrREJDbHVzdGVyLFxuXHRcdFJEU0FjdGlvbnMuQ2FuY2VsRXhwb3J0VGFzayxcblx0XHRSRFNBY3Rpb25zLkNvcHlDdXN0b21EQkVuZ2luZVZlcnNpb24sXG5cdFx0UkRTQWN0aW9ucy5Db3B5REJDbHVzdGVyUGFyYW1ldGVyR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5Db3B5REJDbHVzdGVyU25hcHNob3QsXG5cdFx0UkRTQWN0aW9ucy5Db3B5REJQYXJhbWV0ZXJHcm91cCxcblx0XHRSRFNBY3Rpb25zLkNvcHlEQlNuYXBzaG90LFxuXHRcdFJEU0FjdGlvbnMuQ29weU9wdGlvbkdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuQ3JlYXRlQmx1ZUdyZWVuRGVwbG95bWVudCxcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZUN1c3RvbURCRW5naW5lVmVyc2lvbixcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZURCQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZURCQ2x1c3RlckVuZHBvaW50LFxuXHRcdFJEU0FjdGlvbnMuQ3JlYXRlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVEQkNsdXN0ZXJTbmFwc2hvdCxcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZURCSW5zdGFuY2UsXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVEQkluc3RhbmNlUmVhZFJlcGxpY2EsXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVEQlBhcmFtZXRlckdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuQ3JlYXRlREJQcm94eSxcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZURCUHJveHlFbmRwb2ludCxcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZURCU2VjdXJpdHlHcm91cCxcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZURCU2hhcmRHcm91cCxcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZURCU25hcHNob3QsXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVEQlN1Ym5ldEdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuQ3JlYXRlRXZlbnRTdWJzY3JpcHRpb24sXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVHbG9iYWxDbHVzdGVyLFxuXHRcdFJEU0FjdGlvbnMuQ3JlYXRlSW50ZWdyYXRpb24sXG5cdFx0UkRTQWN0aW9ucy5DcmVhdGVPcHRpb25Hcm91cCxcblx0XHRSRFNBY3Rpb25zLkNyZWF0ZVRlbmFudERhdGFiYXNlLFxuXHRcdFJEU0FjdGlvbnMuQ3Jvc3NSZWdpb25Db21tdW5pY2F0aW9uLFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlQmx1ZUdyZWVuRGVwbG95bWVudCxcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZUN1c3RvbURCRW5naW5lVmVyc2lvbixcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZURCQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZURCQ2x1c3RlckF1dG9tYXRlZEJhY2t1cCxcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZURCQ2x1c3RlckVuZHBvaW50LFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVEQkNsdXN0ZXJTbmFwc2hvdCxcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZURCSW5zdGFuY2UsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVEQkluc3RhbmNlQXV0b21hdGVkQmFja3VwLFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlREJQYXJhbWV0ZXJHcm91cCxcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZURCUHJveHksXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVEQlByb3h5RW5kcG9pbnQsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVEQlNlY3VyaXR5R3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVEQlNoYXJkR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVEQlNuYXBzaG90LFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlREJTdWJuZXRHcm91cCxcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZUV2ZW50U3Vic2NyaXB0aW9uLFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlR2xvYmFsQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLkRlbGV0ZUludGVncmF0aW9uLFxuXHRcdFJEU0FjdGlvbnMuRGVsZXRlT3B0aW9uR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5EZWxldGVUZW5hbnREYXRhYmFzZSxcblx0XHRSRFNBY3Rpb25zLkRlcmVnaXN0ZXJEQlByb3h5VGFyZ2V0cyxcblx0XHRSRFNBY3Rpb25zLkRpc2FibGVIdHRwRW5kcG9pbnQsXG5cdFx0UkRTQWN0aW9ucy5FbmFibGVIdHRwRW5kcG9pbnQsXG5cdFx0UkRTQWN0aW9ucy5GYWlsb3ZlckRCQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLkZhaWxvdmVyR2xvYmFsQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLk1vZGlmeUFjdGl2aXR5U3RyZWFtLFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5Q2VydGlmaWNhdGVzLFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5Q3VycmVudERCQ2x1c3RlckNhcGFjaXR5LFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5Q3VzdG9tREJFbmdpbmVWZXJzaW9uLFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5REJDbHVzdGVyLFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5REJDbHVzdGVyRW5kcG9pbnQsXG5cdFx0UkRTQWN0aW9ucy5Nb2RpZnlEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCxcblx0XHRSRFNBY3Rpb25zLk1vZGlmeURCQ2x1c3RlclNuYXBzaG90QXR0cmlidXRlLFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5REJJbnN0YW5jZSxcblx0XHRSRFNBY3Rpb25zLk1vZGlmeURCUGFyYW1ldGVyR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5Nb2RpZnlEQlByb3h5LFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5REJQcm94eUVuZHBvaW50LFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5REJQcm94eVRhcmdldEdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5REJSZWNvbW1lbmRhdGlvbixcblx0XHRSRFNBY3Rpb25zLk1vZGlmeURCU2hhcmRHcm91cCxcblx0XHRSRFNBY3Rpb25zLk1vZGlmeURCU25hcHNob3QsXG5cdFx0UkRTQWN0aW9ucy5Nb2RpZnlEQlNuYXBzaG90QXR0cmlidXRlLFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5REJTdWJuZXRHcm91cCxcblx0XHRSRFNBY3Rpb25zLk1vZGlmeUV2ZW50U3Vic2NyaXB0aW9uLFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5R2xvYmFsQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLk1vZGlmeUludGVncmF0aW9uLFxuXHRcdFJEU0FjdGlvbnMuTW9kaWZ5T3B0aW9uR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5Nb2RpZnlSZWNvbW1lbmRhdGlvbixcblx0XHRSRFNBY3Rpb25zLk1vZGlmeVRlbmFudERhdGFiYXNlLFxuXHRcdFJEU0FjdGlvbnMuUHJvbW90ZVJlYWRSZXBsaWNhLFxuXHRcdFJEU0FjdGlvbnMuUHJvbW90ZVJlYWRSZXBsaWNhREJDbHVzdGVyLFxuXHRcdFJEU0FjdGlvbnMuUHVyY2hhc2VSZXNlcnZlZERCSW5zdGFuY2VzT2ZmZXJpbmcsXG5cdFx0UkRTQWN0aW9ucy5SZWJvb3REQkNsdXN0ZXIsXG5cdFx0UkRTQWN0aW9ucy5SZWJvb3REQkluc3RhbmNlLFxuXHRcdFJEU0FjdGlvbnMuUmVib290REJTaGFyZEdyb3VwLFxuXHRcdFJEU0FjdGlvbnMuUmVnaXN0ZXJEQlByb3h5VGFyZ2V0cyxcblx0XHRSRFNBY3Rpb25zLlJlbW92ZUZyb21HbG9iYWxDbHVzdGVyLFxuXHRcdFJEU0FjdGlvbnMuUmVtb3ZlUm9sZUZyb21EQkNsdXN0ZXIsXG5cdFx0UkRTQWN0aW9ucy5SZW1vdmVSb2xlRnJvbURCSW5zdGFuY2UsXG5cdFx0UkRTQWN0aW9ucy5SZW1vdmVTb3VyY2VJZGVudGlmaWVyRnJvbVN1YnNjcmlwdGlvbixcblx0XHRSRFNBY3Rpb25zLlJlc2V0REJDbHVzdGVyUGFyYW1ldGVyR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5SZXNldERCUGFyYW1ldGVyR3JvdXAsXG5cdFx0UkRTQWN0aW9ucy5SZXN0b3JlREJDbHVzdGVyRnJvbVMzLFxuXHRcdFJEU0FjdGlvbnMuUmVzdG9yZURCQ2x1c3RlckZyb21TbmFwc2hvdCxcblx0XHRSRFNBY3Rpb25zLlJlc3RvcmVEQkNsdXN0ZXJUb1BvaW50SW5UaW1lLFxuXHRcdFJEU0FjdGlvbnMuUmVzdG9yZURCSW5zdGFuY2VGcm9tREJTbmFwc2hvdCxcblx0XHRSRFNBY3Rpb25zLlJlc3RvcmVEQkluc3RhbmNlRnJvbVMzLFxuXHRcdFJEU0FjdGlvbnMuUmVzdG9yZURCSW5zdGFuY2VUb1BvaW50SW5UaW1lLFxuXHRcdFJEU0FjdGlvbnMuUmV2b2tlREJTZWN1cml0eUdyb3VwSW5ncmVzcyxcblx0XHRSRFNBY3Rpb25zLlN0YXJ0QWN0aXZpdHlTdHJlYW0sXG5cdFx0UkRTQWN0aW9ucy5TdGFydERCQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLlN0YXJ0REJJbnN0YW5jZSxcblx0XHRSRFNBY3Rpb25zLlN0YXJ0REJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHNSZXBsaWNhdGlvbixcblx0XHRSRFNBY3Rpb25zLlN0YXJ0RXhwb3J0VGFzayxcblx0XHRSRFNBY3Rpb25zLlN0b3BBY3Rpdml0eVN0cmVhbSxcblx0XHRSRFNBY3Rpb25zLlN0b3BEQkNsdXN0ZXIsXG5cdFx0UkRTQWN0aW9ucy5TdG9wREJJbnN0YW5jZSxcblx0XHRSRFNBY3Rpb25zLlN0b3BEQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1JlcGxpY2F0aW9uLFxuXHRcdFJEU0FjdGlvbnMuU3dpdGNob3ZlckJsdWVHcmVlbkRlcGxveW1lbnQsXG5cdFx0UkRTQWN0aW9ucy5Td2l0Y2hvdmVyR2xvYmFsQ2x1c3Rlcixcblx0XHRSRFNBY3Rpb25zLlN3aXRjaG92ZXJSZWFkUmVwbGljYSxcblx0XTtcblx0LyoqIEFsbCBsaXN0LWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxMaXN0QWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZUFjY291bnRBdHRyaWJ1dGVzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVCbHVlR3JlZW5EZXBsb3ltZW50cyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlQ2VydGlmaWNhdGVzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQkNsdXN0ZXJBdXRvbWF0ZWRCYWNrdXBzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQkNsdXN0ZXJCYWNrdHJhY2tzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQkNsdXN0ZXJFbmRwb2ludHMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCQ2x1c3RlclBhcmFtZXRlckdyb3Vwcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJDbHVzdGVyUGFyYW1ldGVycyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJDbHVzdGVyU25hcHNob3RBdHRyaWJ1dGVzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQkNsdXN0ZXJTbmFwc2hvdHMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCQ2x1c3RlcnMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCRW5naW5lVmVyc2lvbnMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQkluc3RhbmNlcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJMb2dGaWxlcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJNYWpvckVuZ2luZVZlcnNpb25zLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQlBhcmFtZXRlckdyb3Vwcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJQYXJhbWV0ZXJzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQlByb3hpZXMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCUHJveHlFbmRwb2ludHMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCUHJveHlUYXJnZXRHcm91cHMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCUHJveHlUYXJnZXRzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQlJlY29tbWVuZGF0aW9ucyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJTZWN1cml0eUdyb3Vwcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJTaGFyZEdyb3Vwcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlREJTbmFwc2hvdEF0dHJpYnV0ZXMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCU25hcHNob3RUZW5hbnREYXRhYmFzZXMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZURCU25hcHNob3RzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVEQlN1Ym5ldEdyb3Vwcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlRW5naW5lRGVmYXVsdENsdXN0ZXJQYXJhbWV0ZXJzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVFbmdpbmVEZWZhdWx0UGFyYW1ldGVycyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlRXZlbnRDYXRlZ29yaWVzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVFdmVudFN1YnNjcmlwdGlvbnMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZUV2ZW50cyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlRXhwb3J0VGFza3MsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZUdsb2JhbENsdXN0ZXJzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVJbnRlZ3JhdGlvbnMsXG5cdFx0UkRTQWN0aW9ucy5EZXNjcmliZU9wdGlvbkdyb3VwT3B0aW9ucyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlT3B0aW9uR3JvdXBzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVPcmRlcmFibGVEQkluc3RhbmNlT3B0aW9ucyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlUGVuZGluZ01haW50ZW5hbmNlQWN0aW9ucyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlUmVzZXJ2ZWREQkluc3RhbmNlcyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlUmVzZXJ2ZWREQkluc3RhbmNlc09mZmVyaW5ncyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlU291cmNlUmVnaW9ucyxcblx0XHRSRFNBY3Rpb25zLkRlc2NyaWJlVGVuYW50RGF0YWJhc2VzLFxuXHRcdFJEU0FjdGlvbnMuRGVzY3JpYmVWYWxpZERCSW5zdGFuY2VNb2RpZmljYXRpb25zLFxuXHRdO1xuXHQvKiogQWxsIHBlcm1pc3Npb24tbWFuYWdlbWVudC1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsUGVybWlzc2lvbk1hbmFnZW1lbnRBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRSRFNBY3Rpb25zLkF1dGhvcml6ZURCU2VjdXJpdHlHcm91cEluZ3Jlc3MsXG5cdF07XG5cdC8qKiBBbGwgdGFnZ2luZy1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsVGFnZ2luZ0FjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFJEU0FjdGlvbnMuQWRkVGFnc1RvUmVzb3VyY2UsXG5cdFx0UkRTQWN0aW9ucy5SZW1vdmVUYWdzRnJvbVJlc291cmNlLFxuXHRdO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgYXV0by1iYWNrdXAgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0F1dG9CYWNrdXBBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRGJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cElkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBkYkluc3RhbmNlQXV0b21hdGVkQmFja3VwSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBhdXRvLWJhY2t1cCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTQXV0b0JhY2t1cEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgRGJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZGJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBjZXYgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0NldkFyblByb3BzIHtcblx0LyoqIFRoZSBFbmdpbmUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGVuZ2luZTogc3RyaW5nO1xuXHQvKiogVGhlIEVuZ2luZVZlcnNpb24gY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGVuZ2luZVZlcnNpb246IHN0cmluZztcblx0LyoqIFRoZSBDdXN0b21EYkVuZ2luZVZlcnNpb25JZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgY3VzdG9tREJFbmdpbmVWZXJzaW9uSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBjZXYgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0NldkFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgRW5naW5lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZW5naW5lOiBzdHJpbmc7XG5cdC8qKiBUaGUgRW5naW5lVmVyc2lvbiBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGVuZ2luZVZlcnNpb246IHN0cmluZztcblx0LyoqIFRoZSBDdXN0b21EYkVuZ2luZVZlcnNpb25JZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGN1c3RvbURCRW5naW5lVmVyc2lvbklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBjbHVzdGVyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNDbHVzdGVyQXJuUHJvcHMge1xuXHQvKiogVGhlIERiQ2x1c3Rlckluc3RhbmNlTmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgZGJDbHVzdGVySW5zdGFuY2VOYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgY2x1c3RlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTQ2x1c3RlckFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgRGJDbHVzdGVySW5zdGFuY2VOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZGJDbHVzdGVySW5zdGFuY2VOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBjbHVzdGVyLWF1dG8tYmFja3VwIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNDbHVzdGVyQXV0b0JhY2t1cEFyblByb3BzIHtcblx0LyoqIFRoZSBEYkNsdXN0ZXJBdXRvbWF0ZWRCYWNrdXBJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgZGJDbHVzdGVyQXV0b21hdGVkQmFja3VwSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBjbHVzdGVyLWF1dG8tYmFja3VwIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNDbHVzdGVyQXV0b0JhY2t1cEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgRGJDbHVzdGVyQXV0b21hdGVkQmFja3VwSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBkYkNsdXN0ZXJBdXRvbWF0ZWRCYWNrdXBJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgY2x1c3Rlci1lbmRwb2ludCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTQ2x1c3RlckVuZHBvaW50QXJuUHJvcHMge1xuXHQvKiogVGhlIERiQ2x1c3RlckVuZHBvaW50IGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBkYkNsdXN0ZXJFbmRwb2ludDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGNsdXN0ZXItZW5kcG9pbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0NsdXN0ZXJFbmRwb2ludEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgRGJDbHVzdGVyRW5kcG9pbnQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBkYkNsdXN0ZXJFbmRwb2ludDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgY2x1c3Rlci1wZyBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTQ2x1c3RlclBnQXJuUHJvcHMge1xuXHQvKiogVGhlIENsdXN0ZXJQYXJhbWV0ZXJHcm91cE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGNsdXN0ZXJQYXJhbWV0ZXJHcm91cE5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBjbHVzdGVyLXBnIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNDbHVzdGVyUGdBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIENsdXN0ZXJQYXJhbWV0ZXJHcm91cE5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBjbHVzdGVyUGFyYW1ldGVyR3JvdXBOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBjbHVzdGVyLXNuYXBzaG90IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNDbHVzdGVyU25hcHNob3RBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQ2x1c3RlclNuYXBzaG90TmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgY2x1c3RlclNuYXBzaG90TmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGNsdXN0ZXItc25hcHNob3QgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0NsdXN0ZXJTbmFwc2hvdEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgQ2x1c3RlclNuYXBzaG90TmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGNsdXN0ZXJTbmFwc2hvdE5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGRiIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNEQkFyblByb3BzIHtcblx0LyoqIFRoZSBEYkluc3RhbmNlTmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgZGJJbnN0YW5jZU5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBkYiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTREJBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIERiSW5zdGFuY2VOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZGJJbnN0YW5jZU5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGRlcGxveW1lbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0RlcGxveW1lbnRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQmx1ZUdyZWVuRGVwbG95bWVudElkZW50aWZpZXIgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGJsdWVHcmVlbkRlcGxveW1lbnRJZGVudGlmaWVyOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgZGVwbG95bWVudCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTRGVwbG95bWVudEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgQmx1ZUdyZWVuRGVwbG95bWVudElkZW50aWZpZXIgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBibHVlR3JlZW5EZXBsb3ltZW50SWRlbnRpZmllcjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgZXMgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU0VzQXJuUHJvcHMge1xuXHQvKiogVGhlIFN1YnNjcmlwdGlvbk5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHN1YnNjcmlwdGlvbk5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBlcyBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTRXNBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFN1YnNjcmlwdGlvbk5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBzdWJzY3JpcHRpb25OYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBnbG9iYWwtY2x1c3RlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTR2xvYmFsQ2x1c3RlckFyblByb3BzIHtcblx0LyoqIFRoZSBHbG9iYWxDbHVzdGVyIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBnbG9iYWxDbHVzdGVyOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBnbG9iYWwtY2x1c3RlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTR2xvYmFsQ2x1c3RlckFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEdsb2JhbENsdXN0ZXIgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBnbG9iYWxDbHVzdGVyOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBpbnRlZ3JhdGlvbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTSW50ZWdyYXRpb25Bcm5Qcm9wcyB7XG5cdC8qKiBUaGUgSW50ZWdyYXRpb25JZGVudGlmaWVyIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBpbnRlZ3JhdGlvbklkZW50aWZpZXI6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBpbnRlZ3JhdGlvbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTSW50ZWdyYXRpb25Bcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEludGVncmF0aW9uSWRlbnRpZmllciBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGludGVncmF0aW9uSWRlbnRpZmllcjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgb2cgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU09nQXJuUHJvcHMge1xuXHQvKiogVGhlIE9wdGlvbkdyb3VwTmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgb3B0aW9uR3JvdXBOYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgb2cgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU09nQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBPcHRpb25Hcm91cE5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBvcHRpb25Hcm91cE5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHBnIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNQZ0FyblByb3BzIHtcblx0LyoqIFRoZSBQYXJhbWV0ZXJHcm91cE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHBhcmFtZXRlckdyb3VwTmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHBnIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNQZ0FybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUGFyYW1ldGVyR3JvdXBOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgcGFyYW1ldGVyR3JvdXBOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBwcm94eSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTUHJveHlBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRGJQcm94eUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBkYlByb3h5SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBwcm94eSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTUHJveHlBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIERiUHJveHlJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGRiUHJveHlJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgcHJveHktZW5kcG9pbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1Byb3h5RW5kcG9pbnRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRGJQcm94eUVuZHBvaW50SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGRiUHJveHlFbmRwb2ludElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcHJveHktZW5kcG9pbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1Byb3h5RW5kcG9pbnRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIERiUHJveHlFbmRwb2ludElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZGJQcm94eUVuZHBvaW50SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHJpIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNSaUFyblByb3BzIHtcblx0LyoqIFRoZSBSZXNlcnZlZERiSW5zdGFuY2VOYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSByZXNlcnZlZERCSW5zdGFuY2VOYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcmkgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1JpQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBSZXNlcnZlZERiSW5zdGFuY2VOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgcmVzZXJ2ZWREQkluc3RhbmNlTmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgc2VjZ3JwIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNTZWNncnBBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgU2VjdXJpdHlHcm91cE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHNlY3VyaXR5R3JvdXBOYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgc2VjZ3JwIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNTZWNncnBBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFNlY3VyaXR5R3JvdXBOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgc2VjdXJpdHlHcm91cE5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHNoYXJkZ3JwIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSRFNTaGFyZGdycEFyblByb3BzIHtcblx0LyoqIFRoZSBEYlNoYXJkR3JvdXBSZXNvdXJjZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBkYlNoYXJkR3JvdXBSZXNvdXJjZUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgc2hhcmRncnAgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1NoYXJkZ3JwQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBEYlNoYXJkR3JvdXBSZXNvdXJjZUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZGJTaGFyZEdyb3VwUmVzb3VyY2VJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgc25hcHNob3QgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1NuYXBzaG90QXJuUHJvcHMge1xuXHQvKiogVGhlIFNuYXBzaG90TmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgc25hcHNob3ROYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgc25hcHNob3QgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1NuYXBzaG90QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBTbmFwc2hvdE5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBzbmFwc2hvdE5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHNuYXBzaG90LXRlbmFudC1kYXRhYmFzZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTU25hcHNob3RUZW5hbnREYXRhYmFzZUFyblByb3BzIHtcblx0LyoqIFRoZSBTbmFwc2hvdE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHNuYXBzaG90TmFtZTogc3RyaW5nO1xuXHQvKiogVGhlIFRlbmFudFJlc291cmNlSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHRlbmFudFJlc291cmNlSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBzbmFwc2hvdC10ZW5hbnQtZGF0YWJhc2UgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1NuYXBzaG90VGVuYW50RGF0YWJhc2VBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFNuYXBzaG90TmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHNuYXBzaG90TmFtZTogc3RyaW5nO1xuXHQvKiogVGhlIFRlbmFudFJlc291cmNlSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSB0ZW5hbnRSZXNvdXJjZUlkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBzdWJncnAgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1N1YmdycEFyblByb3BzIHtcblx0LyoqIFRoZSBTdWJuZXRHcm91cE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHN1Ym5ldEdyb3VwTmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHN1YmdycCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTU3ViZ3JwQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBTdWJuZXRHcm91cE5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBzdWJuZXRHcm91cE5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHRhcmdldC1ncm91cCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTVGFyZ2V0R3JvdXBBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgVGFyZ2V0R3JvdXBJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgdGFyZ2V0R3JvdXBJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHRhcmdldC1ncm91cCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUkRTVGFyZ2V0R3JvdXBBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFRhcmdldEdyb3VwSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSB0YXJnZXRHcm91cElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSB0ZW5hbnQtZGF0YWJhc2UgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1RlbmFudERhdGFiYXNlQXJuUHJvcHMge1xuXHQvKiogVGhlIFRlbmFudFJlc291cmNlSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHRlbmFudFJlc291cmNlSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSB0ZW5hbnQtZGF0YWJhc2UgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJEU1RlbmFudERhdGFiYXNlQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBUZW5hbnRSZXNvdXJjZUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgdGVuYW50UmVzb3VyY2VJZDogc3RyaW5nO1xufVxuXG5jb25zdCBBdXRvQmFja3VwQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmF1dG8tYmFja3VwOig/PGRiSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBJZD5bXjovP10rKSQvO1xuY29uc3QgQ2V2QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmNldjooPzxlbmdpbmU+W146Lz9dKylcXC8oPzxlbmdpbmVWZXJzaW9uPlteOi8/XSspXFwvKD88Y3VzdG9tREJFbmdpbmVWZXJzaW9uSWQ+W146Lz9dKykkLztcbmNvbnN0IENsdXN0ZXJBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6Y2x1c3RlcjooPzxkYkNsdXN0ZXJJbnN0YW5jZU5hbWU+W146Lz9dKykkLztcbmNvbnN0IENsdXN0ZXJBdXRvQmFja3VwQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmNsdXN0ZXItYXV0by1iYWNrdXA6KD88ZGJDbHVzdGVyQXV0b21hdGVkQmFja3VwSWQ+W146Lz9dKykkLztcbmNvbnN0IENsdXN0ZXJFbmRwb2ludEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpjbHVzdGVyLWVuZHBvaW50Oig/PGRiQ2x1c3RlckVuZHBvaW50PlteOi8/XSspJC87XG5jb25zdCBDbHVzdGVyUGdBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6Y2x1c3Rlci1wZzooPzxjbHVzdGVyUGFyYW1ldGVyR3JvdXBOYW1lPlteOi8/XSspJC87XG5jb25zdCBDbHVzdGVyU25hcHNob3RBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6Y2x1c3Rlci1zbmFwc2hvdDooPzxjbHVzdGVyU25hcHNob3ROYW1lPlteOi8/XSspJC87XG5jb25zdCBEQkFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpkYjooPzxkYkluc3RhbmNlTmFtZT5bXjovP10rKSQvO1xuY29uc3QgRGVwbG95bWVudEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpkZXBsb3ltZW50Oig/PGJsdWVHcmVlbkRlcGxveW1lbnRJZGVudGlmaWVyPlteOi8/XSspJC87XG5jb25zdCBFc0FyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTplczooPzxzdWJzY3JpcHRpb25OYW1lPlteOi8/XSspJC87XG5jb25zdCBHbG9iYWxDbHVzdGVyQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczo6KD88YWNjb3VudD5bXjpdKik6Z2xvYmFsLWNsdXN0ZXI6KD88Z2xvYmFsQ2x1c3Rlcj5bXjovP10rKSQvO1xuY29uc3QgSW50ZWdyYXRpb25Bcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6aW50ZWdyYXRpb246KD88aW50ZWdyYXRpb25JZGVudGlmaWVyPlteOi8/XSspJC87XG5jb25zdCBPZ0FyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpvZzooPzxvcHRpb25Hcm91cE5hbWU+W146Lz9dKykkLztcbmNvbnN0IFBnQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnBnOig/PHBhcmFtZXRlckdyb3VwTmFtZT5bXjovP10rKSQvO1xuY29uc3QgUHJveHlBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6ZGItcHJveHk6KD88ZGJQcm94eUlkPlteOi8/XSspJC87XG5jb25zdCBQcm94eUVuZHBvaW50QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmRiLXByb3h5LWVuZHBvaW50Oig/PGRiUHJveHlFbmRwb2ludElkPlteOi8/XSspJC87XG5jb25zdCBSaUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpyaTooPzxyZXNlcnZlZERCSW5zdGFuY2VOYW1lPlteOi8/XSspJC87XG5jb25zdCBTZWNncnBBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6c2VjZ3JwOig/PHNlY3VyaXR5R3JvdXBOYW1lPlteOi8/XSspJC87XG5jb25zdCBTaGFyZGdycEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpzaGFyZC1ncm91cDooPzxkYlNoYXJkR3JvdXBSZXNvdXJjZUlkPlteOi8/XSspJC87XG5jb25zdCBTbmFwc2hvdEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpyZHM6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpzbmFwc2hvdDooPzxzbmFwc2hvdE5hbWU+W146Lz9dKykkLztcbmNvbnN0IFNuYXBzaG90VGVuYW50RGF0YWJhc2VBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6c25hcHNob3QtdGVuYW50LWRhdGFiYXNlOig/PHNuYXBzaG90TmFtZT5bXjovP10rKTooPzx0ZW5hbnRSZXNvdXJjZUlkPlteOi8/XSspJC87XG5jb25zdCBTdWJncnBBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6c3ViZ3JwOig/PHN1Ym5ldEdyb3VwTmFtZT5bXjovP10rKSQvO1xuY29uc3QgVGFyZ2V0R3JvdXBBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6cmRzOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6dGFyZ2V0LWdyb3VwOig/PHRhcmdldEdyb3VwSWQ+W146Lz9dKykkLztcbmNvbnN0IFRlbmFudERhdGFiYXNlQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOnJkczooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnRlbmFudC1kYXRhYmFzZTooPzx0ZW5hbnRSZXNvdXJjZUlkPlteOi8/XSspJC87XG5cbi8qKlxuICogQVJOIGJ1aWxkZXJzLCB2YWxpZGF0b3JzLCBhbmQgcGFyc2VycyBmb3IgcmRzIHJlc291cmNlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFJEU1Jlc291cmNlcyB7XG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgYXV0by1iYWNrdXAgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgYXV0b0JhY2t1cChwcm9wczogUkRTQXV0b0JhY2t1cEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06YXV0by1iYWNrdXA6JHtwcm9wcy5kYkluc3RhbmNlQXV0b21hdGVkQmFja3VwSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGF1dG8tYmFja3VwIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRBdXRvQmFja3VwQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEF1dG9CYWNrdXBBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgYXV0by1iYWNrdXAgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQXV0b0JhY2t1cEFybihhcm46IHN0cmluZyk6IFJEU0F1dG9CYWNrdXBBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEF1dG9CYWNrdXBBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgYXV0by1iYWNrdXAgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0ZGJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cElkOiBtYXRjaC5ncm91cHMhLmRiSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBjZXYgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgY2V2KHByb3BzOiBSRFNDZXZBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmNldjoke3Byb3BzLmVuZ2luZX0vJHtwcm9wcy5lbmdpbmVWZXJzaW9ufS8ke3Byb3BzLmN1c3RvbURCRW5naW5lVmVyc2lvbklkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBjZXYgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZENldkFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBDZXZBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgY2V2IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUNldkFybihhcm46IHN0cmluZyk6IFJEU0NldkFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQ2V2QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGNldiBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRlbmdpbmU6IG1hdGNoLmdyb3VwcyEuZW5naW5lLFxuXHRcdFx0ZW5naW5lVmVyc2lvbjogbWF0Y2guZ3JvdXBzIS5lbmdpbmVWZXJzaW9uLFxuXHRcdFx0Y3VzdG9tREJFbmdpbmVWZXJzaW9uSWQ6IG1hdGNoLmdyb3VwcyEuY3VzdG9tREJFbmdpbmVWZXJzaW9uSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgY2x1c3RlciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBjbHVzdGVyKHByb3BzOiBSRFNDbHVzdGVyQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpjbHVzdGVyOiR7cHJvcHMuZGJDbHVzdGVySW5zdGFuY2VOYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBjbHVzdGVyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRDbHVzdGVyQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIENsdXN0ZXJBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgY2x1c3RlciBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VDbHVzdGVyQXJuKGFybjogc3RyaW5nKTogUkRTQ2x1c3RlckFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQ2x1c3RlckFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBjbHVzdGVyIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGRiQ2x1c3Rlckluc3RhbmNlTmFtZTogbWF0Y2guZ3JvdXBzIS5kYkNsdXN0ZXJJbnN0YW5jZU5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgY2x1c3Rlci1hdXRvLWJhY2t1cCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBjbHVzdGVyQXV0b0JhY2t1cChwcm9wczogUkRTQ2x1c3RlckF1dG9CYWNrdXBBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmNsdXN0ZXItYXV0by1iYWNrdXA6JHtwcm9wcy5kYkNsdXN0ZXJBdXRvbWF0ZWRCYWNrdXBJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgY2x1c3Rlci1hdXRvLWJhY2t1cCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQ2x1c3RlckF1dG9CYWNrdXBBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQ2x1c3RlckF1dG9CYWNrdXBBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgY2x1c3Rlci1hdXRvLWJhY2t1cCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VDbHVzdGVyQXV0b0JhY2t1cEFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogUkRTQ2x1c3RlckF1dG9CYWNrdXBBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IENsdXN0ZXJBdXRvQmFja3VwQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGNsdXN0ZXItYXV0by1iYWNrdXAgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0ZGJDbHVzdGVyQXV0b21hdGVkQmFja3VwSWQ6IG1hdGNoLmdyb3VwcyEuZGJDbHVzdGVyQXV0b21hdGVkQmFja3VwSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgY2x1c3Rlci1lbmRwb2ludCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBjbHVzdGVyRW5kcG9pbnQocHJvcHM6IFJEU0NsdXN0ZXJFbmRwb2ludEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06Y2x1c3Rlci1lbmRwb2ludDoke3Byb3BzLmRiQ2x1c3RlckVuZHBvaW50fWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBjbHVzdGVyLWVuZHBvaW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRDbHVzdGVyRW5kcG9pbnRBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQ2x1c3RlckVuZHBvaW50QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGNsdXN0ZXItZW5kcG9pbnQgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQ2x1c3RlckVuZHBvaW50QXJuKGFybjogc3RyaW5nKTogUkRTQ2x1c3RlckVuZHBvaW50QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBDbHVzdGVyRW5kcG9pbnRBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgY2x1c3Rlci1lbmRwb2ludCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRkYkNsdXN0ZXJFbmRwb2ludDogbWF0Y2guZ3JvdXBzIS5kYkNsdXN0ZXJFbmRwb2ludCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBjbHVzdGVyLXBnIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGNsdXN0ZXJQZyhwcm9wczogUkRTQ2x1c3RlclBnQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpjbHVzdGVyLXBnOiR7cHJvcHMuY2x1c3RlclBhcmFtZXRlckdyb3VwTmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgY2x1c3Rlci1wZyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQ2x1c3RlclBnQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIENsdXN0ZXJQZ0FyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBjbHVzdGVyLXBnIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUNsdXN0ZXJQZ0Fybihhcm46IHN0cmluZyk6IFJEU0NsdXN0ZXJQZ0FybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQ2x1c3RlclBnQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGNsdXN0ZXItcGcgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0Y2x1c3RlclBhcmFtZXRlckdyb3VwTmFtZTogbWF0Y2guZ3JvdXBzIS5jbHVzdGVyUGFyYW1ldGVyR3JvdXBOYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGNsdXN0ZXItc25hcHNob3QgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgY2x1c3RlclNuYXBzaG90KHByb3BzOiBSRFNDbHVzdGVyU25hcHNob3RBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmNsdXN0ZXItc25hcHNob3Q6JHtwcm9wcy5jbHVzdGVyU25hcHNob3ROYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBjbHVzdGVyLXNuYXBzaG90IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRDbHVzdGVyU25hcHNob3RBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQ2x1c3RlclNuYXBzaG90QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGNsdXN0ZXItc25hcHNob3QgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQ2x1c3RlclNuYXBzaG90QXJuKGFybjogc3RyaW5nKTogUkRTQ2x1c3RlclNuYXBzaG90QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBDbHVzdGVyU25hcHNob3RBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgY2x1c3Rlci1zbmFwc2hvdCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRjbHVzdGVyU25hcHNob3ROYW1lOiBtYXRjaC5ncm91cHMhLmNsdXN0ZXJTbmFwc2hvdE5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgZGIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgZGIocHJvcHM6IFJEU0RCQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpkYjoke3Byb3BzLmRiSW5zdGFuY2VOYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBkYiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkREJBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gREJBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgZGIgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlREJBcm4oYXJuOiBzdHJpbmcpOiBSRFNEQkFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gREJBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZGIgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0ZGJJbnN0YW5jZU5hbWU6IG1hdGNoLmdyb3VwcyEuZGJJbnN0YW5jZU5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgZGVwbG95bWVudCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBkZXBsb3ltZW50KHByb3BzOiBSRFNEZXBsb3ltZW50QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpkZXBsb3ltZW50OiR7cHJvcHMuYmx1ZUdyZWVuRGVwbG95bWVudElkZW50aWZpZXJ9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGRlcGxveW1lbnQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZERlcGxveW1lbnRBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gRGVwbG95bWVudEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBkZXBsb3ltZW50IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZURlcGxveW1lbnRBcm4oYXJuOiBzdHJpbmcpOiBSRFNEZXBsb3ltZW50QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBEZXBsb3ltZW50QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGRlcGxveW1lbnQgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0Ymx1ZUdyZWVuRGVwbG95bWVudElkZW50aWZpZXI6XG5cdFx0XHRcdG1hdGNoLmdyb3VwcyEuYmx1ZUdyZWVuRGVwbG95bWVudElkZW50aWZpZXIsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgZXMgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgZXMocHJvcHM6IFJEU0VzQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTplczoke3Byb3BzLnN1YnNjcmlwdGlvbk5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGVzIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRFc0Fybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBFc0FyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBlcyBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VFc0Fybihhcm46IHN0cmluZyk6IFJEU0VzQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBFc0FyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBlcyBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRzdWJzY3JpcHRpb25OYW1lOiBtYXRjaC5ncm91cHMhLnN1YnNjcmlwdGlvbk5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgZ2xvYmFsLWNsdXN0ZXIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgZ2xvYmFsQ2x1c3Rlcihwcm9wczogUkRTR2xvYmFsQ2x1c3RlckFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06Z2xvYmFsLWNsdXN0ZXI6JHtwcm9wcy5nbG9iYWxDbHVzdGVyfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBnbG9iYWwtY2x1c3RlciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkR2xvYmFsQ2x1c3RlckFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBHbG9iYWxDbHVzdGVyQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGdsb2JhbC1jbHVzdGVyIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUdsb2JhbENsdXN0ZXJBcm4oYXJuOiBzdHJpbmcpOiBSRFNHbG9iYWxDbHVzdGVyQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBHbG9iYWxDbHVzdGVyQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGdsb2JhbC1jbHVzdGVyIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGdsb2JhbENsdXN0ZXI6IG1hdGNoLmdyb3VwcyEuZ2xvYmFsQ2x1c3Rlcixcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBpbnRlZ3JhdGlvbiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpbnRlZ3JhdGlvbihwcm9wczogUkRTSW50ZWdyYXRpb25Bcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmludGVncmF0aW9uOiR7cHJvcHMuaW50ZWdyYXRpb25JZGVudGlmaWVyfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBpbnRlZ3JhdGlvbiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkSW50ZWdyYXRpb25Bcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gSW50ZWdyYXRpb25Bcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgaW50ZWdyYXRpb24gQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlSW50ZWdyYXRpb25Bcm4oYXJuOiBzdHJpbmcpOiBSRFNJbnRlZ3JhdGlvbkFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gSW50ZWdyYXRpb25Bcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgaW50ZWdyYXRpb24gQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0aW50ZWdyYXRpb25JZGVudGlmaWVyOiBtYXRjaC5ncm91cHMhLmludGVncmF0aW9uSWRlbnRpZmllcixcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBvZyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBvZyhwcm9wczogUkRTT2dBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9Om9nOiR7cHJvcHMub3B0aW9uR3JvdXBOYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBvZyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkT2dBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gT2dBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgb2cgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlT2dBcm4oYXJuOiBzdHJpbmcpOiBSRFNPZ0FybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gT2dBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgb2cgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0b3B0aW9uR3JvdXBOYW1lOiBtYXRjaC5ncm91cHMhLm9wdGlvbkdyb3VwTmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBwZyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBwZyhwcm9wczogUkRTUGdBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnBnOiR7cHJvcHMucGFyYW1ldGVyR3JvdXBOYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBwZyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUGdBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUGdBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcGcgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUGdBcm4oYXJuOiBzdHJpbmcpOiBSRFNQZ0FybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUGdBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcGcgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cGFyYW1ldGVyR3JvdXBOYW1lOiBtYXRjaC5ncm91cHMhLnBhcmFtZXRlckdyb3VwTmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBwcm94eSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBwcm94eShwcm9wczogUkRTUHJveHlBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmRiLXByb3h5OiR7cHJvcHMuZGJQcm94eUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBwcm94eSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUHJveHlBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUHJveHlBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcHJveHkgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUHJveHlBcm4oYXJuOiBzdHJpbmcpOiBSRFNQcm94eUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUHJveHlBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcHJveHkgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0ZGJQcm94eUlkOiBtYXRjaC5ncm91cHMhLmRiUHJveHlJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBwcm94eS1lbmRwb2ludCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBwcm94eUVuZHBvaW50KHByb3BzOiBSRFNQcm94eUVuZHBvaW50QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpkYi1wcm94eS1lbmRwb2ludDoke3Byb3BzLmRiUHJveHlFbmRwb2ludElkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBwcm94eS1lbmRwb2ludCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUHJveHlFbmRwb2ludEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBQcm94eUVuZHBvaW50QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHByb3h5LWVuZHBvaW50IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVByb3h5RW5kcG9pbnRBcm4oYXJuOiBzdHJpbmcpOiBSRFNQcm94eUVuZHBvaW50QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBQcm94eUVuZHBvaW50QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHByb3h5LWVuZHBvaW50IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGRiUHJveHlFbmRwb2ludElkOiBtYXRjaC5ncm91cHMhLmRiUHJveHlFbmRwb2ludElkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHJpIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHJpKHByb3BzOiBSRFNSaUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cmk6JHtwcm9wcy5yZXNlcnZlZERCSW5zdGFuY2VOYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSByaSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUmlBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUmlBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcmkgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUmlBcm4oYXJuOiBzdHJpbmcpOiBSRFNSaUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUmlBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcmkgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cmVzZXJ2ZWREQkluc3RhbmNlTmFtZTogbWF0Y2guZ3JvdXBzIS5yZXNlcnZlZERCSW5zdGFuY2VOYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHNlY2dycCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBzZWNncnAocHJvcHM6IFJEU1NlY2dycEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06c2VjZ3JwOiR7cHJvcHMuc2VjdXJpdHlHcm91cE5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHNlY2dycCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkU2VjZ3JwQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFNlY2dycEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBzZWNncnAgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlU2VjZ3JwQXJuKGFybjogc3RyaW5nKTogUkRTU2VjZ3JwQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBTZWNncnBBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgc2VjZ3JwIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHNlY3VyaXR5R3JvdXBOYW1lOiBtYXRjaC5ncm91cHMhLnNlY3VyaXR5R3JvdXBOYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHNoYXJkZ3JwIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHNoYXJkZ3JwKHByb3BzOiBSRFNTaGFyZGdycEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06c2hhcmQtZ3JvdXA6JHtwcm9wcy5kYlNoYXJkR3JvdXBSZXNvdXJjZUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBzaGFyZGdycCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkU2hhcmRncnBBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gU2hhcmRncnBBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgc2hhcmRncnAgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlU2hhcmRncnBBcm4oYXJuOiBzdHJpbmcpOiBSRFNTaGFyZGdycEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gU2hhcmRncnBBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgc2hhcmRncnAgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0ZGJTaGFyZEdyb3VwUmVzb3VyY2VJZDogbWF0Y2guZ3JvdXBzIS5kYlNoYXJkR3JvdXBSZXNvdXJjZUlkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHNuYXBzaG90IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHNuYXBzaG90KHByb3BzOiBSRFNTbmFwc2hvdEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpyZHM6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06c25hcHNob3Q6JHtwcm9wcy5zbmFwc2hvdE5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHNuYXBzaG90IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRTbmFwc2hvdEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBTbmFwc2hvdEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBzbmFwc2hvdCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VTbmFwc2hvdEFybihhcm46IHN0cmluZyk6IFJEU1NuYXBzaG90QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBTbmFwc2hvdEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBzbmFwc2hvdCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRzbmFwc2hvdE5hbWU6IG1hdGNoLmdyb3VwcyEuc25hcHNob3ROYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHNuYXBzaG90LXRlbmFudC1kYXRhYmFzZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBzbmFwc2hvdFRlbmFudERhdGFiYXNlKFxuXHRcdHByb3BzOiBSRFNTbmFwc2hvdFRlbmFudERhdGFiYXNlQXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnNuYXBzaG90LXRlbmFudC1kYXRhYmFzZToke3Byb3BzLnNuYXBzaG90TmFtZX06JHtwcm9wcy50ZW5hbnRSZXNvdXJjZUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBzbmFwc2hvdC10ZW5hbnQtZGF0YWJhc2UgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFNuYXBzaG90VGVuYW50RGF0YWJhc2VBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gU25hcHNob3RUZW5hbnREYXRhYmFzZUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBzbmFwc2hvdC10ZW5hbnQtZGF0YWJhc2UgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlU25hcHNob3RUZW5hbnREYXRhYmFzZUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogUkRTU25hcHNob3RUZW5hbnREYXRhYmFzZUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gU25hcHNob3RUZW5hbnREYXRhYmFzZUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBzbmFwc2hvdC10ZW5hbnQtZGF0YWJhc2UgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0c25hcHNob3ROYW1lOiBtYXRjaC5ncm91cHMhLnNuYXBzaG90TmFtZSxcblx0XHRcdHRlbmFudFJlc291cmNlSWQ6IG1hdGNoLmdyb3VwcyEudGVuYW50UmVzb3VyY2VJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBzdWJncnAgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgc3ViZ3JwKHByb3BzOiBSRFNTdWJncnBBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnN1YmdycDoke3Byb3BzLnN1Ym5ldEdyb3VwTmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgc3ViZ3JwIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRTdWJncnBBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gU3ViZ3JwQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHN1YmdycCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VTdWJncnBBcm4oYXJuOiBzdHJpbmcpOiBSRFNTdWJncnBBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFN1YmdycEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBzdWJncnAgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0c3VibmV0R3JvdXBOYW1lOiBtYXRjaC5ncm91cHMhLnN1Ym5ldEdyb3VwTmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSB0YXJnZXQtZ3JvdXAgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgdGFyZ2V0R3JvdXAocHJvcHM6IFJEU1RhcmdldEdyb3VwQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OnJkczoke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTp0YXJnZXQtZ3JvdXA6JHtwcm9wcy50YXJnZXRHcm91cElkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSB0YXJnZXQtZ3JvdXAgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFRhcmdldEdyb3VwQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFRhcmdldEdyb3VwQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHRhcmdldC1ncm91cCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VUYXJnZXRHcm91cEFybihhcm46IHN0cmluZyk6IFJEU1RhcmdldEdyb3VwQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBUYXJnZXRHcm91cEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB0YXJnZXQtZ3JvdXAgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0dGFyZ2V0R3JvdXBJZDogbWF0Y2guZ3JvdXBzIS50YXJnZXRHcm91cElkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHRlbmFudC1kYXRhYmFzZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyB0ZW5hbnREYXRhYmFzZShwcm9wczogUkRTVGVuYW50RGF0YWJhc2VBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06cmRzOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnRlbmFudC1kYXRhYmFzZToke3Byb3BzLnRlbmFudFJlc291cmNlSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHRlbmFudC1kYXRhYmFzZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkVGVuYW50RGF0YWJhc2VBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gVGVuYW50RGF0YWJhc2VBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgdGVuYW50LWRhdGFiYXNlIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVRlbmFudERhdGFiYXNlQXJuKGFybjogc3RyaW5nKTogUkRTVGVuYW50RGF0YWJhc2VBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFRlbmFudERhdGFiYXNlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHRlbmFudC1kYXRhYmFzZSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHR0ZW5hbnRSZXNvdXJjZUlkOiBtYXRjaC5ncm91cHMhLnRlbmFudFJlc291cmNlSWQsXG5cdFx0fTtcblx0fVxufVxuXG4vKipcbiAqIEFQSSBvcGVyYXRpb24gdG8gcmVxdWlyZWQgSUFNIGFjdGlvbnMgbWFwcGluZyBmb3IgcmRzLlxuICovXG5leHBvcnQgY2xhc3MgUkRTT3BlcmF0aW9ucyB7XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEFkZFJvbGVUb0RCQ2x1c3RlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFkZFJvbGVUb0RCQ2x1c3Rlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkUm9sZVRvREJDbHVzdGVyXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQWRkUm9sZVRvREJJbnN0YW5jZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFkZFJvbGVUb0RCSW5zdGFuY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFJvbGVUb0RCSW5zdGFuY2VcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBBZGRTb3VyY2VJZGVudGlmaWVyVG9TdWJzY3JpcHRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBBZGRTb3VyY2VJZGVudGlmaWVyVG9TdWJzY3JpcHRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFNvdXJjZUlkZW50aWZpZXJUb1N1YnNjcmlwdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBBZGRUYWdzVG9SZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFkZFRhZ3NUb1Jlc291cmNlOiBzdHJpbmdbXSA9IFtcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQXBwbHlQZW5kaW5nTWFpbnRlbmFuY2VBY3Rpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBBcHBseVBlbmRpbmdNYWludGVuYW5jZUFjdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QXBwbHlQZW5kaW5nTWFpbnRlbmFuY2VBY3Rpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQXV0aG9yaXplREJTZWN1cml0eUdyb3VwSW5ncmVzcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEF1dGhvcml6ZURCU2VjdXJpdHlHcm91cEluZ3Jlc3M6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkF1dGhvcml6ZURCU2VjdXJpdHlHcm91cEluZ3Jlc3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmFja3RyYWNrREJDbHVzdGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmFja3RyYWNrREJDbHVzdGVyOiBzdHJpbmdbXSA9IFtcInJkczpCYWNrdHJhY2tEQkNsdXN0ZXJcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENhbmNlbEV4cG9ydFRhc2sgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDYW5jZWxFeHBvcnRUYXNrOiBzdHJpbmdbXSA9IFtcInJkczpDYW5jZWxFeHBvcnRUYXNrXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDb3B5REJDbHVzdGVyUGFyYW1ldGVyR3JvdXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5REJDbHVzdGVyUGFyYW1ldGVyR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q29weURCQ2x1c3RlclBhcmFtZXRlckdyb3VwXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENvcHlEQkNsdXN0ZXJTbmFwc2hvdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENvcHlEQkNsdXN0ZXJTbmFwc2hvdDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDb3B5REJDbHVzdGVyU25hcHNob3RcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ29weURCUGFyYW1ldGVyR3JvdXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5REJQYXJhbWV0ZXJHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDb3B5REJQYXJhbWV0ZXJHcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDb3B5REJTbmFwc2hvdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENvcHlEQlNuYXBzaG90OiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNvcHlEQlNuYXBzaG90XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENvcHlPcHRpb25Hcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENvcHlPcHRpb25Hcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDb3B5T3B0aW9uR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQmx1ZUdyZWVuRGVwbG95bWVudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUJsdWVHcmVlbkRlcGxveW1lbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlQmx1ZUdyZWVuRGVwbG95bWVudFwiLFxuXHRcdFwicmRzOkNyZWF0ZURCQ2x1c3RlclwiLFxuXHRcdFwicmRzOkNyZWF0ZURCQ2x1c3RlckVuZHBvaW50XCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJJbnN0YW5jZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCSW5zdGFuY2VSZWFkUmVwbGljYVwiLFxuXHRcdFwicmRzOkNyZWF0ZUdsb2JhbENsdXN0ZXJcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVDdXN0b21EQkVuZ2luZVZlcnNpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDdXN0b21EQkVuZ2luZVZlcnNpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlQ3VzdG9tREJFbmdpbmVWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZURCQ2x1c3RlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCQ2x1c3Rlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkUm9sZVRvREJDbHVzdGVyXCIsXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQkNsdXN0ZXJcIixcblx0XHRcInJkczpDcmVhdGVEQkluc3RhbmNlXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlREJDbHVzdGVyRW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQkNsdXN0ZXJFbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQkNsdXN0ZXJFbmRwb2ludFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZURCQ2x1c3RlclNuYXBzaG90IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJDbHVzdGVyU25hcHNob3Q6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJDbHVzdGVyU25hcHNob3RcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlREJJbnN0YW5jZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCSW5zdGFuY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJJbnN0YW5jZVwiLFxuXHRcdFwicmRzOkNyZWF0ZVRlbmFudERhdGFiYXNlXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlREJJbnN0YW5jZVJlYWRSZXBsaWNhIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJJbnN0YW5jZVJlYWRSZXBsaWNhOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCSW5zdGFuY2VSZWFkUmVwbGljYVwiLFxuXHRcdFwicmRzOkNyZWF0ZVRlbmFudERhdGFiYXNlXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlREJQYXJhbWV0ZXJHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCUGFyYW1ldGVyR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJQYXJhbWV0ZXJHcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVEQlByb3h5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJQcm94eTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQlByb3h5XCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlREJQcm94eUVuZHBvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJQcm94eUVuZHBvaW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCUHJveHlFbmRwb2ludFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVEQlNlY3VyaXR5R3JvdXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlNlY3VyaXR5R3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJTZWN1cml0eUdyb3VwXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZURCU2hhcmRHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCU2hhcmRHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQlNoYXJkR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlREJTbmFwc2hvdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCU25hcHNob3Q6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJTbmFwc2hvdFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVEQlN1Ym5ldEdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJTdWJuZXRHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQlN1Ym5ldEdyb3VwXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUV2ZW50U3Vic2NyaXB0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRXZlbnRTdWJzY3JpcHRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlRXZlbnRTdWJzY3JpcHRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlR2xvYmFsQ2x1c3RlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdsb2JhbENsdXN0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlR2xvYmFsQ2x1c3RlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVJbnRlZ3JhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUludGVncmF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZUludGVncmF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZU9wdGlvbkdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlT3B0aW9uR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlT3B0aW9uR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlVGVuYW50RGF0YWJhc2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVUZW5hbnREYXRhYmFzZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVUZW5hbnREYXRhYmFzZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVCbHVlR3JlZW5EZXBsb3ltZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQmx1ZUdyZWVuRGVwbG95bWVudDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVsZXRlQmx1ZUdyZWVuRGVwbG95bWVudFwiLFxuXHRcdFwicmRzOkRlbGV0ZURCQ2x1c3RlclwiLFxuXHRcdFwicmRzOkRlbGV0ZURCQ2x1c3RlckVuZHBvaW50XCIsXG5cdFx0XCJyZHM6RGVsZXRlREJJbnN0YW5jZVwiLFxuXHRcdFwicmRzOkRlbGV0ZUdsb2JhbENsdXN0ZXJcIixcblx0XHRcInJkczpQcm9tb3RlUmVhZFJlcGxpY2FcIixcblx0XHRcInJkczpQcm9tb3RlUmVhZFJlcGxpY2FEQkNsdXN0ZXJcIixcblx0XHRcInJkczpSZW1vdmVGcm9tR2xvYmFsQ2x1c3RlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVDdXN0b21EQkVuZ2luZVZlcnNpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDdXN0b21EQkVuZ2luZVZlcnNpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlbGV0ZUN1c3RvbURCRW5naW5lVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVEQkNsdXN0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQkNsdXN0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJDbHVzdGVyU25hcHNob3RcIixcblx0XHRcInJkczpEZWxldGVEQkNsdXN0ZXJcIixcblx0XHRcInJkczpEZWxldGVEQkluc3RhbmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZURCQ2x1c3RlckF1dG9tYXRlZEJhY2t1cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCQ2x1c3RlckF1dG9tYXRlZEJhY2t1cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVsZXRlREJDbHVzdGVyQXV0b21hdGVkQmFja3VwXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZURCQ2x1c3RlckVuZHBvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJDbHVzdGVyRW5kcG9pbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlbGV0ZURCQ2x1c3RlckVuZHBvaW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlbGV0ZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZURCQ2x1c3RlclNuYXBzaG90IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJDbHVzdGVyU25hcHNob3Q6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlbGV0ZURCQ2x1c3RlclNuYXBzaG90XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZURCSW5zdGFuY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEQkluc3RhbmNlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCU25hcHNob3RcIixcblx0XHRcInJkczpEZWxldGVEQkluc3RhbmNlXCIsXG5cdFx0XCJyZHM6RGVsZXRlVGVuYW50RGF0YWJhc2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlbGV0ZURCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlREJQYXJhbWV0ZXJHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCUGFyYW1ldGVyR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlbGV0ZURCUGFyYW1ldGVyR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlREJQcm94eSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCUHJveHk6IHN0cmluZ1tdID0gW1wicmRzOkRlbGV0ZURCUHJveHlcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZURCUHJveHlFbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCUHJveHlFbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVsZXRlREJQcm94eUVuZHBvaW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZURCU2VjdXJpdHlHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCU2VjdXJpdHlHcm91cDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVsZXRlREJTZWN1cml0eUdyb3VwXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZURCU2hhcmRHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCU2hhcmRHcm91cDogc3RyaW5nW10gPSBbXCJyZHM6RGVsZXRlREJTaGFyZEdyb3VwXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVEQlNuYXBzaG90IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlREJTbmFwc2hvdDogc3RyaW5nW10gPSBbXCJyZHM6RGVsZXRlREJTbmFwc2hvdFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlREJTdWJuZXRHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURCU3VibmV0R3JvdXA6IHN0cmluZ1tdID0gW1wicmRzOkRlbGV0ZURCU3VibmV0R3JvdXBcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUV2ZW50U3Vic2NyaXB0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRXZlbnRTdWJzY3JpcHRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlbGV0ZUV2ZW50U3Vic2NyaXB0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUdsb2JhbENsdXN0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHbG9iYWxDbHVzdGVyOiBzdHJpbmdbXSA9IFtcInJkczpEZWxldGVHbG9iYWxDbHVzdGVyXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVJbnRlZ3JhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUludGVncmF0aW9uOiBzdHJpbmdbXSA9IFtcInJkczpEZWxldGVJbnRlZ3JhdGlvblwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlT3B0aW9uR3JvdXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVPcHRpb25Hcm91cDogc3RyaW5nW10gPSBbXCJyZHM6RGVsZXRlT3B0aW9uR3JvdXBcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVRlbmFudERhdGFiYXNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlVGVuYW50RGF0YWJhc2U6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJyZHM6Q3JlYXRlREJTbmFwc2hvdFwiLFxuXHRcdFwicmRzOkRlbGV0ZVRlbmFudERhdGFiYXNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlcmVnaXN0ZXJEQlByb3h5VGFyZ2V0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlcmVnaXN0ZXJEQlByb3h5VGFyZ2V0czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVyZWdpc3RlckRCUHJveHlUYXJnZXRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlQWNjb3VudEF0dHJpYnV0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUFjY291bnRBdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZUFjY291bnRBdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlQmx1ZUdyZWVuRGVwbG95bWVudHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUJsdWVHcmVlbkRlcGxveW1lbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZUJsdWVHcmVlbkRlcGxveW1lbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlQ2VydGlmaWNhdGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVDZXJ0aWZpY2F0ZXM6IHN0cmluZ1tdID0gW1wicmRzOkRlc2NyaWJlQ2VydGlmaWNhdGVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCQ2x1c3RlckF1dG9tYXRlZEJhY2t1cHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCQ2x1c3RlckF1dG9tYXRlZEJhY2t1cHM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJDbHVzdGVyQXV0b21hdGVkQmFja3Vwc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCQ2x1c3RlckJhY2t0cmFja3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCQ2x1c3RlckJhY2t0cmFja3M6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJDbHVzdGVyQmFja3RyYWNrc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCQ2x1c3RlckVuZHBvaW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyRW5kcG9pbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCQ2x1c3RlckVuZHBvaW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCQ2x1c3RlclBhcmFtZXRlckdyb3VwcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyUGFyYW1ldGVyR3JvdXBzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCQ2x1c3RlclBhcmFtZXRlckdyb3Vwc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCQ2x1c3RlclBhcmFtZXRlcnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCQ2x1c3RlclBhcmFtZXRlcnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJDbHVzdGVyUGFyYW1ldGVyc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCQ2x1c3RlclNuYXBzaG90QXR0cmlidXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyU25hcHNob3RBdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCQ2x1c3RlclNuYXBzaG90QXR0cmlidXRlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCQ2x1c3RlclNuYXBzaG90cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJDbHVzdGVyU25hcHNob3RzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCQ2x1c3RlclNuYXBzaG90c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCQ2x1c3RlcnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCQ2x1c3RlcnM6IHN0cmluZ1tdID0gW1wicmRzOkRlc2NyaWJlREJDbHVzdGVyc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQkVuZ2luZVZlcnNpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQkVuZ2luZVZlcnNpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCRW5naW5lVmVyc2lvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQkluc3RhbmNlQXV0b21hdGVkQmFja3VwcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQkluc3RhbmNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJJbnN0YW5jZXM6IHN0cmluZ1tdID0gW1wicmRzOkRlc2NyaWJlREJJbnN0YW5jZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJMb2dGaWxlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJMb2dGaWxlczogc3RyaW5nW10gPSBbXCJyZHM6RGVzY3JpYmVEQkxvZ0ZpbGVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCTWFqb3JFbmdpbmVWZXJzaW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJNYWpvckVuZ2luZVZlcnNpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCTWFqb3JFbmdpbmVWZXJzaW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCUGFyYW1ldGVyR3JvdXBzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlBhcmFtZXRlckdyb3Vwczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVEQlBhcmFtZXRlckdyb3Vwc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCUGFyYW1ldGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJQYXJhbWV0ZXJzOiBzdHJpbmdbXSA9IFtcInJkczpEZXNjcmliZURCUGFyYW1ldGVyc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVEQlByb3hpZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCUHJveGllczogc3RyaW5nW10gPSBbXCJyZHM6RGVzY3JpYmVEQlByb3hpZXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJQcm94eUVuZHBvaW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJQcm94eUVuZHBvaW50czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVEQlByb3h5RW5kcG9pbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJQcm94eVRhcmdldEdyb3VwcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJQcm94eVRhcmdldEdyb3Vwczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVEQlByb3h5VGFyZ2V0R3JvdXBzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJQcm94eVRhcmdldHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCUHJveHlUYXJnZXRzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCUHJveHlUYXJnZXRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJSZWNvbW1lbmRhdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCUmVjb21tZW5kYXRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCUmVjb21tZW5kYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJTZWN1cml0eUdyb3VwcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJTZWN1cml0eUdyb3Vwczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVEQlNlY3VyaXR5R3JvdXBzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJTaGFyZEdyb3VwcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJTaGFyZEdyb3Vwczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVEQlNoYXJkR3JvdXBzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJTbmFwc2hvdEF0dHJpYnV0ZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCU25hcHNob3RBdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZURCU25hcHNob3RBdHRyaWJ1dGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJTbmFwc2hvdFRlbmFudERhdGFiYXNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlREJTbmFwc2hvdFRlbmFudERhdGFiYXNlczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVEQlNuYXBzaG90VGVuYW50RGF0YWJhc2VzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlREJTbmFwc2hvdHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZURCU25hcHNob3RzOiBzdHJpbmdbXSA9IFtcInJkczpEZXNjcmliZURCU25hcHNob3RzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZURCU3VibmV0R3JvdXBzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVEQlN1Ym5ldEdyb3Vwczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVEQlN1Ym5ldEdyb3Vwc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUVuZ2luZURlZmF1bHRDbHVzdGVyUGFyYW1ldGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlRW5naW5lRGVmYXVsdENsdXN0ZXJQYXJhbWV0ZXJzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZUVuZ2luZURlZmF1bHRDbHVzdGVyUGFyYW1ldGVyc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUVuZ2luZURlZmF1bHRQYXJhbWV0ZXJzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVFbmdpbmVEZWZhdWx0UGFyYW1ldGVyczogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6RGVzY3JpYmVFbmdpbmVEZWZhdWx0UGFyYW1ldGVyc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUV2ZW50Q2F0ZWdvcmllcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlRXZlbnRDYXRlZ29yaWVzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZUV2ZW50Q2F0ZWdvcmllc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUV2ZW50U3Vic2NyaXB0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlRXZlbnRTdWJzY3JpcHRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZUV2ZW50U3Vic2NyaXB0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZUV2ZW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlRXZlbnRzOiBzdHJpbmdbXSA9IFtcInJkczpEZXNjcmliZUV2ZW50c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVFeHBvcnRUYXNrcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlRXhwb3J0VGFza3M6IHN0cmluZ1tdID0gW1wicmRzOkRlc2NyaWJlRXhwb3J0VGFza3NcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlR2xvYmFsQ2x1c3RlcnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUdsb2JhbENsdXN0ZXJzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZUdsb2JhbENsdXN0ZXJzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlc2NyaWJlSW50ZWdyYXRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVJbnRlZ3JhdGlvbnM6IHN0cmluZ1tdID0gW1wicmRzOkRlc2NyaWJlSW50ZWdyYXRpb25zXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZU9wdGlvbkdyb3VwT3B0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlT3B0aW9uR3JvdXBPcHRpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZU9wdGlvbkdyb3VwT3B0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZU9wdGlvbkdyb3VwcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlT3B0aW9uR3JvdXBzOiBzdHJpbmdbXSA9IFtcInJkczpEZXNjcmliZU9wdGlvbkdyb3Vwc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVPcmRlcmFibGVEQkluc3RhbmNlT3B0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlT3JkZXJhYmxlREJJbnN0YW5jZU9wdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlT3JkZXJhYmxlREJJbnN0YW5jZU9wdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVQZW5kaW5nTWFpbnRlbmFuY2VBY3Rpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVQZW5kaW5nTWFpbnRlbmFuY2VBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZVBlbmRpbmdNYWludGVuYW5jZUFjdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVSZXNlcnZlZERCSW5zdGFuY2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZXNlcnZlZERCSW5zdGFuY2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZVJlc2VydmVkREJJbnN0YW5jZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVSZXNlcnZlZERCSW5zdGFuY2VzT2ZmZXJpbmdzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVSZXNlcnZlZERCSW5zdGFuY2VzT2ZmZXJpbmdzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZ3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVzY3JpYmVTZXJ2ZXJsZXNzVjJQbGF0Zm9ybVZlcnNpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVzY3JpYmVTZXJ2ZXJsZXNzVjJQbGF0Zm9ybVZlcnNpb25zOiBzdHJpbmdbXSA9IFtdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZVNvdXJjZVJlZ2lvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVNvdXJjZVJlZ2lvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlU291cmNlUmVnaW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZVRlbmFudERhdGFiYXNlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlc2NyaWJlVGVuYW50RGF0YWJhc2VzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEZXNjcmliZVRlbmFudERhdGFiYXNlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZXNjcmliZVZhbGlkREJJbnN0YW5jZU1vZGlmaWNhdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZVZhbGlkREJJbnN0YW5jZU1vZGlmaWNhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRlc2NyaWJlVmFsaWREQkluc3RhbmNlTW9kaWZpY2F0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEaXNhYmxlSHR0cEVuZHBvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGlzYWJsZUh0dHBFbmRwb2ludDogc3RyaW5nW10gPSBbXCJyZHM6RGlzYWJsZUh0dHBFbmRwb2ludFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRG93bmxvYWREQkxvZ0ZpbGVQb3J0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRG93bmxvYWREQkxvZ0ZpbGVQb3J0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpEb3dubG9hZERCTG9nRmlsZVBvcnRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRW5hYmxlSHR0cEVuZHBvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRW5hYmxlSHR0cEVuZHBvaW50OiBzdHJpbmdbXSA9IFtcInJkczpFbmFibGVIdHRwRW5kcG9pbnRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEZhaWxvdmVyREJDbHVzdGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRmFpbG92ZXJEQkNsdXN0ZXI6IHN0cmluZ1tdID0gW1wicmRzOkZhaWxvdmVyREJDbHVzdGVyXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBGYWlsb3Zlckdsb2JhbENsdXN0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBGYWlsb3Zlckdsb2JhbENsdXN0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkZhaWxvdmVyR2xvYmFsQ2x1c3RlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGFnc0ZvclJlc291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRhZ3NGb3JSZXNvdXJjZTogc3RyaW5nW10gPSBbXCJyZHM6TGlzdFRhZ3NGb3JSZXNvdXJjZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTW9kaWZ5QWN0aXZpdHlTdHJlYW0gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlBY3Rpdml0eVN0cmVhbTogc3RyaW5nW10gPSBbXCJyZHM6TW9kaWZ5QWN0aXZpdHlTdHJlYW1cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeUNlcnRpZmljYXRlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeUNlcnRpZmljYXRlczogc3RyaW5nW10gPSBbXCJyZHM6TW9kaWZ5Q2VydGlmaWNhdGVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlDdXJyZW50REJDbHVzdGVyQ2FwYWNpdHkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlDdXJyZW50REJDbHVzdGVyQ2FwYWNpdHk6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeUN1cnJlbnREQkNsdXN0ZXJDYXBhY2l0eVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlDdXN0b21EQkVuZ2luZVZlcnNpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlDdXN0b21EQkVuZ2luZVZlcnNpb246IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeUN1c3RvbURCRW5naW5lVmVyc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlEQkNsdXN0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQkNsdXN0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeURCQ2x1c3RlclwiLFxuXHRcdFwicmRzOk1vZGlmeURCSW5zdGFuY2VcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlEQkNsdXN0ZXJFbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCQ2x1c3RlckVuZHBvaW50OiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpNb2RpZnlEQkNsdXN0ZXJFbmRwb2ludFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCQ2x1c3RlclBhcmFtZXRlckdyb3VwOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpNb2RpZnlEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlEQkNsdXN0ZXJTbmFwc2hvdEF0dHJpYnV0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCQ2x1c3RlclNuYXBzaG90QXR0cmlidXRlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpNb2RpZnlEQkNsdXN0ZXJTbmFwc2hvdEF0dHJpYnV0ZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlEQkluc3RhbmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJJbnN0YW5jZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpNb2RpZnlEQkluc3RhbmNlXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTW9kaWZ5REJQYXJhbWV0ZXJHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCUGFyYW1ldGVyR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeURCUGFyYW1ldGVyR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTW9kaWZ5REJQcm94eSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCUHJveHk6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeURCUHJveHlcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlEQlByb3h5RW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQlByb3h5RW5kcG9pbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeURCUHJveHlFbmRwb2ludFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlEQlByb3h5VGFyZ2V0R3JvdXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQlByb3h5VGFyZ2V0R3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeURCUHJveHlUYXJnZXRHcm91cFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlEQlJlY29tbWVuZGF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5REJSZWNvbW1lbmRhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6TW9kaWZ5REJSZWNvbW1lbmRhdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlEQlNoYXJkR3JvdXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQlNoYXJkR3JvdXA6IHN0cmluZ1tdID0gW1wicmRzOk1vZGlmeURCU2hhcmRHcm91cFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTW9kaWZ5REJTbmFwc2hvdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCU25hcHNob3Q6IHN0cmluZ1tdID0gW1wicmRzOk1vZGlmeURCU25hcHNob3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeURCU25hcHNob3RBdHRyaWJ1dGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQlNuYXBzaG90QXR0cmlidXRlOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpNb2RpZnlEQlNuYXBzaG90QXR0cmlidXRlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeURCU3VibmV0R3JvdXAgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlEQlN1Ym5ldEdyb3VwOiBzdHJpbmdbXSA9IFtcInJkczpNb2RpZnlEQlN1Ym5ldEdyb3VwXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlFdmVudFN1YnNjcmlwdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeUV2ZW50U3Vic2NyaXB0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpNb2RpZnlFdmVudFN1YnNjcmlwdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBNb2RpZnlHbG9iYWxDbHVzdGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5R2xvYmFsQ2x1c3Rlcjogc3RyaW5nW10gPSBbXCJyZHM6TW9kaWZ5R2xvYmFsQ2x1c3RlclwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTW9kaWZ5SW50ZWdyYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlJbnRlZ3JhdGlvbjogc3RyaW5nW10gPSBbXCJyZHM6TW9kaWZ5SW50ZWdyYXRpb25cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIE1vZGlmeU9wdGlvbkdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTW9kaWZ5T3B0aW9uR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOk1vZGlmeU9wdGlvbkdyb3VwXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTW9kaWZ5VGVuYW50RGF0YWJhc2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBNb2RpZnlUZW5hbnREYXRhYmFzZTogc3RyaW5nW10gPSBbXCJyZHM6TW9kaWZ5VGVuYW50RGF0YWJhc2VcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFByb21vdGVSZWFkUmVwbGljYSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFByb21vdGVSZWFkUmVwbGljYTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpQcm9tb3RlUmVhZFJlcGxpY2FcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHJvbW90ZVJlYWRSZXBsaWNhREJDbHVzdGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHJvbW90ZVJlYWRSZXBsaWNhREJDbHVzdGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpQcm9tb3RlUmVhZFJlcGxpY2FEQkNsdXN0ZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHVyY2hhc2VSZXNlcnZlZERCSW5zdGFuY2VzT2ZmZXJpbmcgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXJjaGFzZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZzogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpQdXJjaGFzZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZ1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZWJvb3REQkNsdXN0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBSZWJvb3REQkNsdXN0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOlJlYm9vdERCQ2x1c3RlclwiLFxuXHRcdFwicmRzOlJlYm9vdERCSW5zdGFuY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVib290REJJbnN0YW5jZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlYm9vdERCSW5zdGFuY2U6IHN0cmluZ1tdID0gW1wicmRzOlJlYm9vdERCSW5zdGFuY2VcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFJlYm9vdERCU2hhcmRHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlYm9vdERCU2hhcmRHcm91cDogc3RyaW5nW10gPSBbXCJyZHM6UmVib290REJTaGFyZEdyb3VwXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZWdpc3RlckRCUHJveHlUYXJnZXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVnaXN0ZXJEQlByb3h5VGFyZ2V0czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6UmVnaXN0ZXJEQlByb3h5VGFyZ2V0c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZW1vdmVGcm9tR2xvYmFsQ2x1c3RlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlbW92ZUZyb21HbG9iYWxDbHVzdGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpSZW1vdmVGcm9tR2xvYmFsQ2x1c3RlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZW1vdmVSb2xlRnJvbURCQ2x1c3RlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlbW92ZVJvbGVGcm9tREJDbHVzdGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwicmRzOlJlbW92ZVJvbGVGcm9tREJDbHVzdGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFJlbW92ZVJvbGVGcm9tREJJbnN0YW5jZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlbW92ZVJvbGVGcm9tREJJbnN0YW5jZTogc3RyaW5nW10gPSBbXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInJkczpSZW1vdmVSb2xlRnJvbURCSW5zdGFuY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVtb3ZlU291cmNlSWRlbnRpZmllckZyb21TdWJzY3JpcHRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBSZW1vdmVTb3VyY2VJZGVudGlmaWVyRnJvbVN1YnNjcmlwdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6UmVtb3ZlU291cmNlSWRlbnRpZmllckZyb21TdWJzY3JpcHRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVtb3ZlVGFnc0Zyb21SZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlbW92ZVRhZ3NGcm9tUmVzb3VyY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOlJlbW92ZVRhZ3NGcm9tUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVzZXREQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc2V0REJDbHVzdGVyUGFyYW1ldGVyR3JvdXA6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOlJlc2V0REJDbHVzdGVyUGFyYW1ldGVyR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVzZXREQlBhcmFtZXRlckdyb3VwIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzZXREQlBhcmFtZXRlckdyb3VwOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpSZXNldERCUGFyYW1ldGVyR3JvdXBcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVzdG9yZURCQ2x1c3RlckZyb21TMyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkNsdXN0ZXJGcm9tUzM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkFkZFJvbGVUb0RCQ2x1c3RlclwiLFxuXHRcdFwicmRzOkFkZFRhZ3NUb1Jlc291cmNlXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInJkczpSZXN0b3JlREJDbHVzdGVyRnJvbVMzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFJlc3RvcmVEQkNsdXN0ZXJGcm9tU25hcHNob3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBSZXN0b3JlREJDbHVzdGVyRnJvbVNuYXBzaG90OiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRSb2xlVG9EQkNsdXN0ZXJcIixcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZURCSW5zdGFuY2VcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwicmRzOlJlc3RvcmVEQkNsdXN0ZXJGcm9tU25hcHNob3RcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVzdG9yZURCQ2x1c3RlclRvUG9pbnRJblRpbWUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBSZXN0b3JlREJDbHVzdGVyVG9Qb2ludEluVGltZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkUm9sZVRvREJDbHVzdGVyXCIsXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQkluc3RhbmNlXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInJkczpSZXN0b3JlREJDbHVzdGVyVG9Qb2ludEluVGltZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZXN0b3JlREJJbnN0YW5jZUZyb21EQlNuYXBzaG90IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzdG9yZURCSW5zdGFuY2VGcm9tREJTbmFwc2hvdDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVUZW5hbnREYXRhYmFzZVwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJyZHM6UmVzdG9yZURCSW5zdGFuY2VGcm9tREJTbmFwc2hvdFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZXN0b3JlREJJbnN0YW5jZUZyb21TMyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkluc3RhbmNlRnJvbVMzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJyZHM6UmVzdG9yZURCSW5zdGFuY2VGcm9tUzNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmVzdG9yZURCSW5zdGFuY2VUb1BvaW50SW5UaW1lIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzdG9yZURCSW5zdGFuY2VUb1BvaW50SW5UaW1lOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOkNyZWF0ZVRlbmFudERhdGFiYXNlXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcInJkczpSZXN0b3JlREJJbnN0YW5jZVRvUG9pbnRJblRpbWVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUmV2b2tlREJTZWN1cml0eUdyb3VwSW5ncmVzcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJldm9rZURCU2VjdXJpdHlHcm91cEluZ3Jlc3M6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOlJldm9rZURCU2VjdXJpdHlHcm91cEluZ3Jlc3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRBY3Rpdml0eVN0cmVhbSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0QWN0aXZpdHlTdHJlYW06IHN0cmluZ1tdID0gW1wicmRzOlN0YXJ0QWN0aXZpdHlTdHJlYW1cIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0YXJ0REJDbHVzdGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnREQkNsdXN0ZXI6IHN0cmluZ1tdID0gW1wicmRzOlN0YXJ0REJDbHVzdGVyXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydERCSW5zdGFuY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydERCSW5zdGFuY2U6IHN0cmluZ1tdID0gW1wicmRzOlN0YXJ0REJJbnN0YW5jZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnREQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1JlcGxpY2F0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnREQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1JlcGxpY2F0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpBZGRUYWdzVG9SZXNvdXJjZVwiLFxuXHRcdFwicmRzOlN0YXJ0REJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHNSZXBsaWNhdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydEV4cG9ydFRhc2sgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEV4cG9ydFRhc2s6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJyZHM6U3RhcnRFeHBvcnRUYXNrXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0b3BBY3Rpdml0eVN0cmVhbSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BBY3Rpdml0eVN0cmVhbTogc3RyaW5nW10gPSBbXCJyZHM6U3RvcEFjdGl2aXR5U3RyZWFtXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdG9wREJDbHVzdGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcERCQ2x1c3Rlcjogc3RyaW5nW10gPSBbXCJyZHM6U3RvcERCQ2x1c3RlclwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RvcERCSW5zdGFuY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wREJJbnN0YW5jZTogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6QWRkVGFnc1RvUmVzb3VyY2VcIixcblx0XHRcInJkczpDcmVhdGVEQlNuYXBzaG90XCIsXG5cdFx0XCJyZHM6U3RvcERCSW5zdGFuY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RvcERCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzUmVwbGljYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wREJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHNSZXBsaWNhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6U3RvcERCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzUmVwbGljYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3dpdGNob3ZlckJsdWVHcmVlbkRlcGxveW1lbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTd2l0Y2hvdmVyQmx1ZUdyZWVuRGVwbG95bWVudDogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6TW9kaWZ5REJDbHVzdGVyXCIsXG5cdFx0XCJyZHM6TW9kaWZ5REJJbnN0YW5jZVwiLFxuXHRcdFwicmRzOk1vZGlmeUdsb2JhbENsdXN0ZXJcIixcblx0XHRcInJkczpQcm9tb3RlUmVhZFJlcGxpY2FcIixcblx0XHRcInJkczpQcm9tb3RlUmVhZFJlcGxpY2FEQkNsdXN0ZXJcIixcblx0XHRcInJkczpTd2l0Y2hvdmVyQmx1ZUdyZWVuRGVwbG95bWVudFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTd2l0Y2hvdmVyR2xvYmFsQ2x1c3RlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN3aXRjaG92ZXJHbG9iYWxDbHVzdGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpTd2l0Y2hvdmVyR2xvYmFsQ2x1c3RlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTd2l0Y2hvdmVyUmVhZFJlcGxpY2EgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTd2l0Y2hvdmVyUmVhZFJlcGxpY2E6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOlN3aXRjaG92ZXJSZWFkUmVwbGljYVwiLFxuXHRdO1xufVxuXG4vKipcbiAqIENvbmRpdGlvbiBrZXkgY29uc3RhbnRzIGFuZCBidWlsZGVycyBmb3IgcmRzLlxuICovXG5leHBvcnQgY2xhc3MgUkRTQ29uZGl0aW9ucyB7XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBBZGRUYWdzVG9SZXNvdXJjZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBBZGRUYWdzVG9SZXNvdXJjZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOlRhZ3NGcm9tUmVxdWVzdFwiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDb3B5REJDbHVzdGVyUGFyYW1ldGVyR3JvdXAgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ29weURCQ2x1c3RlclBhcmFtZXRlckdyb3VwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENvcHlEQkNsdXN0ZXJTbmFwc2hvdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDb3B5REJDbHVzdGVyU25hcHNob3RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ29weURCUGFyYW1ldGVyR3JvdXAgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ29weURCUGFyYW1ldGVyR3JvdXBDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ29weURCU25hcHNob3QgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ29weURCU25hcHNob3RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpDb3B5T3B0aW9uR3JvdXBcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ29weU9wdGlvbkdyb3VwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENvcHlPcHRpb25Hcm91cENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVCbHVlR3JlZW5EZXBsb3ltZW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUJsdWVHcmVlbkRlcGxveW1lbnRDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpEYXRhYmFzZUNsYXNzXCIsXG5cdFx0XCJyZHM6RGF0YWJhc2VFbmdpbmVcIixcblx0XHRcInJkczpEYXRhYmFzZU5hbWVcIixcblx0XHRcInJkczpNdWx0aUF6XCIsXG5cdFx0XCJyZHM6UGlvcHNcIixcblx0XHRcInJkczpTdG9yYWdlRW5jcnlwdGVkXCIsXG5cdFx0XCJyZHM6U3RvcmFnZVNpemVcIixcblx0XHRcInJkczpWcGNcIixcblx0XHRcInJkczpjbHVzdGVyLXBnLXRhZy8ke1RhZ0tleX1cIixcblx0XHRcInJkczpjbHVzdGVyLXRhZy8ke1RhZ0tleX1cIixcblx0XHRcInJkczpkYi10YWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJyZHM6cGctdGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVDdXN0b21EQkVuZ2luZVZlcnNpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ3VzdG9tREJFbmdpbmVWZXJzaW9uQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZURCQ2x1c3RlciBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQkNsdXN0ZXJDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpEYXRhYmFzZUNsYXNzXCIsXG5cdFx0XCJyZHM6RGF0YWJhc2VFbmdpbmVcIixcblx0XHRcInJkczpEYXRhYmFzZU5hbWVcIixcblx0XHRcInJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmRcIixcblx0XHRcInJkczpQaW9wc1wiLFxuXHRcdFwicmRzOlN0b3JhZ2VFbmNyeXB0ZWRcIixcblx0XHRcInJkczpTdG9yYWdlU2l6ZVwiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVEQkNsdXN0ZXJFbmRwb2ludCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQkNsdXN0ZXJFbmRwb2ludENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOkVuZHBvaW50VHlwZVwiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVEQkNsdXN0ZXJTbmFwc2hvdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQkNsdXN0ZXJTbmFwc2hvdENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVEQkluc3RhbmNlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCSW5zdGFuY2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpCYWNrdXBUYXJnZXRcIixcblx0XHRcInJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmRcIixcblx0XHRcInJkczpQdWJsaWNseUFjY2Vzc2libGVcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlREJJbnN0YW5jZVJlYWRSZXBsaWNhIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCSW5zdGFuY2VSZWFkUmVwbGljYUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOlB1YmxpY2x5QWNjZXNzaWJsZVwiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVEQlBhcmFtZXRlckdyb3VwIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURCUGFyYW1ldGVyR3JvdXBDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlREJQcm94eSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlByb3h5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVEQlByb3h5RW5kcG9pbnQgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJQcm94eUVuZHBvaW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVEQlNlY3VyaXR5R3JvdXAgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJTZWN1cml0eUdyb3VwQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZURCU2hhcmRHcm91cCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlNoYXJkR3JvdXBDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpQdWJsaWNseUFjY2Vzc2libGVcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlREJTbmFwc2hvdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEQlNuYXBzaG90Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6QmFja3VwVGFyZ2V0XCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZURCU3VibmV0R3JvdXAgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlREJTdWJuZXRHcm91cENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVFdmVudFN1YnNjcmlwdGlvbiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFdmVudFN1YnNjcmlwdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVHbG9iYWxDbHVzdGVyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdsb2JhbENsdXN0ZXJDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlSW50ZWdyYXRpb24gYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSW50ZWdyYXRpb25Db25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlT3B0aW9uR3JvdXAgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlT3B0aW9uR3JvdXBDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlVGVuYW50RGF0YWJhc2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlVGVuYW50RGF0YWJhc2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmRcIixcblx0XHRcInJkczpUZW5hbnREYXRhYmFzZU5hbWVcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgRGVsZXRlQmx1ZUdyZWVuRGVwbG95bWVudCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVCbHVlR3JlZW5EZXBsb3ltZW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZXNjcmliZUludGVncmF0aW9ucyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZXNjcmliZUludGVncmF0aW9uc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgTW9kaWZ5REJDbHVzdGVyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCQ2x1c3RlckNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwicmRzOkRhdGFiYXNlQ2xhc3NcIixcblx0XHRcInJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmRcIixcblx0XHRcInJkczpQaW9wc1wiLFxuXHRcdFwicmRzOlN0b3JhZ2VTaXplXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBNb2RpZnlEQkluc3RhbmNlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeURCSW5zdGFuY2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcInJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmRcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIE1vZGlmeVRlbmFudERhdGFiYXNlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IE1vZGlmeVRlbmFudERhdGFiYXNlQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJyZHM6TWFuYWdlTWFzdGVyVXNlclBhc3N3b3JkXCIsXG5cdFx0XCJyZHM6VGVuYW50RGF0YWJhc2VOYW1lXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXJjaGFzZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBQdXJjaGFzZVJlc2VydmVkREJJbnN0YW5jZXNPZmZlcmluZ0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBSZW1vdmVUYWdzRnJvbVJlc291cmNlIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlbW92ZVRhZ3NGcm9tUmVzb3VyY2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUmVzdG9yZURCQ2x1c3RlckZyb21TMyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBSZXN0b3JlREJDbHVzdGVyRnJvbVMzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6RGF0YWJhc2VFbmdpbmVcIixcblx0XHRcInJkczpEYXRhYmFzZU5hbWVcIixcblx0XHRcInJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmRcIixcblx0XHRcInJkczpTdG9yYWdlRW5jcnlwdGVkXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFJlc3RvcmVEQkNsdXN0ZXJGcm9tU25hcHNob3QgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmVzdG9yZURCQ2x1c3RlckZyb21TbmFwc2hvdENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwicmRzOkRhdGFiYXNlQ2xhc3NcIixcblx0XHRcInJkczpQaW9wc1wiLFxuXHRcdFwicmRzOlN0b3JhZ2VTaXplXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFJlc3RvcmVEQkNsdXN0ZXJUb1BvaW50SW5UaW1lIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkNsdXN0ZXJUb1BvaW50SW5UaW1lQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6RGF0YWJhc2VDbGFzc1wiLFxuXHRcdFwicmRzOlBpb3BzXCIsXG5cdFx0XCJyZHM6U3RvcmFnZVNpemVcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgUmVzdG9yZURCSW5zdGFuY2VGcm9tREJTbmFwc2hvdCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBSZXN0b3JlREJJbnN0YW5jZUZyb21EQlNuYXBzaG90Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6QmFja3VwVGFyZ2V0XCIsXG5cdFx0XCJyZHM6TWFuYWdlTWFzdGVyVXNlclBhc3N3b3JkXCIsXG5cdFx0XCJyZHM6UHVibGljbHlBY2Nlc3NpYmxlXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFJlc3RvcmVEQkluc3RhbmNlRnJvbVMzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJlc3RvcmVEQkluc3RhbmNlRnJvbVMzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJyZHM6TWFuYWdlTWFzdGVyVXNlclBhc3N3b3JkXCIsXG5cdFx0XCJyZHM6UHVibGljbHlBY2Nlc3NpYmxlXCIsXG5cdFx0XCJyZHM6cmVxLXRhZy8ke1RhZ0tleX1cIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFJlc3RvcmVEQkluc3RhbmNlVG9Qb2ludEluVGltZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBSZXN0b3JlREJJbnN0YW5jZVRvUG9pbnRJblRpbWVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcInJkczpCYWNrdXBUYXJnZXRcIixcblx0XHRcInJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmRcIixcblx0XHRcInJkczpQdWJsaWNseUFjY2Vzc2libGVcIixcblx0XHRcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgU3RhcnREQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1JlcGxpY2F0aW9uIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0REJJbnN0YW5jZUF1dG9tYXRlZEJhY2t1cHNSZXBsaWNhdGlvbkNvbmRpdGlvbktleXM6IHN0cmluZ1tdID1cblx0XHRbXCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIiwgXCJhd3M6VGFnS2V5c1wiLCBcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFN3aXRjaG92ZXJCbHVlR3JlZW5EZXBsb3ltZW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN3aXRjaG92ZXJCbHVlR3JlZW5EZXBsb3ltZW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVzb3VyY2VUYWcvJHtUYWdLZXl9XCIsXG5cdF07XG5cblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1JFUVVFU1RfVEFHID0gXCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFXU19SRVNPVVJDRV9UQUcgPSBcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpUYWdLZXlzIChBcnJheU9mU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1RBR19LRVlTID0gXCJhd3M6VGFnS2V5c1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOkJhY2t1cFRhcmdldCAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQkFDS1VQX1RBUkdFVCA9IFwicmRzOkJhY2t1cFRhcmdldFwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOkNvcHlPcHRpb25Hcm91cCAoQm9vbCkgKi9cblx0c3RhdGljIHJlYWRvbmx5IENPUFlfT1BUSU9OX0dST1VQID0gXCJyZHM6Q29weU9wdGlvbkdyb3VwXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6RGF0YWJhc2VDbGFzcyAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgREFUQUJBU0VfQ0xBU1MgPSBcInJkczpEYXRhYmFzZUNsYXNzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6RGF0YWJhc2VFbmdpbmUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IERBVEFCQVNFX0VOR0lORSA9IFwicmRzOkRhdGFiYXNlRW5naW5lXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6RGF0YWJhc2VOYW1lIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBEQVRBQkFTRV9OQU1FID0gXCJyZHM6RGF0YWJhc2VOYW1lXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6RW5kcG9pbnRUeXBlIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBFTkRQT0lOVF9UWVBFID0gXCJyZHM6RW5kcG9pbnRUeXBlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6TWFuYWdlTWFzdGVyVXNlclBhc3N3b3JkIChCb29sKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTUFOQUdFX01BU1RFUl9VU0VSX1BBU1NXT1JEID0gXCJyZHM6TWFuYWdlTWFzdGVyVXNlclBhc3N3b3JkXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6TXVsdGlBeiAoQm9vbCkgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1VTFRJX0FaID0gXCJyZHM6TXVsdGlBelwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOlBpb3BzIChOdW1lcmljKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUElPUFMgPSBcInJkczpQaW9wc1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOlB1YmxpY2x5QWNjZXNzaWJsZSAoQm9vbCkgKi9cblx0c3RhdGljIHJlYWRvbmx5IFBVQkxJQ0xZX0FDQ0VTU0lCTEUgPSBcInJkczpQdWJsaWNseUFjY2Vzc2libGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpTdG9yYWdlRW5jcnlwdGVkIChCb29sKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU1RPUkFHRV9FTkNSWVBURUQgPSBcInJkczpTdG9yYWdlRW5jcnlwdGVkXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6U3RvcmFnZVNpemUgKE51bWVyaWMpICovXG5cdHN0YXRpYyByZWFkb25seSBTVE9SQUdFX1NJWkUgPSBcInJkczpTdG9yYWdlU2l6ZVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOlRhZ3NGcm9tUmVxdWVzdCAoQm9vbCkgKi9cblx0c3RhdGljIHJlYWRvbmx5IFRBR1NfRlJPTV9SRVFVRVNUID0gXCJyZHM6VGFnc0Zyb21SZXF1ZXN0XCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6VGVuYW50RGF0YWJhc2VOYW1lIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBURU5BTlRfREFUQUJBU0VfTkFNRSA9IFwicmRzOlRlbmFudERhdGFiYXNlTmFtZVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOlZwYyAoQm9vbCkgKi9cblx0c3RhdGljIHJlYWRvbmx5IFZQQyA9IFwicmRzOlZwY1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOmNsdXN0ZXItcGctdGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ0xVU1RFUl9QR19UQUcgPSBcInJkczpjbHVzdGVyLXBnLXRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpjbHVzdGVyLXNuYXBzaG90LXRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IENMVVNURVJfU05BUFNIT1RfVEFHID0gXCJyZHM6Y2x1c3Rlci1zbmFwc2hvdC10YWcvJHtUYWdLZXl9XCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6Y2x1c3Rlci10YWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBDTFVTVEVSX1RBRyA9IFwicmRzOmNsdXN0ZXItdGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOmRiLXRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IERCX1RBRyA9IFwicmRzOmRiLXRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczplcy10YWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBFU19UQUcgPSBcInJkczplcy10YWcvJHtUYWdLZXl9XCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6b2ctdGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgT0dfVEFHID0gXCJyZHM6b2ctdGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOnBnLXRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFBHX1RBRyA9IFwicmRzOnBnLXRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpyZXEtdGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUkVRX1RBRyA9IFwicmRzOnJlcS10YWcvJHtUYWdLZXl9XCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6cmktdGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUklfVEFHID0gXCJyZHM6cmktdGFnLyR7VGFnS2V5fVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogcmRzOnNlY2dycC10YWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBTRUNHUlBfVEFHID0gXCJyZHM6c2VjZ3JwLXRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IHJkczpzbmFwc2hvdC10YWcvJHtUYWdLZXl9IChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBTTkFQU0hPVF9UQUcgPSBcInJkczpzbmFwc2hvdC10YWcvJHtUYWdLZXl9XCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiByZHM6c3ViZ3JwLXRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFNVQkdSUF9UQUcgPSBcInJkczpzdWJncnAtdGFnLyR7VGFnS2V5fVwiO1xuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHJlcXVlc3RUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHJlc291cmNlVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYXdzOlRhZ0tleXNgLlxuXHQgKi9cblx0c3RhdGljIHRhZ0tleXModmFsdWVzOiBzdHJpbmdbXSk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7IFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7IFwiYXdzOlRhZ0tleXNcIjogdmFsdWVzIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6QmFja3VwVGFyZ2V0YC5cblx0ICovXG5cdHN0YXRpYyBiYWNrdXBUYXJnZXQodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJyZHM6QmFja3VwVGFyZ2V0XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6Q29weU9wdGlvbkdyb3VwYC5cblx0ICovXG5cdHN0YXRpYyBjb3B5T3B0aW9uR3JvdXAoXG5cdFx0dmFsdWU6IGJvb2xlYW4sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+PiB7XG5cdFx0cmV0dXJuIHsgQm9vbDogeyBcInJkczpDb3B5T3B0aW9uR3JvdXBcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpEYXRhYmFzZUNsYXNzYC5cblx0ICovXG5cdHN0YXRpYyBkYXRhYmFzZUNsYXNzKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOkRhdGFiYXNlQ2xhc3NcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpEYXRhYmFzZUVuZ2luZWAuXG5cdCAqL1xuXHRzdGF0aWMgZGF0YWJhc2VFbmdpbmUodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJyZHM6RGF0YWJhc2VFbmdpbmVcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpEYXRhYmFzZU5hbWVgLlxuXHQgKi9cblx0c3RhdGljIGRhdGFiYXNlTmFtZSh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczpEYXRhYmFzZU5hbWVcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpFbmRwb2ludFR5cGVgLlxuXHQgKi9cblx0c3RhdGljIGVuZHBvaW50VHlwZSh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczpFbmRwb2ludFR5cGVcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpNYW5hZ2VNYXN0ZXJVc2VyUGFzc3dvcmRgLlxuXHQgKi9cblx0c3RhdGljIG1hbmFnZU1hc3RlclVzZXJQYXNzd29yZChcblx0XHR2YWx1ZTogYm9vbGVhbixcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYm9vbGVhbj4+IHtcblx0XHRyZXR1cm4geyBCb29sOiB7IFwicmRzOk1hbmFnZU1hc3RlclVzZXJQYXNzd29yZFwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOk11bHRpQXpgLlxuXHQgKi9cblx0c3RhdGljIG11bHRpQXoodmFsdWU6IGJvb2xlYW4pOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPj4ge1xuXHRcdHJldHVybiB7IEJvb2w6IHsgXCJyZHM6TXVsdGlBelwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOlBpb3BzYC5cblx0ICovXG5cdHN0YXRpYyBwaW9wcyh2YWx1ZTogbnVtYmVyKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgbnVtYmVyPj4ge1xuXHRcdHJldHVybiB7IE51bWVyaWNFcXVhbHM6IHsgXCJyZHM6UGlvcHNcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpQdWJsaWNseUFjY2Vzc2libGVgLlxuXHQgKi9cblx0c3RhdGljIHB1YmxpY2x5QWNjZXNzaWJsZShcblx0XHR2YWx1ZTogYm9vbGVhbixcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYm9vbGVhbj4+IHtcblx0XHRyZXR1cm4geyBCb29sOiB7IFwicmRzOlB1YmxpY2x5QWNjZXNzaWJsZVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOlN0b3JhZ2VFbmNyeXB0ZWRgLlxuXHQgKi9cblx0c3RhdGljIHN0b3JhZ2VFbmNyeXB0ZWQoXG5cdFx0dmFsdWU6IGJvb2xlYW4sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+PiB7XG5cdFx0cmV0dXJuIHsgQm9vbDogeyBcInJkczpTdG9yYWdlRW5jcnlwdGVkXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6U3RvcmFnZVNpemVgLlxuXHQgKi9cblx0c3RhdGljIHN0b3JhZ2VTaXplKHZhbHVlOiBudW1iZXIpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+PiB7XG5cdFx0cmV0dXJuIHsgTnVtZXJpY0VxdWFsczogeyBcInJkczpTdG9yYWdlU2l6ZVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOlRhZ3NGcm9tUmVxdWVzdGAuXG5cdCAqL1xuXHRzdGF0aWMgdGFnc0Zyb21SZXF1ZXN0KFxuXHRcdHZhbHVlOiBib29sZWFuLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPj4ge1xuXHRcdHJldHVybiB7IEJvb2w6IHsgXCJyZHM6VGFnc0Zyb21SZXF1ZXN0XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6VGVuYW50RGF0YWJhc2VOYW1lYC5cblx0ICovXG5cdHN0YXRpYyB0ZW5hbnREYXRhYmFzZU5hbWUoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczpUZW5hbnREYXRhYmFzZU5hbWVcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpWcGNgLlxuXHQgKi9cblx0c3RhdGljIHZwYyh2YWx1ZTogYm9vbGVhbik6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+PiB7XG5cdFx0cmV0dXJuIHsgQm9vbDogeyBcInJkczpWcGNcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpjbHVzdGVyLXBnLXRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIGNsdXN0ZXJQZ1RhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczpjbHVzdGVyLXBnLXRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpjbHVzdGVyLXNuYXBzaG90LXRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIGNsdXN0ZXJTbmFwc2hvdFRhZyhcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOmNsdXN0ZXItc25hcHNob3QtdGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOmNsdXN0ZXItdGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgY2x1c3RlclRhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczpjbHVzdGVyLXRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpkYi10YWcvJHtUYWdLZXl9YC5cblx0ICovXG5cdHN0YXRpYyBkYlRhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczpkYi10YWcvJHtUYWdLZXl9XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6ZXMtdGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgZXNUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJyZHM6ZXMtdGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOm9nLXRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIG9nVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOm9nLXRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpwZy10YWcvJHtUYWdLZXl9YC5cblx0ICovXG5cdHN0YXRpYyBwZ1RhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczpwZy10YWcvJHtUYWdLZXl9XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6cmVxLXRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHJlcVRhZyh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcInJkczpyZXEtdGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOnJpLXRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHJpVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOnJpLXRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYHJkczpzZWNncnAtdGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgc2VjZ3JwVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwicmRzOnNlY2dycC10YWcvJHtUYWdLZXl9XCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGByZHM6c25hcHNob3QtdGFnLyR7VGFnS2V5fWAuXG5cdCAqL1xuXHRzdGF0aWMgc25hcHNob3RUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJyZHM6c25hcHNob3QtdGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgcmRzOnN1YmdycC10YWcvJHtUYWdLZXl9YC5cblx0ICovXG5cdHN0YXRpYyBzdWJncnBUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJyZHM6c3ViZ3JwLXRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG59XG4iXX0=
|