@cdk_utils/iam 1.17.0 → 1.18.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 +793 -561
- package/lib/generated/services/a2c.js +1 -1
- package/lib/generated/services/a4b.js +3 -3
- package/lib/generated/services/access-analyzer.js +4 -4
- package/lib/generated/services/account-access.js +4 -4
- package/lib/generated/services/account.js +4 -4
- package/lib/generated/services/acm-pca.js +4 -4
- package/lib/generated/services/acm.js +4 -4
- package/lib/generated/services/aco-automation.js +4 -4
- package/lib/generated/services/action-recommendations.js +1 -1
- package/lib/generated/services/activate.js +1 -1
- package/lib/generated/services/agent-registry.js +4 -4
- package/lib/generated/services/agentaccess-mcp.js +2 -2
- package/lib/generated/services/aidevops.js +4 -4
- package/lib/generated/services/aiops.js +4 -4
- package/lib/generated/services/airflow-serverless.js +4 -4
- package/lib/generated/services/airflow.js +4 -4
- package/lib/generated/services/amplify.js +4 -4
- package/lib/generated/services/amplifybackend.js +3 -3
- package/lib/generated/services/amplifyuibuilder.js +4 -4
- package/lib/generated/services/aoss.js +4 -4
- package/lib/generated/services/apigateway.js +4 -4
- package/lib/generated/services/app-integrations.js +4 -4
- package/lib/generated/services/appconfig.js +4 -4
- package/lib/generated/services/appfabric.js +4 -4
- package/lib/generated/services/appflow.js +4 -4
- package/lib/generated/services/application-autoscaling.js +4 -4
- package/lib/generated/services/application-signals-mcp.js +3 -3
- package/lib/generated/services/application-signals.js +4 -4
- package/lib/generated/services/application-transformation.js +1 -1
- package/lib/generated/services/applicationinsights.js +3 -3
- package/lib/generated/services/appmesh-preview.js +2 -2
- package/lib/generated/services/appmesh.js +4 -4
- package/lib/generated/services/apprunner.js +4 -4
- package/lib/generated/services/appstream.js +4 -4
- package/lib/generated/services/appstudio.js +2 -2
- package/lib/generated/services/appsync.js +4 -4
- package/lib/generated/services/apptest.js +3 -3
- package/lib/generated/services/aps.js +4 -4
- package/lib/generated/services/arc-region-switch.js +4 -4
- package/lib/generated/services/arc-zonal-shift.js +4 -4
- package/lib/generated/services/arsenal.js +1 -1
- package/lib/generated/services/artifact.js +4 -4
- package/lib/generated/services/athena.js +4 -4
- package/lib/generated/services/auditmanager.js +4 -4
- package/lib/generated/services/autoscaling-plans.js +2 -2
- package/lib/generated/services/autoscaling.js +4 -4
- package/lib/generated/services/aws-external-anthropic.js +3 -3
- package/lib/generated/services/aws-marketplace-management.js +1 -1
- package/lib/generated/services/aws-marketplace.js +4 -4
- package/lib/generated/services/aws-portal.js +1 -1
- package/lib/generated/services/awsconnector.js +1 -1
- package/lib/generated/services/b2bi.js +4 -4
- package/lib/generated/services/backup-gateway.js +4 -4
- package/lib/generated/services/backup-search.js +4 -4
- package/lib/generated/services/backup-storage.js +1 -1
- package/lib/generated/services/backup.js +4 -4
- package/lib/generated/services/batch.js +4 -4
- package/lib/generated/services/bcm-dashboards.js +4 -4
- package/lib/generated/services/bcm-data-exports.js +4 -4
- package/lib/generated/services/bcm-pricing-calculator.js +4 -4
- package/lib/generated/services/bcm-recommended-actions.js +2 -2
- package/lib/generated/services/bedrock-agentcore.d.ts +10 -0
- package/lib/generated/services/bedrock-agentcore.js +15 -5
- 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.js +4 -4
- package/lib/generated/services/dax.js +4 -4
- package/lib/generated/services/dbqms.js +1 -1
- package/lib/generated/services/deadline.js +4 -4
- package/lib/generated/services/detective.js +4 -4
- package/lib/generated/services/devicefarm.js +4 -4
- package/lib/generated/services/devops-guru.js +4 -4
- package/lib/generated/services/directconnect.js +4 -4
- package/lib/generated/services/discovery.js +3 -3
- package/lib/generated/services/dlm.js +4 -4
- package/lib/generated/services/dms.js +4 -4
- package/lib/generated/services/docdb-elastic.js +4 -4
- package/lib/generated/services/drs.js +4 -4
- package/lib/generated/services/ds-data.js +4 -4
- package/lib/generated/services/ds.js +4 -4
- package/lib/generated/services/dsql.js +4 -4
- package/lib/generated/services/dynamodb.js +4 -4
- package/lib/generated/services/ebs.js +4 -4
- package/lib/generated/services/ec2-instance-connect.js +4 -4
- package/lib/generated/services/ec2.js +4 -4
- package/lib/generated/services/ec2messages.js +2 -2
- package/lib/generated/services/ecr-public.js +4 -4
- package/lib/generated/services/ecr.js +4 -4
- package/lib/generated/services/ecs-mcp.js +1 -1
- package/lib/generated/services/ecs.js +4 -4
- package/lib/generated/services/eks-auth.js +4 -4
- package/lib/generated/services/eks-mcp.js +1 -1
- package/lib/generated/services/eks.js +4 -4
- package/lib/generated/services/elasticache.js +4 -4
- package/lib/generated/services/elasticbeanstalk.js +4 -4
- package/lib/generated/services/elasticfilesystem.js +4 -4
- package/lib/generated/services/elasticloadbalancing.js +4 -4
- package/lib/generated/services/elasticmapreduce.js +4 -4
- package/lib/generated/services/elastictranscoder.js +2 -2
- package/lib/generated/services/elemental-activations.js +1 -1
- package/lib/generated/services/elemental-appliances-software.js +2 -2
- package/lib/generated/services/elemental-inference.js +4 -4
- package/lib/generated/services/elemental-support-cases.js +3 -3
- package/lib/generated/services/elemental-support-content.js +1 -1
- package/lib/generated/services/emr-containers.js +4 -4
- package/lib/generated/services/emr-serverless.js +4 -4
- package/lib/generated/services/entityresolution.js +4 -4
- package/lib/generated/services/es.js +4 -4
- package/lib/generated/services/events.js +4 -4
- package/lib/generated/services/eventsbilltoaws.js +3 -3
- package/lib/generated/services/evidently.js +3 -3
- package/lib/generated/services/evs.d.ts +8 -0
- package/lib/generated/services/evs.js +15 -5
- 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 +6 -5
- package/lib/generated/services/honeycode.js +2 -2
- package/lib/generated/services/iam.js +4 -4
- package/lib/generated/services/identity-sync.js +2 -2
- package/lib/generated/services/identitystore-auth.js +1 -1
- package/lib/generated/services/identitystore.js +4 -4
- package/lib/generated/services/imagebuilder.js +4 -4
- package/lib/generated/services/importexport.js +2 -2
- package/lib/generated/services/inspector-scan.js +2 -2
- package/lib/generated/services/inspector.js +2 -2
- package/lib/generated/services/inspector2-telemetry.js +1 -1
- package/lib/generated/services/inspector2.js +4 -4
- package/lib/generated/services/interconnect.js +4 -4
- package/lib/generated/services/internetmonitor.js +4 -4
- package/lib/generated/services/invoicing.js +4 -4
- package/lib/generated/services/iot-device-tester.js +1 -1
- package/lib/generated/services/iot.js +4 -4
- package/lib/generated/services/iotanalytics.js +3 -3
- package/lib/generated/services/iotdeviceadvisor.js +4 -4
- package/lib/generated/services/iotevents.js +3 -3
- package/lib/generated/services/iotfleethub.js +3 -3
- package/lib/generated/services/iotfleetwise.js +4 -4
- package/lib/generated/services/iotjobsdata.js +4 -4
- package/lib/generated/services/iotmanagedintegrations.js +4 -4
- package/lib/generated/services/iotsitewise.js +4 -4
- package/lib/generated/services/iottwinmaker.js +4 -4
- package/lib/generated/services/iotwireless.js +4 -4
- package/lib/generated/services/iq-permission.js +2 -2
- package/lib/generated/services/iq.js +2 -2
- package/lib/generated/services/ivs.js +4 -4
- package/lib/generated/services/ivschat.js +4 -4
- package/lib/generated/services/kafka-cluster.js +3 -3
- package/lib/generated/services/kafka.js +4 -4
- package/lib/generated/services/kafkaconnect.js +4 -4
- package/lib/generated/services/kendra-ranking.js +4 -4
- package/lib/generated/services/kendra.js +4 -4
- package/lib/generated/services/kinesis.js +4 -4
- package/lib/generated/services/kinesisanalytics.js +4 -4
- package/lib/generated/services/kinesisvideo.js +4 -4
- package/lib/generated/services/kms.js +4 -4
- package/lib/generated/services/lakeformation.js +3 -3
- package/lib/generated/services/lambda.js +4 -4
- package/lib/generated/services/launchwizard.js +4 -4
- package/lib/generated/services/lex.js +4 -4
- package/lib/generated/services/license-manager-linux-subscriptions.js +4 -4
- package/lib/generated/services/license-manager-user-subscriptions.js +4 -4
- package/lib/generated/services/license-manager.js +4 -4
- package/lib/generated/services/lightsail.js +4 -4
- package/lib/generated/services/logs.js +4 -4
- package/lib/generated/services/lookoutequipment.js +4 -4
- package/lib/generated/services/lookoutmetrics.js +3 -3
- package/lib/generated/services/lookoutvision.js +3 -3
- package/lib/generated/services/m2.js +4 -4
- package/lib/generated/services/machinelearning.js +3 -3
- package/lib/generated/services/macie2.js +4 -4
- package/lib/generated/services/managedblockchain-query.js +2 -2
- package/lib/generated/services/managedblockchain.js +4 -4
- package/lib/generated/services/mapcredits.js +2 -2
- package/lib/generated/services/marketplacecommerceanalytics.js +2 -2
- package/lib/generated/services/mechanicalturk.js +2 -2
- package/lib/generated/services/mediaconnect.js +4 -4
- package/lib/generated/services/mediaconvert.js +4 -4
- package/lib/generated/services/mediaimport.js +1 -1
- package/lib/generated/services/medialive.js +4 -4
- package/lib/generated/services/mediapackage-vod.js +4 -4
- package/lib/generated/services/mediapackage.js +4 -4
- package/lib/generated/services/mediapackagev2.js +4 -4
- package/lib/generated/services/mediastore.js +4 -4
- package/lib/generated/services/mediatailor.js +4 -4
- package/lib/generated/services/medical-imaging.js +4 -4
- package/lib/generated/services/memorydb.js +4 -4
- package/lib/generated/services/mgh.js +4 -4
- package/lib/generated/services/mgn.js +4 -4
- package/lib/generated/services/migrationhub-orchestrator.js +4 -4
- package/lib/generated/services/migrationhub-strategy.js +2 -2
- package/lib/generated/services/mobileanalytics.js +1 -1
- package/lib/generated/services/mobiletargeting.js +4 -4
- package/lib/generated/services/monitron.js +3 -3
- package/lib/generated/services/mpa.js +4 -4
- package/lib/generated/services/mq.js +4 -4
- package/lib/generated/services/neptune-db.js +4 -4
- package/lib/generated/services/neptune-graph.js +4 -4
- package/lib/generated/services/network-firewall.js +4 -4
- package/lib/generated/services/network-security-director.js +1 -1
- package/lib/generated/services/networkflowmonitor.js +4 -4
- package/lib/generated/services/networkmanager-chat.js +1 -1
- package/lib/generated/services/networkmanager.js +4 -4
- package/lib/generated/services/networkmonitor.js +4 -4
- package/lib/generated/services/nimble.js +3 -3
- package/lib/generated/services/notifications-contacts.js +4 -4
- package/lib/generated/services/notifications.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 +4 -4
- package/lib/generated/services/redshift-data.js +4 -4
- package/lib/generated/services/redshift-serverless.js +4 -4
- package/lib/generated/services/redshift.js +4 -4
- package/lib/generated/services/refactor-spaces.js +4 -4
- package/lib/generated/services/rekognition.js +4 -4
- package/lib/generated/services/repostspace.js +4 -4
- package/lib/generated/services/researchstudio.js +1 -1
- package/lib/generated/services/resiliencehub.js +9 -6
- package/lib/generated/services/resource-explorer-2.js +4 -4
- package/lib/generated/services/resource-explorer.js +1 -1
- package/lib/generated/services/resource-groups.js +4 -4
- package/lib/generated/services/rhelkb.js +1 -1
- package/lib/generated/services/robomaker.js +3 -3
- package/lib/generated/services/rolesanywhere.js +4 -4
- package/lib/generated/services/route53-recovery-cluster.js +4 -4
- package/lib/generated/services/route53-recovery-control-config.js +4 -4
- package/lib/generated/services/route53-recovery-readiness.js +4 -4
- package/lib/generated/services/route53.js +4 -4
- package/lib/generated/services/route53domains.js +2 -2
- package/lib/generated/services/route53globalresolver.js +4 -4
- package/lib/generated/services/route53profiles.js +4 -4
- package/lib/generated/services/route53resolver.js +4 -4
- package/lib/generated/services/rtbfabric.js +4 -4
- package/lib/generated/services/rum.js +4 -4
- package/lib/generated/services/s3-object-lambda.js +3 -3
- package/lib/generated/services/s3-outposts.js +4 -4
- package/lib/generated/services/s3.js +4 -4
- package/lib/generated/services/s3express.js +3 -3
- package/lib/generated/services/s3files.js +4 -4
- package/lib/generated/services/s3tables.js +4 -4
- package/lib/generated/services/s3vectors.js +4 -4
- package/lib/generated/services/sagemaker-data-science-assistant.js +1 -1
- package/lib/generated/services/sagemaker-geospatial.js +4 -4
- package/lib/generated/services/sagemaker-mlflow.js +3 -3
- package/lib/generated/services/sagemaker-unified-studio-mcp.js +1 -1
- package/lib/generated/services/sagemaker.js +4 -4
- package/lib/generated/services/savingsplans.js +4 -4
- package/lib/generated/services/scheduler.js +4 -4
- package/lib/generated/services/schemas.js +4 -4
- package/lib/generated/services/scn.js +4 -4
- package/lib/generated/services/sdb.js +3 -3
- package/lib/generated/services/secretsmanager.js +4 -4
- package/lib/generated/services/security-ir.js +4 -4
- package/lib/generated/services/securityagent.js +4 -4
- package/lib/generated/services/securityhub.js +4 -4
- package/lib/generated/services/securitylake.js +4 -4
- package/lib/generated/services/serverlessrepo.js +4 -4
- package/lib/generated/services/servicecatalog.js +4 -4
- package/lib/generated/services/servicediscovery.js +4 -4
- package/lib/generated/services/serviceextract.js +1 -1
- package/lib/generated/services/servicequotas.js +4 -4
- package/lib/generated/services/ses.js +4 -4
- package/lib/generated/services/shield.js +4 -4
- package/lib/generated/services/signer.js +4 -4
- package/lib/generated/services/signin.js +4 -4
- package/lib/generated/services/simspaceweaver.js +3 -3
- package/lib/generated/services/sms-voice.js +4 -4
- package/lib/generated/services/sms.js +1 -1
- package/lib/generated/services/snow-device-management.js +4 -4
- package/lib/generated/services/snowball.js +2 -2
- package/lib/generated/services/sns.js +4 -4
- package/lib/generated/services/social-messaging.d.ts +4 -0
- package/lib/generated/services/social-messaging.js +9 -5
- package/lib/generated/services/sqlworkbench.js +3 -3
- package/lib/generated/services/sqs.js +4 -4
- package/lib/generated/services/ssm-contacts.js +4 -4
- package/lib/generated/services/ssm-guiconnect.js +2 -2
- package/lib/generated/services/ssm-incidents.js +4 -4
- package/lib/generated/services/ssm-quicksetup.js +4 -4
- package/lib/generated/services/ssm-sap.js +4 -4
- package/lib/generated/services/ssm.js +4 -4
- package/lib/generated/services/ssmmessages.js +2 -2
- package/lib/generated/services/sso-directory.js +1 -1
- package/lib/generated/services/sso-oauth.js +3 -3
- package/lib/generated/services/sso.js +4 -4
- package/lib/generated/services/states.js +4 -4
- package/lib/generated/services/storagegateway.js +4 -4
- package/lib/generated/services/sts.js +4 -4
- package/lib/generated/services/support-console.js +1 -1
- package/lib/generated/services/support.js +2 -2
- package/lib/generated/services/supportapp.js +2 -2
- package/lib/generated/services/supportauthz.js +4 -4
- package/lib/generated/services/supportplans.js +1 -1
- package/lib/generated/services/sustainability.js +2 -2
- package/lib/generated/services/swf.js +4 -4
- package/lib/generated/services/synthetics.js +4 -4
- package/lib/generated/services/tag.js +2 -2
- package/lib/generated/services/tax.js +2 -2
- package/lib/generated/services/textract.js +4 -4
- package/lib/generated/services/thinclient.js +4 -4
- package/lib/generated/services/timestream-influxdb.js +4 -4
- package/lib/generated/services/timestream.js +4 -4
- package/lib/generated/services/tiros.js +1 -1
- package/lib/generated/services/tnb.js +4 -4
- package/lib/generated/services/transcribe.js +4 -4
- package/lib/generated/services/transfer.js +4 -4
- package/lib/generated/services/transform-custom.js +3 -3
- package/lib/generated/services/transform.js +3 -3
- package/lib/generated/services/translate.js +4 -4
- package/lib/generated/services/trustedadvisor.js +3 -3
- package/lib/generated/services/ts.js +3 -3
- package/lib/generated/services/user-subscriptions.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 BedrockAgentcoreActions {
|
|
|
16
16
|
}
|
|
17
17
|
exports.BedrockAgentcoreActions = BedrockAgentcoreActions;
|
|
18
18
|
_a = JSII_RTTI_SYMBOL_1;
|
|
19
|
-
BedrockAgentcoreActions[_a] = { fqn: "@cdk_utils/iam.bedrock_agentcore.BedrockAgentcoreActions", version: "1.
|
|
19
|
+
BedrockAgentcoreActions[_a] = { fqn: "@cdk_utils/iam.bedrock_agentcore.BedrockAgentcoreActions", version: "1.18.0" };
|
|
20
20
|
/** The IAM service prefix. */
|
|
21
21
|
BedrockAgentcoreActions.SERVICE_PREFIX = "bedrock-agentcore";
|
|
22
22
|
/** [Write] bedrock-agentcore:AddDatasetExamples */
|
|
@@ -1727,7 +1727,7 @@ class BedrockAgentcoreResources {
|
|
|
1727
1727
|
}
|
|
1728
1728
|
exports.BedrockAgentcoreResources = BedrockAgentcoreResources;
|
|
1729
1729
|
_b = JSII_RTTI_SYMBOL_1;
|
|
1730
|
-
BedrockAgentcoreResources[_b] = { fqn: "@cdk_utils/iam.bedrock_agentcore.BedrockAgentcoreResources", version: "1.
|
|
1730
|
+
BedrockAgentcoreResources[_b] = { fqn: "@cdk_utils/iam.bedrock_agentcore.BedrockAgentcoreResources", version: "1.18.0" };
|
|
1731
1731
|
/**
|
|
1732
1732
|
* API operation to required IAM actions mapping for bedrock-agentcore.
|
|
1733
1733
|
*/
|
|
@@ -1735,7 +1735,7 @@ class BedrockAgentcoreOperations {
|
|
|
1735
1735
|
}
|
|
1736
1736
|
exports.BedrockAgentcoreOperations = BedrockAgentcoreOperations;
|
|
1737
1737
|
_c = JSII_RTTI_SYMBOL_1;
|
|
1738
|
-
BedrockAgentcoreOperations[_c] = { fqn: "@cdk_utils/iam.bedrock_agentcore.BedrockAgentcoreOperations", version: "1.
|
|
1738
|
+
BedrockAgentcoreOperations[_c] = { fqn: "@cdk_utils/iam.bedrock_agentcore.BedrockAgentcoreOperations", version: "1.18.0" };
|
|
1739
1739
|
/** IAM actions required for the AddDatasetExamples API call. */
|
|
1740
1740
|
BedrockAgentcoreOperations.AddDatasetExamples = [
|
|
1741
1741
|
"bedrock-agentcore:AddDatasetExamples",
|
|
@@ -1811,6 +1811,8 @@ BedrockAgentcoreOperations.CreateConfigurationBundle = [
|
|
|
1811
1811
|
"bedrock-agentcore:CreateConfigurationBundle",
|
|
1812
1812
|
"bedrock-agentcore:TagResource",
|
|
1813
1813
|
];
|
|
1814
|
+
/** IAM actions required for the CreateConsentPortal API call. */
|
|
1815
|
+
BedrockAgentcoreOperations.CreateConsentPortal = [];
|
|
1814
1816
|
/** IAM actions required for the CreateDataset API call. */
|
|
1815
1817
|
BedrockAgentcoreOperations.CreateDataset = [
|
|
1816
1818
|
"bedrock-agentcore:CreateDataset",
|
|
@@ -1965,6 +1967,8 @@ BedrockAgentcoreOperations.DeleteCodeInterpreter = [
|
|
|
1965
1967
|
BedrockAgentcoreOperations.DeleteConfigurationBundle = [
|
|
1966
1968
|
"bedrock-agentcore:DeleteConfigurationBundle",
|
|
1967
1969
|
];
|
|
1970
|
+
/** IAM actions required for the DeleteConsentPortal API call. */
|
|
1971
|
+
BedrockAgentcoreOperations.DeleteConsentPortal = [];
|
|
1968
1972
|
/** IAM actions required for the DeleteDataset API call. */
|
|
1969
1973
|
BedrockAgentcoreOperations.DeleteDataset = ["bedrock-agentcore:DeleteDataset"];
|
|
1970
1974
|
/** IAM actions required for the DeleteDatasetExamples API call. */
|
|
@@ -2112,6 +2116,8 @@ BedrockAgentcoreOperations.opGetConfigurationBundle = [
|
|
|
2112
2116
|
BedrockAgentcoreOperations.opGetConfigurationBundleVersion = [
|
|
2113
2117
|
"bedrock-agentcore:GetConfigurationBundleVersion",
|
|
2114
2118
|
];
|
|
2119
|
+
/** IAM actions required for the GetConsentPortal API call. */
|
|
2120
|
+
BedrockAgentcoreOperations.opGetConsentPortal = [];
|
|
2115
2121
|
/** IAM actions required for the GetDataset API call. */
|
|
2116
2122
|
BedrockAgentcoreOperations.opGetDataset = ["bedrock-agentcore:GetDataset"];
|
|
2117
2123
|
/** IAM actions required for the GetEvaluator API call. */
|
|
@@ -2325,6 +2331,8 @@ BedrockAgentcoreOperations.ListConfigurationBundleVersions = [
|
|
|
2325
2331
|
BedrockAgentcoreOperations.ListConfigurationBundles = [
|
|
2326
2332
|
"bedrock-agentcore:ListConfigurationBundles",
|
|
2327
2333
|
];
|
|
2334
|
+
/** IAM actions required for the ListConsentPortals API call. */
|
|
2335
|
+
BedrockAgentcoreOperations.ListConsentPortals = [];
|
|
2328
2336
|
/** IAM actions required for the ListDatasetExamples API call. */
|
|
2329
2337
|
BedrockAgentcoreOperations.ListDatasetExamples = [
|
|
2330
2338
|
"bedrock-agentcore:ListDatasetExamples",
|
|
@@ -2558,6 +2566,8 @@ BedrockAgentcoreOperations.UpdateCapacityProvider = [
|
|
|
2558
2566
|
BedrockAgentcoreOperations.UpdateConfigurationBundle = [
|
|
2559
2567
|
"bedrock-agentcore:UpdateConfigurationBundle",
|
|
2560
2568
|
];
|
|
2569
|
+
/** IAM actions required for the UpdateConsentPortal API call. */
|
|
2570
|
+
BedrockAgentcoreOperations.UpdateConsentPortal = [];
|
|
2561
2571
|
/** IAM actions required for the UpdateDataset API call. */
|
|
2562
2572
|
BedrockAgentcoreOperations.UpdateDataset = ["bedrock-agentcore:UpdateDataset"];
|
|
2563
2573
|
/** IAM actions required for the UpdateDatasetExamples API call. */
|
|
@@ -2903,7 +2913,7 @@ class BedrockAgentcoreConditions {
|
|
|
2903
2913
|
}
|
|
2904
2914
|
exports.BedrockAgentcoreConditions = BedrockAgentcoreConditions;
|
|
2905
2915
|
_d = JSII_RTTI_SYMBOL_1;
|
|
2906
|
-
BedrockAgentcoreConditions[_d] = { fqn: "@cdk_utils/iam.bedrock_agentcore.BedrockAgentcoreConditions", version: "1.
|
|
2916
|
+
BedrockAgentcoreConditions[_d] = { fqn: "@cdk_utils/iam.bedrock_agentcore.BedrockAgentcoreConditions", version: "1.18.0" };
|
|
2907
2917
|
/** Condition keys applicable to the BatchCreateMemoryRecords action. */
|
|
2908
2918
|
BedrockAgentcoreConditions.BatchCreateMemoryRecordsConditionKeys = [
|
|
2909
2919
|
"bedrock-agentcore:namespace",
|
|
@@ -3166,4 +3176,4 @@ BedrockAgentcoreConditions.STRATEGY_ID = "bedrock-agentcore:strategyId";
|
|
|
3166
3176
|
BedrockAgentcoreConditions.SUBNETS = "bedrock-agentcore:subnets";
|
|
3167
3177
|
/** Condition key: bedrock-agentcore:userid (String) */
|
|
3168
3178
|
BedrockAgentcoreConditions.USERID = "bedrock-agentcore:userid";
|
|
3169
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVkcm9jay1hZ2VudGNvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZ2VuZXJhdGVkL3NlcnZpY2VzL2JlZHJvY2stYWdlbnRjb3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0ZBQWdGO0FBQ2hGLDZDQUE2QztBQUM3QywwREFBMEQ7QUFDMUQsd0RBQXdEO0FBQ3hELG9EQUFvRDtBQUNwRCxnRkFBZ0Y7QUFFaEY7O0dBRUc7QUFDSCxNQUFhLHVCQUF1Qjs7QUFBcEMsMERBZzVCQzs7O0FBLzRCQSw4QkFBOEI7QUFDZCxzQ0FBYyxHQUFHLG1CQUFtQixDQUFDO0FBRXJELG1EQUFtRDtBQUNuQywwQ0FBa0IsR0FBRyxzQ0FBc0MsQ0FBQztBQUM1RSxpRkFBaUY7QUFDakUseURBQWlDLEdBQ2hELHFEQUFxRCxDQUFDO0FBQ3ZELCtEQUErRDtBQUMvQyx1Q0FBZSxHQUFHLG1DQUFtQyxDQUFDO0FBQ3RFLHlEQUF5RDtBQUN6QyxnREFBd0IsR0FDdkMsNENBQTRDLENBQUM7QUFDOUMseURBQXlEO0FBQ3pDLGdEQUF3QixHQUN2Qyw0Q0FBNEMsQ0FBQztBQUM5QywwREFBMEQ7QUFDMUMsaURBQXlCLEdBQ3hDLDZDQUE2QyxDQUFDO0FBQy9DLHlEQUF5RDtBQUN6QyxnREFBd0IsR0FDdkMsNENBQTRDLENBQUM7QUFDOUMseURBQXlEO0FBQ3pDLGlEQUF5QixHQUN4Qyw2Q0FBNkMsQ0FBQztBQUMvQyw4REFBOEQ7QUFDOUMsc0RBQThCLEdBQzdDLGtEQUFrRCxDQUFDO0FBQ3BELDREQUE0RDtBQUM1QyxvREFBNEIsR0FDM0MsZ0RBQWdELENBQUM7QUFDbEQsNkNBQTZDO0FBQzdCLG9DQUFZLEdBQUcsZ0NBQWdDLENBQUM7QUFDaEUsbURBQW1EO0FBQ25DLDBDQUFrQixHQUFHLHNDQUFzQyxDQUFDO0FBQzVFLDJEQUEyRDtBQUMzQyxrREFBMEIsR0FDekMsOENBQThDLENBQUM7QUFDaEQsK0RBQStEO0FB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REFBMEQ7QUFDMUMsb0NBQVMsR0FBRyw2QkFBNkIsQ0FBQztBQUMxRCxpRUFBaUU7QUFDakQsNkNBQWtCLEdBQUcsb0NBQW9DLENBQUM7QUFDMUUsc0VBQXNFO0FBQ3RELDBDQUFlLEdBQUcsa0NBQWtDLENBQUM7QUFDckUsMERBQTBEO0FBQzFDLHFDQUFVLEdBQUcsNkJBQTZCLENBQUM7QUFDM0QsMkRBQTJEO0FBQzNDLHNDQUFXLEdBQUcsOEJBQThCLENBQUM7QUFDN0QsK0RBQStEO0FBQy9DLGtDQUFPLEdBQUcsMkJBQTJCLENBQUM7QUFDdEQsdURBQXVEO0FBQ3ZDLGlDQUFNLEdBQUcsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQVVUTy1HRU5FUkFURUQgRklMRSDigJQgRE8gTk9UIEVESVQgTUFOVUFMTFlcbi8vIEdlbmVyYXRlZCBmcm9tIEFXUyBTZXJ2aWNlIEF1dGhvcml6YXRpb24gUmVmZXJlbmNlIGRhdGFcbi8vIFNvdXJjZTogZGF0YS9zZXJ2aWNlLXJlZmVyZW5jZS9iZWRyb2NrLWFnZW50Y29yZS5qc29uXG4vLyBSdW4gYG5weCBwcm9qZW4gZ2VuZXJhdGUtY29uc3RhbnRzYCB0byByZWdlbmVyYXRlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIElBTSBhY3Rpb24gY29uc3RhbnRzIGZvciB0aGUgYmVkcm9jay1hZ2VudGNvcmUgc2VydmljZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zIHtcblx0LyoqIFRoZSBJQU0gc2VydmljZSBwcmVmaXguICovXG5cdHN0YXRpYyByZWFkb25seSBTRVJWSUNFX1BSRUZJWCA9IFwiYmVkcm9jay1hZ2VudGNvcmVcIjtcblxuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpBZGREYXRhc2V0RXhhbXBsZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFkZERhdGFzZXRFeGFtcGxlcyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6QWRkRGF0YXNldEV4YW1wbGVzXCI7XG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIGJlZHJvY2stYWdlbnRjb3JlOkFsbG93VmVuZGVkTG9nRGVsaXZlcnlGb3JSZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsb3dWZW5kZWRMb2dEZWxpdmVyeUZvclJlc291cmNlID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkFsbG93VmVuZGVkTG9nRGVsaXZlcnlGb3JSZXNvdXJjZVwiO1xuXHQvKiogW1Blcm1pc3Npb25NYW5hZ2VtZW50XSBiZWRyb2NrLWFnZW50Y29yZTpBdXRob3JpemVBY3Rpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IEF1dGhvcml6ZUFjdGlvbiA9IFwiYmVkcm9jay1hZ2VudGNvcmU6QXV0aG9yaXplQWN0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkJhdGNoQ3JlYXRlTWVtb3J5UmVjb3JkcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hDcmVhdGVNZW1vcnlSZWNvcmRzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkJhdGNoQ3JlYXRlTWVtb3J5UmVjb3Jkc1wiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpCYXRjaERlbGV0ZU1lbW9yeVJlY29yZHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoRGVsZXRlTWVtb3J5UmVjb3JkcyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpCYXRjaERlbGV0ZU1lbW9yeVJlY29yZHNcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6QmF0Y2hQdXRHYXRld2F5UmF0ZUxpbWl0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hQdXRHYXRld2F5UmF0ZUxpbWl0cyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpCYXRjaFB1dEdhdGV3YXlSYXRlTGltaXRzXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkJhdGNoVXBkYXRlTWVtb3J5UmVjb3JkcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hVcGRhdGVNZW1vcnlSZWNvcmRzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkJhdGNoVXBkYXRlTWVtb3J5UmVjb3Jkc1wiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkNvbXBsZXRlUmVzb3VyY2VUb2tlbkF1dGggKi9cblx0c3RhdGljIHJlYWRvbmx5IENvbXBsZXRlUmVzb3VyY2VUb2tlbkF1dGggPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q29tcGxldGVSZXNvdXJjZVRva2VuQXV0aFwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkNvbm5lY3RCcm93c2VyQXV0b21hdGlvblN0cmVhbSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ29ubmVjdEJyb3dzZXJBdXRvbWF0aW9uU3RyZWFtID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNvbm5lY3RCcm93c2VyQXV0b21hdGlvblN0cmVhbVwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkNvbm5lY3RCcm93c2VyTGl2ZVZpZXdTdHJlYW0gKi9cblx0c3RhdGljIHJlYWRvbmx5IENvbm5lY3RCcm93c2VyTGl2ZVZpZXdTdHJlYW0gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q29ubmVjdEJyb3dzZXJMaXZlVmlld1N0cmVhbVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVBQlRlc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFCVGVzdCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQUJUZXN0XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUFnZW50UnVudGltZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQWdlbnRSdW50aW1lID0gXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVBZ2VudFJ1bnRpbWVcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQWdlbnRSdW50aW1lRW5kcG9pbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFnZW50UnVudGltZUVuZHBvaW50ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUFnZW50UnVudGltZUVuZHBvaW50XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVCcm93c2VyICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVCcm93c2VyID0gXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVCcm93c2VyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUJyb3dzZXJQcm9maWxlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVCcm93c2VyUHJvZmlsZSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVCcm93c2VyUHJvZmlsZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVDYXBhY2l0eVByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDYXBhY2l0eVByb3ZpZGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUNhcGFjaXR5UHJvdmlkZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQ29kZUludGVycHJldGVyICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb2RlSW50ZXJwcmV0ZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQ29kZUludGVycHJldGVyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUNvbmZpZ3VyYXRpb25CdW5kbGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNvbmZpZ3VyYXRpb25CdW5kbGUgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQ29uZmlndXJhdGlvbkJ1bmRsZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVEYXRhc2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEYXRhc2V0ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVEYXRhc2V0XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZURhdGFzZXRWZXJzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEYXRhc2V0VmVyc2lvbiA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVEYXRhc2V0VmVyc2lvblwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVFdmFsdWF0b3IgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUV2YWx1YXRvciA9IFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlRXZhbHVhdG9yXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUV2ZW50ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFdmVudCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlRXZlbnRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlR2F0ZXdheSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlR2F0ZXdheSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlR2F0ZXdheVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVHYXRld2F5UmF0ZUxpbWl0ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVHYXRld2F5UmF0ZUxpbWl0ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUdhdGV3YXlSYXRlTGltaXRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlR2F0ZXdheVJ1bGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdhdGV3YXlSdWxlID0gXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVHYXRld2F5UnVsZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVHYXRld2F5VGFyZ2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVHYXRld2F5VGFyZ2V0ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVHYXRld2F5VGFyZ2V0XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUhhcm5lc3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUhhcm5lc3MgPSBcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUhhcm5lc3NcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlSGFybmVzc0VuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVIYXJuZXNzRW5kcG9pbnQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlSGFybmVzc0VuZHBvaW50XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZU1lbW9yeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlTWVtb3J5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVNZW1vcnlcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZU9ubGluZUV2YWx1YXRpb25Db25maWcgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZU9ubGluZUV2YWx1YXRpb25Db25maWcgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZ1wiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQYXltZW50Q29ubmVjdG9yICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVQYXltZW50Q29ubmVjdG9yID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBheW1lbnRDb25uZWN0b3JcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBheW1lbnRJbnN0cnVtZW50ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVQYXltZW50SW5zdHJ1bWVudCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQYXltZW50SW5zdHJ1bWVudFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQYXltZW50TWFuYWdlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUGF5bWVudE1hbmFnZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUGF5bWVudE1hbmFnZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUGF5bWVudFNlc3Npb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBheW1lbnRTZXNzaW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBheW1lbnRTZXNzaW9uXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUG9saWN5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUG9saWN5RW5naW5lICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVQb2xpY3lFbmdpbmUgPSBcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBvbGljeUVuZ2luZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVSZWdpc3RyeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVnaXN0cnkgPSBcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVJlZ2lzdHJ5XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVJlZ2lzdHJ5UmVjb3JkICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZWdpc3RyeVJlY29yZCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVSZWdpc3RyeVJlY29yZFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVXb3JrbG9hZElkZW50aXR5ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVXb3JrbG9hZElkZW50aXR5ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVdvcmtsb2FkSWRlbnRpdHlcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQUJUZXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBQlRlc3QgPSBcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUFCVGVzdFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVBZ2VudFJ1bnRpbWUgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFnZW50UnVudGltZSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQWdlbnRSdW50aW1lXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUFnZW50UnVudGltZUVuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBZ2VudFJ1bnRpbWVFbmRwb2ludCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVBZ2VudFJ1bnRpbWVFbmRwb2ludFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQmF0Y2hFdmFsdWF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVCYXRjaEV2YWx1YXRpb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQmF0Y2hFdmFsdWF0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUJyb3dzZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUJyb3dzZXIgPSBcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUJyb3dzZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQnJvd3NlclByb2ZpbGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUJyb3dzZXJQcm9maWxlID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUJyb3dzZXJQcm9maWxlXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUNhcGFjaXR5UHJvdmlkZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNhcGFjaXR5UHJvdmlkZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQ2FwYWNpdHlQcm92aWRlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVDYXBhY2l0eVByb3ZpZGVyU2Vzc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ2FwYWNpdHlQcm92aWRlclNlc3Npb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQ2FwYWNpdHlQcm92aWRlclNlc3Npb25cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQ29kZUludGVycHJldGVyICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb2RlSW50ZXJwcmV0ZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQ29kZUludGVycHJldGVyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUNvbmZpZ3VyYXRpb25CdW5kbGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvbmZpZ3VyYXRpb25CdW5kbGUgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQ29uZmlndXJhdGlvbkJ1bmRsZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVEYXRhc2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVEYXRhc2V0ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVEYXRhc2V0XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZURhdGFzZXRFeGFtcGxlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRGF0YXNldEV4YW1wbGVzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZURhdGFzZXRFeGFtcGxlc1wiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVFdmFsdWF0b3IgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUV2YWx1YXRvciA9IFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlRXZhbHVhdG9yXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUV2ZW50ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFdmVudCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlRXZlbnRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlR2F0ZXdheSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlR2F0ZXdheSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlR2F0ZXdheVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVHYXRld2F5UmF0ZUxpbWl0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHYXRld2F5UmF0ZUxpbWl0ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUdhdGV3YXlSYXRlTGltaXRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlR2F0ZXdheVJ1bGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUdhdGV3YXlSdWxlID0gXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVHYXRld2F5UnVsZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVHYXRld2F5VGFyZ2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHYXRld2F5VGFyZ2V0ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVHYXRld2F5VGFyZ2V0XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUhhcm5lc3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUhhcm5lc3MgPSBcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUhhcm5lc3NcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlSGFybmVzc0VuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVIYXJuZXNzRW5kcG9pbnQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlSGFybmVzc0VuZHBvaW50XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZU1lbW9yeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlTWVtb3J5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVNZW1vcnlcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlTWVtb3J5UmVjb3JkICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVNZW1vcnlSZWNvcmQgPSBcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZU1lbW9yeVJlY29yZFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBheW1lbnRDb25uZWN0b3IgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVBheW1lbnRDb25uZWN0b3IgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUGF5bWVudENvbm5lY3RvclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUGF5bWVudEluc3RydW1lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVBheW1lbnRJbnN0cnVtZW50ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBheW1lbnRJbnN0cnVtZW50XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBheW1lbnRNYW5hZ2VyICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQYXltZW50TWFuYWdlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVQYXltZW50TWFuYWdlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVQYXltZW50U2Vzc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUGF5bWVudFNlc3Npb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUGF5bWVudFNlc3Npb25cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQb2xpY3kgPSBcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBvbGljeVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVQb2xpY3lFbmdpbmUgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVBvbGljeUVuZ2luZSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUG9saWN5RW5naW5lXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVJlY29tbWVuZGF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWNvbW1lbmRhdGlvbiA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVSZWNvbW1lbmRhdGlvblwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVSZWdpc3RyeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVnaXN0cnkgPSBcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVJlZ2lzdHJ5XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVJlZ2lzdHJ5UmVjb3JkICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWdpc3RyeVJlY29yZCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVSZWdpc3RyeVJlY29yZFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVSZXNvdXJjZVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVzb3VyY2VQb2xpY3kgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUmVzb3VyY2VQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlV29ya2xvYWRJZGVudGl0eSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlV29ya2xvYWRJZGVudGl0eSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVXb3JrbG9hZElkZW50aXR5XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkV2YWx1YXRlICovXG5cdHN0YXRpYyByZWFkb25seSBFdmFsdWF0ZSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6RXZhbHVhdGVcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6R2F0ZXdheUFzc29jaWF0ZVdlYkFDTCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgR2F0ZXdheUFzc29jaWF0ZVdlYkFDTCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHYXRld2F5QXNzb2NpYXRlV2ViQUNMXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkdhdGV3YXlEaXNhc3NvY2lhdGVXZWJBQ0wgKi9cblx0c3RhdGljIHJlYWRvbmx5IEdhdGV3YXlEaXNhc3NvY2lhdGVXZWJBQ0wgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2F0ZXdheURpc2Fzc29jaWF0ZVdlYkFDTFwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdhdGV3YXlHZXRXZWJBQ0xGb3JSZXNvdXJjZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgR2F0ZXdheUdldFdlYkFDTEZvclJlc291cmNlID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdhdGV3YXlHZXRXZWJBQ0xGb3JSZXNvdXJjZVwiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkdhdGV3YXlMaXN0UmVzb3VyY2VzRm9yV2ViQUNMICovXG5cdHN0YXRpYyByZWFkb25seSBHYXRld2F5TGlzdFJlc291cmNlc0ZvcldlYkFDTCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHYXRld2F5TGlzdFJlc291cmNlc0ZvcldlYkFDTFwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldEFCVGVzdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QUJUZXN0ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRBQlRlc3RcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRBZ2VudENhcmQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEFnZW50Q2FyZCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0QWdlbnRDYXJkXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0QWdlbnRSdW50aW1lICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBZ2VudFJ1bnRpbWUgPSBcImJlZHJvY2stYWdlbnRjb3JlOkdldEFnZW50UnVudGltZVwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldEFnZW50UnVudGltZUVuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBZ2VudFJ1bnRpbWVFbmRwb2ludCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRBZ2VudFJ1bnRpbWVFbmRwb2ludFwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldEFwaUtleUNyZWRlbnRpYWxQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldEFwaUtleUNyZWRlbnRpYWxQcm92aWRlclwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldEJhdGNoRXZhbHVhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QmF0Y2hFdmFsdWF0aW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldEJhdGNoRXZhbHVhdGlvblwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldEJyb3dzZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEJyb3dzZXIgPSBcImJlZHJvY2stYWdlbnRjb3JlOkdldEJyb3dzZXJcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRCcm93c2VyUHJvZmlsZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QnJvd3NlclByb2ZpbGUgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0QnJvd3NlclByb2ZpbGVcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRCcm93c2VyU2Vzc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QnJvd3NlclNlc3Npb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0QnJvd3NlclNlc3Npb25cIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRDYXBhY2l0eVByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRDYXBhY2l0eVByb3ZpZGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldENhcGFjaXR5UHJvdmlkZXJcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRDb2RlSW50ZXJwcmV0ZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldENvZGVJbnRlcnByZXRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRDb2RlSW50ZXJwcmV0ZXJcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldENvZGVJbnRlcnByZXRlclNlc3Npb25cIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRDb25maWd1cmF0aW9uQnVuZGxlICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRDb25maWd1cmF0aW9uQnVuZGxlID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldENvbmZpZ3VyYXRpb25CdW5kbGVcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRDb25maWd1cmF0aW9uQnVuZGxlVmVyc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0Q29uZmlndXJhdGlvbkJ1bmRsZVZlcnNpb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0Q29uZmlndXJhdGlvbkJ1bmRsZVZlcnNpb25cIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXREYXRhc2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXREYXRhc2V0ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXREYXRhc2V0XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0RXZhbHVhdG9yICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRFdmFsdWF0b3IgPSBcImJlZHJvY2stYWdlbnRjb3JlOkdldEV2YWx1YXRvclwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldEV2ZW50ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRFdmVudCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0RXZlbnRcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRHYXRld2F5ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRHYXRld2F5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRHYXRld2F5XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0R2F0ZXdheVJhdGVMaW1pdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0R2F0ZXdheVJhdGVMaW1pdCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRHYXRld2F5UmF0ZUxpbWl0XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0R2F0ZXdheVJ1bGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEdhdGV3YXlSdWxlID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRHYXRld2F5UnVsZVwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldEdhdGV3YXlUYXJnZXQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEdhdGV3YXlUYXJnZXQgPSBcImJlZHJvY2stYWdlbnRjb3JlOkdldEdhdGV3YXlUYXJnZXRcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRIYXJuZXNzICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRIYXJuZXNzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRIYXJuZXNzXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0SGFybmVzc0VuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRIYXJuZXNzRW5kcG9pbnQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0SGFybmVzc0VuZHBvaW50XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0TWVtb3J5ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRNZW1vcnkgPSBcImJlZHJvY2stYWdlbnRjb3JlOkdldE1lbW9yeVwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldE1lbW9yeVJlY29yZCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0TWVtb3J5UmVjb3JkID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRNZW1vcnlSZWNvcmRcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldE9hdXRoMkNyZWRlbnRpYWxQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXJcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRPbmxpbmVFdmFsdWF0aW9uQ29uZmlnICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRPbmxpbmVFdmFsdWF0aW9uQ29uZmlnID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldE9ubGluZUV2YWx1YXRpb25Db25maWdcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50Q29ubmVjdG9yICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRQYXltZW50Q29ubmVjdG9yID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBheW1lbnRDb25uZWN0b3JcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXJcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50SW5zdHJ1bWVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UGF5bWVudEluc3RydW1lbnQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0UGF5bWVudEluc3RydW1lbnRcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50SW5zdHJ1bWVudEJhbGFuY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFBheW1lbnRJbnN0cnVtZW50QmFsYW5jZSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50SW5zdHJ1bWVudEJhbGFuY2VcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50TWFuYWdlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UGF5bWVudE1hbmFnZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0UGF5bWVudE1hbmFnZXJcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50U2Vzc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UGF5bWVudFNlc3Npb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0UGF5bWVudFNlc3Npb25cIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFBvbGljeSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0UG9saWN5XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UG9saWN5RW5naW5lICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRQb2xpY3lFbmdpbmUgPSBcImJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeUVuZ2luZVwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeUVuZ2luZVN1bW1hcnkgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFBvbGljeUVuZ2luZVN1bW1hcnkgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0UG9saWN5RW5naW5lU3VtbWFyeVwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeUdlbmVyYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFBvbGljeUdlbmVyYXRpb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0UG9saWN5R2VuZXJhdGlvblwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeUdlbmVyYXRpb25TdW1tYXJ5ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRQb2xpY3lHZW5lcmF0aW9uU3VtbWFyeSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lHZW5lcmF0aW9uU3VtbWFyeVwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeVN1bW1hcnkgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFBvbGljeVN1bW1hcnkgPSBcImJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeVN1bW1hcnlcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRSZWNvbW1lbmRhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UmVjb21tZW5kYXRpb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0UmVjb21tZW5kYXRpb25cIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRSZWdpc3RyeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UmVnaXN0cnkgPSBcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlZ2lzdHJ5XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UmVnaXN0cnlSZWNvcmQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFJlZ2lzdHJ5UmVjb3JkID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlZ2lzdHJ5UmVjb3JkXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UmVzb3VyY2VBcGlLZXkgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFJlc291cmNlQXBpS2V5ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlc291cmNlQXBpS2V5XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UmVzb3VyY2VPYXV0aDJUb2tlbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UmVzb3VyY2VPYXV0aDJUb2tlbiA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRSZXNvdXJjZU9hdXRoMlRva2VuXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UmVzb3VyY2VQYXltZW50VG9rZW4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFJlc291cmNlUGF5bWVudFRva2VuID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlc291cmNlUGF5bWVudFRva2VuXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UmVzb3VyY2VQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFJlc291cmNlUG9saWN5ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlc291cmNlUG9saWN5XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0VG9rZW5WYXVsdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0VG9rZW5WYXVsdCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0VG9rZW5WYXVsdFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRXb3JrbG9hZEFjY2Vzc1Rva2VuICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRXb3JrbG9hZEFjY2Vzc1Rva2VuID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFdvcmtsb2FkQWNjZXNzVG9rZW5cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6R2V0V29ya2xvYWRBY2Nlc3NUb2tlbkZvckpXVCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0V29ya2xvYWRBY2Nlc3NUb2tlbkZvckpXVCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9ySldUXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JVc2VySWQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JVc2VySWQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0V29ya2xvYWRBY2Nlc3NUb2tlbkZvclVzZXJJZFwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldFdvcmtsb2FkSWRlbnRpdHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFdvcmtsb2FkSWRlbnRpdHkgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0V29ya2xvYWRJZGVudGl0eVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VBZ2VudFJ1bnRpbWUgKi9cblx0c3RhdGljIHJlYWRvbmx5IEludm9rZUFnZW50UnVudGltZSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQWdlbnRSdW50aW1lXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkludm9rZUFnZW50UnVudGltZUNvbW1hbmQgKi9cblx0c3RhdGljIHJlYWRvbmx5IEludm9rZUFnZW50UnVudGltZUNvbW1hbmQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQWdlbnRSdW50aW1lQ29tbWFuZFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VBZ2VudFJ1bnRpbWVDb21tYW5kU2hlbGwgKi9cblx0c3RhdGljIHJlYWRvbmx5IEludm9rZUFnZW50UnVudGltZUNvbW1hbmRTaGVsbCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VBZ2VudFJ1bnRpbWVDb21tYW5kU2hlbGxcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQWdlbnRSdW50aW1lRm9yVXNlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW52b2tlQWdlbnRSdW50aW1lRm9yVXNlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VBZ2VudFJ1bnRpbWVGb3JVc2VyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkludm9rZUFnZW50UnVudGltZVdpdGhXZWJTb2NrZXRTdHJlYW0gKi9cblx0c3RhdGljIHJlYWRvbmx5IEludm9rZUFnZW50UnVudGltZVdpdGhXZWJTb2NrZXRTdHJlYW0gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQWdlbnRSdW50aW1lV2l0aFdlYlNvY2tldFN0cmVhbVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VBZ2VudFJ1bnRpbWVXaXRoV2ViU29ja2V0U3RyZWFtRm9yVXNlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW52b2tlQWdlbnRSdW50aW1lV2l0aFdlYlNvY2tldFN0cmVhbUZvclVzZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQWdlbnRSdW50aW1lV2l0aFdlYlNvY2tldFN0cmVhbUZvclVzZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQ29kZUludGVycHJldGVyICovXG5cdHN0YXRpYyByZWFkb25seSBJbnZva2VDb2RlSW50ZXJwcmV0ZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQ29kZUludGVycHJldGVyXCI7XG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIGJlZHJvY2stYWdlbnRjb3JlOkludm9rZUdhdGV3YXkgKi9cblx0c3RhdGljIHJlYWRvbmx5IEludm9rZUdhdGV3YXkgPSBcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZUdhdGV3YXlcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlSGFybmVzcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW52b2tlSGFybmVzcyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlSGFybmVzc1wiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkludm9rZVJlZ2lzdHJ5TWNwICovXG5cdHN0YXRpYyByZWFkb25seSBJbnZva2VSZWdpc3RyeU1jcCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlUmVnaXN0cnlNY3BcIjtcblx0LyoqIFtQZXJtaXNzaW9uTWFuYWdlbWVudF0gYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlV2ViU2VhcmNoICovXG5cdHN0YXRpYyByZWFkb25seSBJbnZva2VXZWJTZWFyY2ggPSBcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZVdlYlNlYXJjaFwiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RBQlRlc3RzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QUJUZXN0cyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFCVGVzdHNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0QWN0b3JzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWN0b3JzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QWN0b3JzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFnZW50UnVudGltZUVuZHBvaW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFnZW50UnVudGltZUVuZHBvaW50cyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QWdlbnRSdW50aW1lRW5kcG9pbnRzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFnZW50UnVudGltZVZlcnNpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWdlbnRSdW50aW1lVmVyc2lvbnMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFnZW50UnVudGltZVZlcnNpb25zXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFnZW50UnVudGltZVZlcnNpb25zQnlDYXBhY2l0eVByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWdlbnRSdW50aW1lVmVyc2lvbnNCeUNhcGFjaXR5UHJvdmlkZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFnZW50UnVudGltZVZlcnNpb25zQnlDYXBhY2l0eVByb3ZpZGVyXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFnZW50UnVudGltZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZ2VudFJ1bnRpbWVzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QWdlbnRSdW50aW1lc1wiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVycyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RCYXRjaEV2YWx1YXRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QmF0Y2hFdmFsdWF0aW9ucyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QmF0Y2hFdmFsdWF0aW9uc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RCcm93c2VyUHJvZmlsZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RCcm93c2VyUHJvZmlsZXMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RCcm93c2VyUHJvZmlsZXNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0QnJvd3NlclNlc3Npb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QnJvd3NlclNlc3Npb25zID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QnJvd3NlclNlc3Npb25zXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEJyb3dzZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QnJvd3NlcnMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RCcm93c2Vyc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RDYXBhY2l0eVByb3ZpZGVycyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENhcGFjaXR5UHJvdmlkZXJzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RDYXBhY2l0eVByb3ZpZGVyc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb2RlSW50ZXJwcmV0ZXJTZXNzaW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvZGVJbnRlcnByZXRlclNlc3Npb25zID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb2RlSW50ZXJwcmV0ZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29kZUludGVycHJldGVycyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0Q29kZUludGVycHJldGVyc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb25maWd1cmF0aW9uQnVuZGxlVmVyc2lvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb25maWd1cmF0aW9uQnVuZGxlVmVyc2lvbnMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdENvbmZpZ3VyYXRpb25CdW5kbGVWZXJzaW9uc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb25maWd1cmF0aW9uQnVuZGxlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvbmZpZ3VyYXRpb25CdW5kbGVzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb25maWd1cmF0aW9uQnVuZGxlc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3REYXRhc2V0RXhhbXBsZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3REYXRhc2V0RXhhbXBsZXMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3REYXRhc2V0RXhhbXBsZXNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0RGF0YXNldFZlcnNpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGF0YXNldFZlcnNpb25zID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0RGF0YXNldFZlcnNpb25zXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdERhdGFzZXRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGF0YXNldHMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3REYXRhc2V0c1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RFdmFsdWF0b3JzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RXZhbHVhdG9ycyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEV2YWx1YXRvcnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0RXZlbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RXZlbnRzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0RXZlbnRzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEdhdGV3YXlSYXRlTGltaXRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0R2F0ZXdheVJhdGVMaW1pdHMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEdhdGV3YXlSYXRlTGltaXRzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEdhdGV3YXlSdWxlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEdhdGV3YXlSdWxlcyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEdhdGV3YXlSdWxlc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RHYXRld2F5VGFyZ2V0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEdhdGV3YXlUYXJnZXRzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0R2F0ZXdheVRhcmdldHNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0R2F0ZXdheXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHYXRld2F5cyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEdhdGV3YXlzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEhhcm5lc3NFbmRwb2ludHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RIYXJuZXNzRW5kcG9pbnRzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RIYXJuZXNzRW5kcG9pbnRzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEhhcm5lc3NWZXJzaW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEhhcm5lc3NWZXJzaW9ucyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEhhcm5lc3NWZXJzaW9uc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RIYXJuZXNzZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RIYXJuZXNzZXMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RIYXJuZXNzZXNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0TWVtb3JpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNZW1vcmllcyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdE1lbW9yaWVzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdE1lbW9yeUV4dHJhY3Rpb25Kb2JzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0TWVtb3J5RXh0cmFjdGlvbkpvYnMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdE1lbW9yeUV4dHJhY3Rpb25Kb2JzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdE1lbW9yeVJlY29yZHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNZW1vcnlSZWNvcmRzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0TWVtb3J5UmVjb3Jkc1wiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0T2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVycyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0T2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RPbmxpbmVFdmFsdWF0aW9uQ29uZmlncyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE9ubGluZUV2YWx1YXRpb25Db25maWdzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RPbmxpbmVFdmFsdWF0aW9uQ29uZmlnc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RQYXltZW50Q29ubmVjdG9ycyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBheW1lbnRDb25uZWN0b3JzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQYXltZW50Q29ubmVjdG9yc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVycyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXJzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RQYXltZW50SW5zdHJ1bWVudHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQYXltZW50SW5zdHJ1bWVudHMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBheW1lbnRJbnN0cnVtZW50c1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RQYXltZW50TWFuYWdlcnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQYXltZW50TWFuYWdlcnMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQYXltZW50TWFuYWdlcnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudFNlc3Npb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UGF5bWVudFNlc3Npb25zID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudFNlc3Npb25zXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UG9saWNpZXMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQb2xpY2llc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RQb2xpY3lFbmdpbmVTdW1tYXJpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY3lFbmdpbmVTdW1tYXJpZXMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeUVuZ2luZVN1bW1hcmllc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RQb2xpY3lFbmdpbmVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UG9saWN5RW5naW5lcyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeUVuZ2luZXNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWN5R2VuZXJhdGlvbkFzc2V0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBvbGljeUdlbmVyYXRpb25Bc3NldHMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeUdlbmVyYXRpb25Bc3NldHNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWN5R2VuZXJhdGlvblN1bW1hcmllcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBvbGljeUdlbmVyYXRpb25TdW1tYXJpZXMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeUdlbmVyYXRpb25TdW1tYXJpZXNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWN5R2VuZXJhdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY3lHZW5lcmF0aW9ucyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWN5R2VuZXJhdGlvbnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWN5U3VtbWFyaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UG9saWN5U3VtbWFyaWVzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWN5U3VtbWFyaWVzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdFJlY29tbWVuZGF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlY29tbWVuZGF0aW9ucyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFJlY29tbWVuZGF0aW9uc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RSZWdpc3RyaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVnaXN0cmllcyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFJlZ2lzdHJpZXNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UmVnaXN0cnlSZWNvcmRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVnaXN0cnlSZWNvcmRzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UmVnaXN0cnlSZWNvcmRzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdFNlc3Npb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U2Vzc2lvbnMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RTZXNzaW9uc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RUYWdzRm9yUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUYWdzRm9yUmVzb3VyY2UgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RUYWdzRm9yUmVzb3VyY2VcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0V29ya2xvYWRJZGVudGl0aWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0V29ya2xvYWRJZGVudGl0aWVzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RXb3JrbG9hZElkZW50aXRpZXNcIjtcblx0LyoqIFtQZXJtaXNzaW9uTWFuYWdlbWVudF0gYmVkcm9jay1hZ2VudGNvcmU6TWFuYWdlQWRtaW5Qb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1hbmFnZUFkbWluUG9saWN5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpNYW5hZ2VBZG1pblBvbGljeVwiO1xuXHQvKiogW1Blcm1pc3Npb25NYW5hZ2VtZW50XSBiZWRyb2NrLWFnZW50Y29yZTpNYW5hZ2VSZXNvdXJjZVNjb3BlZFBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTWFuYWdlUmVzb3VyY2VTY29wZWRQb2xpY3kgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TWFuYWdlUmVzb3VyY2VTY29wZWRQb2xpY3lcIjtcblx0LyoqIFtQZXJtaXNzaW9uTWFuYWdlbWVudF0gYmVkcm9jay1hZ2VudGNvcmU6UGFydGlhbGx5QXV0aG9yaXplQWN0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUGFydGlhbGx5QXV0aG9yaXplQWN0aW9ucyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpQYXJ0aWFsbHlBdXRob3JpemVBY3Rpb25zXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlBhc3NDYXBhY2l0eVByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBQYXNzQ2FwYWNpdHlQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpQYXNzQ2FwYWNpdHlQcm92aWRlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpQcm9jZXNzUGF5bWVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHJvY2Vzc1BheW1lbnQgPSBcImJlZHJvY2stYWdlbnRjb3JlOlByb2Nlc3NQYXltZW50XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlB1dFJlc291cmNlUG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRSZXNvdXJjZVBvbGljeSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6UHV0UmVzb3VyY2VQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6UHV0U3lzdGVtTG9nRXZlbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRTeXN0ZW1Mb2dFdmVudHMgPSBcImJlZHJvY2stYWdlbnRjb3JlOlB1dFN5c3RlbUxvZ0V2ZW50c1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOlJldHJpZXZlTWVtb3J5UmVjb3JkcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmV0cmlldmVNZW1vcnlSZWNvcmRzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlJldHJpZXZlTWVtb3J5UmVjb3Jkc1wiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpTYXZlQnJvd3NlclNlc3Npb25Qcm9maWxlICovXG5cdHN0YXRpYyByZWFkb25seSBTYXZlQnJvd3NlclNlc3Npb25Qcm9maWxlID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlNhdmVCcm93c2VyU2Vzc2lvblByb2ZpbGVcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpTZWFyY2hSZWdpc3RyeVJlY29yZHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFNlYXJjaFJlZ2lzdHJ5UmVjb3JkcyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTZWFyY2hSZWdpc3RyeVJlY29yZHNcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6U2V0VG9rZW5WYXVsdENNSyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uU2V0VG9rZW5WYXVsdENNSyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6U2V0VG9rZW5WYXVsdENNS1wiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpTdGFydEJhdGNoRXZhbHVhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRCYXRjaEV2YWx1YXRpb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRCYXRjaEV2YWx1YXRpb25cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRCcm93c2VyU2Vzc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRCcm93c2VyU2Vzc2lvbiA9IFwiYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRCcm93c2VyU2Vzc2lvblwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpTdGFydENvZGVJbnRlcnByZXRlclNlc3Npb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0Q29kZUludGVycHJldGVyU2Vzc2lvbiA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTdGFydENvZGVJbnRlcnByZXRlclNlc3Npb25cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRNZW1vcnlFeHRyYWN0aW9uSm9iICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydE1lbW9yeUV4dHJhY3Rpb25Kb2IgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRNZW1vcnlFeHRyYWN0aW9uSm9iXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0UG9saWN5R2VuZXJhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRQb2xpY3lHZW5lcmF0aW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0UG9saWN5R2VuZXJhdGlvblwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpTdGFydFJlY29tbWVuZGF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydFJlY29tbWVuZGF0aW9uID0gXCJiZWRyb2NrLWFnZW50Y29yZTpTdGFydFJlY29tbWVuZGF0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlN0b3BCYXRjaEV2YWx1YXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BCYXRjaEV2YWx1YXRpb24gPSBcImJlZHJvY2stYWdlbnRjb3JlOlN0b3BCYXRjaEV2YWx1YXRpb25cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6U3RvcEJyb3dzZXJTZXNzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wQnJvd3NlclNlc3Npb24gPSBcImJlZHJvY2stYWdlbnRjb3JlOlN0b3BCcm93c2VyU2Vzc2lvblwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpTdG9wQ29kZUludGVycHJldGVyU2Vzc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcENvZGVJbnRlcnByZXRlclNlc3Npb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3RvcENvZGVJbnRlcnByZXRlclNlc3Npb25cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6U3RvcFJ1bnRpbWVTZXNzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wUnVudGltZVNlc3Npb24gPSBcImJlZHJvY2stYWdlbnRjb3JlOlN0b3BSdW50aW1lU2Vzc2lvblwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpTdWJtaXRSZWdpc3RyeVJlY29yZEZvckFwcHJvdmFsICovXG5cdHN0YXRpYyByZWFkb25seSBTdWJtaXRSZWdpc3RyeVJlY29yZEZvckFwcHJvdmFsID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN1Ym1pdFJlZ2lzdHJ5UmVjb3JkRm9yQXBwcm92YWxcIjtcblx0LyoqIFtQZXJtaXNzaW9uTWFuYWdlbWVudF0gYmVkcm9jay1hZ2VudGNvcmU6U3luY2hyb25pemVHYXRld2F5VGFyZ2V0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3luY2hyb25pemVHYXRld2F5VGFyZ2V0cyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTeW5jaHJvbml6ZUdhdGV3YXlUYXJnZXRzXCI7XG5cdC8qKiBbVGFnZ2luZ10gYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IFRhZ1Jlc291cmNlID0gXCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiO1xuXHQvKiogW1RhZ2dpbmddIGJlZHJvY2stYWdlbnRjb3JlOlVudGFnUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVudGFnUmVzb3VyY2UgPSBcImJlZHJvY2stYWdlbnRjb3JlOlVudGFnUmVzb3VyY2VcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQUJUZXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBQlRlc3QgPSBcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUFCVGVzdFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVBZ2VudFJ1bnRpbWUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFnZW50UnVudGltZSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQWdlbnRSdW50aW1lXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUFnZW50UnVudGltZUVuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBZ2VudFJ1bnRpbWVFbmRwb2ludCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVBZ2VudFJ1bnRpbWVFbmRwb2ludFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQnJvd3NlclN0cmVhbSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQnJvd3NlclN0cmVhbSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQnJvd3NlclN0cmVhbVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVDYXBhY2l0eVByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDYXBhY2l0eVByb3ZpZGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUNhcGFjaXR5UHJvdmlkZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQ29uZmlndXJhdGlvbkJ1bmRsZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29uZmlndXJhdGlvbkJ1bmRsZSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVDb25maWd1cmF0aW9uQnVuZGxlXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZURhdGFzZXQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZURhdGFzZXQgPSBcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZURhdGFzZXRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlRGF0YXNldEV4YW1wbGVzICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVEYXRhc2V0RXhhbXBsZXMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlRGF0YXNldEV4YW1wbGVzXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUV2YWx1YXRvciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlRXZhbHVhdG9yID0gXCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVFdmFsdWF0b3JcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlR2F0ZXdheSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlR2F0ZXdheSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlR2F0ZXdheVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVHYXRld2F5UmF0ZUxpbWl0ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVHYXRld2F5UmF0ZUxpbWl0ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUdhdGV3YXlSYXRlTGltaXRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlR2F0ZXdheVJ1bGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUdhdGV3YXlSdWxlID0gXCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVHYXRld2F5UnVsZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVHYXRld2F5VGFyZ2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVHYXRld2F5VGFyZ2V0ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVHYXRld2F5VGFyZ2V0XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUhhcm5lc3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUhhcm5lc3MgPSBcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUhhcm5lc3NcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlSGFybmVzc0VuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVIYXJuZXNzRW5kcG9pbnQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlSGFybmVzc0VuZHBvaW50XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZU1lbW9yeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlTWVtb3J5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVNZW1vcnlcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZU9ubGluZUV2YWx1YXRpb25Db25maWcgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZU9ubGluZUV2YWx1YXRpb25Db25maWcgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZ1wiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVQYXltZW50Q29ubmVjdG9yICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVQYXltZW50Q29ubmVjdG9yID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVBheW1lbnRDb25uZWN0b3JcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVBheW1lbnRNYW5hZ2VyICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVQYXltZW50TWFuYWdlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVQYXltZW50TWFuYWdlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBvbGljeSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVBvbGljeUVuZ2luZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUG9saWN5RW5naW5lID0gXCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVQb2xpY3lFbmdpbmVcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUmVnaXN0cnkgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVJlZ2lzdHJ5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVSZWdpc3RyeVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVSZWdpc3RyeVJlY29yZCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVnaXN0cnlSZWNvcmQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUmVnaXN0cnlSZWNvcmRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUmVnaXN0cnlSZWNvcmRTdGF0dXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVJlZ2lzdHJ5UmVjb3JkU3RhdHVzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVJlZ2lzdHJ5UmVjb3JkU3RhdHVzXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVdvcmtsb2FkSWRlbnRpdHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVdvcmtsb2FkSWRlbnRpdHkgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlV29ya2xvYWRJZGVudGl0eVwiO1xuXG5cdC8qKiBBbGwgcmVhZC1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsUmVhZEFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNvbXBsZXRlUmVzb3VyY2VUb2tlbkF1dGgsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ29ubmVjdEJyb3dzZXJBdXRvbWF0aW9uU3RyZWFtLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNvbm5lY3RCcm93c2VyTGl2ZVZpZXdTdHJlYW0sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuR2F0ZXdheUdldFdlYkFDTEZvclJlc291cmNlLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldEFCVGVzdCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRBZ2VudENhcmQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0QWdlbnRSdW50aW1lLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldEFnZW50UnVudGltZUVuZHBvaW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldEFwaUtleUNyZWRlbnRpYWxQcm92aWRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRCYXRjaEV2YWx1YXRpb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0QnJvd3Nlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRCcm93c2VyUHJvZmlsZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRCcm93c2VyU2Vzc2lvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRDYXBhY2l0eVByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldENvZGVJbnRlcnByZXRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldENvbmZpZ3VyYXRpb25CdW5kbGUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0Q29uZmlndXJhdGlvbkJ1bmRsZVZlcnNpb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0RGF0YXNldCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRFdmFsdWF0b3IsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0RXZlbnQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0R2F0ZXdheSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRHYXRld2F5UmF0ZUxpbWl0LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldEdhdGV3YXlSdWxlLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldEdhdGV3YXlUYXJnZXQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0SGFybmVzcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRIYXJuZXNzRW5kcG9pbnQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0TWVtb3J5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldE1lbW9yeVJlY29yZCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0T25saW5lRXZhbHVhdGlvbkNvbmZpZyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRQYXltZW50Q29ubmVjdG9yLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UGF5bWVudEluc3RydW1lbnQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UGF5bWVudEluc3RydW1lbnRCYWxhbmNlLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFBheW1lbnRNYW5hZ2VyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFBheW1lbnRTZXNzaW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFBvbGljeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRQb2xpY3lFbmdpbmUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UG9saWN5RW5naW5lU3VtbWFyeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRQb2xpY3lHZW5lcmF0aW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFBvbGljeUdlbmVyYXRpb25TdW1tYXJ5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFBvbGljeVN1bW1hcnksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UmVjb21tZW5kYXRpb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UmVnaXN0cnksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UmVnaXN0cnlSZWNvcmQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UmVzb3VyY2VBcGlLZXksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UmVzb3VyY2VPYXV0aDJUb2tlbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRSZXNvdXJjZVBheW1lbnRUb2tlbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRSZXNvdXJjZVBvbGljeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRUb2tlblZhdWx0LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFdvcmtsb2FkSWRlbnRpdHksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuSW52b2tlUmVnaXN0cnlNY3AsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdEFwaUtleUNyZWRlbnRpYWxQcm92aWRlcnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdE9hdXRoMkNyZWRlbnRpYWxQcm92aWRlcnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFdvcmtsb2FkSWRlbnRpdGllcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5TZWFyY2hSZWdpc3RyeVJlY29yZHMsXG5cdF07XG5cdC8qKiBBbGwgd3JpdGUtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFdyaXRlQWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQWRkRGF0YXNldEV4YW1wbGVzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkJhdGNoQ3JlYXRlTWVtb3J5UmVjb3Jkcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5CYXRjaERlbGV0ZU1lbW9yeVJlY29yZHMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQmF0Y2hQdXRHYXRld2F5UmF0ZUxpbWl0cyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5CYXRjaFVwZGF0ZU1lbW9yeVJlY29yZHMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlQUJUZXN0LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZUFnZW50UnVudGltZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVBZ2VudFJ1bnRpbWVFbmRwb2ludCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlQnJvd3Nlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVCcm93c2VyUHJvZmlsZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVDYXBhY2l0eVByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZUNvZGVJbnRlcnByZXRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVDb25maWd1cmF0aW9uQnVuZGxlLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZURhdGFzZXQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlRGF0YXNldFZlcnNpb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlRXZhbHVhdG9yLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZUV2ZW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZUdhdGV3YXksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlR2F0ZXdheVJhdGVMaW1pdCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVHYXRld2F5UnVsZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVHYXRld2F5VGFyZ2V0LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZUhhcm5lc3MsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlSGFybmVzc0VuZHBvaW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZU1lbW9yeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVQYXltZW50Q29ubmVjdG9yLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlUGF5bWVudEluc3RydW1lbnQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlUGF5bWVudE1hbmFnZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlUGF5bWVudFNlc3Npb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlUG9saWN5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZVBvbGljeUVuZ2luZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVSZWdpc3RyeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVSZWdpc3RyeVJlY29yZCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVXb3JrbG9hZElkZW50aXR5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUFCVGVzdCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVBZ2VudFJ1bnRpbWUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlQWdlbnRSdW50aW1lRW5kcG9pbnQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUJhdGNoRXZhbHVhdGlvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVCcm93c2VyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUJyb3dzZXJQcm9maWxlLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUNhcGFjaXR5UHJvdmlkZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlQ2FwYWNpdHlQcm92aWRlclNlc3Npb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlQ29kZUludGVycHJldGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUNvbmZpZ3VyYXRpb25CdW5kbGUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlRGF0YXNldCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVEYXRhc2V0RXhhbXBsZXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlRXZhbHVhdG9yLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUV2ZW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUdhdGV3YXksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlR2F0ZXdheVJhdGVMaW1pdCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVHYXRld2F5UnVsZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVHYXRld2F5VGFyZ2V0LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUhhcm5lc3MsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlSGFybmVzc0VuZHBvaW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZU1lbW9yeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVNZW1vcnlSZWNvcmQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZU9ubGluZUV2YWx1YXRpb25Db25maWcsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlUGF5bWVudENvbm5lY3Rvcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZVBheW1lbnRJbnN0cnVtZW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZVBheW1lbnRNYW5hZ2VyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZVBheW1lbnRTZXNzaW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZVBvbGljeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVQb2xpY3lFbmdpbmUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlUmVjb21tZW5kYXRpb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlUmVnaXN0cnksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlUmVnaXN0cnlSZWNvcmQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlUmVzb3VyY2VQb2xpY3ksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlV29ya2xvYWRJZGVudGl0eSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5FdmFsdWF0ZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5HYXRld2F5QXNzb2NpYXRlV2ViQUNMLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkdhdGV3YXlEaXNhc3NvY2lhdGVXZWJBQ0wsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0V29ya2xvYWRBY2Nlc3NUb2tlbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9ySldULFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JVc2VySWQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuSW52b2tlQWdlbnRSdW50aW1lLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkludm9rZUFnZW50UnVudGltZUNvbW1hbmQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuSW52b2tlQWdlbnRSdW50aW1lQ29tbWFuZFNoZWxsLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkludm9rZUFnZW50UnVudGltZUZvclVzZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuSW52b2tlQWdlbnRSdW50aW1lV2l0aFdlYlNvY2tldFN0cmVhbSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5JbnZva2VBZ2VudFJ1bnRpbWVXaXRoV2ViU29ja2V0U3RyZWFtRm9yVXNlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5JbnZva2VDb2RlSW50ZXJwcmV0ZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuSW52b2tlSGFybmVzcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5QYXNzQ2FwYWNpdHlQcm92aWRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5Qcm9jZXNzUGF5bWVudCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5QdXRSZXNvdXJjZVBvbGljeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5QdXRTeXN0ZW1Mb2dFdmVudHMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuU2F2ZUJyb3dzZXJTZXNzaW9uUHJvZmlsZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25TZXRUb2tlblZhdWx0Q01LLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlN0YXJ0QmF0Y2hFdmFsdWF0aW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlN0YXJ0QnJvd3NlclNlc3Npb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuU3RhcnRDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlN0YXJ0TWVtb3J5RXh0cmFjdGlvbkpvYixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5TdGFydFBvbGljeUdlbmVyYXRpb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuU3RhcnRSZWNvbW1lbmRhdGlvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5TdG9wQmF0Y2hFdmFsdWF0aW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlN0b3BCcm93c2VyU2Vzc2lvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5TdG9wQ29kZUludGVycHJldGVyU2Vzc2lvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5TdG9wUnVudGltZVNlc3Npb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuU3VibWl0UmVnaXN0cnlSZWNvcmRGb3JBcHByb3ZhbCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVBQlRlc3QsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlQWdlbnRSdW50aW1lLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZUFnZW50UnVudGltZUVuZHBvaW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVCcm93c2VyU3RyZWFtLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZUNhcGFjaXR5UHJvdmlkZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlQ29uZmlndXJhdGlvbkJ1bmRsZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVEYXRhc2V0LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZURhdGFzZXRFeGFtcGxlcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVFdmFsdWF0b3IsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlR2F0ZXdheSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVHYXRld2F5UmF0ZUxpbWl0LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZUdhdGV3YXlSdWxlLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZUdhdGV3YXlUYXJnZXQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlSGFybmVzcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVIYXJuZXNzRW5kcG9pbnQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlTWVtb3J5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZVBheW1lbnRDb25uZWN0b3IsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVQYXltZW50TWFuYWdlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVQb2xpY3ksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlUG9saWN5RW5naW5lLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZVJlZ2lzdHJ5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZVJlZ2lzdHJ5UmVjb3JkLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZVJlZ2lzdHJ5UmVjb3JkU3RhdHVzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZVdvcmtsb2FkSWRlbnRpdHksXG5cdF07XG5cdC8qKiBBbGwgbGlzdC1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsTGlzdEFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkdhdGV3YXlMaXN0UmVzb3VyY2VzRm9yV2ViQUNMLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RBQlRlc3RzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RBY3RvcnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdEFnZW50UnVudGltZUVuZHBvaW50cyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0QWdlbnRSdW50aW1lVmVyc2lvbnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdEFnZW50UnVudGltZVZlcnNpb25zQnlDYXBhY2l0eVByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RBZ2VudFJ1bnRpbWVzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RCYXRjaEV2YWx1YXRpb25zLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RCcm93c2VyUHJvZmlsZXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdEJyb3dzZXJTZXNzaW9ucyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0QnJvd3NlcnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdENhcGFjaXR5UHJvdmlkZXJzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RDb2RlSW50ZXJwcmV0ZXJTZXNzaW9ucyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0Q29kZUludGVycHJldGVycyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0Q29uZmlndXJhdGlvbkJ1bmRsZVZlcnNpb25zLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RDb25maWd1cmF0aW9uQnVuZGxlcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0RGF0YXNldEV4YW1wbGVzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3REYXRhc2V0VmVyc2lvbnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdERhdGFzZXRzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RFdmFsdWF0b3JzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RFdmVudHMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdEdhdGV3YXlSYXRlTGltaXRzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RHYXRld2F5UnVsZXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdEdhdGV3YXlUYXJnZXRzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RHYXRld2F5cyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0SGFybmVzc0VuZHBvaW50cyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0SGFybmVzc1ZlcnNpb25zLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RIYXJuZXNzZXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdE1lbW9yaWVzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RNZW1vcnlFeHRyYWN0aW9uSm9icyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0TWVtb3J5UmVjb3Jkcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0T25saW5lRXZhbHVhdGlvbkNvbmZpZ3MsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFBheW1lbnRDb25uZWN0b3JzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVycyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0UGF5bWVudEluc3RydW1lbnRzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RQYXltZW50TWFuYWdlcnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFBheW1lbnRTZXNzaW9ucyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0UG9saWNpZXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFBvbGljeUVuZ2luZVN1bW1hcmllcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0UG9saWN5RW5naW5lcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0UG9saWN5R2VuZXJhdGlvbkFzc2V0cyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0UG9saWN5R2VuZXJhdGlvblN1bW1hcmllcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0UG9saWN5R2VuZXJhdGlvbnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFBvbGljeVN1bW1hcmllcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0UmVjb21tZW5kYXRpb25zLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RSZWdpc3RyaWVzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RSZWdpc3RyeVJlY29yZHMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFNlc3Npb25zLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RUYWdzRm9yUmVzb3VyY2UsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuUmV0cmlldmVNZW1vcnlSZWNvcmRzLFxuXHRdO1xuXHQvKiogQWxsIHBlcm1pc3Npb24tbWFuYWdlbWVudC1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsUGVybWlzc2lvbk1hbmFnZW1lbnRBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5BbGxvd1ZlbmRlZExvZ0RlbGl2ZXJ5Rm9yUmVzb3VyY2UsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQXV0aG9yaXplQWN0aW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkludm9rZUdhdGV3YXksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuSW52b2tlV2ViU2VhcmNoLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLk1hbmFnZUFkbWluUG9saWN5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLk1hbmFnZVJlc291cmNlU2NvcGVkUG9saWN5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlBhcnRpYWxseUF1dGhvcml6ZUFjdGlvbnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuU3luY2hyb25pemVHYXRld2F5VGFyZ2V0cyxcblx0XTtcblx0LyoqIEFsbCB0YWdnaW5nLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxUYWdnaW5nQWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVGFnUmVzb3VyY2UsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVW50YWdSZXNvdXJjZSxcblx0XTtcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGFiLXRlc3QgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVBYlRlc3RBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQUJUZXN0SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGFiVGVzdElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgYWItdGVzdCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUFiVGVzdEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgQUJUZXN0SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBhYlRlc3RJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgYXBpa2V5Y3JlZGVudGlhbHByb3ZpZGVyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQXBpa2V5Y3JlZGVudGlhbHByb3ZpZGVyQXJuUHJvcHMge1xuXHQvKiogVGhlIFRva2VuVmF1bHRJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgdG9rZW5WYXVsdElkOiBzdHJpbmc7XG5cdC8qKiBUaGUgTmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGFwaWtleWNyZWRlbnRpYWxwcm92aWRlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUFwaWtleWNyZWRlbnRpYWxwcm92aWRlckFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgVG9rZW5WYXVsdElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgdG9rZW5WYXVsdElkOiBzdHJpbmc7XG5cdC8qKiBUaGUgTmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGJhdGNoLWV2YWx1YXRlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQmF0Y2hFdmFsdWF0ZUFyblByb3BzIHtcblx0LyoqIFRoZSBCYXRjaEV2YWx1YXRpb25JZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgYmF0Y2hFdmFsdWF0aW9uSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBiYXRjaC1ldmFsdWF0ZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUJhdGNoRXZhbHVhdGVBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEJhdGNoRXZhbHVhdGlvbklkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgYmF0Y2hFdmFsdWF0aW9uSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGJyb3dzZXIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVCcm93c2VyQXJuUHJvcHMge1xuXHQvKiogVGhlIEJyb3dzZXJJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgYnJvd3NlcklkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgYnJvd3NlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUJyb3dzZXJBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEJyb3dzZXJJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGJyb3dzZXJJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgYnJvd3Nlci1jdXN0b20gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVCcm93c2VyQ3VzdG9tQXJuUHJvcHMge1xuXHQvKiogVGhlIEJyb3dzZXJJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgYnJvd3NlcklkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgYnJvd3Nlci1jdXN0b20gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVCcm93c2VyQ3VzdG9tQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBCcm93c2VySWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBicm93c2VySWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGJyb3dzZXItcHJvZmlsZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUJyb3dzZXJQcm9maWxlQXJuUHJvcHMge1xuXHQvKiogVGhlIEJyb3dzZXJQcm9maWxlSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGJyb3dzZXJQcm9maWxlSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBicm93c2VyLXByb2ZpbGUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVCcm93c2VyUHJvZmlsZUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgQnJvd3NlclByb2ZpbGVJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGJyb3dzZXJQcm9maWxlSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGNhcGFjaXR5LXByb3ZpZGVyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQ2FwYWNpdHlQcm92aWRlckFyblByb3BzIHtcblx0LyoqIFRoZSBDYXBhY2l0eVByb3ZpZGVySWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGNhcGFjaXR5UHJvdmlkZXJJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGNhcGFjaXR5LXByb3ZpZGVyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQ2FwYWNpdHlQcm92aWRlckFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgQ2FwYWNpdHlQcm92aWRlcklkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgY2FwYWNpdHlQcm92aWRlcklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBjb2RlLWludGVycHJldGVyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQ29kZUludGVycHJldGVyQXJuUHJvcHMge1xuXHQvKiogVGhlIENvZGVJbnRlcnByZXRlcklkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBjb2RlSW50ZXJwcmV0ZXJJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGNvZGUtaW50ZXJwcmV0ZXIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVDb2RlSW50ZXJwcmV0ZXJBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIENvZGVJbnRlcnByZXRlcklkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgY29kZUludGVycHJldGVySWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGNvZGUtaW50ZXJwcmV0ZXItY3VzdG9tIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQ29kZUludGVycHJldGVyQ3VzdG9tQXJuUHJvcHMge1xuXHQvKiogVGhlIENvZGVJbnRlcnByZXRlcklkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBjb2RlSW50ZXJwcmV0ZXJJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGNvZGUtaW50ZXJwcmV0ZXItY3VzdG9tIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQ29kZUludGVycHJldGVyQ3VzdG9tQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBDb2RlSW50ZXJwcmV0ZXJJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGNvZGVJbnRlcnByZXRlcklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBjb25maWd1cmF0aW9uLWJ1bmRsZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUNvbmZpZ3VyYXRpb25CdW5kbGVBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQ29uZmlndXJhdGlvbkJ1bmRsZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBjb25maWd1cmF0aW9uQnVuZGxlSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBjb25maWd1cmF0aW9uLWJ1bmRsZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUNvbmZpZ3VyYXRpb25CdW5kbGVBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIENvbmZpZ3VyYXRpb25CdW5kbGVJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGNvbmZpZ3VyYXRpb25CdW5kbGVJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgZGF0YXNldCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZURhdGFzZXRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRGF0YXNldElkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBkYXRhc2V0SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBkYXRhc2V0IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlRGF0YXNldEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgRGF0YXNldElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZGF0YXNldElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBldmFsdWF0b3IgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVFdmFsdWF0b3JBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRXZhbHVhdG9ySWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGV2YWx1YXRvcklkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgZXZhbHVhdG9yIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlRXZhbHVhdG9yQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBFdmFsdWF0b3JJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGV2YWx1YXRvcklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBnYXRld2F5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlR2F0ZXdheUFyblByb3BzIHtcblx0LyoqIFRoZSBHYXRld2F5SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGdhdGV3YXlJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGdhdGV3YXkgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVHYXRld2F5QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBHYXRld2F5SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBnYXRld2F5SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGhhcm5lc3MgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVIYXJuZXNzQXJuUHJvcHMge1xuXHQvKiogVGhlIEhhcm5lc3NJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgaGFybmVzc0lkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgaGFybmVzcyBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUhhcm5lc3NBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEhhcm5lc3NJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGhhcm5lc3NJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgaGFybmVzcy1lbmRwb2ludCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUhhcm5lc3NFbmRwb2ludEFyblByb3BzIHtcblx0LyoqIFRoZSBIYXJuZXNzSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGhhcm5lc3NJZDogc3RyaW5nO1xuXHQvKiogVGhlIE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBoYXJuZXNzLWVuZHBvaW50IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlSGFybmVzc0VuZHBvaW50QXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBIYXJuZXNzSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBoYXJuZXNzSWQ6IHN0cmluZztcblx0LyoqIFRoZSBOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgbmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgbWVtb3J5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlTWVtb3J5QXJuUHJvcHMge1xuXHQvKiogVGhlIE1lbW9yeUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBtZW1vcnlJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIG1lbW9yeSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZU1lbW9yeUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgTWVtb3J5SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBtZW1vcnlJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgb2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlT2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyQXJuUHJvcHMge1xuXHQvKiogVGhlIFRva2VuVmF1bHRJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgdG9rZW5WYXVsdElkOiBzdHJpbmc7XG5cdC8qKiBUaGUgTmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIG9hdXRoMmNyZWRlbnRpYWxwcm92aWRlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZU9hdXRoMmNyZWRlbnRpYWxwcm92aWRlckFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgVG9rZW5WYXVsdElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgdG9rZW5WYXVsdElkOiBzdHJpbmc7XG5cdC8qKiBUaGUgTmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIG9ubGluZS1ldmFsdWF0aW9uLWNvbmZpZyBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZU9ubGluZUV2YWx1YXRpb25Db25maWdBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgT25saW5lRXZhbHVhdGlvbkNvbmZpZ0lkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBvbmxpbmVFdmFsdWF0aW9uQ29uZmlnSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBvbmxpbmUtZXZhbHVhdGlvbi1jb25maWcgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBPbmxpbmVFdmFsdWF0aW9uQ29uZmlnSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBvbmxpbmVFdmFsdWF0aW9uQ29uZmlnSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHBheW1lbnQtbWFuYWdlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVBheW1lbnRNYW5hZ2VyQXJuUHJvcHMge1xuXHQvKiogVGhlIFBheW1lbnRNYW5hZ2VySWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHBheW1lbnRNYW5hZ2VySWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBwYXltZW50LW1hbmFnZXIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVQYXltZW50TWFuYWdlckFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUGF5bWVudE1hbmFnZXJJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHBheW1lbnRNYW5hZ2VySWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHBheW1lbnRjcmVkZW50aWFscHJvdmlkZXIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVQYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyQXJuUHJvcHMge1xuXHQvKiogVGhlIFRva2VuVmF1bHRJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgdG9rZW5WYXVsdElkOiBzdHJpbmc7XG5cdC8qKiBUaGUgTmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHBheW1lbnRjcmVkZW50aWFscHJvdmlkZXIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVQYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBUb2tlblZhdWx0SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSB0b2tlblZhdWx0SWQ6IHN0cmluZztcblx0LyoqIFRoZSBOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgbmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgcG9saWN5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUG9saWN5QXJuUHJvcHMge1xuXHQvKiogVGhlIFBvbGljeUVuZ2luZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBwb2xpY3lFbmdpbmVJZDogc3RyaW5nO1xuXHQvKiogVGhlIFBvbGljeUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBwb2xpY3lJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHBvbGljeSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVBvbGljeUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUG9saWN5RW5naW5lSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBwb2xpY3lFbmdpbmVJZDogc3RyaW5nO1xuXHQvKiogVGhlIFBvbGljeUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgcG9saWN5SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHBvbGljeS1lbmdpbmUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVQb2xpY3lFbmdpbmVBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUG9saWN5RW5naW5lSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHBvbGljeUVuZ2luZUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcG9saWN5LWVuZ2luZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVBvbGljeUVuZ2luZUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUG9saWN5RW5naW5lSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBwb2xpY3lFbmdpbmVJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgcG9saWN5LWdlbmVyYXRpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVQb2xpY3lHZW5lcmF0aW9uQXJuUHJvcHMge1xuXHQvKiogVGhlIFBvbGljeUVuZ2luZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBwb2xpY3lFbmdpbmVJZDogc3RyaW5nO1xuXHQvKiogVGhlIFBvbGljeUdlbmVyYXRpb25JZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcG9saWN5R2VuZXJhdGlvbklkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcG9saWN5LWdlbmVyYXRpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVQb2xpY3lHZW5lcmF0aW9uQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBQb2xpY3lFbmdpbmVJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHBvbGljeUVuZ2luZUlkOiBzdHJpbmc7XG5cdC8qKiBUaGUgUG9saWN5R2VuZXJhdGlvbklkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgcG9saWN5R2VuZXJhdGlvbklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSByZWNvbW1lbmRhdGlvbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVJlY29tbWVuZGF0aW9uQXJuUHJvcHMge1xuXHQvKiogVGhlIFJlY29tbWVuZGF0aW9uSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHJlY29tbWVuZGF0aW9uSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSByZWNvbW1lbmRhdGlvbiBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVJlY29tbWVuZGF0aW9uQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBSZWNvbW1lbmRhdGlvbklkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgcmVjb21tZW5kYXRpb25JZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgcmVnaXN0cnkgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVSZWdpc3RyeUFyblByb3BzIHtcblx0LyoqIFRoZSBSZWdpc3RyeUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSByZWdpc3RyeUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcmVnaXN0cnkgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVSZWdpc3RyeUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUmVnaXN0cnlJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHJlZ2lzdHJ5SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHJlZ2lzdHJ5LXJlY29yZCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVJlZ2lzdHJ5UmVjb3JkQXJuUHJvcHMge1xuXHQvKiogVGhlIFJlZ2lzdHJ5SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHJlZ2lzdHJ5SWQ6IHN0cmluZztcblx0LyoqIFRoZSBSZWNvcmRJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcmVjb3JkSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSByZWdpc3RyeS1yZWNvcmQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVSZWdpc3RyeVJlY29yZEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUmVnaXN0cnlJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHJlZ2lzdHJ5SWQ6IHN0cmluZztcblx0LyoqIFRoZSBSZWNvcmRJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHJlY29yZElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBydW50aW1lIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUnVudGltZUFyblByb3BzIHtcblx0LyoqIFRoZSBSdW50aW1lSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHJ1bnRpbWVJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHJ1bnRpbWUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVSdW50aW1lQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBSdW50aW1lSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBydW50aW1lSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHJ1bnRpbWUtZW5kcG9pbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVSdW50aW1lRW5kcG9pbnRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUnVudGltZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBydW50aW1lSWQ6IHN0cmluZztcblx0LyoqIFRoZSBOYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcnVudGltZS1lbmRwb2ludCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVJ1bnRpbWVFbmRwb2ludEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUnVudGltZUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgcnVudGltZUlkOiBzdHJpbmc7XG5cdC8qKiBUaGUgTmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHRva2VuLXZhdWx0IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlVG9rZW5WYXVsdEFyblByb3BzIHtcblx0LyoqIFRoZSBUb2tlblZhdWx0SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHRva2VuVmF1bHRJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHRva2VuLXZhdWx0IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlVG9rZW5WYXVsdEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgVG9rZW5WYXVsdElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgdG9rZW5WYXVsdElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSB3ZWItc2VhcmNoIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlV2ViU2VhcmNoQXJuUHJvcHMge1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHdlYi1zZWFyY2ggQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVXZWJTZWFyY2hBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgd29ya2xvYWQtaWRlbnRpdHkgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVXb3JrbG9hZElkZW50aXR5QXJuUHJvcHMge1xuXHQvKiogVGhlIERpcmVjdG9yeUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBkaXJlY3RvcnlJZDogc3RyaW5nO1xuXHQvKiogVGhlIFdvcmtsb2FkSWRlbnRpdHlOYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSB3b3JrbG9hZElkZW50aXR5TmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHdvcmtsb2FkLWlkZW50aXR5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlV29ya2xvYWRJZGVudGl0eUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgRGlyZWN0b3J5SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBkaXJlY3RvcnlJZDogc3RyaW5nO1xuXHQvKiogVGhlIFdvcmtsb2FkSWRlbnRpdHlOYW1lIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgd29ya2xvYWRJZGVudGl0eU5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHdvcmtsb2FkLWlkZW50aXR5LWRpcmVjdG9yeSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVdvcmtsb2FkSWRlbnRpdHlEaXJlY3RvcnlBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgRGlyZWN0b3J5SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGRpcmVjdG9yeUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgd29ya2xvYWQtaWRlbnRpdHktZGlyZWN0b3J5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlV29ya2xvYWRJZGVudGl0eURpcmVjdG9yeUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgRGlyZWN0b3J5SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBkaXJlY3RvcnlJZDogc3RyaW5nO1xufVxuXG5jb25zdCBBYlRlc3RBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTphYi10ZXN0XFwvKD88YWJUZXN0SWQ+W146Lz9dKykkLztcbmNvbnN0IEFwaWtleWNyZWRlbnRpYWxwcm92aWRlckFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnRva2VuLXZhdWx0XFwvKD88dG9rZW5WYXVsdElkPlteOi8/XSspXFwvYXBpa2V5Y3JlZGVudGlhbHByb3ZpZGVyXFwvKD88bmFtZT5bXjovP10rKSQvO1xuY29uc3QgQmF0Y2hFdmFsdWF0ZUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmJhdGNoLWV2YWx1YXRlXFwvKD88YmF0Y2hFdmFsdWF0aW9uSWQ+W146Lz9dKykkLztcbmNvbnN0IEJyb3dzZXJBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTphd3M6YnJvd3NlclxcLyg/PGJyb3dzZXJJZD5bXjovP10rKSQvO1xuY29uc3QgQnJvd3NlckN1c3RvbUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmJyb3dzZXItY3VzdG9tXFwvKD88YnJvd3NlcklkPlteOi8/XSspJC87XG5jb25zdCBCcm93c2VyUHJvZmlsZUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmJyb3dzZXItcHJvZmlsZVxcLyg/PGJyb3dzZXJQcm9maWxlSWQ+W146Lz9dKykkLztcbmNvbnN0IENhcGFjaXR5UHJvdmlkZXJBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpjYXBhY2l0eS1wcm92aWRlclxcLyg/PGNhcGFjaXR5UHJvdmlkZXJJZD5bXjovP10rKSQvO1xuY29uc3QgQ29kZUludGVycHJldGVyQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6YXdzOmNvZGUtaW50ZXJwcmV0ZXJcXC8oPzxjb2RlSW50ZXJwcmV0ZXJJZD5bXjovP10rKSQvO1xuY29uc3QgQ29kZUludGVycHJldGVyQ3VzdG9tQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6Y29kZS1pbnRlcnByZXRlci1jdXN0b21cXC8oPzxjb2RlSW50ZXJwcmV0ZXJJZD5bXjovP10rKSQvO1xuY29uc3QgQ29uZmlndXJhdGlvbkJ1bmRsZUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmNvbmZpZ3VyYXRpb24tYnVuZGxlXFwvKD88Y29uZmlndXJhdGlvbkJ1bmRsZUlkPlteOi8/XSspJC87XG5jb25zdCBEYXRhc2V0QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6ZGF0YXNldFxcLyg/PGRhdGFzZXRJZD5bXjovP10rKSQvO1xuY29uc3QgRXZhbHVhdG9yQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6ZXZhbHVhdG9yXFwvKD88ZXZhbHVhdG9ySWQ+W146Lz9dKykkLztcbmNvbnN0IEdhdGV3YXlBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpnYXRld2F5XFwvKD88Z2F0ZXdheUlkPlteOi8/XSspJC87XG5jb25zdCBIYXJuZXNzQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6aGFybmVzc1xcLyg/PGhhcm5lc3NJZD5bXjovP10rKSQvO1xuY29uc3QgSGFybmVzc0VuZHBvaW50QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6aGFybmVzc1xcLyg/PGhhcm5lc3NJZD5bXjovP10rKVxcL2hhcm5lc3MtZW5kcG9pbnRcXC8oPzxuYW1lPlteOi8/XSspJC87XG5jb25zdCBNZW1vcnlBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTptZW1vcnlcXC8oPzxtZW1vcnlJZD5bXjovP10rKSQvO1xuY29uc3QgT2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6dG9rZW4tdmF1bHRcXC8oPzx0b2tlblZhdWx0SWQ+W146Lz9dKylcXC9vYXV0aDJjcmVkZW50aWFscHJvdmlkZXJcXC8oPzxuYW1lPlteOi8/XSspJC87XG5jb25zdCBPbmxpbmVFdmFsdWF0aW9uQ29uZmlnQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6b25saW5lLWV2YWx1YXRpb24tY29uZmlnXFwvKD88b25saW5lRXZhbHVhdGlvbkNvbmZpZ0lkPlteOi8/XSspJC87XG5jb25zdCBQYXltZW50TWFuYWdlckFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnBheW1lbnQtbWFuYWdlclxcLyg/PHBheW1lbnRNYW5hZ2VySWQ+W146Lz9dKykkLztcbmNvbnN0IFBheW1lbnRjcmVkZW50aWFscHJvdmlkZXJBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTp0b2tlbi12YXVsdFxcLyg/PHRva2VuVmF1bHRJZD5bXjovP10rKVxcL3BheW1lbnRjcmVkZW50aWFscHJvdmlkZXJcXC8oPzxuYW1lPlteOi8/XSspJC87XG5jb25zdCBQb2xpY3lBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpwb2xpY3ktZW5naW5lXFwvKD88cG9saWN5RW5naW5lSWQ+W146Lz9dKylcXC9wb2xpY3lcXC8oPzxwb2xpY3lJZD5bXjovP10rKSQvO1xuY29uc3QgUG9saWN5RW5naW5lQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6cG9saWN5LWVuZ2luZVxcLyg/PHBvbGljeUVuZ2luZUlkPlteOi8/XSspJC87XG5jb25zdCBQb2xpY3lHZW5lcmF0aW9uQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6cG9saWN5LWVuZ2luZVxcLyg/PHBvbGljeUVuZ2luZUlkPlteOi8/XSspXFwvcG9saWN5LWdlbmVyYXRpb25cXC8oPzxwb2xpY3lHZW5lcmF0aW9uSWQ+W146Lz9dKykkLztcbmNvbnN0IFJlY29tbWVuZGF0aW9uQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6cmVjb21tZW5kYXRpb25cXC8oPzxyZWNvbW1lbmRhdGlvbklkPlteOi8/XSspJC87XG5jb25zdCBSZWdpc3RyeUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnJlZ2lzdHJ5XFwvKD88cmVnaXN0cnlJZD5bXjovP10rKSQvO1xuY29uc3QgUmVnaXN0cnlSZWNvcmRBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpyZWdpc3RyeVxcLyg/PHJlZ2lzdHJ5SWQ+W146Lz9dKylcXC9yZWNvcmRcXC8oPzxyZWNvcmRJZD5bXjovP10rKSQvO1xuY29uc3QgUnVudGltZUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnJ1bnRpbWVcXC8oPzxydW50aW1lSWQ+W146Lz9dKykkLztcbmNvbnN0IFJ1bnRpbWVFbmRwb2ludEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnJ1bnRpbWVcXC8oPzxydW50aW1lSWQ+W146Lz9dKylcXC9ydW50aW1lLWVuZHBvaW50XFwvKD88bmFtZT5bXjovP10rKSQvO1xuY29uc3QgVG9rZW5WYXVsdEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnRva2VuLXZhdWx0XFwvKD88dG9rZW5WYXVsdElkPlteOi8/XSspJC87XG5jb25zdCBXZWJTZWFyY2hBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTp0b29sXFwvd2ViLXNlYXJjaFxcLnYxJC87XG5jb25zdCBXb3JrbG9hZElkZW50aXR5QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6d29ya2xvYWQtaWRlbnRpdHktZGlyZWN0b3J5XFwvKD88ZGlyZWN0b3J5SWQ+W146Lz9dKylcXC93b3JrbG9hZC1pZGVudGl0eVxcLyg/PHdvcmtsb2FkSWRlbnRpdHlOYW1lPlteOi8/XSspJC87XG5jb25zdCBXb3JrbG9hZElkZW50aXR5RGlyZWN0b3J5QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6d29ya2xvYWQtaWRlbnRpdHktZGlyZWN0b3J5XFwvKD88ZGlyZWN0b3J5SWQ+W146Lz9dKykkLztcblxuLyoqXG4gKiBBUk4gYnVpbGRlcnMsIHZhbGlkYXRvcnMsIGFuZCBwYXJzZXJzIGZvciBiZWRyb2NrLWFnZW50Y29yZSByZXNvdXJjZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBCZWRyb2NrQWdlbnRjb3JlUmVzb3VyY2VzIHtcblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBhYi10ZXN0IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGFiVGVzdChwcm9wczogQmVkcm9ja0FnZW50Y29yZUFiVGVzdEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTphYi10ZXN0LyR7cHJvcHMuYWJUZXN0SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGFiLXRlc3QgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEFiVGVzdEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBBYlRlc3RBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgYWItdGVzdCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VBYlRlc3RBcm4oYXJuOiBzdHJpbmcpOiBCZWRyb2NrQWdlbnRjb3JlQWJUZXN0QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBBYlRlc3RBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgYWItdGVzdCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRhYlRlc3RJZDogbWF0Y2guZ3JvdXBzIS5hYlRlc3RJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBhcGlrZXljcmVkZW50aWFscHJvdmlkZXIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgYXBpa2V5Y3JlZGVudGlhbHByb3ZpZGVyKFxuXHRcdHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlQXBpa2V5Y3JlZGVudGlhbHByb3ZpZGVyQXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06dG9rZW4tdmF1bHQvJHtwcm9wcy50b2tlblZhdWx0SWR9L2FwaWtleWNyZWRlbnRpYWxwcm92aWRlci8ke3Byb3BzLm5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGFwaWtleWNyZWRlbnRpYWxwcm92aWRlciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQXBpa2V5Y3JlZGVudGlhbHByb3ZpZGVyQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEFwaWtleWNyZWRlbnRpYWxwcm92aWRlckFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBhcGlrZXljcmVkZW50aWFscHJvdmlkZXIgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQXBpa2V5Y3JlZGVudGlhbHByb3ZpZGVyQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlQXBpa2V5Y3JlZGVudGlhbHByb3ZpZGVyQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBBcGlrZXljcmVkZW50aWFscHJvdmlkZXJBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgYXBpa2V5Y3JlZGVudGlhbHByb3ZpZGVyIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHRva2VuVmF1bHRJZDogbWF0Y2guZ3JvdXBzIS50b2tlblZhdWx0SWQsXG5cdFx0XHRuYW1lOiBtYXRjaC5ncm91cHMhLm5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgYmF0Y2gtZXZhbHVhdGUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgYmF0Y2hFdmFsdWF0ZShwcm9wczogQmVkcm9ja0FnZW50Y29yZUJhdGNoRXZhbHVhdGVBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06YmF0Y2gtZXZhbHVhdGUvJHtwcm9wcy5iYXRjaEV2YWx1YXRpb25JZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgYmF0Y2gtZXZhbHVhdGUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEJhdGNoRXZhbHVhdGVBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQmF0Y2hFdmFsdWF0ZUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBiYXRjaC1ldmFsdWF0ZSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VCYXRjaEV2YWx1YXRlQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlQmF0Y2hFdmFsdWF0ZUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQmF0Y2hFdmFsdWF0ZUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBiYXRjaC1ldmFsdWF0ZSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRiYXRjaEV2YWx1YXRpb25JZDogbWF0Y2guZ3JvdXBzIS5iYXRjaEV2YWx1YXRpb25JZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBicm93c2VyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGJyb3dzZXIocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVCcm93c2VyQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifTphd3M6YnJvd3Nlci8ke3Byb3BzLmJyb3dzZXJJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgYnJvd3NlciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQnJvd3NlckFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBCcm93c2VyQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGJyb3dzZXIgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQnJvd3NlckFybihhcm46IHN0cmluZyk6IEJlZHJvY2tBZ2VudGNvcmVCcm93c2VyQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBCcm93c2VyQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGJyb3dzZXIgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0YnJvd3NlcklkOiBtYXRjaC5ncm91cHMhLmJyb3dzZXJJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBicm93c2VyLWN1c3RvbSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBicm93c2VyQ3VzdG9tKHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlQnJvd3NlckN1c3RvbUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpicm93c2VyLWN1c3RvbS8ke3Byb3BzLmJyb3dzZXJJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgYnJvd3Nlci1jdXN0b20gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEJyb3dzZXJDdXN0b21Bcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQnJvd3NlckN1c3RvbUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBicm93c2VyLWN1c3RvbSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VCcm93c2VyQ3VzdG9tQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlQnJvd3NlckN1c3RvbUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQnJvd3NlckN1c3RvbUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBicm93c2VyLWN1c3RvbSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRicm93c2VySWQ6IG1hdGNoLmdyb3VwcyEuYnJvd3NlcklkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGJyb3dzZXItcHJvZmlsZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBicm93c2VyUHJvZmlsZShwcm9wczogQmVkcm9ja0FnZW50Y29yZUJyb3dzZXJQcm9maWxlQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmJyb3dzZXItcHJvZmlsZS8ke3Byb3BzLmJyb3dzZXJQcm9maWxlSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGJyb3dzZXItcHJvZmlsZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQnJvd3NlclByb2ZpbGVBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQnJvd3NlclByb2ZpbGVBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgYnJvd3Nlci1wcm9maWxlIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUJyb3dzZXJQcm9maWxlQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlQnJvd3NlclByb2ZpbGVBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEJyb3dzZXJQcm9maWxlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGJyb3dzZXItcHJvZmlsZSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRicm93c2VyUHJvZmlsZUlkOiBtYXRjaC5ncm91cHMhLmJyb3dzZXJQcm9maWxlSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgY2FwYWNpdHktcHJvdmlkZXIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgY2FwYWNpdHlQcm92aWRlcihcblx0XHRwcm9wczogQmVkcm9ja0FnZW50Y29yZUNhcGFjaXR5UHJvdmlkZXJBcm5Qcm9wcyxcblx0KTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpjYXBhY2l0eS1wcm92aWRlci8ke3Byb3BzLmNhcGFjaXR5UHJvdmlkZXJJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgY2FwYWNpdHktcHJvdmlkZXIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZENhcGFjaXR5UHJvdmlkZXJBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQ2FwYWNpdHlQcm92aWRlckFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBjYXBhY2l0eS1wcm92aWRlciBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VDYXBhY2l0eVByb3ZpZGVyQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlQ2FwYWNpdHlQcm92aWRlckFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQ2FwYWNpdHlQcm92aWRlckFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBjYXBhY2l0eS1wcm92aWRlciBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRjYXBhY2l0eVByb3ZpZGVySWQ6IG1hdGNoLmdyb3VwcyEuY2FwYWNpdHlQcm92aWRlcklkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGNvZGUtaW50ZXJwcmV0ZXIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgY29kZUludGVycHJldGVyKFxuXHRcdHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlQ29kZUludGVycHJldGVyQXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OmF3czpjb2RlLWludGVycHJldGVyLyR7cHJvcHMuY29kZUludGVycHJldGVySWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGNvZGUtaW50ZXJwcmV0ZXIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZENvZGVJbnRlcnByZXRlckFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBDb2RlSW50ZXJwcmV0ZXJBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgY29kZS1pbnRlcnByZXRlciBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VDb2RlSW50ZXJwcmV0ZXJBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IEJlZHJvY2tBZ2VudGNvcmVDb2RlSW50ZXJwcmV0ZXJBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IENvZGVJbnRlcnByZXRlckFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBjb2RlLWludGVycHJldGVyIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGNvZGVJbnRlcnByZXRlcklkOiBtYXRjaC5ncm91cHMhLmNvZGVJbnRlcnByZXRlcklkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGNvZGUtaW50ZXJwcmV0ZXItY3VzdG9tIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGNvZGVJbnRlcnByZXRlckN1c3RvbShcblx0XHRwcm9wczogQmVkcm9ja0FnZW50Y29yZUNvZGVJbnRlcnByZXRlckN1c3RvbUFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmNvZGUtaW50ZXJwcmV0ZXItY3VzdG9tLyR7cHJvcHMuY29kZUludGVycHJldGVySWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGNvZGUtaW50ZXJwcmV0ZXItY3VzdG9tIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRDb2RlSW50ZXJwcmV0ZXJDdXN0b21Bcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQ29kZUludGVycHJldGVyQ3VzdG9tQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGNvZGUtaW50ZXJwcmV0ZXItY3VzdG9tIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUNvZGVJbnRlcnByZXRlckN1c3RvbUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZUNvZGVJbnRlcnByZXRlckN1c3RvbUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQ29kZUludGVycHJldGVyQ3VzdG9tQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGNvZGUtaW50ZXJwcmV0ZXItY3VzdG9tIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGNvZGVJbnRlcnByZXRlcklkOiBtYXRjaC5ncm91cHMhLmNvZGVJbnRlcnByZXRlcklkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGNvbmZpZ3VyYXRpb24tYnVuZGxlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGNvbmZpZ3VyYXRpb25CdW5kbGUoXG5cdFx0cHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVDb25maWd1cmF0aW9uQnVuZGxlQXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06Y29uZmlndXJhdGlvbi1idW5kbGUvJHtwcm9wcy5jb25maWd1cmF0aW9uQnVuZGxlSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGNvbmZpZ3VyYXRpb24tYnVuZGxlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRDb25maWd1cmF0aW9uQnVuZGxlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIENvbmZpZ3VyYXRpb25CdW5kbGVBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgY29uZmlndXJhdGlvbi1idW5kbGUgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQ29uZmlndXJhdGlvbkJ1bmRsZUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZUNvbmZpZ3VyYXRpb25CdW5kbGVBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IENvbmZpZ3VyYXRpb25CdW5kbGVBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgY29uZmlndXJhdGlvbi1idW5kbGUgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0Y29uZmlndXJhdGlvbkJ1bmRsZUlkOiBtYXRjaC5ncm91cHMhLmNvbmZpZ3VyYXRpb25CdW5kbGVJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBkYXRhc2V0IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGRhdGFzZXQocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVEYXRhc2V0QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmRhdGFzZXQvJHtwcm9wcy5kYXRhc2V0SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGRhdGFzZXQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZERhdGFzZXRBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gRGF0YXNldEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBkYXRhc2V0IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZURhdGFzZXRBcm4oYXJuOiBzdHJpbmcpOiBCZWRyb2NrQWdlbnRjb3JlRGF0YXNldEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gRGF0YXNldEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBkYXRhc2V0IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGRhdGFzZXRJZDogbWF0Y2guZ3JvdXBzIS5kYXRhc2V0SWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgZXZhbHVhdG9yIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGV2YWx1YXRvcihwcm9wczogQmVkcm9ja0FnZW50Y29yZUV2YWx1YXRvckFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpldmFsdWF0b3IvJHtwcm9wcy5ldmFsdWF0b3JJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgZXZhbHVhdG9yIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRFdmFsdWF0b3JBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gRXZhbHVhdG9yQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGV2YWx1YXRvciBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VFdmFsdWF0b3JBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IEJlZHJvY2tBZ2VudGNvcmVFdmFsdWF0b3JBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEV2YWx1YXRvckFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBldmFsdWF0b3IgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0ZXZhbHVhdG9ySWQ6IG1hdGNoLmdyb3VwcyEuZXZhbHVhdG9ySWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgZ2F0ZXdheSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBnYXRld2F5KHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlR2F0ZXdheUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpnYXRld2F5LyR7cHJvcHMuZ2F0ZXdheUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBnYXRld2F5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRHYXRld2F5QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEdhdGV3YXlBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgZ2F0ZXdheSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VHYXRld2F5QXJuKGFybjogc3RyaW5nKTogQmVkcm9ja0FnZW50Y29yZUdhdGV3YXlBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEdhdGV3YXlBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZ2F0ZXdheSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRnYXRld2F5SWQ6IG1hdGNoLmdyb3VwcyEuZ2F0ZXdheUlkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGhhcm5lc3MgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaGFybmVzcyhwcm9wczogQmVkcm9ja0FnZW50Y29yZUhhcm5lc3NBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06aGFybmVzcy8ke3Byb3BzLmhhcm5lc3NJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgaGFybmVzcyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkSGFybmVzc0Fybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBIYXJuZXNzQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGhhcm5lc3MgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlSGFybmVzc0Fybihhcm46IHN0cmluZyk6IEJlZHJvY2tBZ2VudGNvcmVIYXJuZXNzQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBIYXJuZXNzQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGhhcm5lc3MgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0aGFybmVzc0lkOiBtYXRjaC5ncm91cHMhLmhhcm5lc3NJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBoYXJuZXNzLWVuZHBvaW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGhhcm5lc3NFbmRwb2ludChcblx0XHRwcm9wczogQmVkcm9ja0FnZW50Y29yZUhhcm5lc3NFbmRwb2ludEFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9Omhhcm5lc3MvJHtwcm9wcy5oYXJuZXNzSWR9L2hhcm5lc3MtZW5kcG9pbnQvJHtwcm9wcy5uYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBoYXJuZXNzLWVuZHBvaW50IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRIYXJuZXNzRW5kcG9pbnRBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gSGFybmVzc0VuZHBvaW50QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGhhcm5lc3MtZW5kcG9pbnQgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlSGFybmVzc0VuZHBvaW50QXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlSGFybmVzc0VuZHBvaW50QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBIYXJuZXNzRW5kcG9pbnRBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgaGFybmVzcy1lbmRwb2ludCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRoYXJuZXNzSWQ6IG1hdGNoLmdyb3VwcyEuaGFybmVzc0lkLFxuXHRcdFx0bmFtZTogbWF0Y2guZ3JvdXBzIS5uYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIG1lbW9yeSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBtZW1vcnkocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVNZW1vcnlBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06bWVtb3J5LyR7cHJvcHMubWVtb3J5SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIG1lbW9yeSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkTWVtb3J5QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIE1lbW9yeUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBtZW1vcnkgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlTWVtb3J5QXJuKGFybjogc3RyaW5nKTogQmVkcm9ja0FnZW50Y29yZU1lbW9yeUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gTWVtb3J5QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG1lbW9yeSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRtZW1vcnlJZDogbWF0Y2guZ3JvdXBzIS5tZW1vcnlJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBvYXV0aDJjcmVkZW50aWFscHJvdmlkZXIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgb2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyKFxuXHRcdHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlT2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyQXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06dG9rZW4tdmF1bHQvJHtwcm9wcy50b2tlblZhdWx0SWR9L29hdXRoMmNyZWRlbnRpYWxwcm92aWRlci8ke3Byb3BzLm5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIG9hdXRoMmNyZWRlbnRpYWxwcm92aWRlciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkT2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIE9hdXRoMmNyZWRlbnRpYWxwcm92aWRlckFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBvYXV0aDJjcmVkZW50aWFscHJvdmlkZXIgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlT2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlT2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBPYXV0aDJjcmVkZW50aWFscHJvdmlkZXJBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgb2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHRva2VuVmF1bHRJZDogbWF0Y2guZ3JvdXBzIS50b2tlblZhdWx0SWQsXG5cdFx0XHRuYW1lOiBtYXRjaC5ncm91cHMhLm5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgb25saW5lLWV2YWx1YXRpb24tY29uZmlnIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIG9ubGluZUV2YWx1YXRpb25Db25maWcoXG5cdFx0cHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnQXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06b25saW5lLWV2YWx1YXRpb24tY29uZmlnLyR7cHJvcHMub25saW5lRXZhbHVhdGlvbkNvbmZpZ0lkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBvbmxpbmUtZXZhbHVhdGlvbi1jb25maWcgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZE9ubGluZUV2YWx1YXRpb25Db25maWdBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gT25saW5lRXZhbHVhdGlvbkNvbmZpZ0FyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBvbmxpbmUtZXZhbHVhdGlvbi1jb25maWcgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlT25saW5lRXZhbHVhdGlvbkNvbmZpZ0Fybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZU9ubGluZUV2YWx1YXRpb25Db25maWdBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IE9ubGluZUV2YWx1YXRpb25Db25maWdBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgb25saW5lLWV2YWx1YXRpb24tY29uZmlnIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdG9ubGluZUV2YWx1YXRpb25Db25maWdJZDogbWF0Y2guZ3JvdXBzIS5vbmxpbmVFdmFsdWF0aW9uQ29uZmlnSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgcGF5bWVudC1tYW5hZ2VyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHBheW1lbnRNYW5hZ2VyKHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlUGF5bWVudE1hbmFnZXJBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cGF5bWVudC1tYW5hZ2VyLyR7cHJvcHMucGF5bWVudE1hbmFnZXJJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgcGF5bWVudC1tYW5hZ2VyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRQYXltZW50TWFuYWdlckFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBQYXltZW50TWFuYWdlckFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBwYXltZW50LW1hbmFnZXIgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUGF5bWVudE1hbmFnZXJBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IEJlZHJvY2tBZ2VudGNvcmVQYXltZW50TWFuYWdlckFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUGF5bWVudE1hbmFnZXJBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcGF5bWVudC1tYW5hZ2VyIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHBheW1lbnRNYW5hZ2VySWQ6IG1hdGNoLmdyb3VwcyEucGF5bWVudE1hbmFnZXJJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBwYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHBheW1lbnRjcmVkZW50aWFscHJvdmlkZXIoXG5cdFx0cHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVQYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyQXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06dG9rZW4tdmF1bHQvJHtwcm9wcy50b2tlblZhdWx0SWR9L3BheW1lbnRjcmVkZW50aWFscHJvdmlkZXIvJHtwcm9wcy5uYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBwYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRQYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFBheW1lbnRjcmVkZW50aWFscHJvdmlkZXJBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcGF5bWVudGNyZWRlbnRpYWxwcm92aWRlciBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VQYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlUGF5bWVudGNyZWRlbnRpYWxwcm92aWRlckFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUGF5bWVudGNyZWRlbnRpYWxwcm92aWRlckFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBwYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHRva2VuVmF1bHRJZDogbWF0Y2guZ3JvdXBzIS50b2tlblZhdWx0SWQsXG5cdFx0XHRuYW1lOiBtYXRjaC5ncm91cHMhLm5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgcG9saWN5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHBvbGljeShwcm9wczogQmVkcm9ja0FnZW50Y29yZVBvbGljeUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpwb2xpY3ktZW5naW5lLyR7cHJvcHMucG9saWN5RW5naW5lSWR9L3BvbGljeS8ke3Byb3BzLnBvbGljeUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBwb2xpY3kgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFBvbGljeUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBQb2xpY3lBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcG9saWN5IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVBvbGljeUFybihhcm46IHN0cmluZyk6IEJlZHJvY2tBZ2VudGNvcmVQb2xpY3lBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFBvbGljeUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBwb2xpY3kgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cG9saWN5RW5naW5lSWQ6IG1hdGNoLmdyb3VwcyEucG9saWN5RW5naW5lSWQsXG5cdFx0XHRwb2xpY3lJZDogbWF0Y2guZ3JvdXBzIS5wb2xpY3lJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBwb2xpY3ktZW5naW5lIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHBvbGljeUVuZ2luZShwcm9wczogQmVkcm9ja0FnZW50Y29yZVBvbGljeUVuZ2luZUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpwb2xpY3ktZW5naW5lLyR7cHJvcHMucG9saWN5RW5naW5lSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHBvbGljeS1lbmdpbmUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFBvbGljeUVuZ2luZUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBQb2xpY3lFbmdpbmVBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcG9saWN5LWVuZ2luZSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VQb2xpY3lFbmdpbmVBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IEJlZHJvY2tBZ2VudGNvcmVQb2xpY3lFbmdpbmVBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFBvbGljeUVuZ2luZUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBwb2xpY3ktZW5naW5lIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHBvbGljeUVuZ2luZUlkOiBtYXRjaC5ncm91cHMhLnBvbGljeUVuZ2luZUlkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHBvbGljeS1nZW5lcmF0aW9uIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHBvbGljeUdlbmVyYXRpb24oXG5cdFx0cHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVQb2xpY3lHZW5lcmF0aW9uQXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cG9saWN5LWVuZ2luZS8ke3Byb3BzLnBvbGljeUVuZ2luZUlkfS9wb2xpY3ktZ2VuZXJhdGlvbi8ke3Byb3BzLnBvbGljeUdlbmVyYXRpb25JZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgcG9saWN5LWdlbmVyYXRpb24gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFBvbGljeUdlbmVyYXRpb25Bcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUG9saWN5R2VuZXJhdGlvbkFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBwb2xpY3ktZ2VuZXJhdGlvbiBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VQb2xpY3lHZW5lcmF0aW9uQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlUG9saWN5R2VuZXJhdGlvbkFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUG9saWN5R2VuZXJhdGlvbkFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBwb2xpY3ktZ2VuZXJhdGlvbiBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRwb2xpY3lFbmdpbmVJZDogbWF0Y2guZ3JvdXBzIS5wb2xpY3lFbmdpbmVJZCxcblx0XHRcdHBvbGljeUdlbmVyYXRpb25JZDogbWF0Y2guZ3JvdXBzIS5wb2xpY3lHZW5lcmF0aW9uSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgcmVjb21tZW5kYXRpb24gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgcmVjb21tZW5kYXRpb24ocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVSZWNvbW1lbmRhdGlvbkFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpyZWNvbW1lbmRhdGlvbi8ke3Byb3BzLnJlY29tbWVuZGF0aW9uSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHJlY29tbWVuZGF0aW9uIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRSZWNvbW1lbmRhdGlvbkFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBSZWNvbW1lbmRhdGlvbkFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSByZWNvbW1lbmRhdGlvbiBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VSZWNvbW1lbmRhdGlvbkFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZVJlY29tbWVuZGF0aW9uQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBSZWNvbW1lbmRhdGlvbkFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCByZWNvbW1lbmRhdGlvbiBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRyZWNvbW1lbmRhdGlvbklkOiBtYXRjaC5ncm91cHMhLnJlY29tbWVuZGF0aW9uSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgcmVnaXN0cnkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgcmVnaXN0cnkocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVSZWdpc3RyeUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpyZWdpc3RyeS8ke3Byb3BzLnJlZ2lzdHJ5SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHJlZ2lzdHJ5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRSZWdpc3RyeUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBSZWdpc3RyeUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSByZWdpc3RyeSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VSZWdpc3RyeUFybihhcm46IHN0cmluZyk6IEJlZHJvY2tBZ2VudGNvcmVSZWdpc3RyeUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUmVnaXN0cnlBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcmVnaXN0cnkgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cmVnaXN0cnlJZDogbWF0Y2guZ3JvdXBzIS5yZWdpc3RyeUlkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHJlZ2lzdHJ5LXJlY29yZCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyByZWdpc3RyeVJlY29yZChwcm9wczogQmVkcm9ja0FnZW50Y29yZVJlZ2lzdHJ5UmVjb3JkQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnJlZ2lzdHJ5LyR7cHJvcHMucmVnaXN0cnlJZH0vcmVjb3JkLyR7cHJvcHMucmVjb3JkSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHJlZ2lzdHJ5LXJlY29yZCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUmVnaXN0cnlSZWNvcmRBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUmVnaXN0cnlSZWNvcmRBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcmVnaXN0cnktcmVjb3JkIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVJlZ2lzdHJ5UmVjb3JkQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlUmVnaXN0cnlSZWNvcmRBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFJlZ2lzdHJ5UmVjb3JkQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHJlZ2lzdHJ5LXJlY29yZCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRyZWdpc3RyeUlkOiBtYXRjaC5ncm91cHMhLnJlZ2lzdHJ5SWQsXG5cdFx0XHRyZWNvcmRJZDogbWF0Y2guZ3JvdXBzIS5yZWNvcmRJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBydW50aW1lIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHJ1bnRpbWUocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVSdW50aW1lQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnJ1bnRpbWUvJHtwcm9wcy5ydW50aW1lSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHJ1bnRpbWUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFJ1bnRpbWVBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUnVudGltZUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBydW50aW1lIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVJ1bnRpbWVBcm4oYXJuOiBzdHJpbmcpOiBCZWRyb2NrQWdlbnRjb3JlUnVudGltZUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUnVudGltZUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBydW50aW1lIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHJ1bnRpbWVJZDogbWF0Y2guZ3JvdXBzIS5ydW50aW1lSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgcnVudGltZS1lbmRwb2ludCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBydW50aW1lRW5kcG9pbnQoXG5cdFx0cHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVSdW50aW1lRW5kcG9pbnRBcm5Qcm9wcyxcblx0KTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpydW50aW1lLyR7cHJvcHMucnVudGltZUlkfS9ydW50aW1lLWVuZHBvaW50LyR7cHJvcHMubmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgcnVudGltZS1lbmRwb2ludCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUnVudGltZUVuZHBvaW50QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFJ1bnRpbWVFbmRwb2ludEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBydW50aW1lLWVuZHBvaW50IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVJ1bnRpbWVFbmRwb2ludEFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZVJ1bnRpbWVFbmRwb2ludEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUnVudGltZUVuZHBvaW50QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHJ1bnRpbWUtZW5kcG9pbnQgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cnVudGltZUlkOiBtYXRjaC5ncm91cHMhLnJ1bnRpbWVJZCxcblx0XHRcdG5hbWU6IG1hdGNoLmdyb3VwcyEubmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSB0b2tlbi12YXVsdCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyB0b2tlblZhdWx0KHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlVG9rZW5WYXVsdEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTp0b2tlbi12YXVsdC8ke3Byb3BzLnRva2VuVmF1bHRJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgdG9rZW4tdmF1bHQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFRva2VuVmF1bHRBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gVG9rZW5WYXVsdEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSB0b2tlbi12YXVsdCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VUb2tlblZhdWx0QXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlVG9rZW5WYXVsdEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gVG9rZW5WYXVsdEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB0b2tlbi12YXVsdCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHR0b2tlblZhdWx0SWQ6IG1hdGNoLmdyb3VwcyEudG9rZW5WYXVsdElkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHdlYi1zZWFyY2ggcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgd2ViU2VhcmNoKHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlV2ViU2VhcmNoQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnRvb2wvd2ViLXNlYXJjaC52MWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSB3ZWItc2VhcmNoIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRXZWJTZWFyY2hBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gV2ViU2VhcmNoQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHdlYi1zZWFyY2ggQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlV2ViU2VhcmNoQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlV2ViU2VhcmNoQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBXZWJTZWFyY2hBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgd2ViLXNlYXJjaCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgd29ya2xvYWQtaWRlbnRpdHkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgd29ya2xvYWRJZGVudGl0eShcblx0XHRwcm9wczogQmVkcm9ja0FnZW50Y29yZVdvcmtsb2FkSWRlbnRpdHlBcm5Qcm9wcyxcblx0KTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTp3b3JrbG9hZC1pZGVudGl0eS1kaXJlY3RvcnkvJHtwcm9wcy5kaXJlY3RvcnlJZH0vd29ya2xvYWQtaWRlbnRpdHkvJHtwcm9wcy53b3JrbG9hZElkZW50aXR5TmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgd29ya2xvYWQtaWRlbnRpdHkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFdvcmtsb2FkSWRlbnRpdHlBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gV29ya2xvYWRJZGVudGl0eUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSB3b3JrbG9hZC1pZGVudGl0eSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VXb3JrbG9hZElkZW50aXR5QXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlV29ya2xvYWRJZGVudGl0eUFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gV29ya2xvYWRJZGVudGl0eUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB3b3JrbG9hZC1pZGVudGl0eSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRkaXJlY3RvcnlJZDogbWF0Y2guZ3JvdXBzIS5kaXJlY3RvcnlJZCxcblx0XHRcdHdvcmtsb2FkSWRlbnRpdHlOYW1lOiBtYXRjaC5ncm91cHMhLndvcmtsb2FkSWRlbnRpdHlOYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHdvcmtsb2FkLWlkZW50aXR5LWRpcmVjdG9yeSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyB3b3JrbG9hZElkZW50aXR5RGlyZWN0b3J5KFxuXHRcdHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlV29ya2xvYWRJZGVudGl0eURpcmVjdG9yeUFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9Ondvcmtsb2FkLWlkZW50aXR5LWRpcmVjdG9yeS8ke3Byb3BzLmRpcmVjdG9yeUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSB3b3JrbG9hZC1pZGVudGl0eS1kaXJlY3RvcnkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFdvcmtsb2FkSWRlbnRpdHlEaXJlY3RvcnlBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gV29ya2xvYWRJZGVudGl0eURpcmVjdG9yeUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSB3b3JrbG9hZC1pZGVudGl0eS1kaXJlY3RvcnkgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlV29ya2xvYWRJZGVudGl0eURpcmVjdG9yeUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZVdvcmtsb2FkSWRlbnRpdHlEaXJlY3RvcnlBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFdvcmtsb2FkSWRlbnRpdHlEaXJlY3RvcnlBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgd29ya2xvYWQtaWRlbnRpdHktZGlyZWN0b3J5IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGRpcmVjdG9yeUlkOiBtYXRjaC5ncm91cHMhLmRpcmVjdG9yeUlkLFxuXHRcdH07XG5cdH1cbn1cblxuLyoqXG4gKiBBUEkgb3BlcmF0aW9uIHRvIHJlcXVpcmVkIElBTSBhY3Rpb25zIG1hcHBpbmcgZm9yIGJlZHJvY2stYWdlbnRjb3JlLlxuICovXG5leHBvcnQgY2xhc3MgQmVkcm9ja0FnZW50Y29yZU9wZXJhdGlvbnMge1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBBZGREYXRhc2V0RXhhbXBsZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBBZGREYXRhc2V0RXhhbXBsZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6QWRkRGF0YXNldEV4YW1wbGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoQ3JlYXRlTWVtb3J5UmVjb3JkcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoQ3JlYXRlTWVtb3J5UmVjb3Jkczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpCYXRjaENyZWF0ZU1lbW9yeVJlY29yZHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hEZWxldGVNZW1vcnlSZWNvcmRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hEZWxldGVNZW1vcnlSZWNvcmRzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkJhdGNoRGVsZXRlTWVtb3J5UmVjb3Jkc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaFB1dEdhdGV3YXlSYXRlTGltaXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hQdXRHYXRld2F5UmF0ZUxpbWl0czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpCYXRjaFB1dEdhdGV3YXlSYXRlTGltaXRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoVXBkYXRlTWVtb3J5UmVjb3JkcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoVXBkYXRlTWVtb3J5UmVjb3Jkczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpCYXRjaFVwZGF0ZU1lbW9yeVJlY29yZHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ29tcGxldGVSZXNvdXJjZVRva2VuQXV0aCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENvbXBsZXRlUmVzb3VyY2VUb2tlbkF1dGg6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q29tcGxldGVSZXNvdXJjZVRva2VuQXV0aFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVBQlRlc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBQlRlc3Q6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQUJUZXN0XCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQWdlbnRSdW50aW1lIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQWdlbnRSdW50aW1lOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUFnZW50UnVudGltZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQWdlbnRSdW50aW1lRW5kcG9pbnRcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlBhc3NDYXBhY2l0eVByb3ZpZGVyXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUFnZW50UnVudGltZUVuZHBvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQWdlbnRSdW50aW1lRW5kcG9pbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQWdlbnRSdW50aW1lRW5kcG9pbnRcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUJyb3dzZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVCcm93c2VyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUJyb3dzZXJcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQnJvd3NlclByb2ZpbGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVCcm93c2VyUHJvZmlsZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVCcm93c2VyUHJvZmlsZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQ2FwYWNpdHlQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUNhcGFjaXR5UHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQ2FwYWNpdHlQcm92aWRlclwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVDb2RlSW50ZXJwcmV0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb2RlSW50ZXJwcmV0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQ29kZUludGVycHJldGVyXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUNvbmZpZ3VyYXRpb25CdW5kbGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb25maWd1cmF0aW9uQnVuZGxlOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUNvbmZpZ3VyYXRpb25CdW5kbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZURhdGFzZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEYXRhc2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZURhdGFzZXRcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZURhdGFzZXRWZXJzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRGF0YXNldFZlcnNpb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlRGF0YXNldFZlcnNpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlRXZhbHVhdG9yIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRXZhbHVhdG9yOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUV2YWx1YXRvclwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlRXZlbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFdmVudDogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVFdmVudFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlR2F0ZXdheSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdhdGV3YXk6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlR2F0ZXdheVwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTeW5jaHJvbml6ZUdhdGV3YXlUYXJnZXRzXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVHYXRld2F5UmF0ZUxpbWl0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlR2F0ZXdheVJhdGVMaW1pdDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVHYXRld2F5UmF0ZUxpbWl0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUdhdGV3YXlSdWxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlR2F0ZXdheVJ1bGU6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlR2F0ZXdheVJ1bGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlR2F0ZXdheVRhcmdldCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdhdGV3YXlUYXJnZXQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlR2F0ZXdheVRhcmdldFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3luY2hyb25pemVHYXRld2F5VGFyZ2V0c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVIYXJuZXNzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSGFybmVzczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVBZ2VudFJ1bnRpbWVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUhhcm5lc3NcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZU1lbW9yeVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0TWVtb3J5XCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUhhcm5lc3NFbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUhhcm5lc3NFbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVIYXJuZXNzRW5kcG9pbnRcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZU1lbW9yeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZU1lbW9yeTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVNZW1vcnlcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlclwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZU9ubGluZUV2YWx1YXRpb25Db25maWc6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZ1wiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVQYXltZW50Q29ubmVjdG9yIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUGF5bWVudENvbm5lY3Rvcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQYXltZW50Q29ubmVjdG9yXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXJcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVBheW1lbnRJbnN0cnVtZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUGF5bWVudEluc3RydW1lbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUGF5bWVudEluc3RydW1lbnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUGF5bWVudE1hbmFnZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVQYXltZW50TWFuYWdlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQYXltZW50TWFuYWdlclwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVQYXltZW50U2Vzc2lvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBheW1lbnRTZXNzaW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBheW1lbnRTZXNzaW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBvbGljeTogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQb2xpY3lcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVBvbGljeUVuZ2luZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBvbGljeUVuZ2luZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQb2xpY3lFbmdpbmVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUmVnaXN0cnkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZWdpc3RyeTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVSZWdpc3RyeVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUmVnaXN0cnlSZWNvcmQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVSZWdpc3RyeVJlY29yZDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVSZWdpc3RyeVJlY29yZFwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVXb3JrbG9hZElkZW50aXR5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlV29ya2xvYWRJZGVudGl0eTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVXb3JrbG9hZElkZW50aXR5XCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBQlRlc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBQlRlc3Q6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQUJUZXN0XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBZ2VudFJ1bnRpbWUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBZ2VudFJ1bnRpbWU6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQWdlbnRSdW50aW1lXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVBZ2VudFJ1bnRpbWVFbmRwb2ludFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlV29ya2xvYWRJZGVudGl0eVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVBZ2VudFJ1bnRpbWVFbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFnZW50UnVudGltZUVuZHBvaW50OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUFnZW50UnVudGltZUVuZHBvaW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQmF0Y2hFdmFsdWF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQmF0Y2hFdmFsdWF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUJhdGNoRXZhbHVhdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVCcm93c2VyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQnJvd3Nlcjogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVCcm93c2VyXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVCcm93c2VyUHJvZmlsZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUJyb3dzZXJQcm9maWxlOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUJyb3dzZXJQcm9maWxlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUNhcGFjaXR5UHJvdmlkZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDYXBhY2l0eVByb3ZpZGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUNhcGFjaXR5UHJvdmlkZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQ2FwYWNpdHlQcm92aWRlclNlc3Npb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDYXBhY2l0eVByb3ZpZGVyU2Vzc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVDYXBhY2l0eVByb3ZpZGVyU2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVDb2RlSW50ZXJwcmV0ZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb2RlSW50ZXJwcmV0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQ29kZUludGVycHJldGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUNvbmZpZ3VyYXRpb25CdW5kbGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb25maWd1cmF0aW9uQnVuZGxlOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUNvbmZpZ3VyYXRpb25CdW5kbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlRGF0YXNldCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURhdGFzZXQ6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlRGF0YXNldFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlRGF0YXNldEV4YW1wbGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRGF0YXNldEV4YW1wbGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZURhdGFzZXRFeGFtcGxlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVFdmFsdWF0b3IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFdmFsdWF0b3I6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlRXZhbHVhdG9yXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUV2ZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRXZlbnQ6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlRXZlbnRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUdhdGV3YXkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHYXRld2F5OiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUdhdGV3YXlcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUdhdGV3YXlSYXRlTGltaXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHYXRld2F5UmF0ZUxpbWl0OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUdhdGV3YXlSYXRlTGltaXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlR2F0ZXdheVJ1bGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHYXRld2F5UnVsZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVHYXRld2F5UnVsZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVHYXRld2F5VGFyZ2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlR2F0ZXdheVRhcmdldDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVHYXRld2F5VGFyZ2V0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUhhcm5lc3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVIYXJuZXNzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUFnZW50UnVudGltZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlSGFybmVzc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVIYXJuZXNzRW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVIYXJuZXNzRW5kcG9pbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlSGFybmVzc0VuZHBvaW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZU1lbW9yeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU1lbW9yeTogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVNZW1vcnlcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZU1lbW9yeVJlY29yZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU1lbW9yeVJlY29yZDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVNZW1vcnlSZWNvcmRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZzogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVBheW1lbnRDb25uZWN0b3IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQYXltZW50Q29ubmVjdG9yOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBheW1lbnRDb25uZWN0b3JcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVQYXltZW50SW5zdHJ1bWVudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVBheW1lbnRJbnN0cnVtZW50OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBheW1lbnRJbnN0cnVtZW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVBheW1lbnRNYW5hZ2VyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUGF5bWVudE1hbmFnZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUGF5bWVudE1hbmFnZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlUGF5bWVudFNlc3Npb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQYXltZW50U2Vzc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVQYXltZW50U2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQb2xpY3k6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUG9saWN5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVQb2xpY3lFbmdpbmUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQb2xpY3lFbmdpbmU6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUG9saWN5RW5naW5lXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVJlY29tbWVuZGF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVjb21tZW5kYXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUmVjb21tZW5kYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlUmVnaXN0cnkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWdpc3RyeTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVSZWdpc3RyeVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVSZWdpc3RyeVJlY29yZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlZ2lzdHJ5UmVjb3JkOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVJlZ2lzdHJ5UmVjb3JkXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVJlc291cmNlUG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVzb3VyY2VQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUmVzb3VyY2VQb2xpY3lcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlV29ya2xvYWRJZGVudGl0eSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVdvcmtsb2FkSWRlbnRpdHk6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlV29ya2xvYWRJZGVudGl0eVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBFdmFsdWF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEV2YWx1YXRlOiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkV2YWx1YXRlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBQlRlc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEFCVGVzdDogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRBQlRlc3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEFnZW50Q2FyZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QWdlbnRDYXJkOiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkdldEFnZW50Q2FyZFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QWdlbnRSdW50aW1lIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBZ2VudFJ1bnRpbWU6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0QWdlbnRSdW50aW1lXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEFnZW50UnVudGltZUVuZHBvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBZ2VudFJ1bnRpbWVFbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRBZ2VudFJ1bnRpbWVFbmRwb2ludFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEFwaUtleUNyZWRlbnRpYWxQcm92aWRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QmF0Y2hFdmFsdWF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRCYXRjaEV2YWx1YXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0QmF0Y2hFdmFsdWF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEJyb3dzZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEJyb3dzZXI6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6R2V0QnJvd3NlclwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QnJvd3NlclByb2ZpbGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEJyb3dzZXJQcm9maWxlOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldEJyb3dzZXJQcm9maWxlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEJyb3dzZXJTZXNzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRCcm93c2VyU2Vzc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRCcm93c2VyU2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRDYXBhY2l0eVByb3ZpZGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRDYXBhY2l0eVByb3ZpZGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldENhcGFjaXR5UHJvdmlkZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0Q29kZUludGVycHJldGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRDb2RlSW50ZXJwcmV0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0Q29kZUludGVycHJldGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldENvZGVJbnRlcnByZXRlclNlc3Npb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldENvZGVJbnRlcnByZXRlclNlc3Npb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0Q29kZUludGVycHJldGVyU2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRDb25maWd1cmF0aW9uQnVuZGxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRDb25maWd1cmF0aW9uQnVuZGxlOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldENvbmZpZ3VyYXRpb25CdW5kbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0Q29uZmlndXJhdGlvbkJ1bmRsZVZlcnNpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldENvbmZpZ3VyYXRpb25CdW5kbGVWZXJzaW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldENvbmZpZ3VyYXRpb25CdW5kbGVWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldERhdGFzZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldERhdGFzZXQ6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6R2V0RGF0YXNldFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0RXZhbHVhdG9yIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRFdmFsdWF0b3I6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6R2V0RXZhbHVhdG9yXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRFdmVudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0RXZlbnQ6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6R2V0RXZlbnRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEdhdGV3YXkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEdhdGV3YXk6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6R2V0R2F0ZXdheVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0R2F0ZXdheVJhdGVMaW1pdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0R2F0ZXdheVJhdGVMaW1pdDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRHYXRld2F5UmF0ZUxpbWl0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEdhdGV3YXlSdWxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRHYXRld2F5UnVsZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRHYXRld2F5UnVsZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRHYXRld2F5VGFyZ2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRHYXRld2F5VGFyZ2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldEdhdGV3YXlUYXJnZXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0SGFybmVzcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0SGFybmVzczogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRIYXJuZXNzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRIYXJuZXNzRW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEhhcm5lc3NFbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRIYXJuZXNzRW5kcG9pbnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0TWVtb3J5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRNZW1vcnk6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6R2V0TWVtb3J5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRNZW1vcnlSZWNvcmQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldE1lbW9yeVJlY29yZDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRNZW1vcnlSZWNvcmRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0T2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0T2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldE9ubGluZUV2YWx1YXRpb25Db25maWcgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldE9ubGluZUV2YWx1YXRpb25Db25maWc6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0T25saW5lRXZhbHVhdGlvbkNvbmZpZ1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRQYXltZW50Q29ubmVjdG9yIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRQYXltZW50Q29ubmVjdG9yOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBheW1lbnRDb25uZWN0b3JcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0UGF5bWVudENyZWRlbnRpYWxQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0UGF5bWVudENyZWRlbnRpYWxQcm92aWRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFBheW1lbnRJbnN0cnVtZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRQYXltZW50SW5zdHJ1bWVudDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50SW5zdHJ1bWVudFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRQYXltZW50SW5zdHJ1bWVudEJhbGFuY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFBheW1lbnRJbnN0cnVtZW50QmFsYW5jZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50SW5zdHJ1bWVudEJhbGFuY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0UGF5bWVudE1hbmFnZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFBheW1lbnRNYW5hZ2VyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBheW1lbnRNYW5hZ2VyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFBheW1lbnRTZXNzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRQYXltZW50U2Vzc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50U2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFBvbGljeTogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFBvbGljeUVuZ2luZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0UG9saWN5RW5naW5lOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeUVuZ2luZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRQb2xpY3lFbmdpbmVTdW1tYXJ5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRQb2xpY3lFbmdpbmVTdW1tYXJ5OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeUVuZ2luZVN1bW1hcnlcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0UG9saWN5R2VuZXJhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0UG9saWN5R2VuZXJhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lHZW5lcmF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFBvbGljeUdlbmVyYXRpb25TdW1tYXJ5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRQb2xpY3lHZW5lcmF0aW9uU3VtbWFyeTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lHZW5lcmF0aW9uU3VtbWFyeVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRQb2xpY3lTdW1tYXJ5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRQb2xpY3lTdW1tYXJ5OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeVN1bW1hcnlcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0UmVjb21tZW5kYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFJlY29tbWVuZGF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlY29tbWVuZGF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFJlZ2lzdHJ5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRSZWdpc3RyeTogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRSZWdpc3RyeVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0UmVnaXN0cnlSZWNvcmQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFJlZ2lzdHJ5UmVjb3JkOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlZ2lzdHJ5UmVjb3JkXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFJlc291cmNlQXBpS2V5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRSZXNvdXJjZUFwaUtleTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRSZXNvdXJjZUFwaUtleVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRSZXNvdXJjZU9hdXRoMlRva2VuIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRSZXNvdXJjZU9hdXRoMlRva2VuOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlc291cmNlT2F1dGgyVG9rZW5cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0UmVzb3VyY2VQYXltZW50VG9rZW4gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFJlc291cmNlUGF5bWVudFRva2VuOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlc291cmNlUGF5bWVudFRva2VuXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFJlc291cmNlUG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRSZXNvdXJjZVBvbGljeTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRSZXNvdXJjZVBvbGljeVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRUb2tlblZhdWx0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRUb2tlblZhdWx0OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFRva2VuVmF1bHRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0V29ya2xvYWRBY2Nlc3NUb2tlbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0V29ya2xvYWRBY2Nlc3NUb2tlbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRXb3JrbG9hZEFjY2Vzc1Rva2VuXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JKV1QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JKV1Q6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0V29ya2xvYWRBY2Nlc3NUb2tlbkZvckpXVFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9yVXNlcklkIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9yVXNlcklkOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JVc2VySWRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0V29ya2xvYWRJZGVudGl0eSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0V29ya2xvYWRJZGVudGl0eTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRXb3JrbG9hZElkZW50aXR5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEluZ2VzdERhdGEgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBJbmdlc3REYXRhOiBzdHJpbmdbXSA9IFtdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBJbnZva2VBZ2VudFJ1bnRpbWUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBJbnZva2VBZ2VudFJ1bnRpbWU6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQWdlbnRSdW50aW1lXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VBZ2VudFJ1bnRpbWVGb3JVc2VyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEludm9rZUFnZW50UnVudGltZUNvbW1hbmQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBJbnZva2VBZ2VudFJ1bnRpbWVDb21tYW5kOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZUFnZW50UnVudGltZUNvbW1hbmRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgSW52b2tlQnJvd3NlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEludm9rZUJyb3dzZXI6IHN0cmluZ1tdID0gW107XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEludm9rZUNvZGVJbnRlcnByZXRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEludm9rZUNvZGVJbnRlcnByZXRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VDb2RlSW50ZXJwcmV0ZXJcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0Q29kZUludGVycHJldGVyU2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBJbnZva2VIYXJuZXNzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW52b2tlSGFybmVzczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VBZ2VudFJ1bnRpbWVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZUhhcm5lc3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFCVGVzdHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QUJUZXN0czogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QUJUZXN0c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFjdG9ycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBY3RvcnM6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFjdG9yc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFnZW50UnVudGltZUVuZHBvaW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZ2VudFJ1bnRpbWVFbmRwb2ludHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFnZW50UnVudGltZUVuZHBvaW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QWdlbnRSdW50aW1lVmVyc2lvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWdlbnRSdW50aW1lVmVyc2lvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFnZW50UnVudGltZVZlcnNpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBZ2VudFJ1bnRpbWVWZXJzaW9uc0J5Q2FwYWNpdHlQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZ2VudFJ1bnRpbWVWZXJzaW9uc0J5Q2FwYWNpdHlQcm92aWRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QWdlbnRSdW50aW1lVmVyc2lvbnNCeUNhcGFjaXR5UHJvdmlkZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFnZW50UnVudGltZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWdlbnRSdW50aW1lczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QWdlbnRSdW50aW1lc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RCYXRjaEV2YWx1YXRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEJhdGNoRXZhbHVhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEJhdGNoRXZhbHVhdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEJyb3dzZXJQcm9maWxlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RCcm93c2VyUHJvZmlsZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEJyb3dzZXJQcm9maWxlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QnJvd3NlclNlc3Npb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEJyb3dzZXJTZXNzaW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QnJvd3NlclNlc3Npb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RCcm93c2VycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RCcm93c2Vyczogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QnJvd3NlcnNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RDYXBhY2l0eVByb3ZpZGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDYXBhY2l0eVByb3ZpZGVyczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0Q2FwYWNpdHlQcm92aWRlcnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdENvZGVJbnRlcnByZXRlclNlc3Npb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvZGVJbnRlcnByZXRlclNlc3Npb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0Q29kZUludGVycHJldGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb2RlSW50ZXJwcmV0ZXJzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb2RlSW50ZXJwcmV0ZXJzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RDb25maWd1cmF0aW9uQnVuZGxlVmVyc2lvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29uZmlndXJhdGlvbkJ1bmRsZVZlcnNpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb25maWd1cmF0aW9uQnVuZGxlVmVyc2lvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdENvbmZpZ3VyYXRpb25CdW5kbGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvbmZpZ3VyYXRpb25CdW5kbGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb25maWd1cmF0aW9uQnVuZGxlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0RGF0YXNldEV4YW1wbGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERhdGFzZXRFeGFtcGxlczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0RGF0YXNldEV4YW1wbGVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3REYXRhc2V0VmVyc2lvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGF0YXNldFZlcnNpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3REYXRhc2V0VmVyc2lvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdERhdGFzZXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERhdGFzZXRzOiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkxpc3REYXRhc2V0c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEV2YWx1YXRvcnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RXZhbHVhdG9yczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0RXZhbHVhdG9yc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0RXZlbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEV2ZW50czogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0RXZlbnRzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0R2F0ZXdheVJhdGVMaW1pdHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0R2F0ZXdheVJhdGVMaW1pdHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEdhdGV3YXlSYXRlTGltaXRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RHYXRld2F5UnVsZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0R2F0ZXdheVJ1bGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RHYXRld2F5UnVsZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEdhdGV3YXlUYXJnZXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEdhdGV3YXlUYXJnZXRzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RHYXRld2F5VGFyZ2V0c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0R2F0ZXdheXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0R2F0ZXdheXM6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEdhdGV3YXlzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0SGFybmVzc0VuZHBvaW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RIYXJuZXNzRW5kcG9pbnRzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RIYXJuZXNzRW5kcG9pbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RIYXJuZXNzVmVyc2lvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SGFybmVzc1ZlcnNpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RIYXJuZXNzVmVyc2lvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEhhcm5lc3NlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RIYXJuZXNzZXM6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEhhcm5lc3Nlc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdE1lbW9yaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE1lbW9yaWVzOiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RNZW1vcmllc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdE1lbW9yeUV4dHJhY3Rpb25Kb2JzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE1lbW9yeUV4dHJhY3Rpb25Kb2JzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RNZW1vcnlFeHRyYWN0aW9uSm9ic1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0TWVtb3J5UmVjb3JkcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RNZW1vcnlSZWNvcmRzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RNZW1vcnlSZWNvcmRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXJzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE9hdXRoMkNyZWRlbnRpYWxQcm92aWRlcnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdE9hdXRoMkNyZWRlbnRpYWxQcm92aWRlcnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdE9ubGluZUV2YWx1YXRpb25Db25maWdzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE9ubGluZUV2YWx1YXRpb25Db25maWdzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RPbmxpbmVFdmFsdWF0aW9uQ29uZmlnc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UGF5bWVudENvbm5lY3RvcnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UGF5bWVudENvbm5lY3RvcnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBheW1lbnRDb25uZWN0b3JzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudENyZWRlbnRpYWxQcm92aWRlcnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFBheW1lbnRJbnN0cnVtZW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQYXltZW50SW5zdHJ1bWVudHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBheW1lbnRJbnN0cnVtZW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UGF5bWVudE1hbmFnZXJzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBheW1lbnRNYW5hZ2Vyczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudE1hbmFnZXJzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RQYXltZW50U2Vzc2lvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UGF5bWVudFNlc3Npb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQYXltZW50U2Vzc2lvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFBvbGljaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBvbGljaWVzOiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQb2xpY2llc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFBvbGljeUVuZ2luZVN1bW1hcmllcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY3lFbmdpbmVTdW1tYXJpZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeUVuZ2luZVN1bW1hcmllc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UG9saWN5RW5naW5lcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY3lFbmdpbmVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQb2xpY3lFbmdpbmVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RQb2xpY3lHZW5lcmF0aW9uQXNzZXRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBvbGljeUdlbmVyYXRpb25Bc3NldHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeUdlbmVyYXRpb25Bc3NldHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFBvbGljeUdlbmVyYXRpb25TdW1tYXJpZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UG9saWN5R2VuZXJhdGlvblN1bW1hcmllczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWN5R2VuZXJhdGlvblN1bW1hcmllc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UG9saWN5R2VuZXJhdGlvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UG9saWN5R2VuZXJhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeUdlbmVyYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RQb2xpY3lTdW1tYXJpZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UG9saWN5U3VtbWFyaWVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQb2xpY3lTdW1tYXJpZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFJlY29tbWVuZGF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWNvbW1lbmRhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFJlY29tbWVuZGF0aW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVnaXN0cmllcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWdpc3RyaWVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RSZWdpc3RyaWVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RSZWdpc3RyeVJlY29yZHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UmVnaXN0cnlSZWNvcmRzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RSZWdpc3RyeVJlY29yZHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFNlc3Npb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlc3Npb25zOiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RTZXNzaW9uc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFRhZ3NGb3JSZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RUYWdzRm9yUmVzb3VyY2U6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFRhZ3NGb3JSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0V29ya2xvYWRJZGVudGl0aWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFdvcmtsb2FkSWRlbnRpdGllczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0V29ya2xvYWRJZGVudGl0aWVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFByb2Nlc3NQYXltZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHJvY2Vzc1BheW1lbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6UHJvY2Vzc1BheW1lbnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHV0UmVzb3VyY2VQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQdXRSZXNvdXJjZVBvbGljeTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpQdXRSZXNvdXJjZVBvbGljeVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBSZXRyaWV2ZU1lbW9yeVJlY29yZHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBSZXRyaWV2ZU1lbW9yeVJlY29yZHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6UmV0cmlldmVNZW1vcnlSZWNvcmRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFNhdmVCcm93c2VyU2Vzc2lvblByb2ZpbGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTYXZlQnJvd3NlclNlc3Npb25Qcm9maWxlOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlNhdmVCcm93c2VyU2Vzc2lvblByb2ZpbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2VhcmNoUmVnaXN0cnlSZWNvcmRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2VhcmNoUmVnaXN0cnlSZWNvcmRzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlNlYXJjaFJlZ2lzdHJ5UmVjb3Jkc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTZXRUb2tlblZhdWx0Q01LIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BTZXRUb2tlblZhdWx0Q01LOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlNldFRva2VuVmF1bHRDTUtcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRCYXRjaEV2YWx1YXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEJhdGNoRXZhbHVhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTdGFydEJhdGNoRXZhbHVhdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydEJyb3dzZXJTZXNzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRCcm93c2VyU2Vzc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTdGFydEJyb3dzZXJTZXNzaW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0YXJ0Q29kZUludGVycHJldGVyU2Vzc2lvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0Q29kZUludGVycHJldGVyU2Vzc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTdGFydENvZGVJbnRlcnByZXRlclNlc3Npb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRNZW1vcnlFeHRyYWN0aW9uSm9iIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRNZW1vcnlFeHRyYWN0aW9uSm9iOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0TWVtb3J5RXh0cmFjdGlvbkpvYlwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydFBvbGljeUdlbmVyYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydFBvbGljeUdlbmVyYXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRQb2xpY3lHZW5lcmF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0YXJ0UmVjb21tZW5kYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydFJlY29tbWVuZGF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0UmVjb21tZW5kYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RvcEJhdGNoRXZhbHVhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BCYXRjaEV2YWx1YXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3RvcEJhdGNoRXZhbHVhdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdG9wQnJvd3NlclNlc3Npb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wQnJvd3NlclNlc3Npb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3RvcEJyb3dzZXJTZXNzaW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0b3BDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcENvZGVJbnRlcnByZXRlclNlc3Npb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3RvcENvZGVJbnRlcnByZXRlclNlc3Npb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RvcFJ1bnRpbWVTZXNzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcFJ1bnRpbWVTZXNzaW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN0b3BSdW50aW1lU2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdWJtaXRSZWdpc3RyeVJlY29yZEZvckFwcHJvdmFsIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3VibWl0UmVnaXN0cnlSZWNvcmRGb3JBcHByb3ZhbDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTdWJtaXRSZWdpc3RyeVJlY29yZEZvckFwcHJvdmFsXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN5bmNocm9uaXplR2F0ZXdheVRhcmdldHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTeW5jaHJvbml6ZUdhdGV3YXlUYXJnZXRzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN5bmNocm9uaXplR2F0ZXdheVRhcmdldHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVGFnUmVzb3VyY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBUYWdSZXNvdXJjZTogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVW50YWdSZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVudGFnUmVzb3VyY2U6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6VW50YWdSZXNvdXJjZVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQUJUZXN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQUJUZXN0OiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQUJUZXN0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUFnZW50UnVudGltZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFnZW50UnVudGltZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpQYXNzQ2FwYWNpdHlQcm92aWRlclwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVBZ2VudFJ1bnRpbWVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQWdlbnRSdW50aW1lRW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBZ2VudFJ1bnRpbWVFbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVBZ2VudFJ1bnRpbWVFbmRwb2ludFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUJyb3dzZXJTdHJlYW0gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVCcm93c2VyU3RyZWFtOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUJyb3dzZXJTdHJlYW1cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQ2FwYWNpdHlQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNhcGFjaXR5UHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQ2FwYWNpdHlQcm92aWRlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVDb25maWd1cmF0aW9uQnVuZGxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ29uZmlndXJhdGlvbkJ1bmRsZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVDb25maWd1cmF0aW9uQnVuZGxlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZURhdGFzZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVEYXRhc2V0OiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZURhdGFzZXRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZURhdGFzZXRFeGFtcGxlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZURhdGFzZXRFeGFtcGxlczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVEYXRhc2V0RXhhbXBsZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlRXZhbHVhdG9yIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlRXZhbHVhdG9yOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUV2YWx1YXRvclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVHYXRld2F5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlR2F0ZXdheTogc3RyaW5nW10gPSBbXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUdhdGV3YXlcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlR2F0ZXdheVJhdGVMaW1pdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUdhdGV3YXlSYXRlTGltaXQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlR2F0ZXdheVJhdGVMaW1pdFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVHYXRld2F5UnVsZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUdhdGV3YXlSdWxlOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUdhdGV3YXlSdWxlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUdhdGV3YXlUYXJnZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVHYXRld2F5VGFyZ2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN5bmNocm9uaXplR2F0ZXdheVRhcmdldHNcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUdhdGV3YXlUYXJnZXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlSGFybmVzcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUhhcm5lc3M6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0TWVtb3J5XCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUFnZW50UnVudGltZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlSGFybmVzc1wiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlTWVtb3J5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUhhcm5lc3NFbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUhhcm5lc3NFbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVIYXJuZXNzRW5kcG9pbnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlTWVtb3J5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlTWVtb3J5OiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlTWVtb3J5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZU9ubGluZUV2YWx1YXRpb25Db25maWc6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVBheW1lbnRDb25uZWN0b3IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVQYXltZW50Q29ubmVjdG9yOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVBheW1lbnRDb25uZWN0b3JcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVQYXltZW50TWFuYWdlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBheW1lbnRNYW5hZ2VyOiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUGF5bWVudE1hbmFnZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlUG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUG9saWN5OiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVBvbGljeVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlUG9saWN5RW5naW5lIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUG9saWN5RW5naW5lOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVBvbGljeUVuZ2luZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVSZWdpc3RyeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVJlZ2lzdHJ5OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVJlZ2lzdHJ5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVJlZ2lzdHJ5UmVjb3JkIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVnaXN0cnlSZWNvcmQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVSZWdpc3RyeVJlY29yZFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVSZWdpc3RyeVJlY29yZFN0YXR1cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVJlZ2lzdHJ5UmVjb3JkU3RhdHVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVJlZ2lzdHJ5UmVjb3JkU3RhdHVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVdvcmtsb2FkSWRlbnRpdHkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVXb3JrbG9hZElkZW50aXR5OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVdvcmtsb2FkSWRlbnRpdHlcIixcblx0XTtcbn1cblxuLyoqXG4gKiBDb25kaXRpb24ga2V5IGNvbnN0YW50cyBhbmQgYnVpbGRlcnMgZm9yIGJlZHJvY2stYWdlbnRjb3JlLlxuICovXG5leHBvcnQgY2xhc3MgQmVkcm9ja0FnZW50Y29yZUNvbmRpdGlvbnMge1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQmF0Y2hDcmVhdGVNZW1vcnlSZWNvcmRzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoQ3JlYXRlTWVtb3J5UmVjb3Jkc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6bmFtZXNwYWNlXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBCYXRjaFVwZGF0ZU1lbW9yeVJlY29yZHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hVcGRhdGVNZW1vcnlSZWNvcmRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpuYW1lc3BhY2VcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENvbXBsZXRlUmVzb3VyY2VUb2tlbkF1dGggYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ29tcGxldGVSZXNvdXJjZVRva2VuQXV0aENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2F1ZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2NsaWVudF9pZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2lzc1wiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL3Njb3BlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vc3ViXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTp1c2VyaWRcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUFnZW50UnVudGltZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZ2VudFJ1bnRpbWVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlJ1bnRpbWVBdXRob3JpemVyVHlwZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c2VjdXJpdHlHcm91cHNcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOnN1Ym5ldHNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUFnZW50UnVudGltZUVuZHBvaW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFnZW50UnVudGltZUVuZHBvaW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVCcm93c2VyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUJyb3dzZXJDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOnNlY3VyaXR5R3JvdXBzXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpzdWJuZXRzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVCcm93c2VyUHJvZmlsZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVCcm93c2VyUHJvZmlsZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlQ2FwYWNpdHlQcm92aWRlciBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDYXBhY2l0eVByb3ZpZGVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVDb2RlSW50ZXJwcmV0ZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29kZUludGVycHJldGVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpzZWN1cml0eUdyb3Vwc1wiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c3VibmV0c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlRGF0YXNldCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEYXRhc2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVFdmFsdWF0b3IgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRXZhbHVhdG9yQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVFdmVudCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFdmVudENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6YWN0b3JJZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c2Vzc2lvbklkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVHYXRld2F5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdhdGV3YXlDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUhhcm5lc3MgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSGFybmVzc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlSGFybmVzc0VuZHBvaW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUhhcm5lc3NFbmRwb2ludENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlTWVtb3J5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZU1lbW9yeUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6S21zS2V5QXJuXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZU9ubGluZUV2YWx1YXRpb25Db25maWdDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlckNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlUGF5bWVudE1hbmFnZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUGF5bWVudE1hbmFnZXJDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRpc2NvdmVyeVVybFwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlUG9saWN5RW5naW5lIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBvbGljeUVuZ2luZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlV29ya2xvYWRJZGVudGl0eSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVXb3JrbG9hZElkZW50aXR5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVFdmVudCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFdmVudENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6YWN0b3JJZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c2Vzc2lvbklkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRFdmVudCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRFdmVudENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6YWN0b3JJZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c2Vzc2lvbklkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9ySldUIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JKV1RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9hdWRcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9jbGllbnRfaWRcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9pc3NcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9zY29wZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL3N1YlwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0V29ya2xvYWRBY2Nlc3NUb2tlbkZvclVzZXJJZCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9yVXNlcklkQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcImJlZHJvY2stYWdlbnRjb3JlOnVzZXJpZFwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RFdmVudHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEV2ZW50c0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6YWN0b3JJZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c2Vzc2lvbklkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0TWVtb3J5UmVjb3JkcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0TWVtb3J5UmVjb3Jkc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6bmFtZXNwYWNlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpzdHJhdGVneUlkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0U2Vzc2lvbnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlc3Npb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTphY3RvcklkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRTeXN0ZW1Mb2dFdmVudHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0U3lzdGVtTG9nRXZlbnRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpydW50aW1lU2Vzc2lvbklkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBSZXRyaWV2ZU1lbW9yeVJlY29yZHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmV0cmlldmVNZW1vcnlSZWNvcmRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpuYW1lc3BhY2VcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOnN0cmF0ZWd5SWRcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFN0YXJ0TWVtb3J5RXh0cmFjdGlvbkpvYiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydE1lbW9yeUV4dHJhY3Rpb25Kb2JDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOmFjdG9ySWRcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOnNlc3Npb25JZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c3RyYXRlZ3lJZFwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVGFnUmVzb3VyY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVGFnUmVzb3VyY2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFVudGFnUmVzb3VyY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVW50YWdSZXNvdXJjZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wiYXdzOlRhZ0tleXNcIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVBZ2VudFJ1bnRpbWUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQWdlbnRSdW50aW1lQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpSdW50aW1lQXV0aG9yaXplclR5cGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOnNlY3VyaXR5R3JvdXBzXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpzdWJuZXRzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVQYXltZW50TWFuYWdlciBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVQYXltZW50TWFuYWdlckNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGlzY292ZXJ5VXJsXCIsXG5cdF07XG5cblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1JFUVVFU1RfVEFHID0gXCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFXU19SRVNPVVJDRV9UQUcgPSBcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpUYWdLZXlzIChBcnJheU9mU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1RBR19LRVlTID0gXCJhd3M6VGFnS2V5c1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6QWxsb3dlZFF1ZXJ5UGFyYW1ldGVycyAoQXJyYXlPZlN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFMTE9XRURfUVVFUllfUEFSQU1FVEVSUyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpBbGxvd2VkUXVlcnlQYXJhbWV0ZXJzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpBbGxvd2VkUmVxdWVzdEhlYWRlcnMgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBTExPV0VEX1JFUVVFU1RfSEVBREVSUyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpBbGxvd2VkUmVxdWVzdEhlYWRlcnNcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOkFsbG93ZWRSZXNwb25zZUhlYWRlcnMgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBTExPV0VEX1JFU1BPTlNFX0hFQURFUlMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6QWxsb3dlZFJlc3BvbnNlSGVhZGVyc1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6Q3JlZGVudGlhbFByb3ZpZGVyU2NvcGUgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBDUkVERU5USUFMX1BST1ZJREVSX1NDT1BFID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWRlbnRpYWxQcm92aWRlclNjb3BlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpDcmVkZW50aWFsUHJvdmlkZXJUeXBlIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBDUkVERU5USUFMX1BST1ZJREVSX1RZUEUgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlZGVudGlhbFByb3ZpZGVyVHlwZVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6RGlzY292ZXJ5VXJsIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBESVNDT1ZFUllfVVJMID0gXCJiZWRyb2NrLWFnZW50Y29yZTpEaXNjb3ZlcnlVcmxcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOkdhdGV3YXlBdXRob3JpemVyVHlwZSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgR0FURVdBWV9BVVRIT1JJWkVSX1RZUEUgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2F0ZXdheUF1dGhvcml6ZXJUeXBlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpIdHRwVGFyZ2V0Q29uZmlndXJhdGlvblR5cGUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEhUVFBfVEFSR0VUX0NPTkZJR1VSQVRJT05fVFlQRSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpIdHRwVGFyZ2V0Q29uZmlndXJhdGlvblR5cGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9hdWQgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBJTkJPVU5EX0pXVF9DTEFJTV9BVUQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2F1ZFwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2NsaWVudF9pZCAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSU5CT1VORF9KV1RfQ0xBSU1fQ0xJRU5UX0lEID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9jbGllbnRfaWRcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9pc3MgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IElOQk9VTkRfSldUX0NMQUlNX0lTUyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vaXNzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vc2NvcGUgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBJTkJPVU5EX0pXVF9DTEFJTV9TQ09QRSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vc2NvcGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9zdWIgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IElOQk9VTkRfSldUX0NMQUlNX1NVQiA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vc3ViXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpJbmZlcmVuY2VUYXJnZXRDb25maWd1cmF0aW9uVHlwZSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSU5GRVJFTkNFX1RBUkdFVF9DT05GSUdVUkFUSU9OX1RZUEUgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5mZXJlbmNlVGFyZ2V0Q29uZmlndXJhdGlvblR5cGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOkttc0tleUFybiAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgS01TX0tFWV9BUk4gPSBcImJlZHJvY2stYWdlbnRjb3JlOkttc0tleUFyblwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6TWNwVGFyZ2V0Q29uZmlndXJhdGlvblR5cGUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1DUF9UQVJHRVRfQ09ORklHVVJBVElPTl9UWVBFID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOk1jcFRhcmdldENvbmZpZ3VyYXRpb25UeXBlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpQb2xpY3lFbmdpbmVBcm4gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFBPTElDWV9FTkdJTkVfQVJOID0gXCJiZWRyb2NrLWFnZW50Y29yZTpQb2xpY3lFbmdpbmVBcm5cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOlBvbGljeUVuZ2luZU1vZGUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFBPTElDWV9FTkdJTkVfTU9ERSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6UG9saWN5RW5naW5lTW9kZVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6UHJpdmF0ZUVuZHBvaW50VHlwZSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUFJJVkFURV9FTkRQT0lOVF9UWVBFID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlByaXZhdGVFbmRwb2ludFR5cGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOlByb3RvY29sVHlwZSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUFJPVE9DT0xfVFlQRSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6UHJvdG9jb2xUeXBlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpSZXNvdXJjZUNvbmZpZ3VyYXRpb25JZGVudGlmaWVyIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBSRVNPVVJDRV9DT05GSUdVUkFUSU9OX0lERU5USUZJRVIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6UmVzb3VyY2VDb25maWd1cmF0aW9uSWRlbnRpZmllclwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6UnVudGltZUF1dGhvcml6ZXJUeXBlIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBSVU5USU1FX0FVVEhPUklaRVJfVFlQRSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpSdW50aW1lQXV0aG9yaXplclR5cGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOmFjdG9ySWQgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFDVE9SX0lEID0gXCJiZWRyb2NrLWFnZW50Y29yZTphY3RvcklkXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpuYW1lc3BhY2UgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IE5BTUVTUEFDRSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6bmFtZXNwYWNlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpydW50aW1lU2Vzc2lvbklkIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBSVU5USU1FX1NFU1NJT05fSUQgPSBcImJlZHJvY2stYWdlbnRjb3JlOnJ1bnRpbWVTZXNzaW9uSWRcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOnNlY3VyaXR5R3JvdXBzIChBcnJheU9mU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU0VDVVJJVFlfR1JPVVBTID0gXCJiZWRyb2NrLWFnZW50Y29yZTpzZWN1cml0eUdyb3Vwc1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6c2Vzc2lvbklkIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBTRVNTSU9OX0lEID0gXCJiZWRyb2NrLWFnZW50Y29yZTpzZXNzaW9uSWRcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOnN0cmF0ZWd5SWQgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFNUUkFURUdZX0lEID0gXCJiZWRyb2NrLWFnZW50Y29yZTpzdHJhdGVneUlkXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpzdWJuZXRzIChBcnJheU9mU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU1VCTkVUUyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6c3VibmV0c1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6dXNlcmlkIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBVU0VSSUQgPSBcImJlZHJvY2stYWdlbnRjb3JlOnVzZXJpZFwiO1xuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHJlcXVlc3RUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHJlc291cmNlVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYXdzOlRhZ0tleXNgLlxuXHQgKi9cblx0c3RhdGljIHRhZ0tleXModmFsdWVzOiBzdHJpbmdbXSk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7IFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7IFwiYXdzOlRhZ0tleXNcIjogdmFsdWVzIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpBbGxvd2VkUXVlcnlQYXJhbWV0ZXJzYC5cblx0ICovXG5cdHN0YXRpYyBhbGxvd2VkUXVlcnlQYXJhbWV0ZXJzKFxuXHRcdHZhbHVlczogc3RyaW5nW10sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRcIkZvckFsbFZhbHVlczpTdHJpbmdFcXVhbHNcIjoge1xuXHRcdFx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkFsbG93ZWRRdWVyeVBhcmFtZXRlcnNcIjogdmFsdWVzLFxuXHRcdFx0fSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOkFsbG93ZWRSZXF1ZXN0SGVhZGVyc2AuXG5cdCAqL1xuXHRzdGF0aWMgYWxsb3dlZFJlcXVlc3RIZWFkZXJzKFxuXHRcdHZhbHVlczogc3RyaW5nW10sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRcIkZvckFsbFZhbHVlczpTdHJpbmdFcXVhbHNcIjoge1xuXHRcdFx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkFsbG93ZWRSZXF1ZXN0SGVhZGVyc1wiOiB2YWx1ZXMsXG5cdFx0XHR9LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6QWxsb3dlZFJlc3BvbnNlSGVhZGVyc2AuXG5cdCAqL1xuXHRzdGF0aWMgYWxsb3dlZFJlc3BvbnNlSGVhZGVycyhcblx0XHR2YWx1ZXM6IHN0cmluZ1tdLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4+IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0XCJGb3JBbGxWYWx1ZXM6U3RyaW5nRXF1YWxzXCI6IHtcblx0XHRcdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpBbGxvd2VkUmVzcG9uc2VIZWFkZXJzXCI6IHZhbHVlcyxcblx0XHRcdH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpDcmVkZW50aWFsUHJvdmlkZXJTY29wZWAuXG5cdCAqL1xuXHRzdGF0aWMgY3JlZGVudGlhbFByb3ZpZGVyU2NvcGUoXG5cdFx0dmFsdWVzOiBzdHJpbmdbXSxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+PiB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7XG5cdFx0XHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlZGVudGlhbFByb3ZpZGVyU2NvcGVcIjogdmFsdWVzLFxuXHRcdFx0fSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOkNyZWRlbnRpYWxQcm92aWRlclR5cGVgLlxuXHQgKi9cblx0c3RhdGljIGNyZWRlbnRpYWxQcm92aWRlclR5cGUoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVkZW50aWFsUHJvdmlkZXJUeXBlXCI6IHZhbHVlIH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpEaXNjb3ZlcnlVcmxgLlxuXHQgKi9cblx0c3RhdGljIGRpc2NvdmVyeVVSTCh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImJlZHJvY2stYWdlbnRjb3JlOkRpc2NvdmVyeVVybFwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6R2F0ZXdheUF1dGhvcml6ZXJUeXBlYC5cblx0ICovXG5cdHN0YXRpYyBnYXRld2F5QXV0aG9yaXplclR5cGUoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpHYXRld2F5QXV0aG9yaXplclR5cGVcIjogdmFsdWUgfSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOkh0dHBUYXJnZXRDb25maWd1cmF0aW9uVHlwZWAuXG5cdCAqL1xuXHRzdGF0aWMgaHR0cFRhcmdldENvbmZpZ3VyYXRpb25UeXBlKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0U3RyaW5nRXF1YWxzOiB7IFwiYmVkcm9jay1hZ2VudGNvcmU6SHR0cFRhcmdldENvbmZpZ3VyYXRpb25UeXBlXCI6IHZhbHVlIH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vYXVkYC5cblx0ICovXG5cdHN0YXRpYyBpbmJvdW5kSnd0Q2xhaW1BdWQoXG5cdFx0dmFsdWVzOiBzdHJpbmdbXSxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+PiB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7XG5cdFx0XHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2F1ZFwiOiB2YWx1ZXMsXG5cdFx0XHR9LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2NsaWVudF9pZGAuXG5cdCAqL1xuXHRzdGF0aWMgaW5ib3VuZEp3dENsYWltQ2xpZW50SWQoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vY2xpZW50X2lkXCI6IHZhbHVlIH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vaXNzYC5cblx0ICovXG5cdHN0YXRpYyBpbmJvdW5kSnd0Q2xhaW1Jc3MoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9pc3NcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9zY29wZWAuXG5cdCAqL1xuXHRzdGF0aWMgaW5ib3VuZEp3dENsYWltU2NvcGUoXG5cdFx0dmFsdWVzOiBzdHJpbmdbXSxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+PiB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7XG5cdFx0XHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL3Njb3BlXCI6IHZhbHVlcyxcblx0XHRcdH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vc3ViYC5cblx0ICovXG5cdHN0YXRpYyBpbmJvdW5kSnd0Q2xhaW1TdWIoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9zdWJcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOkluZmVyZW5jZVRhcmdldENvbmZpZ3VyYXRpb25UeXBlYC5cblx0ICovXG5cdHN0YXRpYyBpbmZlcmVuY2VUYXJnZXRDb25maWd1cmF0aW9uVHlwZShcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdFN0cmluZ0VxdWFsczoge1xuXHRcdFx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkluZmVyZW5jZVRhcmdldENvbmZpZ3VyYXRpb25UeXBlXCI6IHZhbHVlLFxuXHRcdFx0fSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOkttc0tleUFybmAuXG5cdCAqL1xuXHRzdGF0aWMga21zS2V5QVJOKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYmVkcm9jay1hZ2VudGNvcmU6S21zS2V5QXJuXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpNY3BUYXJnZXRDb25maWd1cmF0aW9uVHlwZWAuXG5cdCAqL1xuXHRzdGF0aWMgbWNwVGFyZ2V0Q29uZmlndXJhdGlvblR5cGUoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpNY3BUYXJnZXRDb25maWd1cmF0aW9uVHlwZVwiOiB2YWx1ZSB9LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6UG9saWN5RW5naW5lQXJuYC5cblx0ICovXG5cdHN0YXRpYyBwb2xpY3lFbmdpbmVBUk4oXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImJlZHJvY2stYWdlbnRjb3JlOlBvbGljeUVuZ2luZUFyblwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6UG9saWN5RW5naW5lTW9kZWAuXG5cdCAqL1xuXHRzdGF0aWMgcG9saWN5RW5naW5lTW9kZShcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYmVkcm9jay1hZ2VudGNvcmU6UG9saWN5RW5naW5lTW9kZVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6UHJpdmF0ZUVuZHBvaW50VHlwZWAuXG5cdCAqL1xuXHRzdGF0aWMgcHJpdmF0ZUVuZHBvaW50VHlwZShcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYmVkcm9jay1hZ2VudGNvcmU6UHJpdmF0ZUVuZHBvaW50VHlwZVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6UHJvdG9jb2xUeXBlYC5cblx0ICovXG5cdHN0YXRpYyBwcm90b2NvbFR5cGUodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpQcm90b2NvbFR5cGVcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOlJlc291cmNlQ29uZmlndXJhdGlvbklkZW50aWZpZXJgLlxuXHQgKi9cblx0c3RhdGljIHJlc291cmNlQ29uZmlndXJhdGlvbklkZW50aWZpZXIoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRTdHJpbmdFcXVhbHM6IHtcblx0XHRcdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpSZXNvdXJjZUNvbmZpZ3VyYXRpb25JZGVudGlmaWVyXCI6IHZhbHVlLFxuXHRcdFx0fSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOlJ1bnRpbWVBdXRob3JpemVyVHlwZWAuXG5cdCAqL1xuXHRzdGF0aWMgcnVudGltZUF1dGhvcml6ZXJUeXBlKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0U3RyaW5nRXF1YWxzOiB7IFwiYmVkcm9jay1hZ2VudGNvcmU6UnVudGltZUF1dGhvcml6ZXJUeXBlXCI6IHZhbHVlIH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTphY3RvcklkYC5cblx0ICovXG5cdHN0YXRpYyBhY3RvcklkKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYmVkcm9jay1hZ2VudGNvcmU6YWN0b3JJZFwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6bmFtZXNwYWNlYC5cblx0ICovXG5cdHN0YXRpYyBuYW1lc3BhY2UodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpuYW1lc3BhY2VcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOnJ1bnRpbWVTZXNzaW9uSWRgLlxuXHQgKi9cblx0c3RhdGljIHJ1bnRpbWVTZXNzaW9uSWQoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImJlZHJvY2stYWdlbnRjb3JlOnJ1bnRpbWVTZXNzaW9uSWRcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOnNlY3VyaXR5R3JvdXBzYC5cblx0ICovXG5cdHN0YXRpYyBzZWN1cml0eUdyb3Vwcyhcblx0XHR2YWx1ZXM6IHN0cmluZ1tdLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4+IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0XCJGb3JBbGxWYWx1ZXM6U3RyaW5nRXF1YWxzXCI6IHtcblx0XHRcdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpzZWN1cml0eUdyb3Vwc1wiOiB2YWx1ZXMsXG5cdFx0XHR9LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6c2Vzc2lvbklkYC5cblx0ICovXG5cdHN0YXRpYyBzZXNzaW9uSWQodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpzZXNzaW9uSWRcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOnN0cmF0ZWd5SWRgLlxuXHQgKi9cblx0c3RhdGljIHN0cmF0ZWd5SWQodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpzdHJhdGVneUlkXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpzdWJuZXRzYC5cblx0ICovXG5cdHN0YXRpYyBzdWJuZXRzKHZhbHVlczogc3RyaW5nW10pOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4+IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0XCJGb3JBbGxWYWx1ZXM6U3RyaW5nRXF1YWxzXCI6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpzdWJuZXRzXCI6IHZhbHVlcyB9LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6dXNlcmlkYC5cblx0ICovXG5cdHN0YXRpYyB1c2VyaWQodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTp1c2VyaWRcIjogdmFsdWUgfSB9O1xuXHR9XG59XG4iXX0=
|
|
3179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVkcm9jay1hZ2VudGNvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZ2VuZXJhdGVkL3NlcnZpY2VzL2JlZHJvY2stYWdlbnRjb3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0ZBQWdGO0FBQ2hGLDZDQUE2QztBQUM3QywwREFBMEQ7QUFDMUQsd0RBQXdEO0FBQ3hELG9EQUFvRDtBQUNwRCxnRkFBZ0Y7QUFFaEY7O0dBRUc7QUFDSCxNQUFhLHVCQUF1Qjs7QUFBcEMsMERBZzVCQzs7O0FBLzRCQSw4QkFBOEI7QUFDZCxzQ0FBYyxHQUFHLG1CQUFtQixDQUFDO0FBRXJELG1EQUFtRDtBQUNuQywwQ0FBa0IsR0FBRyxzQ0FBc0MsQ0FBQztBQUM1RSxpRkFBaUY7QUFDakUseURBQWlDLEdBQ2hELHFEQUFxRCxDQUFDO0FBQ3ZELCtEQUErRDtBQUMvQyx1Q0FBZSxHQUFHLG1DQUFtQyxDQUFDO0FBQ3RFLHlEQUF5RDtBQUN6QyxnREFBd0IsR0FDdkMsNENBQTRDLENBQUM7QUFDOUMseURBQXlEO0FBQ3pDLGdEQUF3QixHQUN2Qyw0Q0FBNEMsQ0FBQztBQUM5QywwREFBMEQ7QUFDMUMsaURBQXlCLEdBQ3hDLDZDQUE2QyxDQUFDO0FBQy9DLHlEQUF5RDtBQUN6QyxnREFBd0IsR0FDdkMsNENBQTRDLENBQUM7QUFDOUMseURBQXlEO0FBQ3pDLGlEQUF5QixHQUN4Qyw2Q0FBNkMsQ0FBQztBQUMvQyw4REFBOEQ7QUFDOUMsc0RBQThCLEdBQzdDLGtEQUFrRCxDQUFDO0FBQ3BELDREQUE0RDtBQUM1QyxvREFBNEIsR0FDM0MsZ0RBQWdELENBQUM7QUFDbEQsNkNBQTZDO0FBQzdCLG9DQUFZLEdBQUcsZ0NBQWdDLENBQUM7QUFDaEUsbURBQW1EO0FBQ25DLDBDQUFrQixHQUFHLHNDQUFzQyxDQUFDO0FBQzVFLDJEQUEyRDtBQUMzQyxrREFBMEIsR0FDekMsOENBQThDLENBQUM7QUFDaEQsK0RBQStEO0FB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LGdEQUFxQixHQUNwQyx1Q0FBdUMsQ0FBQztBQUN6Qyw2REFBNkQ7QUFDN0Msd0NBQWEsR0FBRyxnQ0FBZ0MsQ0FBQztBQUNqRSxnRkFBZ0Y7QUFDaEUsNERBQWlDLEdBQ2hELG1EQUFtRCxDQUFDO0FBQ3JELHNFQUFzRTtBQUN0RCxrREFBdUIsR0FDdEMseUNBQXlDLENBQUM7QUFDM0Msd0RBQXdEO0FBQ3hDLG1DQUFRLEdBQUcsMkJBQTJCLENBQUM7QUFDdkQsMERBQTBEO0FBQzFDLG9DQUFTLEdBQUcsNkJBQTZCLENBQUM7QUFDMUQsaUVBQWlFO0FBQ2pELDZDQUFrQixHQUFHLG9DQUFvQyxDQUFDO0FBQzFFLHNFQUFzRTtBQUN0RCwwQ0FBZSxHQUFHLGtDQUFrQyxDQUFDO0FBQ3JFLDBEQUEwRDtBQUMxQyxxQ0FBVSxHQUFHLDZCQUE2QixDQUFDO0FBQzNELDJEQUEyRDtBQUMzQyxzQ0FBVyxHQUFHLDhCQUE4QixDQUFDO0FBQzdELCtEQUErRDtBQUMvQyxrQ0FBTyxHQUFHLDJCQUEyQixDQUFDO0FBQ3RELHVEQUF1RDtBQUN2QyxpQ0FBTSxHQUFHLDBCQUEwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEFVVE8tR0VORVJBVEVEIEZJTEUg4oCUIERPIE5PVCBFRElUIE1BTlVBTExZXG4vLyBHZW5lcmF0ZWQgZnJvbSBBV1MgU2VydmljZSBBdXRob3JpemF0aW9uIFJlZmVyZW5jZSBkYXRhXG4vLyBTb3VyY2U6IGRhdGEvc2VydmljZS1yZWZlcmVuY2UvYmVkcm9jay1hZ2VudGNvcmUuanNvblxuLy8gUnVuIGBucHggcHJvamVuIGdlbmVyYXRlLWNvbnN0YW50c2AgdG8gcmVnZW5lcmF0ZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBJQU0gYWN0aW9uIGNvbnN0YW50cyBmb3IgdGhlIGJlZHJvY2stYWdlbnRjb3JlIHNlcnZpY2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucyB7XG5cdC8qKiBUaGUgSUFNIHNlcnZpY2UgcHJlZml4LiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU0VSVklDRV9QUkVGSVggPSBcImJlZHJvY2stYWdlbnRjb3JlXCI7XG5cblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6QWRkRGF0YXNldEV4YW1wbGVzICovXG5cdHN0YXRpYyByZWFkb25seSBBZGREYXRhc2V0RXhhbXBsZXMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkFkZERhdGFzZXRFeGFtcGxlc1wiO1xuXHQvKiogW1Blcm1pc3Npb25NYW5hZ2VtZW50XSBiZWRyb2NrLWFnZW50Y29yZTpBbGxvd1ZlbmRlZExvZ0RlbGl2ZXJ5Rm9yUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbG93VmVuZGVkTG9nRGVsaXZlcnlGb3JSZXNvdXJjZSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpBbGxvd1ZlbmRlZExvZ0RlbGl2ZXJ5Rm9yUmVzb3VyY2VcIjtcblx0LyoqIFtQZXJtaXNzaW9uTWFuYWdlbWVudF0gYmVkcm9jay1hZ2VudGNvcmU6QXV0aG9yaXplQWN0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBBdXRob3JpemVBY3Rpb24gPSBcImJlZHJvY2stYWdlbnRjb3JlOkF1dGhvcml6ZUFjdGlvblwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpCYXRjaENyZWF0ZU1lbW9yeVJlY29yZHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoQ3JlYXRlTWVtb3J5UmVjb3JkcyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpCYXRjaENyZWF0ZU1lbW9yeVJlY29yZHNcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6QmF0Y2hEZWxldGVNZW1vcnlSZWNvcmRzICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaERlbGV0ZU1lbW9yeVJlY29yZHMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6QmF0Y2hEZWxldGVNZW1vcnlSZWNvcmRzXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkJhdGNoUHV0R2F0ZXdheVJhdGVMaW1pdHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoUHV0R2F0ZXdheVJhdGVMaW1pdHMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6QmF0Y2hQdXRHYXRld2F5UmF0ZUxpbWl0c1wiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpCYXRjaFVwZGF0ZU1lbW9yeVJlY29yZHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoVXBkYXRlTWVtb3J5UmVjb3JkcyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpCYXRjaFVwZGF0ZU1lbW9yeVJlY29yZHNcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpDb21wbGV0ZVJlc291cmNlVG9rZW5BdXRoICovXG5cdHN0YXRpYyByZWFkb25seSBDb21wbGV0ZVJlc291cmNlVG9rZW5BdXRoID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNvbXBsZXRlUmVzb3VyY2VUb2tlbkF1dGhcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpDb25uZWN0QnJvd3NlckF1dG9tYXRpb25TdHJlYW0gKi9cblx0c3RhdGljIHJlYWRvbmx5IENvbm5lY3RCcm93c2VyQXV0b21hdGlvblN0cmVhbSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDb25uZWN0QnJvd3NlckF1dG9tYXRpb25TdHJlYW1cIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpDb25uZWN0QnJvd3NlckxpdmVWaWV3U3RyZWFtICovXG5cdHN0YXRpYyByZWFkb25seSBDb25uZWN0QnJvd3NlckxpdmVWaWV3U3RyZWFtID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNvbm5lY3RCcm93c2VyTGl2ZVZpZXdTdHJlYW1cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQUJUZXN0ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBQlRlc3QgPSBcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUFCVGVzdFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVBZ2VudFJ1bnRpbWUgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFnZW50UnVudGltZSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQWdlbnRSdW50aW1lXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUFnZW50UnVudGltZUVuZHBvaW50ICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZ2VudFJ1bnRpbWVFbmRwb2ludCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVBZ2VudFJ1bnRpbWVFbmRwb2ludFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQnJvd3NlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQnJvd3NlciA9IFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQnJvd3NlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVCcm93c2VyUHJvZmlsZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQnJvd3NlclByb2ZpbGUgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQnJvd3NlclByb2ZpbGVcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQ2FwYWNpdHlQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ2FwYWNpdHlQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVDYXBhY2l0eVByb3ZpZGVyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUNvZGVJbnRlcnByZXRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29kZUludGVycHJldGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUNvZGVJbnRlcnByZXRlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVDb25maWd1cmF0aW9uQnVuZGxlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDb25maWd1cmF0aW9uQnVuZGxlID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUNvbmZpZ3VyYXRpb25CdW5kbGVcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlRGF0YXNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRGF0YXNldCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlRGF0YXNldFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVEYXRhc2V0VmVyc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRGF0YXNldFZlcnNpb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlRGF0YXNldFZlcnNpb25cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlRXZhbHVhdG9yICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFdmFsdWF0b3IgPSBcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUV2YWx1YXRvclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVFdmVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRXZlbnQgPSBcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUV2ZW50XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUdhdGV3YXkgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdhdGV3YXkgPSBcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUdhdGV3YXlcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlR2F0ZXdheVJhdGVMaW1pdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlR2F0ZXdheVJhdGVMaW1pdCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVHYXRld2F5UmF0ZUxpbWl0XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUdhdGV3YXlSdWxlICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVHYXRld2F5UnVsZSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlR2F0ZXdheVJ1bGVcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlR2F0ZXdheVRhcmdldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlR2F0ZXdheVRhcmdldCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlR2F0ZXdheVRhcmdldFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVIYXJuZXNzICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVIYXJuZXNzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVIYXJuZXNzXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUhhcm5lc3NFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSGFybmVzc0VuZHBvaW50ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUhhcm5lc3NFbmRwb2ludFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVNZW1vcnkgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZU1lbW9yeSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlTWVtb3J5XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZU9ubGluZUV2YWx1YXRpb25Db25maWdcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUGF5bWVudENvbm5lY3RvciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUGF5bWVudENvbm5lY3RvciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQYXltZW50Q29ubmVjdG9yXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQYXltZW50SW5zdHJ1bWVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUGF5bWVudEluc3RydW1lbnQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUGF5bWVudEluc3RydW1lbnRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUGF5bWVudE1hbmFnZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBheW1lbnRNYW5hZ2VyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBheW1lbnRNYW5hZ2VyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBheW1lbnRTZXNzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVQYXltZW50U2Vzc2lvbiA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQYXltZW50U2Vzc2lvblwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBvbGljeSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBvbGljeUVuZ2luZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUG9saWN5RW5naW5lID0gXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQb2xpY3lFbmdpbmVcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUmVnaXN0cnkgKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlZ2lzdHJ5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVSZWdpc3RyeVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVSZWdpc3RyeVJlY29yZCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUmVnaXN0cnlSZWNvcmQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUmVnaXN0cnlSZWNvcmRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlV29ya2xvYWRJZGVudGl0eSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlV29ya2xvYWRJZGVudGl0eSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVXb3JrbG9hZElkZW50aXR5XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUFCVGVzdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQUJUZXN0ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVBQlRlc3RcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQWdlbnRSdW50aW1lICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBZ2VudFJ1bnRpbWUgPSBcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUFnZW50UnVudGltZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVBZ2VudFJ1bnRpbWVFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQWdlbnRSdW50aW1lRW5kcG9pbnQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQWdlbnRSdW50aW1lRW5kcG9pbnRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUJhdGNoRXZhbHVhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQmF0Y2hFdmFsdWF0aW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUJhdGNoRXZhbHVhdGlvblwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVCcm93c2VyICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVCcm93c2VyID0gXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVCcm93c2VyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUJyb3dzZXJQcm9maWxlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVCcm93c2VyUHJvZmlsZSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVCcm93c2VyUHJvZmlsZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVDYXBhY2l0eVByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDYXBhY2l0eVByb3ZpZGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUNhcGFjaXR5UHJvdmlkZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQ2FwYWNpdHlQcm92aWRlclNlc3Npb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNhcGFjaXR5UHJvdmlkZXJTZXNzaW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUNhcGFjaXR5UHJvdmlkZXJTZXNzaW9uXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUNvZGVJbnRlcnByZXRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ29kZUludGVycHJldGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUNvZGVJbnRlcnByZXRlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVDb25maWd1cmF0aW9uQnVuZGxlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVDb25maWd1cmF0aW9uQnVuZGxlID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUNvbmZpZ3VyYXRpb25CdW5kbGVcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlRGF0YXNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRGF0YXNldCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlRGF0YXNldFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVEYXRhc2V0RXhhbXBsZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURhdGFzZXRFeGFtcGxlcyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVEYXRhc2V0RXhhbXBsZXNcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlRXZhbHVhdG9yICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFdmFsdWF0b3IgPSBcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUV2YWx1YXRvclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVFdmVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRXZlbnQgPSBcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUV2ZW50XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUdhdGV3YXkgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUdhdGV3YXkgPSBcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUdhdGV3YXlcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlR2F0ZXdheVJhdGVMaW1pdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlR2F0ZXdheVJhdGVMaW1pdCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVHYXRld2F5UmF0ZUxpbWl0XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUdhdGV3YXlSdWxlICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHYXRld2F5UnVsZSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlR2F0ZXdheVJ1bGVcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlR2F0ZXdheVRhcmdldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlR2F0ZXdheVRhcmdldCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlR2F0ZXdheVRhcmdldFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVIYXJuZXNzICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVIYXJuZXNzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVIYXJuZXNzXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUhhcm5lc3NFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlSGFybmVzc0VuZHBvaW50ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUhhcm5lc3NFbmRwb2ludFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVNZW1vcnkgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU1lbW9yeSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlTWVtb3J5XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZU1lbW9yeVJlY29yZCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlTWVtb3J5UmVjb3JkID0gXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVNZW1vcnlSZWNvcmRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZU9ubGluZUV2YWx1YXRpb25Db25maWcgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU9ubGluZUV2YWx1YXRpb25Db25maWcgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZ1wiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVQYXltZW50Q29ubmVjdG9yICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQYXltZW50Q29ubmVjdG9yID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBheW1lbnRDb25uZWN0b3JcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBheW1lbnRJbnN0cnVtZW50ICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQYXltZW50SW5zdHJ1bWVudCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVQYXltZW50SW5zdHJ1bWVudFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVQYXltZW50TWFuYWdlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUGF5bWVudE1hbmFnZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUGF5bWVudE1hbmFnZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUGF5bWVudFNlc3Npb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVBheW1lbnRTZXNzaW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBheW1lbnRTZXNzaW9uXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUG9saWN5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVQb2xpY3lcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUG9saWN5RW5naW5lICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQb2xpY3lFbmdpbmUgPSBcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBvbGljeUVuZ2luZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVSZWNvbW1lbmRhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVjb21tZW5kYXRpb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUmVjb21tZW5kYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUmVnaXN0cnkgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlZ2lzdHJ5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVSZWdpc3RyeVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVSZWdpc3RyeVJlY29yZCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVnaXN0cnlSZWNvcmQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUmVnaXN0cnlSZWNvcmRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUmVzb3VyY2VQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlc291cmNlUG9saWN5ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVJlc291cmNlUG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVdvcmtsb2FkSWRlbnRpdHkgKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVdvcmtsb2FkSWRlbnRpdHkgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlV29ya2xvYWRJZGVudGl0eVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpFdmFsdWF0ZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRXZhbHVhdGUgPSBcImJlZHJvY2stYWdlbnRjb3JlOkV2YWx1YXRlXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkdhdGV3YXlBc3NvY2lhdGVXZWJBQ0wgKi9cblx0c3RhdGljIHJlYWRvbmx5IEdhdGV3YXlBc3NvY2lhdGVXZWJBQ0wgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2F0ZXdheUFzc29jaWF0ZVdlYkFDTFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpHYXRld2F5RGlzYXNzb2NpYXRlV2ViQUNMICovXG5cdHN0YXRpYyByZWFkb25seSBHYXRld2F5RGlzYXNzb2NpYXRlV2ViQUNMID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdhdGV3YXlEaXNhc3NvY2lhdGVXZWJBQ0xcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHYXRld2F5R2V0V2ViQUNMRm9yUmVzb3VyY2UgKi9cblx0c3RhdGljIHJlYWRvbmx5IEdhdGV3YXlHZXRXZWJBQ0xGb3JSZXNvdXJjZSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHYXRld2F5R2V0V2ViQUNMRm9yUmVzb3VyY2VcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpHYXRld2F5TGlzdFJlc291cmNlc0ZvcldlYkFDTCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgR2F0ZXdheUxpc3RSZXNvdXJjZXNGb3JXZWJBQ0wgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2F0ZXdheUxpc3RSZXNvdXJjZXNGb3JXZWJBQ0xcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRBQlRlc3QgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEFCVGVzdCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0QUJUZXN0XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0QWdlbnRDYXJkICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRBZ2VudENhcmQgPSBcImJlZHJvY2stYWdlbnRjb3JlOkdldEFnZW50Q2FyZFwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldEFnZW50UnVudGltZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QWdlbnRSdW50aW1lID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRBZ2VudFJ1bnRpbWVcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRBZ2VudFJ1bnRpbWVFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0QWdlbnRSdW50aW1lRW5kcG9pbnQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0QWdlbnRSdW50aW1lRW5kcG9pbnRcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEFwaUtleUNyZWRlbnRpYWxQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRCYXRjaEV2YWx1YXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEJhdGNoRXZhbHVhdGlvbiA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRCYXRjaEV2YWx1YXRpb25cIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRCcm93c2VyICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRCcm93c2VyID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRCcm93c2VyXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0QnJvd3NlclByb2ZpbGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEJyb3dzZXJQcm9maWxlID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldEJyb3dzZXJQcm9maWxlXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0QnJvd3NlclNlc3Npb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEJyb3dzZXJTZXNzaW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldEJyb3dzZXJTZXNzaW9uXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0Q2FwYWNpdHlQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0Q2FwYWNpdHlQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRDYXBhY2l0eVByb3ZpZGVyXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0Q29kZUludGVycHJldGVyICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRDb2RlSW50ZXJwcmV0ZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0Q29kZUludGVycHJldGVyXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0Q29kZUludGVycHJldGVyU2Vzc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0Q29kZUludGVycHJldGVyU2Vzc2lvbiA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0Q29uZmlndXJhdGlvbkJ1bmRsZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0Q29uZmlndXJhdGlvbkJ1bmRsZSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRDb25maWd1cmF0aW9uQnVuZGxlXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0Q29uZmlndXJhdGlvbkJ1bmRsZVZlcnNpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldENvbmZpZ3VyYXRpb25CdW5kbGVWZXJzaW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldENvbmZpZ3VyYXRpb25CdW5kbGVWZXJzaW9uXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0RGF0YXNldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RGF0YXNldCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0RGF0YXNldFwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldEV2YWx1YXRvciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RXZhbHVhdG9yID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRFdmFsdWF0b3JcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRFdmVudCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0RXZlbnQgPSBcImJlZHJvY2stYWdlbnRjb3JlOkdldEV2ZW50XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0R2F0ZXdheSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0R2F0ZXdheSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0R2F0ZXdheVwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldEdhdGV3YXlSYXRlTGltaXQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldEdhdGV3YXlSYXRlTGltaXQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0R2F0ZXdheVJhdGVMaW1pdFwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldEdhdGV3YXlSdWxlICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRHYXRld2F5UnVsZSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0R2F0ZXdheVJ1bGVcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRHYXRld2F5VGFyZ2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRHYXRld2F5VGFyZ2V0ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRHYXRld2F5VGFyZ2V0XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0SGFybmVzcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SGFybmVzcyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0SGFybmVzc1wiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldEhhcm5lc3NFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0SGFybmVzc0VuZHBvaW50ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldEhhcm5lc3NFbmRwb2ludFwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldE1lbW9yeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0TWVtb3J5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRNZW1vcnlcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRNZW1vcnlSZWNvcmQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldE1lbW9yeVJlY29yZCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0TWVtb3J5UmVjb3JkXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0T2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0T2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0T25saW5lRXZhbHVhdGlvbkNvbmZpZyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0T25saW5lRXZhbHVhdGlvbkNvbmZpZyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRPbmxpbmVFdmFsdWF0aW9uQ29uZmlnXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UGF5bWVudENvbm5lY3RvciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UGF5bWVudENvbm5lY3RvciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50Q29ubmVjdG9yXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UGF5bWVudENyZWRlbnRpYWxQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UGF5bWVudENyZWRlbnRpYWxQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UGF5bWVudEluc3RydW1lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFBheW1lbnRJbnN0cnVtZW50ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBheW1lbnRJbnN0cnVtZW50XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UGF5bWVudEluc3RydW1lbnRCYWxhbmNlICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRQYXltZW50SW5zdHJ1bWVudEJhbGFuY2UgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0UGF5bWVudEluc3RydW1lbnRCYWxhbmNlXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UGF5bWVudE1hbmFnZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFBheW1lbnRNYW5hZ2VyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBheW1lbnRNYW5hZ2VyXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UGF5bWVudFNlc3Npb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFBheW1lbnRTZXNzaW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBheW1lbnRTZXNzaW9uXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRQb2xpY3kgPSBcImJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeVwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeUVuZ2luZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UG9saWN5RW5naW5lID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lFbmdpbmVcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lFbmdpbmVTdW1tYXJ5ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRQb2xpY3lFbmdpbmVTdW1tYXJ5ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeUVuZ2luZVN1bW1hcnlcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lHZW5lcmF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRQb2xpY3lHZW5lcmF0aW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeUdlbmVyYXRpb25cIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lHZW5lcmF0aW9uU3VtbWFyeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0UG9saWN5R2VuZXJhdGlvblN1bW1hcnkgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0UG9saWN5R2VuZXJhdGlvblN1bW1hcnlcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lTdW1tYXJ5ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRQb2xpY3lTdW1tYXJ5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lTdW1tYXJ5XCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UmVjb21tZW5kYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFJlY29tbWVuZGF0aW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlY29tbWVuZGF0aW9uXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6R2V0UmVnaXN0cnkgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFJlZ2lzdHJ5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRSZWdpc3RyeVwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldFJlZ2lzdHJ5UmVjb3JkICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRSZWdpc3RyeVJlY29yZCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRSZWdpc3RyeVJlY29yZFwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldFJlc291cmNlQXBpS2V5ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRSZXNvdXJjZUFwaUtleSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRSZXNvdXJjZUFwaUtleVwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldFJlc291cmNlT2F1dGgyVG9rZW4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFJlc291cmNlT2F1dGgyVG9rZW4gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0UmVzb3VyY2VPYXV0aDJUb2tlblwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldFJlc291cmNlUGF5bWVudFRva2VuICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRSZXNvdXJjZVBheW1lbnRUb2tlbiA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRSZXNvdXJjZVBheW1lbnRUb2tlblwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldFJlc291cmNlUG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRSZXNvdXJjZVBvbGljeSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRSZXNvdXJjZVBvbGljeVwiO1xuXHQvKiogW1JlYWRdIGJlZHJvY2stYWdlbnRjb3JlOkdldFRva2VuVmF1bHQgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFRva2VuVmF1bHQgPSBcImJlZHJvY2stYWdlbnRjb3JlOkdldFRva2VuVmF1bHRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6R2V0V29ya2xvYWRBY2Nlc3NUb2tlbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgYWN0aW9uR2V0V29ya2xvYWRBY2Nlc3NUb2tlbiA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRXb3JrbG9hZEFjY2Vzc1Rva2VuXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JKV1QgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JKV1QgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0V29ya2xvYWRBY2Nlc3NUb2tlbkZvckpXVFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9yVXNlcklkICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9yVXNlcklkID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JVc2VySWRcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpHZXRXb3JrbG9hZElkZW50aXR5ICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRXb3JrbG9hZElkZW50aXR5ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFdvcmtsb2FkSWRlbnRpdHlcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQWdlbnRSdW50aW1lICovXG5cdHN0YXRpYyByZWFkb25seSBJbnZva2VBZ2VudFJ1bnRpbWUgPSBcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZUFnZW50UnVudGltZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VBZ2VudFJ1bnRpbWVDb21tYW5kICovXG5cdHN0YXRpYyByZWFkb25seSBJbnZva2VBZ2VudFJ1bnRpbWVDb21tYW5kID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZUFnZW50UnVudGltZUNvbW1hbmRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQWdlbnRSdW50aW1lQ29tbWFuZFNoZWxsICovXG5cdHN0YXRpYyByZWFkb25seSBJbnZva2VBZ2VudFJ1bnRpbWVDb21tYW5kU2hlbGwgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQWdlbnRSdW50aW1lQ29tbWFuZFNoZWxsXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkludm9rZUFnZW50UnVudGltZUZvclVzZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IEludm9rZUFnZW50UnVudGltZUZvclVzZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQWdlbnRSdW50aW1lRm9yVXNlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VBZ2VudFJ1bnRpbWVXaXRoV2ViU29ja2V0U3RyZWFtICovXG5cdHN0YXRpYyByZWFkb25seSBJbnZva2VBZ2VudFJ1bnRpbWVXaXRoV2ViU29ja2V0U3RyZWFtID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZUFnZW50UnVudGltZVdpdGhXZWJTb2NrZXRTdHJlYW1cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQWdlbnRSdW50aW1lV2l0aFdlYlNvY2tldFN0cmVhbUZvclVzZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IEludm9rZUFnZW50UnVudGltZVdpdGhXZWJTb2NrZXRTdHJlYW1Gb3JVc2VyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZUFnZW50UnVudGltZVdpdGhXZWJTb2NrZXRTdHJlYW1Gb3JVc2VyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkludm9rZUNvZGVJbnRlcnByZXRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW52b2tlQ29kZUludGVycHJldGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZUNvZGVJbnRlcnByZXRlclwiO1xuXHQvKiogW1Blcm1pc3Npb25NYW5hZ2VtZW50XSBiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VHYXRld2F5ICovXG5cdHN0YXRpYyByZWFkb25seSBJbnZva2VHYXRld2F5ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VHYXRld2F5XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOkludm9rZUhhcm5lc3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IEludm9rZUhhcm5lc3MgPSBcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZUhhcm5lc3NcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VSZWdpc3RyeU1jcCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW52b2tlUmVnaXN0cnlNY3AgPSBcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZVJlZ2lzdHJ5TWNwXCI7XG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIGJlZHJvY2stYWdlbnRjb3JlOkludm9rZVdlYlNlYXJjaCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW52b2tlV2ViU2VhcmNoID0gXCJiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VXZWJTZWFyY2hcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0QUJUZXN0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFCVGVzdHMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RBQlRlc3RzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFjdG9ycyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFjdG9ycyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFjdG9yc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RBZ2VudFJ1bnRpbWVFbmRwb2ludHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZ2VudFJ1bnRpbWVFbmRwb2ludHMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFnZW50UnVudGltZUVuZHBvaW50c1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RBZ2VudFJ1bnRpbWVWZXJzaW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFnZW50UnVudGltZVZlcnNpb25zID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RBZ2VudFJ1bnRpbWVWZXJzaW9uc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RBZ2VudFJ1bnRpbWVWZXJzaW9uc0J5Q2FwYWNpdHlQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFnZW50UnVudGltZVZlcnNpb25zQnlDYXBhY2l0eVByb3ZpZGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RBZ2VudFJ1bnRpbWVWZXJzaW9uc0J5Q2FwYWNpdHlQcm92aWRlclwiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RBZ2VudFJ1bnRpbWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWdlbnRSdW50aW1lcyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFnZW50UnVudGltZXNcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0QXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVycyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEFwaUtleUNyZWRlbnRpYWxQcm92aWRlcnMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFwaUtleUNyZWRlbnRpYWxQcm92aWRlcnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0QmF0Y2hFdmFsdWF0aW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEJhdGNoRXZhbHVhdGlvbnMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEJhdGNoRXZhbHVhdGlvbnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0QnJvd3NlclByb2ZpbGVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QnJvd3NlclByb2ZpbGVzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QnJvd3NlclByb2ZpbGVzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEJyb3dzZXJTZXNzaW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEJyb3dzZXJTZXNzaW9ucyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEJyb3dzZXJTZXNzaW9uc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RCcm93c2VycyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEJyb3dzZXJzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QnJvd3NlcnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0Q2FwYWNpdHlQcm92aWRlcnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDYXBhY2l0eVByb3ZpZGVycyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0Q2FwYWNpdHlQcm92aWRlcnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0Q29kZUludGVycHJldGVyU2Vzc2lvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb2RlSW50ZXJwcmV0ZXJTZXNzaW9ucyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0Q29kZUludGVycHJldGVyU2Vzc2lvbnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0Q29kZUludGVycHJldGVycyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvZGVJbnRlcnByZXRlcnMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdENvZGVJbnRlcnByZXRlcnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0Q29uZmlndXJhdGlvbkJ1bmRsZVZlcnNpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29uZmlndXJhdGlvbkJ1bmRsZVZlcnNpb25zID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb25maWd1cmF0aW9uQnVuZGxlVmVyc2lvbnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0Q29uZmlndXJhdGlvbkJ1bmRsZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb25maWd1cmF0aW9uQnVuZGxlcyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0Q29uZmlndXJhdGlvbkJ1bmRsZXNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0RGF0YXNldEV4YW1wbGVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGF0YXNldEV4YW1wbGVzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0RGF0YXNldEV4YW1wbGVzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdERhdGFzZXRWZXJzaW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERhdGFzZXRWZXJzaW9ucyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdERhdGFzZXRWZXJzaW9uc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3REYXRhc2V0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdERhdGFzZXRzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0RGF0YXNldHNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0RXZhbHVhdG9ycyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEV2YWx1YXRvcnMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RFdmFsdWF0b3JzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEV2ZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEV2ZW50cyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEV2ZW50c1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RHYXRld2F5UmF0ZUxpbWl0cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEdhdGV3YXlSYXRlTGltaXRzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RHYXRld2F5UmF0ZUxpbWl0c1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RHYXRld2F5UnVsZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHYXRld2F5UnVsZXMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RHYXRld2F5UnVsZXNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0R2F0ZXdheVRhcmdldHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHYXRld2F5VGFyZ2V0cyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEdhdGV3YXlUYXJnZXRzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdEdhdGV3YXlzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0R2F0ZXdheXMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RHYXRld2F5c1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RIYXJuZXNzRW5kcG9pbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SGFybmVzc0VuZHBvaW50cyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0SGFybmVzc0VuZHBvaW50c1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RIYXJuZXNzVmVyc2lvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RIYXJuZXNzVmVyc2lvbnMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RIYXJuZXNzVmVyc2lvbnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0SGFybmVzc2VzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0SGFybmVzc2VzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0SGFybmVzc2VzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdE1lbW9yaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0TWVtb3JpZXMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RNZW1vcmllc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RNZW1vcnlFeHRyYWN0aW9uSm9icyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE1lbW9yeUV4dHJhY3Rpb25Kb2JzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RNZW1vcnlFeHRyYWN0aW9uSm9ic1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RNZW1vcnlSZWNvcmRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0TWVtb3J5UmVjb3JkcyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdE1lbW9yeVJlY29yZHNcIjtcblx0LyoqIFtSZWFkXSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0T2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVycyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE9hdXRoMkNyZWRlbnRpYWxQcm92aWRlcnMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdE9hdXRoMkNyZWRlbnRpYWxQcm92aWRlcnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0T25saW5lRXZhbHVhdGlvbkNvbmZpZ3MgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RPbmxpbmVFdmFsdWF0aW9uQ29uZmlncyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0T25saW5lRXZhbHVhdGlvbkNvbmZpZ3NcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudENvbm5lY3RvcnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQYXltZW50Q29ubmVjdG9ycyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudENvbm5lY3RvcnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudENyZWRlbnRpYWxQcm92aWRlcnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVycyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudENyZWRlbnRpYWxQcm92aWRlcnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudEluc3RydW1lbnRzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UGF5bWVudEluc3RydW1lbnRzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQYXltZW50SW5zdHJ1bWVudHNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudE1hbmFnZXJzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UGF5bWVudE1hbmFnZXJzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudE1hbmFnZXJzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBheW1lbnRTZXNzaW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBheW1lbnRTZXNzaW9ucyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBheW1lbnRTZXNzaW9uc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RQb2xpY2llcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBvbGljaWVzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWNpZXNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWN5RW5naW5lU3VtbWFyaWVzICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UG9saWN5RW5naW5lU3VtbWFyaWVzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQb2xpY3lFbmdpbmVTdW1tYXJpZXNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWN5RW5naW5lcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBvbGljeUVuZ2luZXMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQb2xpY3lFbmdpbmVzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeUdlbmVyYXRpb25Bc3NldHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY3lHZW5lcmF0aW9uQXNzZXRzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQb2xpY3lHZW5lcmF0aW9uQXNzZXRzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeUdlbmVyYXRpb25TdW1tYXJpZXMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY3lHZW5lcmF0aW9uU3VtbWFyaWVzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQb2xpY3lHZW5lcmF0aW9uU3VtbWFyaWVzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeUdlbmVyYXRpb25zICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UG9saWN5R2VuZXJhdGlvbnMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeUdlbmVyYXRpb25zXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeVN1bW1hcmllcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBvbGljeVN1bW1hcmllcyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeVN1bW1hcmllc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RSZWNvbW1lbmRhdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWNvbW1lbmRhdGlvbnMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RSZWNvbW1lbmRhdGlvbnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0UmVnaXN0cmllcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlZ2lzdHJpZXMgPSBcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RSZWdpc3RyaWVzXCI7XG5cdC8qKiBbTGlzdF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdFJlZ2lzdHJ5UmVjb3JkcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlZ2lzdHJ5UmVjb3JkcyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFJlZ2lzdHJ5UmVjb3Jkc1wiO1xuXHQvKiogW0xpc3RdIGJlZHJvY2stYWdlbnRjb3JlOkxpc3RTZXNzaW9ucyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlc3Npb25zID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0U2Vzc2lvbnNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpMaXN0VGFnc0ZvclJlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0VGFnc0ZvclJlc291cmNlID0gXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0VGFnc0ZvclJlc291cmNlXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6TGlzdFdvcmtsb2FkSWRlbnRpdGllcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFdvcmtsb2FkSWRlbnRpdGllcyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0V29ya2xvYWRJZGVudGl0aWVzXCI7XG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIGJlZHJvY2stYWdlbnRjb3JlOk1hbmFnZUFkbWluUG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBNYW5hZ2VBZG1pblBvbGljeSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6TWFuYWdlQWRtaW5Qb2xpY3lcIjtcblx0LyoqIFtQZXJtaXNzaW9uTWFuYWdlbWVudF0gYmVkcm9jay1hZ2VudGNvcmU6TWFuYWdlUmVzb3VyY2VTY29wZWRQb2xpY3kgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1hbmFnZVJlc291cmNlU2NvcGVkUG9saWN5ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOk1hbmFnZVJlc291cmNlU2NvcGVkUG9saWN5XCI7XG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIGJlZHJvY2stYWdlbnRjb3JlOlBhcnRpYWxseUF1dGhvcml6ZUFjdGlvbnMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFBhcnRpYWxseUF1dGhvcml6ZUFjdGlvbnMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6UGFydGlhbGx5QXV0aG9yaXplQWN0aW9uc1wiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpQYXNzQ2FwYWNpdHlQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUGFzc0NhcGFjaXR5UHJvdmlkZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6UGFzc0NhcGFjaXR5UHJvdmlkZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6UHJvY2Vzc1BheW1lbnQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFByb2Nlc3NQYXltZW50ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpQcm9jZXNzUGF5bWVudFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpQdXRSZXNvdXJjZVBvbGljeSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0UmVzb3VyY2VQb2xpY3kgPSBcImJlZHJvY2stYWdlbnRjb3JlOlB1dFJlc291cmNlUG9saWN5XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlB1dFN5c3RlbUxvZ0V2ZW50cyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0U3lzdGVtTG9nRXZlbnRzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpQdXRTeXN0ZW1Mb2dFdmVudHNcIjtcblx0LyoqIFtMaXN0XSBiZWRyb2NrLWFnZW50Y29yZTpSZXRyaWV2ZU1lbW9yeVJlY29yZHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFJldHJpZXZlTWVtb3J5UmVjb3JkcyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpSZXRyaWV2ZU1lbW9yeVJlY29yZHNcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6U2F2ZUJyb3dzZXJTZXNzaW9uUHJvZmlsZSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU2F2ZUJyb3dzZXJTZXNzaW9uUHJvZmlsZSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTYXZlQnJvd3NlclNlc3Npb25Qcm9maWxlXCI7XG5cdC8qKiBbUmVhZF0gYmVkcm9jay1hZ2VudGNvcmU6U2VhcmNoUmVnaXN0cnlSZWNvcmRzICovXG5cdHN0YXRpYyByZWFkb25seSBTZWFyY2hSZWdpc3RyeVJlY29yZHMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U2VhcmNoUmVnaXN0cnlSZWNvcmRzXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlNldFRva2VuVmF1bHRDTUsgKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvblNldFRva2VuVmF1bHRDTUsgPSBcImJlZHJvY2stYWdlbnRjb3JlOlNldFRva2VuVmF1bHRDTUtcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRCYXRjaEV2YWx1YXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0QmF0Y2hFdmFsdWF0aW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0QmF0Y2hFdmFsdWF0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0QnJvd3NlclNlc3Npb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0QnJvd3NlclNlc3Npb24gPSBcImJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0QnJvd3NlclNlc3Npb25cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydENvZGVJbnRlcnByZXRlclNlc3Npb24gPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0TWVtb3J5RXh0cmFjdGlvbkpvYiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRNZW1vcnlFeHRyYWN0aW9uSm9iID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0TWVtb3J5RXh0cmFjdGlvbkpvYlwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpTdGFydFBvbGljeUdlbmVyYXRpb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0UG9saWN5R2VuZXJhdGlvbiA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTdGFydFBvbGljeUdlbmVyYXRpb25cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRSZWNvbW1lbmRhdGlvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRSZWNvbW1lbmRhdGlvbiA9IFwiYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRSZWNvbW1lbmRhdGlvblwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpTdG9wQmF0Y2hFdmFsdWF0aW9uICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wQmF0Y2hFdmFsdWF0aW9uID0gXCJiZWRyb2NrLWFnZW50Y29yZTpTdG9wQmF0Y2hFdmFsdWF0aW9uXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlN0b3BCcm93c2VyU2Vzc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcEJyb3dzZXJTZXNzaW9uID0gXCJiZWRyb2NrLWFnZW50Y29yZTpTdG9wQnJvd3NlclNlc3Npb25cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6U3RvcENvZGVJbnRlcnByZXRlclNlc3Npb24gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN0b3BDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlN0b3BSdW50aW1lU2Vzc2lvbiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcFJ1bnRpbWVTZXNzaW9uID0gXCJiZWRyb2NrLWFnZW50Y29yZTpTdG9wUnVudGltZVNlc3Npb25cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6U3VibWl0UmVnaXN0cnlSZWNvcmRGb3JBcHByb3ZhbCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3VibWl0UmVnaXN0cnlSZWNvcmRGb3JBcHByb3ZhbCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTdWJtaXRSZWdpc3RyeVJlY29yZEZvckFwcHJvdmFsXCI7XG5cdC8qKiBbUGVybWlzc2lvbk1hbmFnZW1lbnRdIGJlZHJvY2stYWdlbnRjb3JlOlN5bmNocm9uaXplR2F0ZXdheVRhcmdldHMgKi9cblx0c3RhdGljIHJlYWRvbmx5IFN5bmNocm9uaXplR2F0ZXdheVRhcmdldHMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3luY2hyb25pemVHYXRld2F5VGFyZ2V0c1wiO1xuXHQvKiogW1RhZ2dpbmddIGJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBUYWdSZXNvdXJjZSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2VcIjtcblx0LyoqIFtUYWdnaW5nXSBiZWRyb2NrLWFnZW50Y29yZTpVbnRhZ1Jlc291cmNlICovXG5cdHN0YXRpYyByZWFkb25seSBVbnRhZ1Jlc291cmNlID0gXCJiZWRyb2NrLWFnZW50Y29yZTpVbnRhZ1Jlc291cmNlXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUFCVGVzdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQUJUZXN0ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVBQlRlc3RcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQWdlbnRSdW50aW1lICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBZ2VudFJ1bnRpbWUgPSBcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUFnZW50UnVudGltZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVBZ2VudFJ1bnRpbWVFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQWdlbnRSdW50aW1lRW5kcG9pbnQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQWdlbnRSdW50aW1lRW5kcG9pbnRcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUJyb3dzZXJTdHJlYW0gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUJyb3dzZXJTdHJlYW0gPSBcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUJyb3dzZXJTdHJlYW1cIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQ2FwYWNpdHlQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ2FwYWNpdHlQcm92aWRlciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVDYXBhY2l0eVByb3ZpZGVyXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUNvbmZpZ3VyYXRpb25CdW5kbGUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbmZpZ3VyYXRpb25CdW5kbGUgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQ29uZmlndXJhdGlvbkJ1bmRsZVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVEYXRhc2V0ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVEYXRhc2V0ID0gXCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVEYXRhc2V0XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZURhdGFzZXRFeGFtcGxlcyAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlRGF0YXNldEV4YW1wbGVzID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZURhdGFzZXRFeGFtcGxlc1wiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVFdmFsdWF0b3IgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUV2YWx1YXRvciA9IFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlRXZhbHVhdG9yXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUdhdGV3YXkgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUdhdGV3YXkgPSBcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUdhdGV3YXlcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlR2F0ZXdheVJhdGVMaW1pdCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlR2F0ZXdheVJhdGVMaW1pdCA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVHYXRld2F5UmF0ZUxpbWl0XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUdhdGV3YXlSdWxlICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVHYXRld2F5UnVsZSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlR2F0ZXdheVJ1bGVcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlR2F0ZXdheVRhcmdldCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlR2F0ZXdheVRhcmdldCA9IFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlR2F0ZXdheVRhcmdldFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVIYXJuZXNzICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVIYXJuZXNzID0gXCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVIYXJuZXNzXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUhhcm5lc3NFbmRwb2ludCAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlSGFybmVzc0VuZHBvaW50ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUhhcm5lc3NFbmRwb2ludFwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVNZW1vcnkgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZU1lbW9yeSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlTWVtb3J5XCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZU9ubGluZUV2YWx1YXRpb25Db25maWdcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUGF5bWVudENvbm5lY3RvciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUGF5bWVudENvbm5lY3RvciA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVQYXltZW50Q29ubmVjdG9yXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXIgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlclwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVQYXltZW50TWFuYWdlciAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUGF5bWVudE1hbmFnZXIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUGF5bWVudE1hbmFnZXJcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUG9saWN5ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVQb2xpY3kgPSBcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVBvbGljeVwiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVQb2xpY3lFbmdpbmUgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBvbGljeUVuZ2luZSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUG9saWN5RW5naW5lXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVJlZ2lzdHJ5ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZWdpc3RyeSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUmVnaXN0cnlcIjtcblx0LyoqIFtXcml0ZV0gYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUmVnaXN0cnlSZWNvcmQgKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVJlZ2lzdHJ5UmVjb3JkID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVJlZ2lzdHJ5UmVjb3JkXCI7XG5cdC8qKiBbV3JpdGVdIGJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVJlZ2lzdHJ5UmVjb3JkU3RhdHVzICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVSZWdpc3RyeVJlY29yZFN0YXR1cyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVSZWdpc3RyeVJlY29yZFN0YXR1c1wiO1xuXHQvKiogW1dyaXRlXSBiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVXb3JrbG9hZElkZW50aXR5ICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVXb3JrbG9hZElkZW50aXR5ID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVdvcmtsb2FkSWRlbnRpdHlcIjtcblxuXHQvKiogQWxsIHJlYWQtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFJlYWRBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5Db21wbGV0ZVJlc291cmNlVG9rZW5BdXRoLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNvbm5lY3RCcm93c2VyQXV0b21hdGlvblN0cmVhbSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5Db25uZWN0QnJvd3NlckxpdmVWaWV3U3RyZWFtLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkdhdGV3YXlHZXRXZWJBQ0xGb3JSZXNvdXJjZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRBQlRlc3QsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0QWdlbnRDYXJkLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldEFnZW50UnVudGltZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRBZ2VudFJ1bnRpbWVFbmRwb2ludCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0QmF0Y2hFdmFsdWF0aW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldEJyb3dzZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0QnJvd3NlclByb2ZpbGUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0QnJvd3NlclNlc3Npb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0Q2FwYWNpdHlQcm92aWRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRDb2RlSW50ZXJwcmV0ZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0Q29kZUludGVycHJldGVyU2Vzc2lvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRDb25maWd1cmF0aW9uQnVuZGxlLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldENvbmZpZ3VyYXRpb25CdW5kbGVWZXJzaW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldERhdGFzZXQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0RXZhbHVhdG9yLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldEV2ZW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldEdhdGV3YXksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0R2F0ZXdheVJhdGVMaW1pdCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRHYXRld2F5UnVsZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRHYXRld2F5VGFyZ2V0LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldEhhcm5lc3MsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0SGFybmVzc0VuZHBvaW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldE1lbW9yeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRNZW1vcnlSZWNvcmQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0T2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldE9ubGluZUV2YWx1YXRpb25Db25maWcsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UGF5bWVudENvbm5lY3Rvcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFBheW1lbnRJbnN0cnVtZW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFBheW1lbnRJbnN0cnVtZW50QmFsYW5jZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRQYXltZW50TWFuYWdlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRQYXltZW50U2Vzc2lvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRQb2xpY3ksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UG9saWN5RW5naW5lLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFBvbGljeUVuZ2luZVN1bW1hcnksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UG9saWN5R2VuZXJhdGlvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRQb2xpY3lHZW5lcmF0aW9uU3VtbWFyeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRQb2xpY3lTdW1tYXJ5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFJlY29tbWVuZGF0aW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFJlZ2lzdHJ5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFJlZ2lzdHJ5UmVjb3JkLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFJlc291cmNlQXBpS2V5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFJlc291cmNlT2F1dGgyVG9rZW4sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UmVzb3VyY2VQYXltZW50VG9rZW4sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0UmVzb3VyY2VQb2xpY3ksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0VG9rZW5WYXVsdCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRXb3JrbG9hZElkZW50aXR5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkludm9rZVJlZ2lzdHJ5TWNwLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXJzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RXb3JrbG9hZElkZW50aXRpZXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuU2VhcmNoUmVnaXN0cnlSZWNvcmRzLFxuXHRdO1xuXHQvKiogQWxsIHdyaXRlLWxldmVsIGFjdGlvbnMuICovXG5cdHN0YXRpYyByZWFkb25seSBBbGxXcml0ZUFjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkFkZERhdGFzZXRFeGFtcGxlcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5CYXRjaENyZWF0ZU1lbW9yeVJlY29yZHMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQmF0Y2hEZWxldGVNZW1vcnlSZWNvcmRzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkJhdGNoUHV0R2F0ZXdheVJhdGVMaW1pdHMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQmF0Y2hVcGRhdGVNZW1vcnlSZWNvcmRzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZUFCVGVzdCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVBZ2VudFJ1bnRpbWUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlQWdlbnRSdW50aW1lRW5kcG9pbnQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZUJyb3dzZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlQnJvd3NlclByb2ZpbGUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlQ2FwYWNpdHlQcm92aWRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVDb2RlSW50ZXJwcmV0ZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlQ29uZmlndXJhdGlvbkJ1bmRsZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVEYXRhc2V0LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZURhdGFzZXRWZXJzaW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZUV2YWx1YXRvcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVFdmVudCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVHYXRld2F5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZUdhdGV3YXlSYXRlTGltaXQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlR2F0ZXdheVJ1bGUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlR2F0ZXdheVRhcmdldCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVIYXJuZXNzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZUhhcm5lc3NFbmRwb2ludCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVNZW1vcnksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZU9ubGluZUV2YWx1YXRpb25Db25maWcsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlUGF5bWVudENvbm5lY3Rvcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZVBheW1lbnRJbnN0cnVtZW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZVBheW1lbnRNYW5hZ2VyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZVBheW1lbnRTZXNzaW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkNyZWF0ZVBvbGljeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5DcmVhdGVQb2xpY3lFbmdpbmUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlUmVnaXN0cnksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlUmVnaXN0cnlSZWNvcmQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQ3JlYXRlV29ya2xvYWRJZGVudGl0eSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVBQlRlc3QsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlQWdlbnRSdW50aW1lLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUFnZW50UnVudGltZUVuZHBvaW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVCYXRjaEV2YWx1YXRpb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlQnJvd3Nlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVCcm93c2VyUHJvZmlsZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVDYXBhY2l0eVByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUNhcGFjaXR5UHJvdmlkZXJTZXNzaW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUNvZGVJbnRlcnByZXRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVDb25maWd1cmF0aW9uQnVuZGxlLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZURhdGFzZXQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlRGF0YXNldEV4YW1wbGVzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUV2YWx1YXRvcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVFdmVudCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVHYXRld2F5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUdhdGV3YXlSYXRlTGltaXQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlR2F0ZXdheVJ1bGUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlR2F0ZXdheVRhcmdldCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVIYXJuZXNzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZUhhcm5lc3NFbmRwb2ludCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVNZW1vcnksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlTWVtb3J5UmVjb3JkLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZVBheW1lbnRDb25uZWN0b3IsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVQYXltZW50SW5zdHJ1bWVudCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVQYXltZW50TWFuYWdlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVQYXltZW50U2Vzc2lvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5EZWxldGVQb2xpY3ksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRGVsZXRlUG9saWN5RW5naW5lLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZVJlY29tbWVuZGF0aW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZVJlZ2lzdHJ5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZVJlZ2lzdHJ5UmVjb3JkLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZVJlc291cmNlUG9saWN5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkRlbGV0ZVdvcmtsb2FkSWRlbnRpdHksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuRXZhbHVhdGUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuR2F0ZXdheUFzc29jaWF0ZVdlYkFDTCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5HYXRld2F5RGlzYXNzb2NpYXRlV2ViQUNMLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLmFjdGlvbkdldFdvcmtsb2FkQWNjZXNzVG9rZW4sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uR2V0V29ya2xvYWRBY2Nlc3NUb2tlbkZvckpXVCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5hY3Rpb25HZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9yVXNlcklkLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkludm9rZUFnZW50UnVudGltZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5JbnZva2VBZ2VudFJ1bnRpbWVDb21tYW5kLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkludm9rZUFnZW50UnVudGltZUNvbW1hbmRTaGVsbCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5JbnZva2VBZ2VudFJ1bnRpbWVGb3JVc2VyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkludm9rZUFnZW50UnVudGltZVdpdGhXZWJTb2NrZXRTdHJlYW0sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuSW52b2tlQWdlbnRSdW50aW1lV2l0aFdlYlNvY2tldFN0cmVhbUZvclVzZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuSW52b2tlQ29kZUludGVycHJldGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkludm9rZUhhcm5lc3MsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuUGFzc0NhcGFjaXR5UHJvdmlkZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuUHJvY2Vzc1BheW1lbnQsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuUHV0UmVzb3VyY2VQb2xpY3ksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuUHV0U3lzdGVtTG9nRXZlbnRzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlNhdmVCcm93c2VyU2Vzc2lvblByb2ZpbGUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuYWN0aW9uU2V0VG9rZW5WYXVsdENNSyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5TdGFydEJhdGNoRXZhbHVhdGlvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5TdGFydEJyb3dzZXJTZXNzaW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlN0YXJ0Q29kZUludGVycHJldGVyU2Vzc2lvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5TdGFydE1lbW9yeUV4dHJhY3Rpb25Kb2IsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuU3RhcnRQb2xpY3lHZW5lcmF0aW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlN0YXJ0UmVjb21tZW5kYXRpb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuU3RvcEJhdGNoRXZhbHVhdGlvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5TdG9wQnJvd3NlclNlc3Npb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuU3RvcENvZGVJbnRlcnByZXRlclNlc3Npb24sXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuU3RvcFJ1bnRpbWVTZXNzaW9uLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlN1Ym1pdFJlZ2lzdHJ5UmVjb3JkRm9yQXBwcm92YWwsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlQUJUZXN0LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZUFnZW50UnVudGltZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVBZ2VudFJ1bnRpbWVFbmRwb2ludCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlQnJvd3NlclN0cmVhbSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVDYXBhY2l0eVByb3ZpZGVyLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZUNvbmZpZ3VyYXRpb25CdW5kbGUsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlRGF0YXNldCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVEYXRhc2V0RXhhbXBsZXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlRXZhbHVhdG9yLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZUdhdGV3YXksXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlR2F0ZXdheVJhdGVMaW1pdCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVHYXRld2F5UnVsZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVHYXRld2F5VGFyZ2V0LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZUhhcm5lc3MsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlSGFybmVzc0VuZHBvaW50LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZU1lbW9yeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVQYXltZW50Q29ubmVjdG9yLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlUGF5bWVudE1hbmFnZXIsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuVXBkYXRlUG9saWN5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVwZGF0ZVBvbGljeUVuZ2luZSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVSZWdpc3RyeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVSZWdpc3RyeVJlY29yZCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVSZWdpc3RyeVJlY29yZFN0YXR1cyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5VcGRhdGVXb3JrbG9hZElkZW50aXR5LFxuXHRdO1xuXHQvKiogQWxsIGxpc3QtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbExpc3RBY3Rpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5HYXRld2F5TGlzdFJlc291cmNlc0ZvcldlYkFDTCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0QUJUZXN0cyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0QWN0b3JzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RBZ2VudFJ1bnRpbWVFbmRwb2ludHMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdEFnZW50UnVudGltZVZlcnNpb25zLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RBZ2VudFJ1bnRpbWVWZXJzaW9uc0J5Q2FwYWNpdHlQcm92aWRlcixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0QWdlbnRSdW50aW1lcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0QmF0Y2hFdmFsdWF0aW9ucyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0QnJvd3NlclByb2ZpbGVzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RCcm93c2VyU2Vzc2lvbnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdEJyb3dzZXJzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RDYXBhY2l0eVByb3ZpZGVycyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0Q29kZUludGVycHJldGVyU2Vzc2lvbnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdENvZGVJbnRlcnByZXRlcnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdENvbmZpZ3VyYXRpb25CdW5kbGVWZXJzaW9ucyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0Q29uZmlndXJhdGlvbkJ1bmRsZXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdERhdGFzZXRFeGFtcGxlcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0RGF0YXNldFZlcnNpb25zLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3REYXRhc2V0cyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0RXZhbHVhdG9ycyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0RXZlbnRzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RHYXRld2F5UmF0ZUxpbWl0cyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0R2F0ZXdheVJ1bGVzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RHYXRld2F5VGFyZ2V0cyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0R2F0ZXdheXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdEhhcm5lc3NFbmRwb2ludHMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdEhhcm5lc3NWZXJzaW9ucyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0SGFybmVzc2VzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RNZW1vcmllcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0TWVtb3J5RXh0cmFjdGlvbkpvYnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdE1lbW9yeVJlY29yZHMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdE9ubGluZUV2YWx1YXRpb25Db25maWdzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RQYXltZW50Q29ubmVjdG9ycyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0UGF5bWVudENyZWRlbnRpYWxQcm92aWRlcnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFBheW1lbnRJbnN0cnVtZW50cyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0UGF5bWVudE1hbmFnZXJzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RQYXltZW50U2Vzc2lvbnMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFBvbGljaWVzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RQb2xpY3lFbmdpbmVTdW1tYXJpZXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFBvbGljeUVuZ2luZXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFBvbGljeUdlbmVyYXRpb25Bc3NldHMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFBvbGljeUdlbmVyYXRpb25TdW1tYXJpZXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFBvbGljeUdlbmVyYXRpb25zLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RQb2xpY3lTdW1tYXJpZXMsXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuTGlzdFJlY29tbWVuZGF0aW9ucyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0UmVnaXN0cmllcyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0UmVnaXN0cnlSZWNvcmRzLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkxpc3RTZXNzaW9ucyxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5MaXN0VGFnc0ZvclJlc291cmNlLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlJldHJpZXZlTWVtb3J5UmVjb3Jkcyxcblx0XTtcblx0LyoqIEFsbCBwZXJtaXNzaW9uLW1hbmFnZW1lbnQtbGV2ZWwgYWN0aW9ucy4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEFsbFBlcm1pc3Npb25NYW5hZ2VtZW50QWN0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0QmVkcm9ja0FnZW50Y29yZUFjdGlvbnMuQWxsb3dWZW5kZWRMb2dEZWxpdmVyeUZvclJlc291cmNlLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkF1dGhvcml6ZUFjdGlvbixcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5JbnZva2VHYXRld2F5LFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLkludm9rZVdlYlNlYXJjaCxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5NYW5hZ2VBZG1pblBvbGljeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5NYW5hZ2VSZXNvdXJjZVNjb3BlZFBvbGljeSxcblx0XHRCZWRyb2NrQWdlbnRjb3JlQWN0aW9ucy5QYXJ0aWFsbHlBdXRob3JpemVBY3Rpb25zLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlN5bmNocm9uaXplR2F0ZXdheVRhcmdldHMsXG5cdF07XG5cdC8qKiBBbGwgdGFnZ2luZy1sZXZlbCBhY3Rpb25zLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWxsVGFnZ2luZ0FjdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlRhZ1Jlc291cmNlLFxuXHRcdEJlZHJvY2tBZ2VudGNvcmVBY3Rpb25zLlVudGFnUmVzb3VyY2UsXG5cdF07XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBhYi10ZXN0IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQWJUZXN0QXJuUHJvcHMge1xuXHQvKiogVGhlIEFCVGVzdElkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBhYlRlc3RJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGFiLXRlc3QgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVBYlRlc3RBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEFCVGVzdElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgYWJUZXN0SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGFwaWtleWNyZWRlbnRpYWxwcm92aWRlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUFwaWtleWNyZWRlbnRpYWxwcm92aWRlckFyblByb3BzIHtcblx0LyoqIFRoZSBUb2tlblZhdWx0SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHRva2VuVmF1bHRJZDogc3RyaW5nO1xuXHQvKiogVGhlIE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBhcGlrZXljcmVkZW50aWFscHJvdmlkZXIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVBcGlrZXljcmVkZW50aWFscHJvdmlkZXJBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFRva2VuVmF1bHRJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHRva2VuVmF1bHRJZDogc3RyaW5nO1xuXHQvKiogVGhlIE5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBuYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBiYXRjaC1ldmFsdWF0ZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUJhdGNoRXZhbHVhdGVBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQmF0Y2hFdmFsdWF0aW9uSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGJhdGNoRXZhbHVhdGlvbklkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgYmF0Y2gtZXZhbHVhdGUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVCYXRjaEV2YWx1YXRlQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBCYXRjaEV2YWx1YXRpb25JZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGJhdGNoRXZhbHVhdGlvbklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBicm93c2VyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQnJvd3NlckFyblByb3BzIHtcblx0LyoqIFRoZSBCcm93c2VySWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGJyb3dzZXJJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGJyb3dzZXIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVCcm93c2VyQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBCcm93c2VySWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBicm93c2VySWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGJyb3dzZXItY3VzdG9tIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQnJvd3NlckN1c3RvbUFyblByb3BzIHtcblx0LyoqIFRoZSBCcm93c2VySWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGJyb3dzZXJJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGJyb3dzZXItY3VzdG9tIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQnJvd3NlckN1c3RvbUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgQnJvd3NlcklkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgYnJvd3NlcklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBicm93c2VyLXByb2ZpbGUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVCcm93c2VyUHJvZmlsZUFyblByb3BzIHtcblx0LyoqIFRoZSBCcm93c2VyUHJvZmlsZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBicm93c2VyUHJvZmlsZUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgYnJvd3Nlci1wcm9maWxlIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQnJvd3NlclByb2ZpbGVBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIEJyb3dzZXJQcm9maWxlSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBicm93c2VyUHJvZmlsZUlkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBjYXBhY2l0eS1wcm92aWRlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUNhcGFjaXR5UHJvdmlkZXJBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgQ2FwYWNpdHlQcm92aWRlcklkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBjYXBhY2l0eVByb3ZpZGVySWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBjYXBhY2l0eS1wcm92aWRlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUNhcGFjaXR5UHJvdmlkZXJBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIENhcGFjaXR5UHJvdmlkZXJJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGNhcGFjaXR5UHJvdmlkZXJJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgY29kZS1pbnRlcnByZXRlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUNvZGVJbnRlcnByZXRlckFyblByb3BzIHtcblx0LyoqIFRoZSBDb2RlSW50ZXJwcmV0ZXJJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgY29kZUludGVycHJldGVySWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBjb2RlLWludGVycHJldGVyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlQ29kZUludGVycHJldGVyQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBDb2RlSW50ZXJwcmV0ZXJJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGNvZGVJbnRlcnByZXRlcklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBjb2RlLWludGVycHJldGVyLWN1c3RvbSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUNvZGVJbnRlcnByZXRlckN1c3RvbUFyblByb3BzIHtcblx0LyoqIFRoZSBDb2RlSW50ZXJwcmV0ZXJJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgY29kZUludGVycHJldGVySWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBjb2RlLWludGVycHJldGVyLWN1c3RvbSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUNvZGVJbnRlcnByZXRlckN1c3RvbUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgQ29kZUludGVycHJldGVySWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBjb2RlSW50ZXJwcmV0ZXJJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgY29uZmlndXJhdGlvbi1idW5kbGUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVDb25maWd1cmF0aW9uQnVuZGxlQXJuUHJvcHMge1xuXHQvKiogVGhlIENvbmZpZ3VyYXRpb25CdW5kbGVJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgY29uZmlndXJhdGlvbkJ1bmRsZUlkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgY29uZmlndXJhdGlvbi1idW5kbGUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVDb25maWd1cmF0aW9uQnVuZGxlQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBDb25maWd1cmF0aW9uQnVuZGxlSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBjb25maWd1cmF0aW9uQnVuZGxlSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGRhdGFzZXQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVEYXRhc2V0QXJuUHJvcHMge1xuXHQvKiogVGhlIERhdGFzZXRJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgZGF0YXNldElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgZGF0YXNldCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZURhdGFzZXRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIERhdGFzZXRJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IGRhdGFzZXRJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgZXZhbHVhdG9yIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlRXZhbHVhdG9yQXJuUHJvcHMge1xuXHQvKiogVGhlIEV2YWx1YXRvcklkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBldmFsdWF0b3JJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGV2YWx1YXRvciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUV2YWx1YXRvckFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgRXZhbHVhdG9ySWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBldmFsdWF0b3JJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgZ2F0ZXdheSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUdhdGV3YXlBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgR2F0ZXdheUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBnYXRld2F5SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBnYXRld2F5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlR2F0ZXdheUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgR2F0ZXdheUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZ2F0ZXdheUlkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBoYXJuZXNzIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlSGFybmVzc0FyblByb3BzIHtcblx0LyoqIFRoZSBIYXJuZXNzSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IGhhcm5lc3NJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIGhhcm5lc3MgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVIYXJuZXNzQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcblx0LyoqIFRoZSBIYXJuZXNzSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBoYXJuZXNzSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIGhhcm5lc3MtZW5kcG9pbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVIYXJuZXNzRW5kcG9pbnRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgSGFybmVzc0lkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBoYXJuZXNzSWQ6IHN0cmluZztcblx0LyoqIFRoZSBOYW1lIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgaGFybmVzcy1lbmRwb2ludCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZUhhcm5lc3NFbmRwb2ludEFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgSGFybmVzc0lkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgaGFybmVzc0lkOiBzdHJpbmc7XG5cdC8qKiBUaGUgTmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIG1lbW9yeSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZU1lbW9yeUFyblByb3BzIHtcblx0LyoqIFRoZSBNZW1vcnlJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgbWVtb3J5SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBtZW1vcnkgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVNZW1vcnlBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIE1lbW9yeUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgbWVtb3J5SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIG9hdXRoMmNyZWRlbnRpYWxwcm92aWRlciBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZU9hdXRoMmNyZWRlbnRpYWxwcm92aWRlckFyblByb3BzIHtcblx0LyoqIFRoZSBUb2tlblZhdWx0SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHRva2VuVmF1bHRJZDogc3RyaW5nO1xuXHQvKiogVGhlIE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBvYXV0aDJjcmVkZW50aWFscHJvdmlkZXIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVPYXV0aDJjcmVkZW50aWFscHJvdmlkZXJBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFRva2VuVmF1bHRJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHRva2VuVmF1bHRJZDogc3RyaW5nO1xuXHQvKiogVGhlIE5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBuYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBvbmxpbmUtZXZhbHVhdGlvbi1jb25maWcgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnQXJuUHJvcHMge1xuXHQvKiogVGhlIE9ubGluZUV2YWx1YXRpb25Db25maWdJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgb25saW5lRXZhbHVhdGlvbkNvbmZpZ0lkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgb25saW5lLWV2YWx1YXRpb24tY29uZmlnIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlT25saW5lRXZhbHVhdGlvbkNvbmZpZ0FybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgT25saW5lRXZhbHVhdGlvbkNvbmZpZ0lkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgb25saW5lRXZhbHVhdGlvbkNvbmZpZ0lkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBwYXltZW50LW1hbmFnZXIgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVQYXltZW50TWFuYWdlckFyblByb3BzIHtcblx0LyoqIFRoZSBQYXltZW50TWFuYWdlcklkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBwYXltZW50TWFuYWdlcklkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcGF5bWVudC1tYW5hZ2VyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUGF5bWVudE1hbmFnZXJBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFBheW1lbnRNYW5hZ2VySWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBwYXltZW50TWFuYWdlcklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBwYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUGF5bWVudGNyZWRlbnRpYWxwcm92aWRlckFyblByb3BzIHtcblx0LyoqIFRoZSBUb2tlblZhdWx0SWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHRva2VuVmF1bHRJZDogc3RyaW5nO1xuXHQvKiogVGhlIE5hbWUgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBwYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUGF5bWVudGNyZWRlbnRpYWxwcm92aWRlckFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgVG9rZW5WYXVsdElkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgdG9rZW5WYXVsdElkOiBzdHJpbmc7XG5cdC8qKiBUaGUgTmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHBvbGljeSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVBvbGljeUFyblByb3BzIHtcblx0LyoqIFRoZSBQb2xpY3lFbmdpbmVJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcG9saWN5RW5naW5lSWQ6IHN0cmluZztcblx0LyoqIFRoZSBQb2xpY3lJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcG9saWN5SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBwb2xpY3kgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVQb2xpY3lBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFBvbGljeUVuZ2luZUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgcG9saWN5RW5naW5lSWQ6IHN0cmluZztcblx0LyoqIFRoZSBQb2xpY3lJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHBvbGljeUlkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBwb2xpY3ktZW5naW5lIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUG9saWN5RW5naW5lQXJuUHJvcHMge1xuXHQvKiogVGhlIFBvbGljeUVuZ2luZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBwb2xpY3lFbmdpbmVJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHBvbGljeS1lbmdpbmUgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVQb2xpY3lFbmdpbmVBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFBvbGljeUVuZ2luZUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgcG9saWN5RW5naW5lSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHBvbGljeS1nZW5lcmF0aW9uIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUG9saWN5R2VuZXJhdGlvbkFyblByb3BzIHtcblx0LyoqIFRoZSBQb2xpY3lFbmdpbmVJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcG9saWN5RW5naW5lSWQ6IHN0cmluZztcblx0LyoqIFRoZSBQb2xpY3lHZW5lcmF0aW9uSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHBvbGljeUdlbmVyYXRpb25JZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHBvbGljeS1nZW5lcmF0aW9uIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUG9saWN5R2VuZXJhdGlvbkFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUG9saWN5RW5naW5lSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBwb2xpY3lFbmdpbmVJZDogc3RyaW5nO1xuXHQvKiogVGhlIFBvbGljeUdlbmVyYXRpb25JZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHBvbGljeUdlbmVyYXRpb25JZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgcmVjb21tZW5kYXRpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVSZWNvbW1lbmRhdGlvbkFyblByb3BzIHtcblx0LyoqIFRoZSBSZWNvbW1lbmRhdGlvbklkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSByZWNvbW1lbmRhdGlvbklkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcmVjb21tZW5kYXRpb24gQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVSZWNvbW1lbmRhdGlvbkFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUmVjb21tZW5kYXRpb25JZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHJlY29tbWVuZGF0aW9uSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHJlZ2lzdHJ5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUmVnaXN0cnlBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUmVnaXN0cnlJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcmVnaXN0cnlJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHJlZ2lzdHJ5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUmVnaXN0cnlBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFJlZ2lzdHJ5SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSByZWdpc3RyeUlkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSByZWdpc3RyeS1yZWNvcmQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVSZWdpc3RyeVJlY29yZEFyblByb3BzIHtcblx0LyoqIFRoZSBSZWdpc3RyeUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSByZWdpc3RyeUlkOiBzdHJpbmc7XG5cdC8qKiBUaGUgUmVjb3JkSWQgY29tcG9uZW50IG9mIHRoZSBBUk4uICovXG5cdHJlYWRvbmx5IHJlY29yZElkOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSBhY2NvdW50Pzogc3RyaW5nO1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gRGVmYXVsdHMgdG8gXCJhd3NcIi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBhcnNlZCBjb21wb25lbnRzIG9mIGEgcmVnaXN0cnktcmVjb3JkIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUmVnaXN0cnlSZWNvcmRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFJlZ2lzdHJ5SWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSByZWdpc3RyeUlkOiBzdHJpbmc7XG5cdC8qKiBUaGUgUmVjb3JkSWQgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSByZWNvcmRJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgcnVudGltZSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVJ1bnRpbWVBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgUnVudGltZUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBydW50aW1lSWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSBydW50aW1lIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUnVudGltZUFybkNvbXBvbmVudHMge1xuXHQvKiogQVdTIHBhcnRpdGlvbi4gKi9cblx0cmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgcmVnaW9uLiAqL1xuXHRyZWFkb25seSByZWdpb246IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiAqL1xuXHRyZWFkb25seSBhY2NvdW50OiBzdHJpbmc7XG5cdC8qKiBUaGUgUnVudGltZUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgcnVudGltZUlkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSBydW50aW1lLWVuZHBvaW50IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlUnVudGltZUVuZHBvaW50QXJuUHJvcHMge1xuXHQvKiogVGhlIFJ1bnRpbWVJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgcnVudGltZUlkOiBzdHJpbmc7XG5cdC8qKiBUaGUgTmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHJ1bnRpbWUtZW5kcG9pbnQgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVSdW50aW1lRW5kcG9pbnRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFJ1bnRpbWVJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHJ1bnRpbWVJZDogc3RyaW5nO1xuXHQvKiogVGhlIE5hbWUgY29tcG9uZW50LiAqL1xuXHRyZWFkb25seSBuYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSB0b2tlbi12YXVsdCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVRva2VuVmF1bHRBcm5Qcm9wcyB7XG5cdC8qKiBUaGUgVG9rZW5WYXVsdElkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSB0b2tlblZhdWx0SWQ6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSB0b2tlbi12YXVsdCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVRva2VuVmF1bHRBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIFRva2VuVmF1bHRJZCBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHRva2VuVmF1bHRJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGJ1aWxkaW5nIGEgd2ViLXNlYXJjaCBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVdlYlNlYXJjaEFyblByb3BzIHtcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSB3ZWItc2VhcmNoIEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlV2ViU2VhcmNoQXJuQ29tcG9uZW50cyB7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb246IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uICovXG5cdHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXHQvKiogQVdTIGFjY291bnQgSUQuICovXG5cdHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBidWlsZGluZyBhIHdvcmtsb2FkLWlkZW50aXR5IEFSTi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWRyb2NrQWdlbnRjb3JlV29ya2xvYWRJZGVudGl0eUFyblByb3BzIHtcblx0LyoqIFRoZSBEaXJlY3RvcnlJZCBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgZGlyZWN0b3J5SWQ6IHN0cmluZztcblx0LyoqIFRoZSBXb3JrbG9hZElkZW50aXR5TmFtZSBjb21wb25lbnQgb2YgdGhlIEFSTi4gKi9cblx0cmVhZG9ubHkgd29ya2xvYWRJZGVudGl0eU5hbWU6IHN0cmluZztcblx0LyoqIEFXUyByZWdpb24uIERlZmF1bHRzIHRvIFwiKlwiLiAqL1xuXHRyZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IGFjY291bnQ/OiBzdHJpbmc7XG5cdC8qKiBBV1MgcGFydGl0aW9uLiBEZWZhdWx0cyB0byBcImF3c1wiLiAqL1xuXHRyZWFkb25seSBwYXJ0aXRpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGFyc2VkIGNvbXBvbmVudHMgb2YgYSB3b3JrbG9hZC1pZGVudGl0eSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVdvcmtsb2FkSWRlbnRpdHlBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIERpcmVjdG9yeUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZGlyZWN0b3J5SWQ6IHN0cmluZztcblx0LyoqIFRoZSBXb3JrbG9hZElkZW50aXR5TmFtZSBjb21wb25lbnQuICovXG5cdHJlYWRvbmx5IHdvcmtsb2FkSWRlbnRpdHlOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYnVpbGRpbmcgYSB3b3JrbG9hZC1pZGVudGl0eS1kaXJlY3RvcnkgQVJOLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZHJvY2tBZ2VudGNvcmVXb3JrbG9hZElkZW50aXR5RGlyZWN0b3J5QXJuUHJvcHMge1xuXHQvKiogVGhlIERpcmVjdG9yeUlkIGNvbXBvbmVudCBvZiB0aGUgQVJOLiAqL1xuXHRyZWFkb25seSBkaXJlY3RvcnlJZDogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gRGVmYXVsdHMgdG8gXCIqXCIuICovXG5cdHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblx0LyoqIEFXUyBhY2NvdW50IElELiBEZWZhdWx0cyB0byBcIipcIi4gKi9cblx0cmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblx0LyoqIEFXUyBwYXJ0aXRpb24uIERlZmF1bHRzIHRvIFwiYXdzXCIuICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQYXJzZWQgY29tcG9uZW50cyBvZiBhIHdvcmtsb2FkLWlkZW50aXR5LWRpcmVjdG9yeSBBUk4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmVkcm9ja0FnZW50Y29yZVdvcmtsb2FkSWRlbnRpdHlEaXJlY3RvcnlBcm5Db21wb25lbnRzIHtcblx0LyoqIEFXUyBwYXJ0aXRpb24uICovXG5cdHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nO1xuXHQvKiogQVdTIHJlZ2lvbi4gKi9cblx0cmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cdC8qKiBBV1MgYWNjb3VudCBJRC4gKi9cblx0cmVhZG9ubHkgYWNjb3VudDogc3RyaW5nO1xuXHQvKiogVGhlIERpcmVjdG9yeUlkIGNvbXBvbmVudC4gKi9cblx0cmVhZG9ubHkgZGlyZWN0b3J5SWQ6IHN0cmluZztcbn1cblxuY29uc3QgQWJUZXN0QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6YWItdGVzdFxcLyg/PGFiVGVzdElkPlteOi8/XSspJC87XG5jb25zdCBBcGlrZXljcmVkZW50aWFscHJvdmlkZXJBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTp0b2tlbi12YXVsdFxcLyg/PHRva2VuVmF1bHRJZD5bXjovP10rKVxcL2FwaWtleWNyZWRlbnRpYWxwcm92aWRlclxcLyg/PG5hbWU+W146Lz9dKykkLztcbmNvbnN0IEJhdGNoRXZhbHVhdGVBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpiYXRjaC1ldmFsdWF0ZVxcLyg/PGJhdGNoRXZhbHVhdGlvbklkPlteOi8/XSspJC87XG5jb25zdCBCcm93c2VyQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6YXdzOmJyb3dzZXJcXC8oPzxicm93c2VySWQ+W146Lz9dKykkLztcbmNvbnN0IEJyb3dzZXJDdXN0b21Bcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpicm93c2VyLWN1c3RvbVxcLyg/PGJyb3dzZXJJZD5bXjovP10rKSQvO1xuY29uc3QgQnJvd3NlclByb2ZpbGVBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpicm93c2VyLXByb2ZpbGVcXC8oPzxicm93c2VyUHJvZmlsZUlkPlteOi8/XSspJC87XG5jb25zdCBDYXBhY2l0eVByb3ZpZGVyQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6Y2FwYWNpdHktcHJvdmlkZXJcXC8oPzxjYXBhY2l0eVByb3ZpZGVySWQ+W146Lz9dKykkLztcbmNvbnN0IENvZGVJbnRlcnByZXRlckFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOmF3czpjb2RlLWludGVycHJldGVyXFwvKD88Y29kZUludGVycHJldGVySWQ+W146Lz9dKykkLztcbmNvbnN0IENvZGVJbnRlcnByZXRlckN1c3RvbUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmNvZGUtaW50ZXJwcmV0ZXItY3VzdG9tXFwvKD88Y29kZUludGVycHJldGVySWQ+W146Lz9dKykkLztcbmNvbnN0IENvbmZpZ3VyYXRpb25CdW5kbGVBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpjb25maWd1cmF0aW9uLWJ1bmRsZVxcLyg/PGNvbmZpZ3VyYXRpb25CdW5kbGVJZD5bXjovP10rKSQvO1xuY29uc3QgRGF0YXNldEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmRhdGFzZXRcXC8oPzxkYXRhc2V0SWQ+W146Lz9dKykkLztcbmNvbnN0IEV2YWx1YXRvckFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmV2YWx1YXRvclxcLyg/PGV2YWx1YXRvcklkPlteOi8/XSspJC87XG5jb25zdCBHYXRld2F5QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6Z2F0ZXdheVxcLyg/PGdhdGV3YXlJZD5bXjovP10rKSQvO1xuY29uc3QgSGFybmVzc0FyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmhhcm5lc3NcXC8oPzxoYXJuZXNzSWQ+W146Lz9dKykkLztcbmNvbnN0IEhhcm5lc3NFbmRwb2ludEFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOmhhcm5lc3NcXC8oPzxoYXJuZXNzSWQ+W146Lz9dKylcXC9oYXJuZXNzLWVuZHBvaW50XFwvKD88bmFtZT5bXjovP10rKSQvO1xuY29uc3QgTWVtb3J5QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6bWVtb3J5XFwvKD88bWVtb3J5SWQ+W146Lz9dKykkLztcbmNvbnN0IE9hdXRoMmNyZWRlbnRpYWxwcm92aWRlckFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnRva2VuLXZhdWx0XFwvKD88dG9rZW5WYXVsdElkPlteOi8/XSspXFwvb2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyXFwvKD88bmFtZT5bXjovP10rKSQvO1xuY29uc3QgT25saW5lRXZhbHVhdGlvbkNvbmZpZ0FyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOm9ubGluZS1ldmFsdWF0aW9uLWNvbmZpZ1xcLyg/PG9ubGluZUV2YWx1YXRpb25Db25maWdJZD5bXjovP10rKSQvO1xuY29uc3QgUGF5bWVudE1hbmFnZXJBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpwYXltZW50LW1hbmFnZXJcXC8oPzxwYXltZW50TWFuYWdlcklkPlteOi8/XSspJC87XG5jb25zdCBQYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6dG9rZW4tdmF1bHRcXC8oPzx0b2tlblZhdWx0SWQ+W146Lz9dKylcXC9wYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyXFwvKD88bmFtZT5bXjovP10rKSQvO1xuY29uc3QgUG9saWN5QXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6cG9saWN5LWVuZ2luZVxcLyg/PHBvbGljeUVuZ2luZUlkPlteOi8/XSspXFwvcG9saWN5XFwvKD88cG9saWN5SWQ+W146Lz9dKykkLztcbmNvbnN0IFBvbGljeUVuZ2luZUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnBvbGljeS1lbmdpbmVcXC8oPzxwb2xpY3lFbmdpbmVJZD5bXjovP10rKSQvO1xuY29uc3QgUG9saWN5R2VuZXJhdGlvbkFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnBvbGljeS1lbmdpbmVcXC8oPzxwb2xpY3lFbmdpbmVJZD5bXjovP10rKVxcL3BvbGljeS1nZW5lcmF0aW9uXFwvKD88cG9saWN5R2VuZXJhdGlvbklkPlteOi8/XSspJC87XG5jb25zdCBSZWNvbW1lbmRhdGlvbkFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOnJlY29tbWVuZGF0aW9uXFwvKD88cmVjb21tZW5kYXRpb25JZD5bXjovP10rKSQvO1xuY29uc3QgUmVnaXN0cnlBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpyZWdpc3RyeVxcLyg/PHJlZ2lzdHJ5SWQ+W146Lz9dKykkLztcbmNvbnN0IFJlZ2lzdHJ5UmVjb3JkQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6cmVnaXN0cnlcXC8oPzxyZWdpc3RyeUlkPlteOi8/XSspXFwvcmVjb3JkXFwvKD88cmVjb3JkSWQ+W146Lz9dKykkLztcbmNvbnN0IFJ1bnRpbWVBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpydW50aW1lXFwvKD88cnVudGltZUlkPlteOi8/XSspJC87XG5jb25zdCBSdW50aW1lRW5kcG9pbnRBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTpydW50aW1lXFwvKD88cnVudGltZUlkPlteOi8/XSspXFwvcnVudGltZS1lbmRwb2ludFxcLyg/PG5hbWU+W146Lz9dKykkLztcbmNvbnN0IFRva2VuVmF1bHRBcm5SZWdleCA9XG5cdC9eYXJuOig/PHBhcnRpdGlvbj5bXjpdKyk6YmVkcm9jay1hZ2VudGNvcmU6KD88cmVnaW9uPlteOl0qKTooPzxhY2NvdW50PlteOl0qKTp0b2tlbi12YXVsdFxcLyg/PHRva2VuVmF1bHRJZD5bXjovP10rKSQvO1xuY29uc3QgV2ViU2VhcmNoQXJuUmVnZXggPVxuXHQvXmFybjooPzxwYXJ0aXRpb24+W146XSspOmJlZHJvY2stYWdlbnRjb3JlOig/PHJlZ2lvbj5bXjpdKik6KD88YWNjb3VudD5bXjpdKik6dG9vbFxcL3dlYi1zZWFyY2hcXC52MSQvO1xuY29uc3QgV29ya2xvYWRJZGVudGl0eUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOndvcmtsb2FkLWlkZW50aXR5LWRpcmVjdG9yeVxcLyg/PGRpcmVjdG9yeUlkPlteOi8/XSspXFwvd29ya2xvYWQtaWRlbnRpdHlcXC8oPzx3b3JrbG9hZElkZW50aXR5TmFtZT5bXjovP10rKSQvO1xuY29uc3QgV29ya2xvYWRJZGVudGl0eURpcmVjdG9yeUFyblJlZ2V4ID1cblx0L15hcm46KD88cGFydGl0aW9uPlteOl0rKTpiZWRyb2NrLWFnZW50Y29yZTooPzxyZWdpb24+W146XSopOig/PGFjY291bnQ+W146XSopOndvcmtsb2FkLWlkZW50aXR5LWRpcmVjdG9yeVxcLyg/PGRpcmVjdG9yeUlkPlteOi8/XSspJC87XG5cbi8qKlxuICogQVJOIGJ1aWxkZXJzLCB2YWxpZGF0b3JzLCBhbmQgcGFyc2VycyBmb3IgYmVkcm9jay1hZ2VudGNvcmUgcmVzb3VyY2VzLlxuICovXG5leHBvcnQgY2xhc3MgQmVkcm9ja0FnZW50Y29yZVJlc291cmNlcyB7XG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgYWItdGVzdCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBhYlRlc3QocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVBYlRlc3RBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06YWItdGVzdC8ke3Byb3BzLmFiVGVzdElkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBhYi10ZXN0IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRBYlRlc3RBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQWJUZXN0QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGFiLXRlc3QgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQWJUZXN0QXJuKGFybjogc3RyaW5nKTogQmVkcm9ja0FnZW50Y29yZUFiVGVzdEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQWJUZXN0QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGFiLXRlc3QgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0YWJUZXN0SWQ6IG1hdGNoLmdyb3VwcyEuYWJUZXN0SWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgYXBpa2V5Y3JlZGVudGlhbHByb3ZpZGVyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGFwaWtleWNyZWRlbnRpYWxwcm92aWRlcihcblx0XHRwcm9wczogQmVkcm9ja0FnZW50Y29yZUFwaWtleWNyZWRlbnRpYWxwcm92aWRlckFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnRva2VuLXZhdWx0LyR7cHJvcHMudG9rZW5WYXVsdElkfS9hcGlrZXljcmVkZW50aWFscHJvdmlkZXIvJHtwcm9wcy5uYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBhcGlrZXljcmVkZW50aWFscHJvdmlkZXIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEFwaWtleWNyZWRlbnRpYWxwcm92aWRlckFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBBcGlrZXljcmVkZW50aWFscHJvdmlkZXJBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgYXBpa2V5Y3JlZGVudGlhbHByb3ZpZGVyIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUFwaWtleWNyZWRlbnRpYWxwcm92aWRlckFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZUFwaWtleWNyZWRlbnRpYWxwcm92aWRlckFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQXBpa2V5Y3JlZGVudGlhbHByb3ZpZGVyQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGFwaWtleWNyZWRlbnRpYWxwcm92aWRlciBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHR0b2tlblZhdWx0SWQ6IG1hdGNoLmdyb3VwcyEudG9rZW5WYXVsdElkLFxuXHRcdFx0bmFtZTogbWF0Y2guZ3JvdXBzIS5uYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGJhdGNoLWV2YWx1YXRlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGJhdGNoRXZhbHVhdGUocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVCYXRjaEV2YWx1YXRlQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmJhdGNoLWV2YWx1YXRlLyR7cHJvcHMuYmF0Y2hFdmFsdWF0aW9uSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGJhdGNoLWV2YWx1YXRlIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRCYXRjaEV2YWx1YXRlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEJhdGNoRXZhbHVhdGVBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgYmF0Y2gtZXZhbHVhdGUgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQmF0Y2hFdmFsdWF0ZUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZUJhdGNoRXZhbHVhdGVBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEJhdGNoRXZhbHVhdGVBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgYmF0Y2gtZXZhbHVhdGUgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0YmF0Y2hFdmFsdWF0aW9uSWQ6IG1hdGNoLmdyb3VwcyEuYmF0Y2hFdmFsdWF0aW9uSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgYnJvd3NlciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBicm93c2VyKHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlQnJvd3NlckFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06YXdzOmJyb3dzZXIvJHtwcm9wcy5icm93c2VySWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGJyb3dzZXIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEJyb3dzZXJBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQnJvd3NlckFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBicm93c2VyIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUJyb3dzZXJBcm4oYXJuOiBzdHJpbmcpOiBCZWRyb2NrQWdlbnRjb3JlQnJvd3NlckFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gQnJvd3NlckFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBicm93c2VyIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGJyb3dzZXJJZDogbWF0Y2guZ3JvdXBzIS5icm93c2VySWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgYnJvd3Nlci1jdXN0b20gcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgYnJvd3NlckN1c3RvbShwcm9wczogQmVkcm9ja0FnZW50Y29yZUJyb3dzZXJDdXN0b21Bcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06YnJvd3Nlci1jdXN0b20vJHtwcm9wcy5icm93c2VySWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGJyb3dzZXItY3VzdG9tIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRCcm93c2VyQ3VzdG9tQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEJyb3dzZXJDdXN0b21Bcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgYnJvd3Nlci1jdXN0b20gQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQnJvd3NlckN1c3RvbUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZUJyb3dzZXJDdXN0b21Bcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IEJyb3dzZXJDdXN0b21Bcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgYnJvd3Nlci1jdXN0b20gQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0YnJvd3NlcklkOiBtYXRjaC5ncm91cHMhLmJyb3dzZXJJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBicm93c2VyLXByb2ZpbGUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgYnJvd3NlclByb2ZpbGUocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVCcm93c2VyUHJvZmlsZUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpicm93c2VyLXByb2ZpbGUvJHtwcm9wcy5icm93c2VyUHJvZmlsZUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBicm93c2VyLXByb2ZpbGUgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEJyb3dzZXJQcm9maWxlQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEJyb3dzZXJQcm9maWxlQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGJyb3dzZXItcHJvZmlsZSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VCcm93c2VyUHJvZmlsZUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZUJyb3dzZXJQcm9maWxlQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBCcm93c2VyUHJvZmlsZUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBicm93c2VyLXByb2ZpbGUgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0YnJvd3NlclByb2ZpbGVJZDogbWF0Y2guZ3JvdXBzIS5icm93c2VyUHJvZmlsZUlkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGNhcGFjaXR5LXByb3ZpZGVyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGNhcGFjaXR5UHJvdmlkZXIoXG5cdFx0cHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVDYXBhY2l0eVByb3ZpZGVyQXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06Y2FwYWNpdHktcHJvdmlkZXIvJHtwcm9wcy5jYXBhY2l0eVByb3ZpZGVySWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGNhcGFjaXR5LXByb3ZpZGVyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRDYXBhY2l0eVByb3ZpZGVyQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIENhcGFjaXR5UHJvdmlkZXJBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgY2FwYWNpdHktcHJvdmlkZXIgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQ2FwYWNpdHlQcm92aWRlckFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZUNhcGFjaXR5UHJvdmlkZXJBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IENhcGFjaXR5UHJvdmlkZXJBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgY2FwYWNpdHktcHJvdmlkZXIgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0Y2FwYWNpdHlQcm92aWRlcklkOiBtYXRjaC5ncm91cHMhLmNhcGFjaXR5UHJvdmlkZXJJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBjb2RlLWludGVycHJldGVyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGNvZGVJbnRlcnByZXRlcihcblx0XHRwcm9wczogQmVkcm9ja0FnZW50Y29yZUNvZGVJbnRlcnByZXRlckFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifTphd3M6Y29kZS1pbnRlcnByZXRlci8ke3Byb3BzLmNvZGVJbnRlcnByZXRlcklkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBjb2RlLWludGVycHJldGVyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRDb2RlSW50ZXJwcmV0ZXJBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQ29kZUludGVycHJldGVyQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGNvZGUtaW50ZXJwcmV0ZXIgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlQ29kZUludGVycHJldGVyQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlQ29kZUludGVycHJldGVyQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBDb2RlSW50ZXJwcmV0ZXJBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgY29kZS1pbnRlcnByZXRlciBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRjb2RlSW50ZXJwcmV0ZXJJZDogbWF0Y2guZ3JvdXBzIS5jb2RlSW50ZXJwcmV0ZXJJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBjb2RlLWludGVycHJldGVyLWN1c3RvbSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBjb2RlSW50ZXJwcmV0ZXJDdXN0b20oXG5cdFx0cHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVDb2RlSW50ZXJwcmV0ZXJDdXN0b21Bcm5Qcm9wcyxcblx0KTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpjb2RlLWludGVycHJldGVyLWN1c3RvbS8ke3Byb3BzLmNvZGVJbnRlcnByZXRlcklkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBjb2RlLWludGVycHJldGVyLWN1c3RvbSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQ29kZUludGVycHJldGVyQ3VzdG9tQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIENvZGVJbnRlcnByZXRlckN1c3RvbUFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBjb2RlLWludGVycHJldGVyLWN1c3RvbSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VDb2RlSW50ZXJwcmV0ZXJDdXN0b21Bcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IEJlZHJvY2tBZ2VudGNvcmVDb2RlSW50ZXJwcmV0ZXJDdXN0b21Bcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IENvZGVJbnRlcnByZXRlckN1c3RvbUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBjb2RlLWludGVycHJldGVyLWN1c3RvbSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRjb2RlSW50ZXJwcmV0ZXJJZDogbWF0Y2guZ3JvdXBzIS5jb2RlSW50ZXJwcmV0ZXJJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBjb25maWd1cmF0aW9uLWJ1bmRsZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBjb25maWd1cmF0aW9uQnVuZGxlKFxuXHRcdHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlQ29uZmlndXJhdGlvbkJ1bmRsZUFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OmNvbmZpZ3VyYXRpb24tYnVuZGxlLyR7cHJvcHMuY29uZmlndXJhdGlvbkJ1bmRsZUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBjb25maWd1cmF0aW9uLWJ1bmRsZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkQ29uZmlndXJhdGlvbkJ1bmRsZUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBDb25maWd1cmF0aW9uQnVuZGxlQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGNvbmZpZ3VyYXRpb24tYnVuZGxlIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUNvbmZpZ3VyYXRpb25CdW5kbGVBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IEJlZHJvY2tBZ2VudGNvcmVDb25maWd1cmF0aW9uQnVuZGxlQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBDb25maWd1cmF0aW9uQnVuZGxlQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGNvbmZpZ3VyYXRpb24tYnVuZGxlIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGNvbmZpZ3VyYXRpb25CdW5kbGVJZDogbWF0Y2guZ3JvdXBzIS5jb25maWd1cmF0aW9uQnVuZGxlSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgZGF0YXNldCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBkYXRhc2V0KHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlRGF0YXNldEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpkYXRhc2V0LyR7cHJvcHMuZGF0YXNldElkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBkYXRhc2V0IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWREYXRhc2V0QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIERhdGFzZXRBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgZGF0YXNldCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VEYXRhc2V0QXJuKGFybjogc3RyaW5nKTogQmVkcm9ja0FnZW50Y29yZURhdGFzZXRBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IERhdGFzZXRBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZGF0YXNldCBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRkYXRhc2V0SWQ6IG1hdGNoLmdyb3VwcyEuZGF0YXNldElkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGV2YWx1YXRvciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBldmFsdWF0b3IocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVFdmFsdWF0b3JBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06ZXZhbHVhdG9yLyR7cHJvcHMuZXZhbHVhdG9ySWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGV2YWx1YXRvciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkRXZhbHVhdG9yQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEV2YWx1YXRvckFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBldmFsdWF0b3IgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlRXZhbHVhdG9yQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlRXZhbHVhdG9yQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBFdmFsdWF0b3JBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZXZhbHVhdG9yIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGV2YWx1YXRvcklkOiBtYXRjaC5ncm91cHMhLmV2YWx1YXRvcklkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIGdhdGV3YXkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgZ2F0ZXdheShwcm9wczogQmVkcm9ja0FnZW50Y29yZUdhdGV3YXlBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06Z2F0ZXdheS8ke3Byb3BzLmdhdGV3YXlJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgZ2F0ZXdheSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkR2F0ZXdheUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBHYXRld2F5QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIGdhdGV3YXkgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlR2F0ZXdheUFybihhcm46IHN0cmluZyk6IEJlZHJvY2tBZ2VudGNvcmVHYXRld2F5QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBHYXRld2F5QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGdhdGV3YXkgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0Z2F0ZXdheUlkOiBtYXRjaC5ncm91cHMhLmdhdGV3YXlJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBoYXJuZXNzIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGhhcm5lc3MocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVIYXJuZXNzQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9Omhhcm5lc3MvJHtwcm9wcy5oYXJuZXNzSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIGhhcm5lc3MgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZEhhcm5lc3NBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gSGFybmVzc0FyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBoYXJuZXNzIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUhhcm5lc3NBcm4oYXJuOiBzdHJpbmcpOiBCZWRyb2NrQWdlbnRjb3JlSGFybmVzc0FybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gSGFybmVzc0FyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBoYXJuZXNzIEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdGhhcm5lc3NJZDogbWF0Y2guZ3JvdXBzIS5oYXJuZXNzSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgaGFybmVzcy1lbmRwb2ludCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBoYXJuZXNzRW5kcG9pbnQoXG5cdFx0cHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVIYXJuZXNzRW5kcG9pbnRBcm5Qcm9wcyxcblx0KTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpoYXJuZXNzLyR7cHJvcHMuaGFybmVzc0lkfS9oYXJuZXNzLWVuZHBvaW50LyR7cHJvcHMubmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgaGFybmVzcy1lbmRwb2ludCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkSGFybmVzc0VuZHBvaW50QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIEhhcm5lc3NFbmRwb2ludEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSBoYXJuZXNzLWVuZHBvaW50IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZUhhcm5lc3NFbmRwb2ludEFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZUhhcm5lc3NFbmRwb2ludEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gSGFybmVzc0VuZHBvaW50QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGhhcm5lc3MtZW5kcG9pbnQgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0aGFybmVzc0lkOiBtYXRjaC5ncm91cHMhLmhhcm5lc3NJZCxcblx0XHRcdG5hbWU6IG1hdGNoLmdyb3VwcyEubmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBtZW1vcnkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgbWVtb3J5KHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlTWVtb3J5QXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9Om1lbW9yeS8ke3Byb3BzLm1lbW9yeUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBtZW1vcnkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZE1lbW9yeUFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBNZW1vcnlBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgbWVtb3J5IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZU1lbW9yeUFybihhcm46IHN0cmluZyk6IEJlZHJvY2tBZ2VudGNvcmVNZW1vcnlBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IE1lbW9yeUFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBtZW1vcnkgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0bWVtb3J5SWQ6IG1hdGNoLmdyb3VwcyEubWVtb3J5SWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgb2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIG9hdXRoMmNyZWRlbnRpYWxwcm92aWRlcihcblx0XHRwcm9wczogQmVkcm9ja0FnZW50Y29yZU9hdXRoMmNyZWRlbnRpYWxwcm92aWRlckFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnRva2VuLXZhdWx0LyR7cHJvcHMudG9rZW5WYXVsdElkfS9vYXV0aDJjcmVkZW50aWFscHJvdmlkZXIvJHtwcm9wcy5uYW1lfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBvYXV0aDJjcmVkZW50aWFscHJvdmlkZXIgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZE9hdXRoMmNyZWRlbnRpYWxwcm92aWRlckFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBPYXV0aDJjcmVkZW50aWFscHJvdmlkZXJBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgb2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZU9hdXRoMmNyZWRlbnRpYWxwcm92aWRlckFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZU9hdXRoMmNyZWRlbnRpYWxwcm92aWRlckFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gT2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG9hdXRoMmNyZWRlbnRpYWxwcm92aWRlciBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHR0b2tlblZhdWx0SWQ6IG1hdGNoLmdyb3VwcyEudG9rZW5WYXVsdElkLFxuXHRcdFx0bmFtZTogbWF0Y2guZ3JvdXBzIS5uYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIG9ubGluZS1ldmFsdWF0aW9uLWNvbmZpZyByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBvbmxpbmVFdmFsdWF0aW9uQ29uZmlnKFxuXHRcdHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlT25saW5lRXZhbHVhdGlvbkNvbmZpZ0FyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9Om9ubGluZS1ldmFsdWF0aW9uLWNvbmZpZy8ke3Byb3BzLm9ubGluZUV2YWx1YXRpb25Db25maWdJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgb25saW5lLWV2YWx1YXRpb24tY29uZmlnIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRPbmxpbmVFdmFsdWF0aW9uQ29uZmlnQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIE9ubGluZUV2YWx1YXRpb25Db25maWdBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgb25saW5lLWV2YWx1YXRpb24tY29uZmlnIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZU9ubGluZUV2YWx1YXRpb25Db25maWdBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IEJlZHJvY2tBZ2VudGNvcmVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBPbmxpbmVFdmFsdWF0aW9uQ29uZmlnQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG9ubGluZS1ldmFsdWF0aW9uLWNvbmZpZyBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRvbmxpbmVFdmFsdWF0aW9uQ29uZmlnSWQ6IG1hdGNoLmdyb3VwcyEub25saW5lRXZhbHVhdGlvbkNvbmZpZ0lkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHBheW1lbnQtbWFuYWdlciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBwYXltZW50TWFuYWdlcihwcm9wczogQmVkcm9ja0FnZW50Y29yZVBheW1lbnRNYW5hZ2VyQXJuUHJvcHMpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnBheW1lbnQtbWFuYWdlci8ke3Byb3BzLnBheW1lbnRNYW5hZ2VySWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHBheW1lbnQtbWFuYWdlciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUGF5bWVudE1hbmFnZXJBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUGF5bWVudE1hbmFnZXJBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcGF5bWVudC1tYW5hZ2VyIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVBheW1lbnRNYW5hZ2VyQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlUGF5bWVudE1hbmFnZXJBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFBheW1lbnRNYW5hZ2VyQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHBheW1lbnQtbWFuYWdlciBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRwYXltZW50TWFuYWdlcklkOiBtYXRjaC5ncm91cHMhLnBheW1lbnRNYW5hZ2VySWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgcGF5bWVudGNyZWRlbnRpYWxwcm92aWRlciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBwYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyKFxuXHRcdHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlUGF5bWVudGNyZWRlbnRpYWxwcm92aWRlckFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnRva2VuLXZhdWx0LyR7cHJvcHMudG9rZW5WYXVsdElkfS9wYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyLyR7cHJvcHMubmFtZX1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgcGF5bWVudGNyZWRlbnRpYWxwcm92aWRlciByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUGF5bWVudGNyZWRlbnRpYWxwcm92aWRlckFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBQYXltZW50Y3JlZGVudGlhbHByb3ZpZGVyQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHBheW1lbnRjcmVkZW50aWFscHJvdmlkZXIgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUGF5bWVudGNyZWRlbnRpYWxwcm92aWRlckFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZVBheW1lbnRjcmVkZW50aWFscHJvdmlkZXJBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFBheW1lbnRjcmVkZW50aWFscHJvdmlkZXJBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcGF5bWVudGNyZWRlbnRpYWxwcm92aWRlciBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHR0b2tlblZhdWx0SWQ6IG1hdGNoLmdyb3VwcyEudG9rZW5WYXVsdElkLFxuXHRcdFx0bmFtZTogbWF0Y2guZ3JvdXBzIS5uYW1lLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHBvbGljeSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBwb2xpY3kocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVQb2xpY3lBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cG9saWN5LWVuZ2luZS8ke3Byb3BzLnBvbGljeUVuZ2luZUlkfS9wb2xpY3kvJHtwcm9wcy5wb2xpY3lJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgcG9saWN5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRQb2xpY3lBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUG9saWN5QXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHBvbGljeSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VQb2xpY3lBcm4oYXJuOiBzdHJpbmcpOiBCZWRyb2NrQWdlbnRjb3JlUG9saWN5QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBQb2xpY3lBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcG9saWN5IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHBvbGljeUVuZ2luZUlkOiBtYXRjaC5ncm91cHMhLnBvbGljeUVuZ2luZUlkLFxuXHRcdFx0cG9saWN5SWQ6IG1hdGNoLmdyb3VwcyEucG9saWN5SWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgcG9saWN5LWVuZ2luZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBwb2xpY3lFbmdpbmUocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVQb2xpY3lFbmdpbmVBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cG9saWN5LWVuZ2luZS8ke3Byb3BzLnBvbGljeUVuZ2luZUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBwb2xpY3ktZW5naW5lIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRQb2xpY3lFbmdpbmVBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUG9saWN5RW5naW5lQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHBvbGljeS1lbmdpbmUgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUG9saWN5RW5naW5lQXJuKFxuXHRcdGFybjogc3RyaW5nLFxuXHQpOiBCZWRyb2NrQWdlbnRjb3JlUG9saWN5RW5naW5lQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBQb2xpY3lFbmdpbmVBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcG9saWN5LWVuZ2luZSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRwb2xpY3lFbmdpbmVJZDogbWF0Y2guZ3JvdXBzIS5wb2xpY3lFbmdpbmVJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSBwb2xpY3ktZ2VuZXJhdGlvbiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBwb2xpY3lHZW5lcmF0aW9uKFxuXHRcdHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlUG9saWN5R2VuZXJhdGlvbkFyblByb3BzLFxuXHQpOiBzdHJpbmcge1xuXHRcdHJldHVybiBgYXJuOiR7cHJvcHMucGFydGl0aW9uID8/IFwiYXdzXCJ9OmJlZHJvY2stYWdlbnRjb3JlOiR7cHJvcHMucmVnaW9uID8/IFwiKlwifToke3Byb3BzLmFjY291bnQgPz8gXCIqXCJ9OnBvbGljeS1lbmdpbmUvJHtwcm9wcy5wb2xpY3lFbmdpbmVJZH0vcG9saWN5LWdlbmVyYXRpb24vJHtwcm9wcy5wb2xpY3lHZW5lcmF0aW9uSWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHBvbGljeS1nZW5lcmF0aW9uIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRQb2xpY3lHZW5lcmF0aW9uQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFBvbGljeUdlbmVyYXRpb25Bcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcG9saWN5LWdlbmVyYXRpb24gQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUG9saWN5R2VuZXJhdGlvbkFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZVBvbGljeUdlbmVyYXRpb25Bcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFBvbGljeUdlbmVyYXRpb25Bcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcG9saWN5LWdlbmVyYXRpb24gQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cG9saWN5RW5naW5lSWQ6IG1hdGNoLmdyb3VwcyEucG9saWN5RW5naW5lSWQsXG5cdFx0XHRwb2xpY3lHZW5lcmF0aW9uSWQ6IG1hdGNoLmdyb3VwcyEucG9saWN5R2VuZXJhdGlvbklkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHJlY29tbWVuZGF0aW9uIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHJlY29tbWVuZGF0aW9uKHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlUmVjb21tZW5kYXRpb25Bcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cmVjb21tZW5kYXRpb24vJHtwcm9wcy5yZWNvbW1lbmRhdGlvbklkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSByZWNvbW1lbmRhdGlvbiByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUmVjb21tZW5kYXRpb25Bcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUmVjb21tZW5kYXRpb25Bcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcmVjb21tZW5kYXRpb24gQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUmVjb21tZW5kYXRpb25Bcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IEJlZHJvY2tBZ2VudGNvcmVSZWNvbW1lbmRhdGlvbkFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gUmVjb21tZW5kYXRpb25Bcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcmVjb21tZW5kYXRpb24gQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cmVjb21tZW5kYXRpb25JZDogbWF0Y2guZ3JvdXBzIS5yZWNvbW1lbmRhdGlvbklkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHJlZ2lzdHJ5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHJlZ2lzdHJ5KHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlUmVnaXN0cnlBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cmVnaXN0cnkvJHtwcm9wcy5yZWdpc3RyeUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSByZWdpc3RyeSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkUmVnaXN0cnlBcm4oYXJuOiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gUmVnaXN0cnlBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcmVnaXN0cnkgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlUmVnaXN0cnlBcm4oYXJuOiBzdHJpbmcpOiBCZWRyb2NrQWdlbnRjb3JlUmVnaXN0cnlBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFJlZ2lzdHJ5QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHJlZ2lzdHJ5IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHJlZ2lzdHJ5SWQ6IG1hdGNoLmdyb3VwcyEucmVnaXN0cnlJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSByZWdpc3RyeS1yZWNvcmQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgcmVnaXN0cnlSZWNvcmQocHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVSZWdpc3RyeVJlY29yZEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpyZWdpc3RyeS8ke3Byb3BzLnJlZ2lzdHJ5SWR9L3JlY29yZC8ke3Byb3BzLnJlY29yZElkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSByZWdpc3RyeS1yZWNvcmQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFJlZ2lzdHJ5UmVjb3JkQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFJlZ2lzdHJ5UmVjb3JkQXJuUmVnZXgudGVzdChhcm4pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFBhcnNlcyBhIHJlZ2lzdHJ5LXJlY29yZCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VSZWdpc3RyeVJlY29yZEFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZVJlZ2lzdHJ5UmVjb3JkQXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBSZWdpc3RyeVJlY29yZEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCByZWdpc3RyeS1yZWNvcmQgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0cmVnaXN0cnlJZDogbWF0Y2guZ3JvdXBzIS5yZWdpc3RyeUlkLFxuXHRcdFx0cmVjb3JkSWQ6IG1hdGNoLmdyb3VwcyEucmVjb3JkSWQsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgcnVudGltZSByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBydW50aW1lKHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlUnVudGltZUFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTpydW50aW1lLyR7cHJvcHMucnVudGltZUlkfWA7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSB2YWxpZCBBUk4gZm9yIHRoZSBydW50aW1lIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRSdW50aW1lQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFJ1bnRpbWVBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcnVudGltZSBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VSdW50aW1lQXJuKGFybjogc3RyaW5nKTogQmVkcm9ja0FnZW50Y29yZVJ1bnRpbWVBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFJ1bnRpbWVBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcnVudGltZSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRydW50aW1lSWQ6IG1hdGNoLmdyb3VwcyEucnVudGltZUlkLFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHJ1bnRpbWUtZW5kcG9pbnQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgcnVudGltZUVuZHBvaW50KFxuXHRcdHByb3BzOiBCZWRyb2NrQWdlbnRjb3JlUnVudGltZUVuZHBvaW50QXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06cnVudGltZS8ke3Byb3BzLnJ1bnRpbWVJZH0vcnVudGltZS1lbmRwb2ludC8ke3Byb3BzLm5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHJ1bnRpbWUtZW5kcG9pbnQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgaXNWYWxpZFJ1bnRpbWVFbmRwb2ludEFybihhcm46IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBSdW50aW1lRW5kcG9pbnRBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgcnVudGltZS1lbmRwb2ludCBBUk4gaW50byBpdHMgY29tcG9uZW50cy5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgQVJOIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuXG5cdCAqL1xuXHRzdGF0aWMgcGFyc2VSdW50aW1lRW5kcG9pbnRBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IEJlZHJvY2tBZ2VudGNvcmVSdW50aW1lRW5kcG9pbnRBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFJ1bnRpbWVFbmRwb2ludEFyblJlZ2V4LmV4ZWMoYXJuKTtcblx0XHRpZiAoIW1hdGNoPy5ncm91cHMpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBydW50aW1lLWVuZHBvaW50IEFSTjogJHthcm59YCk7XG5cdFx0fVxuXHRcdHJldHVybiB7XG5cdFx0XHRwYXJ0aXRpb246IG1hdGNoLmdyb3Vwcy5wYXJ0aXRpb24sXG5cdFx0XHRyZWdpb246IG1hdGNoLmdyb3Vwcy5yZWdpb24sXG5cdFx0XHRhY2NvdW50OiBtYXRjaC5ncm91cHMuYWNjb3VudCxcblx0XHRcdHJ1bnRpbWVJZDogbWF0Y2guZ3JvdXBzIS5ydW50aW1lSWQsXG5cdFx0XHRuYW1lOiBtYXRjaC5ncm91cHMhLm5hbWUsXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBCdWlsZHMgYW4gQVJOIGZvciB0aGUgdG9rZW4tdmF1bHQgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgdG9rZW5WYXVsdChwcm9wczogQmVkcm9ja0FnZW50Y29yZVRva2VuVmF1bHRBcm5Qcm9wcyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06dG9rZW4tdmF1bHQvJHtwcm9wcy50b2tlblZhdWx0SWR9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHRva2VuLXZhdWx0IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRUb2tlblZhdWx0QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFRva2VuVmF1bHRBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgdG9rZW4tdmF1bHQgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlVG9rZW5WYXVsdEFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZVRva2VuVmF1bHRBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFRva2VuVmF1bHRBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgdG9rZW4tdmF1bHQgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0dG9rZW5WYXVsdElkOiBtYXRjaC5ncm91cHMhLnRva2VuVmF1bHRJZCxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSB3ZWItc2VhcmNoIHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHdlYlNlYXJjaChwcm9wczogQmVkcm9ja0FnZW50Y29yZVdlYlNlYXJjaEFyblByb3BzKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTp0b29sL3dlYi1zZWFyY2gudjFgO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgd2ViLXNlYXJjaCByZXNvdXJjZS5cblx0ICovXG5cdHN0YXRpYyBpc1ZhbGlkV2ViU2VhcmNoQXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFdlYlNlYXJjaEFyblJlZ2V4LnRlc3QoYXJuKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZXMgYSB3ZWItc2VhcmNoIEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVdlYlNlYXJjaEFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZVdlYlNlYXJjaEFybkNvbXBvbmVudHMge1xuXHRcdGNvbnN0IG1hdGNoID0gV2ViU2VhcmNoQXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHdlYi1zZWFyY2ggQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQnVpbGRzIGFuIEFSTiBmb3IgdGhlIHdvcmtsb2FkLWlkZW50aXR5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIHdvcmtsb2FkSWRlbnRpdHkoXG5cdFx0cHJvcHM6IEJlZHJvY2tBZ2VudGNvcmVXb3JrbG9hZElkZW50aXR5QXJuUHJvcHMsXG5cdCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIGBhcm46JHtwcm9wcy5wYXJ0aXRpb24gPz8gXCJhd3NcIn06YmVkcm9jay1hZ2VudGNvcmU6JHtwcm9wcy5yZWdpb24gPz8gXCIqXCJ9OiR7cHJvcHMuYWNjb3VudCA/PyBcIipcIn06d29ya2xvYWQtaWRlbnRpdHktZGlyZWN0b3J5LyR7cHJvcHMuZGlyZWN0b3J5SWR9L3dvcmtsb2FkLWlkZW50aXR5LyR7cHJvcHMud29ya2xvYWRJZGVudGl0eU5hbWV9YDtcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEFSTiBmb3IgdGhlIHdvcmtsb2FkLWlkZW50aXR5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRXb3JrbG9hZElkZW50aXR5QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFdvcmtsb2FkSWRlbnRpdHlBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgd29ya2xvYWQtaWRlbnRpdHkgQVJOIGludG8gaXRzIGNvbXBvbmVudHMuXG5cdCAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIEFSTiBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0c3RhdGljIHBhcnNlV29ya2xvYWRJZGVudGl0eUFybihcblx0XHRhcm46IHN0cmluZyxcblx0KTogQmVkcm9ja0FnZW50Y29yZVdvcmtsb2FkSWRlbnRpdHlBcm5Db21wb25lbnRzIHtcblx0XHRjb25zdCBtYXRjaCA9IFdvcmtsb2FkSWRlbnRpdHlBcm5SZWdleC5leGVjKGFybik7XG5cdFx0aWYgKCFtYXRjaD8uZ3JvdXBzKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgd29ya2xvYWQtaWRlbnRpdHkgQVJOOiAke2Fybn1gKTtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdHBhcnRpdGlvbjogbWF0Y2guZ3JvdXBzLnBhcnRpdGlvbixcblx0XHRcdHJlZ2lvbjogbWF0Y2guZ3JvdXBzLnJlZ2lvbixcblx0XHRcdGFjY291bnQ6IG1hdGNoLmdyb3Vwcy5hY2NvdW50LFxuXHRcdFx0ZGlyZWN0b3J5SWQ6IG1hdGNoLmdyb3VwcyEuZGlyZWN0b3J5SWQsXG5cdFx0XHR3b3JrbG9hZElkZW50aXR5TmFtZTogbWF0Y2guZ3JvdXBzIS53b3JrbG9hZElkZW50aXR5TmFtZSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEJ1aWxkcyBhbiBBUk4gZm9yIHRoZSB3b3JrbG9hZC1pZGVudGl0eS1kaXJlY3RvcnkgcmVzb3VyY2UuXG5cdCAqL1xuXHRzdGF0aWMgd29ya2xvYWRJZGVudGl0eURpcmVjdG9yeShcblx0XHRwcm9wczogQmVkcm9ja0FnZW50Y29yZVdvcmtsb2FkSWRlbnRpdHlEaXJlY3RvcnlBcm5Qcm9wcyxcblx0KTogc3RyaW5nIHtcblx0XHRyZXR1cm4gYGFybjoke3Byb3BzLnBhcnRpdGlvbiA/PyBcImF3c1wifTpiZWRyb2NrLWFnZW50Y29yZToke3Byb3BzLnJlZ2lvbiA/PyBcIipcIn06JHtwcm9wcy5hY2NvdW50ID8/IFwiKlwifTp3b3JrbG9hZC1pZGVudGl0eS1kaXJlY3RvcnkvJHtwcm9wcy5kaXJlY3RvcnlJZH1gO1xuXHR9XG5cblx0LyoqXG5cdCAqIFZhbGlkYXRlcyB3aGV0aGVyIGEgc3RyaW5nIGlzIGEgdmFsaWQgQVJOIGZvciB0aGUgd29ya2xvYWQtaWRlbnRpdHktZGlyZWN0b3J5IHJlc291cmNlLlxuXHQgKi9cblx0c3RhdGljIGlzVmFsaWRXb3JrbG9hZElkZW50aXR5RGlyZWN0b3J5QXJuKGFybjogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIFdvcmtsb2FkSWRlbnRpdHlEaXJlY3RvcnlBcm5SZWdleC50ZXN0KGFybik7XG5cdH1cblxuXHQvKipcblx0ICogUGFyc2VzIGEgd29ya2xvYWQtaWRlbnRpdHktZGlyZWN0b3J5IEFSTiBpbnRvIGl0cyBjb21wb25lbnRzLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBBUk4gZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC5cblx0ICovXG5cdHN0YXRpYyBwYXJzZVdvcmtsb2FkSWRlbnRpdHlEaXJlY3RvcnlBcm4oXG5cdFx0YXJuOiBzdHJpbmcsXG5cdCk6IEJlZHJvY2tBZ2VudGNvcmVXb3JrbG9hZElkZW50aXR5RGlyZWN0b3J5QXJuQ29tcG9uZW50cyB7XG5cdFx0Y29uc3QgbWF0Y2ggPSBXb3JrbG9hZElkZW50aXR5RGlyZWN0b3J5QXJuUmVnZXguZXhlYyhhcm4pO1xuXHRcdGlmICghbWF0Y2g/Lmdyb3Vwcykge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHdvcmtsb2FkLWlkZW50aXR5LWRpcmVjdG9yeSBBUk46ICR7YXJufWApO1xuXHRcdH1cblx0XHRyZXR1cm4ge1xuXHRcdFx0cGFydGl0aW9uOiBtYXRjaC5ncm91cHMucGFydGl0aW9uLFxuXHRcdFx0cmVnaW9uOiBtYXRjaC5ncm91cHMucmVnaW9uLFxuXHRcdFx0YWNjb3VudDogbWF0Y2guZ3JvdXBzLmFjY291bnQsXG5cdFx0XHRkaXJlY3RvcnlJZDogbWF0Y2guZ3JvdXBzIS5kaXJlY3RvcnlJZCxcblx0XHR9O1xuXHR9XG59XG5cbi8qKlxuICogQVBJIG9wZXJhdGlvbiB0byByZXF1aXJlZCBJQU0gYWN0aW9ucyBtYXBwaW5nIGZvciBiZWRyb2NrLWFnZW50Y29yZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEJlZHJvY2tBZ2VudGNvcmVPcGVyYXRpb25zIHtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQWRkRGF0YXNldEV4YW1wbGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQWRkRGF0YXNldEV4YW1wbGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkFkZERhdGFzZXRFeGFtcGxlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaENyZWF0ZU1lbW9yeVJlY29yZHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaENyZWF0ZU1lbW9yeVJlY29yZHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6QmF0Y2hDcmVhdGVNZW1vcnlSZWNvcmRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEJhdGNoRGVsZXRlTWVtb3J5UmVjb3JkcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoRGVsZXRlTWVtb3J5UmVjb3Jkczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpCYXRjaERlbGV0ZU1lbW9yeVJlY29yZHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQmF0Y2hQdXRHYXRld2F5UmF0ZUxpbWl0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoUHV0R2F0ZXdheVJhdGVMaW1pdHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6QmF0Y2hQdXRHYXRld2F5UmF0ZUxpbWl0c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBCYXRjaFVwZGF0ZU1lbW9yeVJlY29yZHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBCYXRjaFVwZGF0ZU1lbW9yeVJlY29yZHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6QmF0Y2hVcGRhdGVNZW1vcnlSZWNvcmRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENvbXBsZXRlUmVzb3VyY2VUb2tlbkF1dGggQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDb21wbGV0ZVJlc291cmNlVG9rZW5BdXRoOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNvbXBsZXRlUmVzb3VyY2VUb2tlbkF1dGhcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQUJUZXN0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQUJUZXN0OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUFCVGVzdFwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUFnZW50UnVudGltZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFnZW50UnVudGltZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVBZ2VudFJ1bnRpbWVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUFnZW50UnVudGltZUVuZHBvaW50XCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpQYXNzQ2FwYWNpdHlQcm92aWRlclwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVBZ2VudFJ1bnRpbWVFbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFnZW50UnVudGltZUVuZHBvaW50OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUFnZW50UnVudGltZUVuZHBvaW50XCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVCcm93c2VyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQnJvd3Nlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVCcm93c2VyXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUJyb3dzZXJQcm9maWxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQnJvd3NlclByb2ZpbGU6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlQnJvd3NlclByb2ZpbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUNhcGFjaXR5UHJvdmlkZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDYXBhY2l0eVByb3ZpZGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUNhcGFjaXR5UHJvdmlkZXJcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlQ29kZUludGVycHJldGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29kZUludGVycHJldGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUNvZGVJbnRlcnByZXRlclwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVDb25maWd1cmF0aW9uQnVuZGxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29uZmlndXJhdGlvbkJ1bmRsZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVDb25maWd1cmF0aW9uQnVuZGxlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVDb25zZW50UG9ydGFsIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29uc2VudFBvcnRhbDogc3RyaW5nW10gPSBbXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlRGF0YXNldCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZURhdGFzZXQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlRGF0YXNldFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlRGF0YXNldFZlcnNpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEYXRhc2V0VmVyc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVEYXRhc2V0VmVyc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVFdmFsdWF0b3IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFdmFsdWF0b3I6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlRXZhbHVhdG9yXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVFdmVudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUV2ZW50OiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUV2ZW50XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVHYXRld2F5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlR2F0ZXdheTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVHYXRld2F5XCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN5bmNocm9uaXplR2F0ZXdheVRhcmdldHNcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUdhdGV3YXlSYXRlTGltaXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVHYXRld2F5UmF0ZUxpbWl0OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUdhdGV3YXlSYXRlTGltaXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlR2F0ZXdheVJ1bGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVHYXRld2F5UnVsZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVHYXRld2F5UnVsZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVHYXRld2F5VGFyZ2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlR2F0ZXdheVRhcmdldDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVHYXRld2F5VGFyZ2V0XCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTeW5jaHJvbml6ZUdhdGV3YXlUYXJnZXRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZUhhcm5lc3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVIYXJuZXNzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUFnZW50UnVudGltZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlSGFybmVzc1wiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlTWVtb3J5XCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRNZW1vcnlcIixcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlSGFybmVzc0VuZHBvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSGFybmVzc0VuZHBvaW50OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZUhhcm5lc3NFbmRwb2ludFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlTWVtb3J5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlTWVtb3J5OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZU1lbW9yeVwiLFxuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZzogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVBheW1lbnRDb25uZWN0b3IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVQYXltZW50Q29ubmVjdG9yOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBheW1lbnRDb25uZWN0b3JcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlclwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VGFnUmVzb3VyY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUGF5bWVudEluc3RydW1lbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVQYXltZW50SW5zdHJ1bWVudDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpDcmVhdGVQYXltZW50SW5zdHJ1bWVudFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVQYXltZW50TWFuYWdlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBheW1lbnRNYW5hZ2VyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBheW1lbnRNYW5hZ2VyXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVBheW1lbnRTZXNzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUGF5bWVudFNlc3Npb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlYXRlUGF5bWVudFNlc3Npb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUG9saWN5OiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBvbGljeVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgQ3JlYXRlUG9saWN5RW5naW5lIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUG9saWN5RW5naW5lOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVBvbGljeUVuZ2luZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVSZWdpc3RyeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlZ2lzdHJ5OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVJlZ2lzdHJ5XCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpUYWdSZXNvdXJjZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBDcmVhdGVSZWdpc3RyeVJlY29yZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVJlZ2lzdHJ5UmVjb3JkOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVJlZ2lzdHJ5UmVjb3JkXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIENyZWF0ZVdvcmtsb2FkSWRlbnRpdHkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVXb3JrbG9hZElkZW50aXR5OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWF0ZVdvcmtsb2FkSWRlbnRpdHlcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFCVGVzdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFCVGVzdDogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVBQlRlc3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFnZW50UnVudGltZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUFnZW50UnVudGltZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVBZ2VudFJ1bnRpbWVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUFnZW50UnVudGltZUVuZHBvaW50XCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVXb3JrbG9hZElkZW50aXR5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUFnZW50UnVudGltZUVuZHBvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQWdlbnRSdW50aW1lRW5kcG9pbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQWdlbnRSdW50aW1lRW5kcG9pbnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVCYXRjaEV2YWx1YXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVCYXRjaEV2YWx1YXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQmF0Y2hFdmFsdWF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUJyb3dzZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVCcm93c2VyOiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUJyb3dzZXJcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUJyb3dzZXJQcm9maWxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQnJvd3NlclByb2ZpbGU6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQnJvd3NlclByb2ZpbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQ2FwYWNpdHlQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNhcGFjaXR5UHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQ2FwYWNpdHlQcm92aWRlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVDYXBhY2l0eVByb3ZpZGVyU2Vzc2lvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNhcGFjaXR5UHJvdmlkZXJTZXNzaW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUNhcGFjaXR5UHJvdmlkZXJTZXNzaW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUNvZGVJbnRlcnByZXRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvZGVJbnRlcnByZXRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVDb2RlSW50ZXJwcmV0ZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlQ29uZmlndXJhdGlvbkJ1bmRsZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZUNvbmZpZ3VyYXRpb25CdW5kbGU6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlQ29uZmlndXJhdGlvbkJ1bmRsZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVDb25zZW50UG9ydGFsIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlQ29uc2VudFBvcnRhbDogc3RyaW5nW10gPSBbXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlRGF0YXNldCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZURhdGFzZXQ6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlRGF0YXNldFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlRGF0YXNldEV4YW1wbGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRGF0YXNldEV4YW1wbGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZURhdGFzZXRFeGFtcGxlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVFdmFsdWF0b3IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFdmFsdWF0b3I6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlRXZhbHVhdG9yXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUV2ZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlRXZlbnQ6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlRXZlbnRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUdhdGV3YXkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHYXRld2F5OiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUdhdGV3YXlcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUdhdGV3YXlSYXRlTGltaXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHYXRld2F5UmF0ZUxpbWl0OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUdhdGV3YXlSYXRlTGltaXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlR2F0ZXdheVJ1bGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVHYXRld2F5UnVsZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVHYXRld2F5UnVsZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVHYXRld2F5VGFyZ2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlR2F0ZXdheVRhcmdldDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVHYXRld2F5VGFyZ2V0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZUhhcm5lc3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVIYXJuZXNzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZUFnZW50UnVudGltZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlSGFybmVzc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVIYXJuZXNzRW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVIYXJuZXNzRW5kcG9pbnQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlSGFybmVzc0VuZHBvaW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZU1lbW9yeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU1lbW9yeTogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVNZW1vcnlcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZU1lbW9yeVJlY29yZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZU1lbW9yeVJlY29yZDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVNZW1vcnlSZWNvcmRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZzogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVBheW1lbnRDb25uZWN0b3IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQYXltZW50Q29ubmVjdG9yOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBheW1lbnRDb25uZWN0b3JcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVQYXltZW50SW5zdHJ1bWVudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVBheW1lbnRJbnN0cnVtZW50OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVBheW1lbnRJbnN0cnVtZW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVBheW1lbnRNYW5hZ2VyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUGF5bWVudE1hbmFnZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUGF5bWVudE1hbmFnZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlUGF5bWVudFNlc3Npb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQYXltZW50U2Vzc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVQYXltZW50U2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQb2xpY3k6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUG9saWN5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVQb2xpY3lFbmdpbmUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVQb2xpY3lFbmdpbmU6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUG9saWN5RW5naW5lXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVJlY29tbWVuZGF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVjb21tZW5kYXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUmVjb21tZW5kYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlUmVnaXN0cnkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVSZWdpc3RyeTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpEZWxldGVSZWdpc3RyeVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBEZWxldGVSZWdpc3RyeVJlY29yZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVJlZ2lzdHJ5UmVjb3JkOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRlbGV0ZVJlZ2lzdHJ5UmVjb3JkXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIERlbGV0ZVJlc291cmNlUG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgRGVsZXRlUmVzb3VyY2VQb2xpY3k6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlUmVzb3VyY2VQb2xpY3lcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgRGVsZXRlV29ya2xvYWRJZGVudGl0eSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IERlbGV0ZVdvcmtsb2FkSWRlbnRpdHk6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGVsZXRlV29ya2xvYWRJZGVudGl0eVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBFdmFsdWF0ZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEV2YWx1YXRlOiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkV2YWx1YXRlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBQlRlc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEFCVGVzdDogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRBQlRlc3RcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEFnZW50Q2FyZCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0QWdlbnRDYXJkOiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkdldEFnZW50Q2FyZFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QWdlbnRSdW50aW1lIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBZ2VudFJ1bnRpbWU6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0QWdlbnRSdW50aW1lXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEFnZW50UnVudGltZUVuZHBvaW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRBZ2VudFJ1bnRpbWVFbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRBZ2VudFJ1bnRpbWVFbmRwb2ludFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEFwaUtleUNyZWRlbnRpYWxQcm92aWRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QmF0Y2hFdmFsdWF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRCYXRjaEV2YWx1YXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0QmF0Y2hFdmFsdWF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEJyb3dzZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEJyb3dzZXI6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6R2V0QnJvd3NlclwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0QnJvd3NlclByb2ZpbGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEJyb3dzZXJQcm9maWxlOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldEJyb3dzZXJQcm9maWxlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEJyb3dzZXJTZXNzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRCcm93c2VyU2Vzc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRCcm93c2VyU2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRDYXBhY2l0eVByb3ZpZGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRDYXBhY2l0eVByb3ZpZGVyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldENhcGFjaXR5UHJvdmlkZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0Q29kZUludGVycHJldGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRDb2RlSW50ZXJwcmV0ZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0Q29kZUludGVycHJldGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldENvZGVJbnRlcnByZXRlclNlc3Npb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldENvZGVJbnRlcnByZXRlclNlc3Npb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0Q29kZUludGVycHJldGVyU2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRDb25maWd1cmF0aW9uQnVuZGxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRDb25maWd1cmF0aW9uQnVuZGxlOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldENvbmZpZ3VyYXRpb25CdW5kbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0Q29uZmlndXJhdGlvbkJ1bmRsZVZlcnNpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldENvbmZpZ3VyYXRpb25CdW5kbGVWZXJzaW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldENvbmZpZ3VyYXRpb25CdW5kbGVWZXJzaW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldENvbnNlbnRQb3J0YWwgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldENvbnNlbnRQb3J0YWw6IHN0cmluZ1tdID0gW107XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldERhdGFzZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldERhdGFzZXQ6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6R2V0RGF0YXNldFwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0RXZhbHVhdG9yIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRFdmFsdWF0b3I6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6R2V0RXZhbHVhdG9yXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRFdmVudCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0RXZlbnQ6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6R2V0RXZlbnRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEdhdGV3YXkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEdhdGV3YXk6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6R2V0R2F0ZXdheVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0R2F0ZXdheVJhdGVMaW1pdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0R2F0ZXdheVJhdGVMaW1pdDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRHYXRld2F5UmF0ZUxpbWl0XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldEdhdGV3YXlSdWxlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRHYXRld2F5UnVsZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRHYXRld2F5UnVsZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRHYXRld2F5VGFyZ2V0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRHYXRld2F5VGFyZ2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldEdhdGV3YXlUYXJnZXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0SGFybmVzcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0SGFybmVzczogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRIYXJuZXNzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRIYXJuZXNzRW5kcG9pbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldEhhcm5lc3NFbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRIYXJuZXNzRW5kcG9pbnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0TWVtb3J5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRNZW1vcnk6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6R2V0TWVtb3J5XCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRNZW1vcnlSZWNvcmQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldE1lbW9yeVJlY29yZDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRNZW1vcnlSZWNvcmRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0T2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0T2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldE9ubGluZUV2YWx1YXRpb25Db25maWcgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldE9ubGluZUV2YWx1YXRpb25Db25maWc6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0T25saW5lRXZhbHVhdGlvbkNvbmZpZ1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRQYXltZW50Q29ubmVjdG9yIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRQYXltZW50Q29ubmVjdG9yOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBheW1lbnRDb25uZWN0b3JcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0UGF5bWVudENyZWRlbnRpYWxQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0UGF5bWVudENyZWRlbnRpYWxQcm92aWRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFBheW1lbnRJbnN0cnVtZW50IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRQYXltZW50SW5zdHJ1bWVudDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50SW5zdHJ1bWVudFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRQYXltZW50SW5zdHJ1bWVudEJhbGFuY2UgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFBheW1lbnRJbnN0cnVtZW50QmFsYW5jZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50SW5zdHJ1bWVudEJhbGFuY2VcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0UGF5bWVudE1hbmFnZXIgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFBheW1lbnRNYW5hZ2VyOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBheW1lbnRNYW5hZ2VyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFBheW1lbnRTZXNzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRQYXltZW50U2Vzc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQYXltZW50U2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRQb2xpY3kgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFBvbGljeTogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFBvbGljeUVuZ2luZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0UG9saWN5RW5naW5lOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeUVuZ2luZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRQb2xpY3lFbmdpbmVTdW1tYXJ5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRQb2xpY3lFbmdpbmVTdW1tYXJ5OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeUVuZ2luZVN1bW1hcnlcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0UG9saWN5R2VuZXJhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0UG9saWN5R2VuZXJhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lHZW5lcmF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFBvbGljeUdlbmVyYXRpb25TdW1tYXJ5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRQb2xpY3lHZW5lcmF0aW9uU3VtbWFyeTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRQb2xpY3lHZW5lcmF0aW9uU3VtbWFyeVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRQb2xpY3lTdW1tYXJ5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRQb2xpY3lTdW1tYXJ5OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFBvbGljeVN1bW1hcnlcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0UmVjb21tZW5kYXRpb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFJlY29tbWVuZGF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlY29tbWVuZGF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFJlZ2lzdHJ5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRSZWdpc3RyeTogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpHZXRSZWdpc3RyeVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0UmVnaXN0cnlSZWNvcmQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFJlZ2lzdHJ5UmVjb3JkOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlZ2lzdHJ5UmVjb3JkXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFJlc291cmNlQXBpS2V5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRSZXNvdXJjZUFwaUtleTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRSZXNvdXJjZUFwaUtleVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRSZXNvdXJjZU9hdXRoMlRva2VuIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRSZXNvdXJjZU9hdXRoMlRva2VuOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlc291cmNlT2F1dGgyVG9rZW5cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0UmVzb3VyY2VQYXltZW50VG9rZW4gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFJlc291cmNlUGF5bWVudFRva2VuOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFJlc291cmNlUGF5bWVudFRva2VuXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFJlc291cmNlUG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRSZXNvdXJjZVBvbGljeTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRSZXNvdXJjZVBvbGljeVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRUb2tlblZhdWx0IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRUb2tlblZhdWx0OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFRva2VuVmF1bHRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0V29ya2xvYWRBY2Nlc3NUb2tlbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0V29ya2xvYWRBY2Nlc3NUb2tlbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRXb3JrbG9hZEFjY2Vzc1Rva2VuXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JKV1QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcEdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JKV1Q6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0V29ya2xvYWRBY2Nlc3NUb2tlbkZvckpXVFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBHZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9yVXNlcklkIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgb3BHZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9yVXNlcklkOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JVc2VySWRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgR2V0V29ya2xvYWRJZGVudGl0eSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IG9wR2V0V29ya2xvYWRJZGVudGl0eTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpHZXRXb3JrbG9hZElkZW50aXR5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEluZ2VzdERhdGEgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBJbmdlc3REYXRhOiBzdHJpbmdbXSA9IFtdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBJbnZva2VBZ2VudFJ1bnRpbWUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBJbnZva2VBZ2VudFJ1bnRpbWU6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW52b2tlQWdlbnRSdW50aW1lXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VBZ2VudFJ1bnRpbWVGb3JVc2VyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEludm9rZUFnZW50UnVudGltZUNvbW1hbmQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBJbnZva2VBZ2VudFJ1bnRpbWVDb21tYW5kOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZUFnZW50UnVudGltZUNvbW1hbmRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgSW52b2tlQnJvd3NlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEludm9rZUJyb3dzZXI6IHN0cmluZ1tdID0gW107XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIEludm9rZUNvZGVJbnRlcnByZXRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEludm9rZUNvZGVJbnRlcnByZXRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VDb2RlSW50ZXJwcmV0ZXJcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0Q29kZUludGVycHJldGVyU2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBJbnZva2VIYXJuZXNzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSW52b2tlSGFybmVzczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbnZva2VBZ2VudFJ1bnRpbWVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkludm9rZUhhcm5lc3NcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFCVGVzdHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QUJUZXN0czogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QUJUZXN0c1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFjdG9ycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBY3RvcnM6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFjdG9yc1wiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFnZW50UnVudGltZUVuZHBvaW50cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZ2VudFJ1bnRpbWVFbmRwb2ludHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFnZW50UnVudGltZUVuZHBvaW50c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QWdlbnRSdW50aW1lVmVyc2lvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWdlbnRSdW50aW1lVmVyc2lvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEFnZW50UnVudGltZVZlcnNpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RBZ2VudFJ1bnRpbWVWZXJzaW9uc0J5Q2FwYWNpdHlQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBZ2VudFJ1bnRpbWVWZXJzaW9uc0J5Q2FwYWNpdHlQcm92aWRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QWdlbnRSdW50aW1lVmVyc2lvbnNCeUNhcGFjaXR5UHJvdmlkZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEFnZW50UnVudGltZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0QWdlbnRSdW50aW1lczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QWdlbnRSdW50aW1lc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RCYXRjaEV2YWx1YXRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEJhdGNoRXZhbHVhdGlvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEJhdGNoRXZhbHVhdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEJyb3dzZXJQcm9maWxlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RCcm93c2VyUHJvZmlsZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEJyb3dzZXJQcm9maWxlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0QnJvd3NlclNlc3Npb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEJyb3dzZXJTZXNzaW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QnJvd3NlclNlc3Npb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RCcm93c2VycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RCcm93c2Vyczogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0QnJvd3NlcnNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RDYXBhY2l0eVByb3ZpZGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDYXBhY2l0eVByb3ZpZGVyczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0Q2FwYWNpdHlQcm92aWRlcnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdENvZGVJbnRlcnByZXRlclNlc3Npb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvZGVJbnRlcnByZXRlclNlc3Npb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0Q29kZUludGVycHJldGVycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RDb2RlSW50ZXJwcmV0ZXJzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb2RlSW50ZXJwcmV0ZXJzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RDb25maWd1cmF0aW9uQnVuZGxlVmVyc2lvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29uZmlndXJhdGlvbkJ1bmRsZVZlcnNpb25zOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb25maWd1cmF0aW9uQnVuZGxlVmVyc2lvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdENvbmZpZ3VyYXRpb25CdW5kbGVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdENvbmZpZ3VyYXRpb25CdW5kbGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RDb25maWd1cmF0aW9uQnVuZGxlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0Q29uc2VudFBvcnRhbHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0Q29uc2VudFBvcnRhbHM6IHN0cmluZ1tdID0gW107XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3REYXRhc2V0RXhhbXBsZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGF0YXNldEV4YW1wbGVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3REYXRhc2V0RXhhbXBsZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdERhdGFzZXRWZXJzaW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3REYXRhc2V0VmVyc2lvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdERhdGFzZXRWZXJzaW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0RGF0YXNldHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RGF0YXNldHM6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6TGlzdERhdGFzZXRzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0RXZhbHVhdG9ycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RFdmFsdWF0b3JzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RFdmFsdWF0b3JzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RFdmVudHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0RXZlbnRzOiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RFdmVudHNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RHYXRld2F5UmF0ZUxpbWl0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHYXRld2F5UmF0ZUxpbWl0czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0R2F0ZXdheVJhdGVMaW1pdHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEdhdGV3YXlSdWxlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHYXRld2F5UnVsZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEdhdGV3YXlSdWxlc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0R2F0ZXdheVRhcmdldHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0R2F0ZXdheVRhcmdldHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEdhdGV3YXlUYXJnZXRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RHYXRld2F5cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RHYXRld2F5czogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0R2F0ZXdheXNcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RIYXJuZXNzRW5kcG9pbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEhhcm5lc3NFbmRwb2ludHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEhhcm5lc3NFbmRwb2ludHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdEhhcm5lc3NWZXJzaW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RIYXJuZXNzVmVyc2lvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdEhhcm5lc3NWZXJzaW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0SGFybmVzc2VzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEhhcm5lc3Nlczogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0SGFybmVzc2VzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0TWVtb3JpZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0TWVtb3JpZXM6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6TGlzdE1lbW9yaWVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0TWVtb3J5RXh0cmFjdGlvbkpvYnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0TWVtb3J5RXh0cmFjdGlvbkpvYnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdE1lbW9yeUV4dHJhY3Rpb25Kb2JzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RNZW1vcnlSZWNvcmRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdE1lbW9yeVJlY29yZHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdE1lbW9yeVJlY29yZHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdE9hdXRoMkNyZWRlbnRpYWxQcm92aWRlcnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0T2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0T2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0T25saW5lRXZhbHVhdGlvbkNvbmZpZ3MgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0T25saW5lRXZhbHVhdGlvbkNvbmZpZ3M6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdE9ubGluZUV2YWx1YXRpb25Db25maWdzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RQYXltZW50Q29ubmVjdG9ycyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQYXltZW50Q29ubmVjdG9yczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudENvbm5lY3RvcnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXJzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXJzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQYXltZW50Q3JlZGVudGlhbFByb3ZpZGVyc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UGF5bWVudEluc3RydW1lbnRzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBheW1lbnRJbnN0cnVtZW50czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UGF5bWVudEluc3RydW1lbnRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RQYXltZW50TWFuYWdlcnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UGF5bWVudE1hbmFnZXJzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQYXltZW50TWFuYWdlcnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFBheW1lbnRTZXNzaW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQYXltZW50U2Vzc2lvbnM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBheW1lbnRTZXNzaW9uc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UG9saWNpZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UG9saWNpZXM6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljaWVzXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UG9saWN5RW5naW5lU3VtbWFyaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBvbGljeUVuZ2luZVN1bW1hcmllczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWN5RW5naW5lU3VtbWFyaWVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RQb2xpY3lFbmdpbmVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFBvbGljeUVuZ2luZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeUVuZ2luZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFBvbGljeUdlbmVyYXRpb25Bc3NldHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0UG9saWN5R2VuZXJhdGlvbkFzc2V0czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWN5R2VuZXJhdGlvbkFzc2V0c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UG9saWN5R2VuZXJhdGlvblN1bW1hcmllcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY3lHZW5lcmF0aW9uU3VtbWFyaWVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RQb2xpY3lHZW5lcmF0aW9uU3VtbWFyaWVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RQb2xpY3lHZW5lcmF0aW9ucyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY3lHZW5lcmF0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UG9saWN5R2VuZXJhdGlvbnNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFBvbGljeVN1bW1hcmllcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RQb2xpY3lTdW1tYXJpZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFBvbGljeVN1bW1hcmllc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0UmVjb21tZW5kYXRpb25zIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlY29tbWVuZGF0aW9uczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0UmVjb21tZW5kYXRpb25zXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RSZWdpc3RyaWVzIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFJlZ2lzdHJpZXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFJlZ2lzdHJpZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlzdFJlZ2lzdHJ5UmVjb3JkcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IExpc3RSZWdpc3RyeVJlY29yZHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFJlZ2lzdHJ5UmVjb3Jkc1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0U2Vzc2lvbnMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0U2Vzc2lvbnM6IHN0cmluZ1tdID0gW1wiYmVkcm9jay1hZ2VudGNvcmU6TGlzdFNlc3Npb25zXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBMaXN0VGFnc0ZvclJlc291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFRhZ3NGb3JSZXNvdXJjZTogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpMaXN0VGFnc0ZvclJlc291cmNlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIExpc3RXb3JrbG9hZElkZW50aXRpZXMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0V29ya2xvYWRJZGVudGl0aWVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkxpc3RXb3JrbG9hZElkZW50aXRpZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgUHJvY2Vzc1BheW1lbnQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBQcm9jZXNzUGF5bWVudDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpQcm9jZXNzUGF5bWVudFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBQdXRSZXNvdXJjZVBvbGljeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFB1dFJlc291cmNlUG9saWN5OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlB1dFJlc291cmNlUG9saWN5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFJldHJpZXZlTWVtb3J5UmVjb3JkcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFJldHJpZXZlTWVtb3J5UmVjb3Jkczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpSZXRyaWV2ZU1lbW9yeVJlY29yZHNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU2F2ZUJyb3dzZXJTZXNzaW9uUHJvZmlsZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFNhdmVCcm93c2VyU2Vzc2lvblByb2ZpbGU6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U2F2ZUJyb3dzZXJTZXNzaW9uUHJvZmlsZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTZWFyY2hSZWdpc3RyeVJlY29yZHMgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTZWFyY2hSZWdpc3RyeVJlY29yZHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U2VhcmNoUmVnaXN0cnlSZWNvcmRzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFNldFRva2VuVmF1bHRDTUsgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBvcFNldFRva2VuVmF1bHRDTUs6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U2V0VG9rZW5WYXVsdENNS1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydEJhdGNoRXZhbHVhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0QmF0Y2hFdmFsdWF0aW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0QmF0Y2hFdmFsdWF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0YXJ0QnJvd3NlclNlc3Npb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydEJyb3dzZXJTZXNzaW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0QnJvd3NlclNlc3Npb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RhcnRDb2RlSW50ZXJwcmV0ZXJTZXNzaW9uOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN0YXJ0Q29kZUludGVycHJldGVyU2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdGFydE1lbW9yeUV4dHJhY3Rpb25Kb2IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydE1lbW9yeUV4dHJhY3Rpb25Kb2I6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRNZW1vcnlFeHRyYWN0aW9uSm9iXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0YXJ0UG9saWN5R2VuZXJhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0UG9saWN5R2VuZXJhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTdGFydFBvbGljeUdlbmVyYXRpb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RhcnRSZWNvbW1lbmRhdGlvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0YXJ0UmVjb21tZW5kYXRpb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3RhcnRSZWNvbW1lbmRhdGlvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdG9wQmF0Y2hFdmFsdWF0aW9uIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU3RvcEJhdGNoRXZhbHVhdGlvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTdG9wQmF0Y2hFdmFsdWF0aW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN0b3BCcm93c2VyU2Vzc2lvbiBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN0b3BCcm93c2VyU2Vzc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTdG9wQnJvd3NlclNlc3Npb25cIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3RvcENvZGVJbnRlcnByZXRlclNlc3Npb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wQ29kZUludGVycHJldGVyU2Vzc2lvbjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpTdG9wQ29kZUludGVycHJldGVyU2Vzc2lvblwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBTdG9wUnVudGltZVNlc3Npb24gQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdG9wUnVudGltZVNlc3Npb246IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3RvcFJ1bnRpbWVTZXNzaW9uXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFN1Ym1pdFJlZ2lzdHJ5UmVjb3JkRm9yQXBwcm92YWwgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBTdWJtaXRSZWdpc3RyeVJlY29yZEZvckFwcHJvdmFsOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN1Ym1pdFJlZ2lzdHJ5UmVjb3JkRm9yQXBwcm92YWxcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgU3luY2hyb25pemVHYXRld2F5VGFyZ2V0cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFN5bmNocm9uaXplR2F0ZXdheVRhcmdldHM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6U3luY2hyb25pemVHYXRld2F5VGFyZ2V0c1wiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBUYWdSZXNvdXJjZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFRhZ1Jlc291cmNlOiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOlRhZ1Jlc291cmNlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVbnRhZ1Jlc291cmNlIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVW50YWdSZXNvdXJjZTogc3RyaW5nW10gPSBbXCJiZWRyb2NrLWFnZW50Y29yZTpVbnRhZ1Jlc291cmNlXCJdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVBQlRlc3QgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVBQlRlc3Q6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVBQlRlc3RcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQWdlbnRSdW50aW1lIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQWdlbnRSdW50aW1lOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlBhc3NDYXBhY2l0eVByb3ZpZGVyXCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUFnZW50UnVudGltZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVBZ2VudFJ1bnRpbWVFbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFnZW50UnVudGltZUVuZHBvaW50OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUFnZW50UnVudGltZUVuZHBvaW50XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUFwaUtleUNyZWRlbnRpYWxQcm92aWRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQnJvd3NlclN0cmVhbSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUJyb3dzZXJTdHJlYW06IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlQnJvd3NlclN0cmVhbVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVDYXBhY2l0eVByb3ZpZGVyIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQ2FwYWNpdHlQcm92aWRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVDYXBhY2l0eVByb3ZpZGVyXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUNvbmZpZ3VyYXRpb25CdW5kbGUgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVDb25maWd1cmF0aW9uQnVuZGxlOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUNvbmZpZ3VyYXRpb25CdW5kbGVcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlQ29uc2VudFBvcnRhbCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUNvbnNlbnRQb3J0YWw6IHN0cmluZ1tdID0gW107XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZURhdGFzZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVEYXRhc2V0OiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZURhdGFzZXRcIl07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZURhdGFzZXRFeGFtcGxlcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZURhdGFzZXRFeGFtcGxlczogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVEYXRhc2V0RXhhbXBsZXNcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlRXZhbHVhdG9yIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlRXZhbHVhdG9yOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUV2YWx1YXRvclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVHYXRld2F5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlR2F0ZXdheTogc3RyaW5nW10gPSBbXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUdhdGV3YXlcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlR2F0ZXdheVJhdGVMaW1pdCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUdhdGV3YXlSYXRlTGltaXQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlR2F0ZXdheVJhdGVMaW1pdFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVHYXRld2F5UnVsZSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUdhdGV3YXlSdWxlOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUdhdGV3YXlSdWxlXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUdhdGV3YXlUYXJnZXQgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVHYXRld2F5VGFyZ2V0OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlN5bmNocm9uaXplR2F0ZXdheVRhcmdldHNcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUdhdGV3YXlUYXJnZXRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlSGFybmVzcyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUhhcm5lc3M6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2V0TWVtb3J5XCIsXG5cdFx0XCJpYW06UGFzc1JvbGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZUFnZW50UnVudGltZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlSGFybmVzc1wiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlTWVtb3J5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZUhhcm5lc3NFbmRwb2ludCBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZUhhcm5lc3NFbmRwb2ludDogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVIYXJuZXNzRW5kcG9pbnRcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlTWVtb3J5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlTWVtb3J5OiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlTWVtb3J5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZU9hdXRoMkNyZWRlbnRpYWxQcm92aWRlcjogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlT25saW5lRXZhbHVhdGlvbkNvbmZpZyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZU9ubGluZUV2YWx1YXRpb25Db25maWc6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVBheW1lbnRDb25uZWN0b3IgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVQYXltZW50Q29ubmVjdG9yOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVBheW1lbnRDb25uZWN0b3JcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXI6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlclwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVQYXltZW50TWFuYWdlciBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVBheW1lbnRNYW5hZ2VyOiBzdHJpbmdbXSA9IFtcblx0XHRcImlhbTpQYXNzUm9sZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6VXBkYXRlUGF5bWVudE1hbmFnZXJcIixcblx0XTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlUG9saWN5IEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUG9saWN5OiBzdHJpbmdbXSA9IFtcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVBvbGljeVwiXTtcblx0LyoqIElBTSBhY3Rpb25zIHJlcXVpcmVkIGZvciB0aGUgVXBkYXRlUG9saWN5RW5naW5lIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUG9saWN5RW5naW5lOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVBvbGljeUVuZ2luZVwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVSZWdpc3RyeSBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVJlZ2lzdHJ5OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVJlZ2lzdHJ5XCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVJlZ2lzdHJ5UmVjb3JkIEFQSSBjYWxsLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlUmVnaXN0cnlSZWNvcmQ6IHN0cmluZ1tdID0gW1xuXHRcdFwiaWFtOlBhc3NSb2xlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpVcGRhdGVSZWdpc3RyeVJlY29yZFwiLFxuXHRdO1xuXHQvKiogSUFNIGFjdGlvbnMgcmVxdWlyZWQgZm9yIHRoZSBVcGRhdGVSZWdpc3RyeVJlY29yZFN0YXR1cyBBUEkgY2FsbC4gKi9cblx0c3RhdGljIHJlYWRvbmx5IFVwZGF0ZVJlZ2lzdHJ5UmVjb3JkU3RhdHVzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVJlZ2lzdHJ5UmVjb3JkU3RhdHVzXCIsXG5cdF07XG5cdC8qKiBJQU0gYWN0aW9ucyByZXF1aXJlZCBmb3IgdGhlIFVwZGF0ZVdvcmtsb2FkSWRlbnRpdHkgQVBJIGNhbGwuICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVXb3JrbG9hZElkZW50aXR5OiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlVwZGF0ZVdvcmtsb2FkSWRlbnRpdHlcIixcblx0XTtcbn1cblxuLyoqXG4gKiBDb25kaXRpb24ga2V5IGNvbnN0YW50cyBhbmQgYnVpbGRlcnMgZm9yIGJlZHJvY2stYWdlbnRjb3JlLlxuICovXG5leHBvcnQgY2xhc3MgQmVkcm9ja0FnZW50Y29yZUNvbmRpdGlvbnMge1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQmF0Y2hDcmVhdGVNZW1vcnlSZWNvcmRzIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IEJhdGNoQ3JlYXRlTWVtb3J5UmVjb3Jkc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6bmFtZXNwYWNlXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBCYXRjaFVwZGF0ZU1lbW9yeVJlY29yZHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQmF0Y2hVcGRhdGVNZW1vcnlSZWNvcmRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpuYW1lc3BhY2VcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENvbXBsZXRlUmVzb3VyY2VUb2tlbkF1dGggYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ29tcGxldGVSZXNvdXJjZVRva2VuQXV0aENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2F1ZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2NsaWVudF9pZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2lzc1wiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL3Njb3BlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vc3ViXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTp1c2VyaWRcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUFnZW50UnVudGltZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVBZ2VudFJ1bnRpbWVDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlJ1bnRpbWVBdXRob3JpemVyVHlwZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c2VjdXJpdHlHcm91cHNcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOnN1Ym5ldHNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUFnZW50UnVudGltZUVuZHBvaW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUFnZW50UnVudGltZUVuZHBvaW50Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVBcGlLZXlDcmVkZW50aWFsUHJvdmlkZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVCcm93c2VyIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUJyb3dzZXJDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOnNlY3VyaXR5R3JvdXBzXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpzdWJuZXRzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVCcm93c2VyUHJvZmlsZSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVCcm93c2VyUHJvZmlsZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlQ2FwYWNpdHlQcm92aWRlciBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVDYXBhY2l0eVByb3ZpZGVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVDb2RlSW50ZXJwcmV0ZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlQ29kZUludGVycHJldGVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpzZWN1cml0eUdyb3Vwc1wiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c3VibmV0c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlRGF0YXNldCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVEYXRhc2V0Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVFdmFsdWF0b3IgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlRXZhbHVhdG9yQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVFdmVudCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVFdmVudENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6YWN0b3JJZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c2Vzc2lvbklkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVHYXRld2F5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUdhdGV3YXlDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZUhhcm5lc3MgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlSGFybmVzc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlSGFybmVzc0VuZHBvaW50IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZUhhcm5lc3NFbmRwb2ludENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlTWVtb3J5IGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZU1lbW9yeUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6S21zS2V5QXJuXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVPYXV0aDJDcmVkZW50aWFsUHJvdmlkZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlT2F1dGgyQ3JlZGVudGlhbFByb3ZpZGVyQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBDcmVhdGVPbmxpbmVFdmFsdWF0aW9uQ29uZmlnIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZU9ubGluZUV2YWx1YXRpb25Db25maWdDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIENyZWF0ZVBheW1lbnRDcmVkZW50aWFsUHJvdmlkZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUGF5bWVudENyZWRlbnRpYWxQcm92aWRlckNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlUGF5bWVudE1hbmFnZXIgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQ3JlYXRlUGF5bWVudE1hbmFnZXJDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkRpc2NvdmVyeVVybFwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlUG9saWN5RW5naW5lIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IENyZWF0ZVBvbGljeUVuZ2luZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYXdzOlJlcXVlc3RUYWcvJHtUYWdLZXl9XCIsXG5cdFx0XCJhd3M6VGFnS2V5c1wiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgQ3JlYXRlV29ya2xvYWRJZGVudGl0eSBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBDcmVhdGVXb3JrbG9hZElkZW50aXR5Q29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIixcblx0XHRcImF3czpUYWdLZXlzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBEZWxldGVFdmVudCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBEZWxldGVFdmVudENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6YWN0b3JJZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c2Vzc2lvbklkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRFdmVudCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRFdmVudENvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6YWN0b3JJZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c2Vzc2lvbklkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBHZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9ySldUIGFjdGlvbi4gKi9cblx0c3RhdGljIHJlYWRvbmx5IGFjdGlvbkdldFdvcmtsb2FkQWNjZXNzVG9rZW5Gb3JKV1RDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9hdWRcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9jbGllbnRfaWRcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9pc3NcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9zY29wZVwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL3N1YlwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgR2V0V29ya2xvYWRBY2Nlc3NUb2tlbkZvclVzZXJJZCBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBhY3Rpb25HZXRXb3JrbG9hZEFjY2Vzc1Rva2VuRm9yVXNlcklkQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPVxuXHRcdFtcImJlZHJvY2stYWdlbnRjb3JlOnVzZXJpZFwiXTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIExpc3RFdmVudHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdEV2ZW50c0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6YWN0b3JJZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c2Vzc2lvbklkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0TWVtb3J5UmVjb3JkcyBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBMaXN0TWVtb3J5UmVjb3Jkc0NvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6bmFtZXNwYWNlXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpzdHJhdGVneUlkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBMaXN0U2Vzc2lvbnMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgTGlzdFNlc3Npb25zQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTphY3RvcklkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBQdXRTeXN0ZW1Mb2dFdmVudHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUHV0U3lzdGVtTG9nRXZlbnRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpydW50aW1lU2Vzc2lvbklkXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBSZXRyaWV2ZU1lbW9yeVJlY29yZHMgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUmV0cmlldmVNZW1vcnlSZWNvcmRzQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpuYW1lc3BhY2VcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOnN0cmF0ZWd5SWRcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFN0YXJ0TWVtb3J5RXh0cmFjdGlvbkpvYiBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBTdGFydE1lbW9yeUV4dHJhY3Rpb25Kb2JDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOmFjdG9ySWRcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOnNlc3Npb25JZFwiLFxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6c3RyYXRlZ3lJZFwiLFxuXHRdO1xuXHQvKiogQ29uZGl0aW9uIGtleXMgYXBwbGljYWJsZSB0byB0aGUgVGFnUmVzb3VyY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVGFnUmVzb3VyY2VDb25kaXRpb25LZXlzOiBzdHJpbmdbXSA9IFtcblx0XHRcImF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fVwiLFxuXHRcdFwiYXdzOlRhZ0tleXNcIixcblx0XTtcblx0LyoqIENvbmRpdGlvbiBrZXlzIGFwcGxpY2FibGUgdG8gdGhlIFVudGFnUmVzb3VyY2UgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVW50YWdSZXNvdXJjZUNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1wiYXdzOlRhZ0tleXNcIl07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVBZ2VudFJ1bnRpbWUgYWN0aW9uLiAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgVXBkYXRlQWdlbnRSdW50aW1lQ29uZGl0aW9uS2V5czogc3RyaW5nW10gPSBbXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpSdW50aW1lQXV0aG9yaXplclR5cGVcIixcblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOnNlY3VyaXR5R3JvdXBzXCIsXG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpzdWJuZXRzXCIsXG5cdF07XG5cdC8qKiBDb25kaXRpb24ga2V5cyBhcHBsaWNhYmxlIHRvIHRoZSBVcGRhdGVQYXltZW50TWFuYWdlciBhY3Rpb24uICovXG5cdHN0YXRpYyByZWFkb25seSBVcGRhdGVQYXltZW50TWFuYWdlckNvbmRpdGlvbktleXM6IHN0cmluZ1tdID0gW1xuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6RGlzY292ZXJ5VXJsXCIsXG5cdF07XG5cblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpSZXF1ZXN0VGFnLyR7VGFnS2V5fSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1JFUVVFU1RfVEFHID0gXCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX0gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFXU19SRVNPVVJDRV9UQUcgPSBcImF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGF3czpUYWdLZXlzIChBcnJheU9mU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgQVdTX1RBR19LRVlTID0gXCJhd3M6VGFnS2V5c1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6QWxsb3dlZFF1ZXJ5UGFyYW1ldGVycyAoQXJyYXlPZlN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFMTE9XRURfUVVFUllfUEFSQU1FVEVSUyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpBbGxvd2VkUXVlcnlQYXJhbWV0ZXJzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpBbGxvd2VkUmVxdWVzdEhlYWRlcnMgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBTExPV0VEX1JFUVVFU1RfSEVBREVSUyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpBbGxvd2VkUmVxdWVzdEhlYWRlcnNcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOkFsbG93ZWRSZXNwb25zZUhlYWRlcnMgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBBTExPV0VEX1JFU1BPTlNFX0hFQURFUlMgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6QWxsb3dlZFJlc3BvbnNlSGVhZGVyc1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6Q3JlZGVudGlhbFByb3ZpZGVyU2NvcGUgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBDUkVERU5USUFMX1BST1ZJREVSX1NDT1BFID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkNyZWRlbnRpYWxQcm92aWRlclNjb3BlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpDcmVkZW50aWFsUHJvdmlkZXJUeXBlIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBDUkVERU5USUFMX1BST1ZJREVSX1RZUEUgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlZGVudGlhbFByb3ZpZGVyVHlwZVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6RGlzY292ZXJ5VXJsIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBESVNDT1ZFUllfVVJMID0gXCJiZWRyb2NrLWFnZW50Y29yZTpEaXNjb3ZlcnlVcmxcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOkdhdGV3YXlBdXRob3JpemVyVHlwZSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgR0FURVdBWV9BVVRIT1JJWkVSX1RZUEUgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6R2F0ZXdheUF1dGhvcml6ZXJUeXBlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpIdHRwVGFyZ2V0Q29uZmlndXJhdGlvblR5cGUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEhUVFBfVEFSR0VUX0NPTkZJR1VSQVRJT05fVFlQRSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpIdHRwVGFyZ2V0Q29uZmlndXJhdGlvblR5cGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9hdWQgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBJTkJPVU5EX0pXVF9DTEFJTV9BVUQgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2F1ZFwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2NsaWVudF9pZCAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSU5CT1VORF9KV1RfQ0xBSU1fQ0xJRU5UX0lEID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9jbGllbnRfaWRcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9pc3MgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IElOQk9VTkRfSldUX0NMQUlNX0lTUyA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vaXNzXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vc2NvcGUgKEFycmF5T2ZTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBJTkJPVU5EX0pXVF9DTEFJTV9TQ09QRSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vc2NvcGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9zdWIgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IElOQk9VTkRfSldUX0NMQUlNX1NVQiA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vc3ViXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpJbmZlcmVuY2VUYXJnZXRDb25maWd1cmF0aW9uVHlwZSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgSU5GRVJFTkNFX1RBUkdFVF9DT05GSUdVUkFUSU9OX1RZUEUgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5mZXJlbmNlVGFyZ2V0Q29uZmlndXJhdGlvblR5cGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOkttc0tleUFybiAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgS01TX0tFWV9BUk4gPSBcImJlZHJvY2stYWdlbnRjb3JlOkttc0tleUFyblwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6TWNwVGFyZ2V0Q29uZmlndXJhdGlvblR5cGUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IE1DUF9UQVJHRVRfQ09ORklHVVJBVElPTl9UWVBFID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOk1jcFRhcmdldENvbmZpZ3VyYXRpb25UeXBlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpQb2xpY3lFbmdpbmVBcm4gKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFBPTElDWV9FTkdJTkVfQVJOID0gXCJiZWRyb2NrLWFnZW50Y29yZTpQb2xpY3lFbmdpbmVBcm5cIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOlBvbGljeUVuZ2luZU1vZGUgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFBPTElDWV9FTkdJTkVfTU9ERSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6UG9saWN5RW5naW5lTW9kZVwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6UHJpdmF0ZUVuZHBvaW50VHlwZSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUFJJVkFURV9FTkRQT0lOVF9UWVBFID1cblx0XHRcImJlZHJvY2stYWdlbnRjb3JlOlByaXZhdGVFbmRwb2ludFR5cGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOlByb3RvY29sVHlwZSAoU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgUFJPVE9DT0xfVFlQRSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6UHJvdG9jb2xUeXBlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpSZXNvdXJjZUNvbmZpZ3VyYXRpb25JZGVudGlmaWVyIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBSRVNPVVJDRV9DT05GSUdVUkFUSU9OX0lERU5USUZJRVIgPVxuXHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6UmVzb3VyY2VDb25maWd1cmF0aW9uSWRlbnRpZmllclwiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6UnVudGltZUF1dGhvcml6ZXJUeXBlIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBSVU5USU1FX0FVVEhPUklaRVJfVFlQRSA9XG5cdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpSdW50aW1lQXV0aG9yaXplclR5cGVcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOmFjdG9ySWQgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IEFDVE9SX0lEID0gXCJiZWRyb2NrLWFnZW50Y29yZTphY3RvcklkXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpuYW1lc3BhY2UgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IE5BTUVTUEFDRSA9IFwiYmVkcm9jay1hZ2VudGNvcmU6bmFtZXNwYWNlXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpydW50aW1lU2Vzc2lvbklkIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBSVU5USU1FX1NFU1NJT05fSUQgPSBcImJlZHJvY2stYWdlbnRjb3JlOnJ1bnRpbWVTZXNzaW9uSWRcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOnNlY3VyaXR5R3JvdXBzIChBcnJheU9mU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU0VDVVJJVFlfR1JPVVBTID0gXCJiZWRyb2NrLWFnZW50Y29yZTpzZWN1cml0eUdyb3Vwc1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6c2Vzc2lvbklkIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBTRVNTSU9OX0lEID0gXCJiZWRyb2NrLWFnZW50Y29yZTpzZXNzaW9uSWRcIjtcblx0LyoqIENvbmRpdGlvbiBrZXk6IGJlZHJvY2stYWdlbnRjb3JlOnN0cmF0ZWd5SWQgKFN0cmluZykgKi9cblx0c3RhdGljIHJlYWRvbmx5IFNUUkFURUdZX0lEID0gXCJiZWRyb2NrLWFnZW50Y29yZTpzdHJhdGVneUlkXCI7XG5cdC8qKiBDb25kaXRpb24ga2V5OiBiZWRyb2NrLWFnZW50Y29yZTpzdWJuZXRzIChBcnJheU9mU3RyaW5nKSAqL1xuXHRzdGF0aWMgcmVhZG9ubHkgU1VCTkVUUyA9IFwiYmVkcm9jay1hZ2VudGNvcmU6c3VibmV0c1wiO1xuXHQvKiogQ29uZGl0aW9uIGtleTogYmVkcm9jay1hZ2VudGNvcmU6dXNlcmlkIChTdHJpbmcpICovXG5cdHN0YXRpYyByZWFkb25seSBVU0VSSUQgPSBcImJlZHJvY2stYWdlbnRjb3JlOnVzZXJpZFwiO1xuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHJlcXVlc3RUYWcodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJhd3M6UmVxdWVzdFRhZy8ke1RhZ0tleX1cIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGF3czpSZXNvdXJjZVRhZy8ke1RhZ0tleX1gLlxuXHQgKi9cblx0c3RhdGljIHJlc291cmNlVGFnKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYXdzOlJlc291cmNlVGFnLyR7VGFnS2V5fVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYXdzOlRhZ0tleXNgLlxuXHQgKi9cblx0c3RhdGljIHRhZ0tleXModmFsdWVzOiBzdHJpbmdbXSk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7IFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7IFwiYXdzOlRhZ0tleXNcIjogdmFsdWVzIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpBbGxvd2VkUXVlcnlQYXJhbWV0ZXJzYC5cblx0ICovXG5cdHN0YXRpYyBhbGxvd2VkUXVlcnlQYXJhbWV0ZXJzKFxuXHRcdHZhbHVlczogc3RyaW5nW10sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRcIkZvckFsbFZhbHVlczpTdHJpbmdFcXVhbHNcIjoge1xuXHRcdFx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkFsbG93ZWRRdWVyeVBhcmFtZXRlcnNcIjogdmFsdWVzLFxuXHRcdFx0fSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOkFsbG93ZWRSZXF1ZXN0SGVhZGVyc2AuXG5cdCAqL1xuXHRzdGF0aWMgYWxsb3dlZFJlcXVlc3RIZWFkZXJzKFxuXHRcdHZhbHVlczogc3RyaW5nW10sXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRcIkZvckFsbFZhbHVlczpTdHJpbmdFcXVhbHNcIjoge1xuXHRcdFx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkFsbG93ZWRSZXF1ZXN0SGVhZGVyc1wiOiB2YWx1ZXMsXG5cdFx0XHR9LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6QWxsb3dlZFJlc3BvbnNlSGVhZGVyc2AuXG5cdCAqL1xuXHRzdGF0aWMgYWxsb3dlZFJlc3BvbnNlSGVhZGVycyhcblx0XHR2YWx1ZXM6IHN0cmluZ1tdLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4+IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0XCJGb3JBbGxWYWx1ZXM6U3RyaW5nRXF1YWxzXCI6IHtcblx0XHRcdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpBbGxvd2VkUmVzcG9uc2VIZWFkZXJzXCI6IHZhbHVlcyxcblx0XHRcdH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpDcmVkZW50aWFsUHJvdmlkZXJTY29wZWAuXG5cdCAqL1xuXHRzdGF0aWMgY3JlZGVudGlhbFByb3ZpZGVyU2NvcGUoXG5cdFx0dmFsdWVzOiBzdHJpbmdbXSxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+PiB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7XG5cdFx0XHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6Q3JlZGVudGlhbFByb3ZpZGVyU2NvcGVcIjogdmFsdWVzLFxuXHRcdFx0fSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOkNyZWRlbnRpYWxQcm92aWRlclR5cGVgLlxuXHQgKi9cblx0c3RhdGljIGNyZWRlbnRpYWxQcm92aWRlclR5cGUoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpDcmVkZW50aWFsUHJvdmlkZXJUeXBlXCI6IHZhbHVlIH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpEaXNjb3ZlcnlVcmxgLlxuXHQgKi9cblx0c3RhdGljIGRpc2NvdmVyeVVSTCh2YWx1ZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImJlZHJvY2stYWdlbnRjb3JlOkRpc2NvdmVyeVVybFwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6R2F0ZXdheUF1dGhvcml6ZXJUeXBlYC5cblx0ICovXG5cdHN0YXRpYyBnYXRld2F5QXV0aG9yaXplclR5cGUoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpHYXRld2F5QXV0aG9yaXplclR5cGVcIjogdmFsdWUgfSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOkh0dHBUYXJnZXRDb25maWd1cmF0aW9uVHlwZWAuXG5cdCAqL1xuXHRzdGF0aWMgaHR0cFRhcmdldENvbmZpZ3VyYXRpb25UeXBlKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0U3RyaW5nRXF1YWxzOiB7IFwiYmVkcm9jay1hZ2VudGNvcmU6SHR0cFRhcmdldENvbmZpZ3VyYXRpb25UeXBlXCI6IHZhbHVlIH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vYXVkYC5cblx0ICovXG5cdHN0YXRpYyBpbmJvdW5kSnd0Q2xhaW1BdWQoXG5cdFx0dmFsdWVzOiBzdHJpbmdbXSxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+PiB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7XG5cdFx0XHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2F1ZFwiOiB2YWx1ZXMsXG5cdFx0XHR9LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL2NsaWVudF9pZGAuXG5cdCAqL1xuXHRzdGF0aWMgaW5ib3VuZEp3dENsYWltQ2xpZW50SWQoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vY2xpZW50X2lkXCI6IHZhbHVlIH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vaXNzYC5cblx0ICovXG5cdHN0YXRpYyBpbmJvdW5kSnd0Q2xhaW1Jc3MoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9pc3NcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9zY29wZWAuXG5cdCAqL1xuXHRzdGF0aWMgaW5ib3VuZEp3dENsYWltU2NvcGUoXG5cdFx0dmFsdWVzOiBzdHJpbmdbXSxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+PiB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdFwiRm9yQWxsVmFsdWVzOlN0cmluZ0VxdWFsc1wiOiB7XG5cdFx0XHRcdFwiYmVkcm9jay1hZ2VudGNvcmU6SW5ib3VuZEp3dENsYWltL3Njb3BlXCI6IHZhbHVlcyxcblx0XHRcdH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpJbmJvdW5kSnd0Q2xhaW0vc3ViYC5cblx0ICovXG5cdHN0YXRpYyBpbmJvdW5kSnd0Q2xhaW1TdWIoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImJlZHJvY2stYWdlbnRjb3JlOkluYm91bmRKd3RDbGFpbS9zdWJcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOkluZmVyZW5jZVRhcmdldENvbmZpZ3VyYXRpb25UeXBlYC5cblx0ICovXG5cdHN0YXRpYyBpbmZlcmVuY2VUYXJnZXRDb25maWd1cmF0aW9uVHlwZShcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdFN0cmluZ0VxdWFsczoge1xuXHRcdFx0XHRcImJlZHJvY2stYWdlbnRjb3JlOkluZmVyZW5jZVRhcmdldENvbmZpZ3VyYXRpb25UeXBlXCI6IHZhbHVlLFxuXHRcdFx0fSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOkttc0tleUFybmAuXG5cdCAqL1xuXHRzdGF0aWMga21zS2V5QVJOKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYmVkcm9jay1hZ2VudGNvcmU6S21zS2V5QXJuXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpNY3BUYXJnZXRDb25maWd1cmF0aW9uVHlwZWAuXG5cdCAqL1xuXHRzdGF0aWMgbWNwVGFyZ2V0Q29uZmlndXJhdGlvblR5cGUoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpNY3BUYXJnZXRDb25maWd1cmF0aW9uVHlwZVwiOiB2YWx1ZSB9LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6UG9saWN5RW5naW5lQXJuYC5cblx0ICovXG5cdHN0YXRpYyBwb2xpY3lFbmdpbmVBUk4oXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImJlZHJvY2stYWdlbnRjb3JlOlBvbGljeUVuZ2luZUFyblwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6UG9saWN5RW5naW5lTW9kZWAuXG5cdCAqL1xuXHRzdGF0aWMgcG9saWN5RW5naW5lTW9kZShcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYmVkcm9jay1hZ2VudGNvcmU6UG9saWN5RW5naW5lTW9kZVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6UHJpdmF0ZUVuZHBvaW50VHlwZWAuXG5cdCAqL1xuXHRzdGF0aWMgcHJpdmF0ZUVuZHBvaW50VHlwZShcblx0XHR2YWx1ZTogc3RyaW5nLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYmVkcm9jay1hZ2VudGNvcmU6UHJpdmF0ZUVuZHBvaW50VHlwZVwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6UHJvdG9jb2xUeXBlYC5cblx0ICovXG5cdHN0YXRpYyBwcm90b2NvbFR5cGUodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpQcm90b2NvbFR5cGVcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOlJlc291cmNlQ29uZmlndXJhdGlvbklkZW50aWZpZXJgLlxuXHQgKi9cblx0c3RhdGljIHJlc291cmNlQ29uZmlndXJhdGlvbklkZW50aWZpZXIoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7XG5cdFx0XHRTdHJpbmdFcXVhbHM6IHtcblx0XHRcdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpSZXNvdXJjZUNvbmZpZ3VyYXRpb25JZGVudGlmaWVyXCI6IHZhbHVlLFxuXHRcdFx0fSxcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOlJ1bnRpbWVBdXRob3JpemVyVHlwZWAuXG5cdCAqL1xuXHRzdGF0aWMgcnVudGltZUF1dGhvcml6ZXJUeXBlKFxuXHRcdHZhbHVlOiBzdHJpbmcsXG5cdCk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0U3RyaW5nRXF1YWxzOiB7IFwiYmVkcm9jay1hZ2VudGNvcmU6UnVudGltZUF1dGhvcml6ZXJUeXBlXCI6IHZhbHVlIH0sXG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTphY3RvcklkYC5cblx0ICovXG5cdHN0YXRpYyBhY3RvcklkKHZhbHVlOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG5cdFx0cmV0dXJuIHsgU3RyaW5nRXF1YWxzOiB7IFwiYmVkcm9jay1hZ2VudGNvcmU6YWN0b3JJZFwiOiB2YWx1ZSB9IH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6bmFtZXNwYWNlYC5cblx0ICovXG5cdHN0YXRpYyBuYW1lc3BhY2UodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpuYW1lc3BhY2VcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOnJ1bnRpbWVTZXNzaW9uSWRgLlxuXHQgKi9cblx0c3RhdGljIHJ1bnRpbWVTZXNzaW9uSWQoXG5cdFx0dmFsdWU6IHN0cmluZyxcblx0KTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuXHRcdHJldHVybiB7IFN0cmluZ0VxdWFsczogeyBcImJlZHJvY2stYWdlbnRjb3JlOnJ1bnRpbWVTZXNzaW9uSWRcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOnNlY3VyaXR5R3JvdXBzYC5cblx0ICovXG5cdHN0YXRpYyBzZWN1cml0eUdyb3Vwcyhcblx0XHR2YWx1ZXM6IHN0cmluZ1tdLFxuXHQpOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4+IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0XCJGb3JBbGxWYWx1ZXM6U3RyaW5nRXF1YWxzXCI6IHtcblx0XHRcdFx0XCJiZWRyb2NrLWFnZW50Y29yZTpzZWN1cml0eUdyb3Vwc1wiOiB2YWx1ZXMsXG5cdFx0XHR9LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6c2Vzc2lvbklkYC5cblx0ICovXG5cdHN0YXRpYyBzZXNzaW9uSWQodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpzZXNzaW9uSWRcIjogdmFsdWUgfSB9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEdlbmVyYXRlcyBhIGNvbmRpdGlvbiBibG9jayBmb3IgYGJlZHJvY2stYWdlbnRjb3JlOnN0cmF0ZWd5SWRgLlxuXHQgKi9cblx0c3RhdGljIHN0cmF0ZWd5SWQodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpzdHJhdGVneUlkXCI6IHZhbHVlIH0gfTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZW5lcmF0ZXMgYSBjb25kaXRpb24gYmxvY2sgZm9yIGBiZWRyb2NrLWFnZW50Y29yZTpzdWJuZXRzYC5cblx0ICovXG5cdHN0YXRpYyBzdWJuZXRzKHZhbHVlczogc3RyaW5nW10pOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4+IHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0XCJGb3JBbGxWYWx1ZXM6U3RyaW5nRXF1YWxzXCI6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTpzdWJuZXRzXCI6IHZhbHVlcyB9LFxuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogR2VuZXJhdGVzIGEgY29uZGl0aW9uIGJsb2NrIGZvciBgYmVkcm9jay1hZ2VudGNvcmU6dXNlcmlkYC5cblx0ICovXG5cdHN0YXRpYyB1c2VyaWQodmFsdWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcblx0XHRyZXR1cm4geyBTdHJpbmdFcXVhbHM6IHsgXCJiZWRyb2NrLWFnZW50Y29yZTp1c2VyaWRcIjogdmFsdWUgfSB9O1xuXHR9XG59XG4iXX0=
|