text:
# This file is auto-generated by AWSMetadata.jl
using AWS
using AWS.AWSServices: codedeploy
using AWS.Compat
using AWS.UUIDs

"""
    AddTagsToOnPremisesInstances()

Adds tags to on-premises instances.

# Required Parameters
- `instanceNames`: The names of the on-premises instances to which to add tags.
- `tags`: The tag key-value pairs to add to the on-premises instances. Keys and values are both required. Keys cannot be null or empty strings. Value-only tags are not allowed.

"""
add_tags_to_on_premises_instances(instanceNames, tags; aws_config::AWSConfig=global_aws_config()) = codedeploy("AddTagsToOnPremisesInstances", Dict{String, Any}("instanceNames"=>instanceNames, "tags"=>tags); aws_config=aws_config)
add_tags_to_on_premises_instances(instanceNames, tags, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("AddTagsToOnPremisesInstances", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("instanceNames"=>instanceNames, "tags"=>tags), args)); aws_config=aws_config)

"""
    BatchGetApplicationRevisions()

Gets information about one or more application revisions. The maximum number of application revisions that can be returned is 25.

# Required Parameters
- `applicationName`: The name of an AWS CodeDeploy application about which to get revision information.
- `revisions`: An array of RevisionLocation objects that specify information to get about the application revisions, including type and location. The maximum number of RevisionLocation objects you can specify is 25.

"""
batch_get_application_revisions(applicationName, revisions; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetApplicationRevisions", Dict{String, Any}("applicationName"=>applicationName, "revisions"=>revisions); aws_config=aws_config)
batch_get_application_revisions(applicationName, revisions, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetApplicationRevisions", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName, "revisions"=>revisions), args)); aws_config=aws_config)

"""
    BatchGetApplications()

Gets information about one or more applications. The maximum number of applications that can be returned is 100.

# Required Parameters
- `applicationNames`: A list of application names separated by spaces. The maximum number of application names you can specify is 100.

"""
batch_get_applications(applicationNames; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetApplications", Dict{String, Any}("applicationNames"=>applicationNames); aws_config=aws_config)
batch_get_applications(applicationNames, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetApplications", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationNames"=>applicationNames), args)); aws_config=aws_config)

"""
    BatchGetDeploymentGroups()

Gets information about one or more deployment groups.

# Required Parameters
- `applicationName`: The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.
- `deploymentGroupNames`: The names of the deployment groups.

"""
batch_get_deployment_groups(applicationName, deploymentGroupNames; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetDeploymentGroups", Dict{String, Any}("applicationName"=>applicationName, "deploymentGroupNames"=>deploymentGroupNames); aws_config=aws_config)
batch_get_deployment_groups(applicationName, deploymentGroupNames, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetDeploymentGroups", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName, "deploymentGroupNames"=>deploymentGroupNames), args)); aws_config=aws_config)

"""
    BatchGetDeploymentInstances()

  This method works, but is deprecated. Use BatchGetDeploymentTargets instead.    Returns an array of one or more instances associated with a deployment. This method works with EC2/On-premises and AWS Lambda compute platforms. The newer BatchGetDeploymentTargets works with all compute platforms. The maximum number of instances that can be returned is 25.

# Required Parameters
- `deploymentId`:  The unique ID of a deployment.
- `instanceIds`: The unique IDs of instances used in the deployment. The maximum number of instance IDs you can specify is 25.

"""
batch_get_deployment_instances(deploymentId, instanceIds; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetDeploymentInstances", Dict{String, Any}("deploymentId"=>deploymentId, "instanceIds"=>instanceIds); aws_config=aws_config)
batch_get_deployment_instances(deploymentId, instanceIds, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetDeploymentInstances", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("deploymentId"=>deploymentId, "instanceIds"=>instanceIds), args)); aws_config=aws_config)

"""
    BatchGetDeploymentTargets()

 Returns an array of one or more targets associated with a deployment. This method works with all compute types and should be used instead of the deprecated BatchGetDeploymentInstances. The maximum number of targets that can be returned is 25.  The type of targets returned depends on the deployment's compute platform or deployment method:     EC2/On-premises: Information about EC2 instance targets.     AWS Lambda: Information about Lambda functions targets.     Amazon ECS: Information about Amazon ECS service targets.     CloudFormation: Information about targets of blue/green deployments initiated by a CloudFormation stack update.

# Optional Parameters
- `deploymentId`:  The unique ID of a deployment.
- `targetIds`:  The unique IDs of the deployment targets. The compute platform of the deployment determines the type of the targets and their formats. The maximum number of deployment target IDs you can specify is 25.    For deployments that use the EC2/On-premises compute platform, the target IDs are EC2 or on-premises instances IDs, and their target type is instanceTarget.     For deployments that use the AWS Lambda compute platform, the target IDs are the names of Lambda functions, and their target type is instanceTarget.     For deployments that use the Amazon ECS compute platform, the target IDs are pairs of Amazon ECS clusters and services specified using the format <clustername>:<servicename>. Their target type is ecsTarget.     For deployments that are deployed with AWS CloudFormation, the target IDs are CloudFormation stack IDs. Their target type is cloudFormationTarget.
"""
batch_get_deployment_targets(; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetDeploymentTargets"; aws_config=aws_config)
batch_get_deployment_targets(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetDeploymentTargets", args; aws_config=aws_config)

"""
    BatchGetDeployments()

Gets information about one or more deployments. The maximum number of deployments that can be returned is 25.

# Required Parameters
- `deploymentIds`:  A list of deployment IDs, separated by spaces. The maximum number of deployment IDs you can specify is 25.

"""
batch_get_deployments(deploymentIds; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetDeployments", Dict{String, Any}("deploymentIds"=>deploymentIds); aws_config=aws_config)
batch_get_deployments(deploymentIds, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetDeployments", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("deploymentIds"=>deploymentIds), args)); aws_config=aws_config)

"""
    BatchGetOnPremisesInstances()

Gets information about one or more on-premises instances. The maximum number of on-premises instances that can be returned is 25.

# Required Parameters
- `instanceNames`: The names of the on-premises instances about which to get information. The maximum number of instance names you can specify is 25.

"""
batch_get_on_premises_instances(instanceNames; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetOnPremisesInstances", Dict{String, Any}("instanceNames"=>instanceNames); aws_config=aws_config)
batch_get_on_premises_instances(instanceNames, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("BatchGetOnPremisesInstances", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("instanceNames"=>instanceNames), args)); aws_config=aws_config)

"""
    ContinueDeployment()

For a blue/green deployment, starts the process of rerouting traffic from instances in the original environment to instances in the replacement environment without waiting for a specified wait time to elapse. (Traffic rerouting, which is achieved by registering instances in the replacement environment with the load balancer, can start as soon as all instances have a status of Ready.)

# Optional Parameters
- `deploymentId`:  The unique ID of a blue/green deployment for which you want to start rerouting traffic to the replacement environment.
- `deploymentWaitType`:  The status of the deployment's waiting period. READY_WAIT indicates that the deployment is ready to start shifting traffic. TERMINATION_WAIT indicates that the traffic is shifted, but the original target is not terminated.
"""
continue_deployment(; aws_config::AWSConfig=global_aws_config()) = codedeploy("ContinueDeployment"; aws_config=aws_config)
continue_deployment(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("ContinueDeployment", args; aws_config=aws_config)

"""
    CreateApplication()

Creates an application.

# Required Parameters
- `applicationName`: The name of the application. This name must be unique with the applicable IAM user or AWS account.

# Optional Parameters
- `computePlatform`:  The destination platform type for the deployment (Lambda, Server, or ECS).
- `tags`:  The metadata that you apply to CodeDeploy applications to help you organize and categorize them. Each tag consists of a key and an optional value, both of which you define.
"""
create_application(applicationName; aws_config::AWSConfig=global_aws_config()) = codedeploy("CreateApplication", Dict{String, Any}("applicationName"=>applicationName); aws_config=aws_config)
create_application(applicationName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("CreateApplication", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName), args)); aws_config=aws_config)

"""
    CreateDeployment()

Deploys an application revision through the specified deployment group.

# Required Parameters
- `applicationName`: The name of an AWS CodeDeploy application associated with the IAM user or AWS account.

# Optional Parameters
- `autoRollbackConfiguration`: Configuration information for an automatic rollback that is added when a deployment is created.
- `deploymentConfigName`: The name of a deployment configuration associated with the IAM user or AWS account. If not specified, the value configured in the deployment group is used as the default. If the deployment group does not have a deployment configuration associated with it, CodeDeployDefault.OneAtATime is used by default.
- `deploymentGroupName`: The name of the deployment group.
- `description`: A comment about the deployment.
- `fileExistsBehavior`: Information about how AWS CodeDeploy handles files that already exist in a deployment target location but weren't part of the previous successful deployment. The fileExistsBehavior parameter takes any of the following values:   DISALLOW: The deployment fails. This is also the default behavior if no option is specified.   OVERWRITE: The version of the file from the application revision currently being deployed replaces the version already on the instance.   RETAIN: The version of the file already on the instance is kept and used as part of the new deployment.
- `ignoreApplicationStopFailures`:  If true, then if an ApplicationStop, BeforeBlockTraffic, or AfterBlockTraffic deployment lifecycle event to an instance fails, then the deployment continues to the next deployment lifecycle event. For example, if ApplicationStop fails, the deployment continues with DownloadBundle. If BeforeBlockTraffic fails, the deployment continues with BlockTraffic. If AfterBlockTraffic fails, the deployment continues with ApplicationStop.   If false or not specified, then if a lifecycle event fails during a deployment to an instance, that deployment fails. If deployment to that instance is part of an overall deployment and the number of healthy hosts is not less than the minimum number of healthy hosts, then a deployment to the next instance is attempted.   During a deployment, the AWS CodeDeploy agent runs the scripts specified for ApplicationStop, BeforeBlockTraffic, and AfterBlockTraffic in the AppSpec file from the previous successful deployment. (All other scripts are run from the AppSpec file in the current deployment.) If one of these scripts contains an error and does not run successfully, the deployment can fail.   If the cause of the failure is a script from the last successful deployment that will never run successfully, create a new deployment and use ignoreApplicationStopFailures to specify that the ApplicationStop, BeforeBlockTraffic, and AfterBlockTraffic failures should be ignored.
- `revision`:  The type and location of the revision to deploy.
- `targetInstances`:  Information about the instances that belong to the replacement environment in a blue/green deployment.
- `updateOutdatedInstancesOnly`:  Indicates whether to deploy to all instances or only to instances that are not running the latest application revision.
"""
create_deployment(applicationName; aws_config::AWSConfig=global_aws_config()) = codedeploy("CreateDeployment", Dict{String, Any}("applicationName"=>applicationName); aws_config=aws_config)
create_deployment(applicationName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("CreateDeployment", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName), args)); aws_config=aws_config)

"""
    CreateDeploymentConfig()

 Creates a deployment configuration.

# Required Parameters
- `deploymentConfigName`: The name of the deployment configuration to create.

# Optional Parameters
- `computePlatform`: The destination platform type for the deployment (Lambda, Server, or ECS).
- `minimumHealthyHosts`: The minimum number of healthy instances that should be available at any time during the deployment. There are two parameters expected in the input: type and value. The type parameter takes either of the following values:   HOST_COUNT: The value parameter represents the minimum number of healthy instances as an absolute value.   FLEET_PERCENT: The value parameter represents the minimum number of healthy instances as a percentage of the total number of instances in the deployment. If you specify FLEET_PERCENT, at the start of the deployment, AWS CodeDeploy converts the percentage to the equivalent number of instances and rounds up fractional instances.   The value parameter takes an integer. For example, to set a minimum of 95% healthy instance, specify a type of FLEET_PERCENT and a value of 95.
- `trafficRoutingConfig`: The configuration that specifies how the deployment traffic is routed.
"""
create_deployment_config(deploymentConfigName; aws_config::AWSConfig=global_aws_config()) = codedeploy("CreateDeploymentConfig", Dict{String, Any}("deploymentConfigName"=>deploymentConfigName); aws_config=aws_config)
create_deployment_config(deploymentConfigName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("CreateDeploymentConfig", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("deploymentConfigName"=>deploymentConfigName), args)); aws_config=aws_config)

"""
    CreateDeploymentGroup()

Creates a deployment group to which application revisions are deployed.

# Required Parameters
- `applicationName`: The name of an AWS CodeDeploy application associated with the IAM user or AWS account.
- `deploymentGroupName`: The name of a new deployment group for the specified application.
- `serviceRoleArn`: A service role Amazon Resource Name (ARN) that allows AWS CodeDeploy to act on the user's behalf when interacting with AWS services.

# Optional Parameters
- `alarmConfiguration`: Information to add about Amazon CloudWatch alarms when the deployment group is created.
- `autoRollbackConfiguration`: Configuration information for an automatic rollback that is added when a deployment group is created.
- `autoScalingGroups`: A list of associated Amazon EC2 Auto Scaling groups.
- `blueGreenDeploymentConfiguration`: Information about blue/green deployment options for a deployment group.
- `deploymentConfigName`: If specified, the deployment configuration name can be either one of the predefined configurations provided with AWS CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation.  CodeDeployDefault.OneAtATime is the default deployment configuration. It is used if a configuration isn't specified for the deployment or deployment group. For more information about the predefined deployment configurations in AWS CodeDeploy, see Working with Deployment Configurations in CodeDeploy in the AWS CodeDeploy User Guide.
- `deploymentStyle`: Information about the type of deployment, in-place or blue/green, that you want to run and whether to route deployment traffic behind a load balancer.
- `ec2TagFilters`: The Amazon EC2 tags on which to filter. The deployment group includes EC2 instances with any of the specified tags. Cannot be used in the same call as ec2TagSet.
- `ec2TagSet`: Information about groups of tags applied to EC2 instances. The deployment group includes only EC2 instances identified by all the tag groups. Cannot be used in the same call as ec2TagFilters.
- `ecsServices`:  The target Amazon ECS services in the deployment group. This applies only to deployment groups that use the Amazon ECS compute platform. A target Amazon ECS service is specified as an Amazon ECS cluster and service name pair using the format <clustername>:<servicename>.
- `loadBalancerInfo`: Information about the load balancer used in a deployment.
- `onPremisesInstanceTagFilters`: The on-premises instance tags on which to filter. The deployment group includes on-premises instances with any of the specified tags. Cannot be used in the same call as OnPremisesTagSet.
- `onPremisesTagSet`: Information about groups of tags applied to on-premises instances. The deployment group includes only on-premises instances identified by all of the tag groups. Cannot be used in the same call as onPremisesInstanceTagFilters.
- `tags`:  The metadata that you apply to CodeDeploy deployment groups to help you organize and categorize them. Each tag consists of a key and an optional value, both of which you define.
- `triggerConfigurations`: Information about triggers to create when the deployment group is created. For examples, see Create a Trigger for an AWS CodeDeploy Event in the AWS CodeDeploy User Guide.
"""
create_deployment_group(applicationName, deploymentGroupName, serviceRoleArn; aws_config::AWSConfig=global_aws_config()) = codedeploy("CreateDeploymentGroup", Dict{String, Any}("applicationName"=>applicationName, "deploymentGroupName"=>deploymentGroupName, "serviceRoleArn"=>serviceRoleArn); aws_config=aws_config)
create_deployment_group(applicationName, deploymentGroupName, serviceRoleArn, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("CreateDeploymentGroup", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName, "deploymentGroupName"=>deploymentGroupName, "serviceRoleArn"=>serviceRoleArn), args)); aws_config=aws_config)

"""
    DeleteApplication()

Deletes an application.

# Required Parameters
- `applicationName`: The name of an AWS CodeDeploy application associated with the IAM user or AWS account.

"""
delete_application(applicationName; aws_config::AWSConfig=global_aws_config()) = codedeploy("DeleteApplication", Dict{String, Any}("applicationName"=>applicationName); aws_config=aws_config)
delete_application(applicationName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("DeleteApplication", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName), args)); aws_config=aws_config)

"""
    DeleteDeploymentConfig()

Deletes a deployment configuration.  A deployment configuration cannot be deleted if it is currently in use. Predefined configurations cannot be deleted.

# Required Parameters
- `deploymentConfigName`: The name of a deployment configuration associated with the IAM user or AWS account.

"""
delete_deployment_config(deploymentConfigName; aws_config::AWSConfig=global_aws_config()) = codedeploy("DeleteDeploymentConfig", Dict{String, Any}("deploymentConfigName"=>deploymentConfigName); aws_config=aws_config)
delete_deployment_config(deploymentConfigName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("DeleteDeploymentConfig", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("deploymentConfigName"=>deploymentConfigName), args)); aws_config=aws_config)

"""
    DeleteDeploymentGroup()

Deletes a deployment group.

# Required Parameters
- `applicationName`: The name of an AWS CodeDeploy application associated with the IAM user or AWS account.
- `deploymentGroupName`: The name of a deployment group for the specified application.

"""
delete_deployment_group(applicationName, deploymentGroupName; aws_config::AWSConfig=global_aws_config()) = codedeploy("DeleteDeploymentGroup", Dict{String, Any}("applicationName"=>applicationName, "deploymentGroupName"=>deploymentGroupName); aws_config=aws_config)
delete_deployment_group(applicationName, deploymentGroupName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("DeleteDeploymentGroup", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName, "deploymentGroupName"=>deploymentGroupName), args)); aws_config=aws_config)

"""
    DeleteGitHubAccountToken()

Deletes a GitHub account connection.

# Optional Parameters
- `tokenName`: The name of the GitHub account connection to delete.
"""
delete_git_hub_account_token(; aws_config::AWSConfig=global_aws_config()) = codedeploy("DeleteGitHubAccountToken"; aws_config=aws_config)
delete_git_hub_account_token(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("DeleteGitHubAccountToken", args; aws_config=aws_config)

"""
    DeleteResourcesByExternalId()

Deletes resources linked to an external ID.

# Optional Parameters
- `externalId`: The unique ID of an external resource (for example, a CloudFormation stack ID) that is linked to one or more CodeDeploy resources.
"""
delete_resources_by_external_id(; aws_config::AWSConfig=global_aws_config()) = codedeploy("DeleteResourcesByExternalId"; aws_config=aws_config)
delete_resources_by_external_id(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("DeleteResourcesByExternalId", args; aws_config=aws_config)

"""
    DeregisterOnPremisesInstance()

Deregisters an on-premises instance.

# Required Parameters
- `instanceName`: The name of the on-premises instance to deregister.

"""
deregister_on_premises_instance(instanceName; aws_config::AWSConfig=global_aws_config()) = codedeploy("DeregisterOnPremisesInstance", Dict{String, Any}("instanceName"=>instanceName); aws_config=aws_config)
deregister_on_premises_instance(instanceName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("DeregisterOnPremisesInstance", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("instanceName"=>instanceName), args)); aws_config=aws_config)

"""
    GetApplication()

Gets information about an application.

# Required Parameters
- `applicationName`: The name of an AWS CodeDeploy application associated with the IAM user or AWS account.

"""
get_application(applicationName; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetApplication", Dict{String, Any}("applicationName"=>applicationName); aws_config=aws_config)
get_application(applicationName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetApplication", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName), args)); aws_config=aws_config)

"""
    GetApplicationRevision()

Gets information about an application revision.

# Required Parameters
- `applicationName`: The name of the application that corresponds to the revision.
- `revision`: Information about the application revision to get, including type and location.

"""
get_application_revision(applicationName, revision; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetApplicationRevision", Dict{String, Any}("applicationName"=>applicationName, "revision"=>revision); aws_config=aws_config)
get_application_revision(applicationName, revision, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetApplicationRevision", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName, "revision"=>revision), args)); aws_config=aws_config)

"""
    GetDeployment()

Gets information about a deployment.   The content property of the appSpecContent object in the returned revision is always null. Use GetApplicationRevision and the sha256 property of the returned appSpecContent object to get the content of the deployment’s AppSpec file.

# Required Parameters
- `deploymentId`:  The unique ID of a deployment associated with the IAM user or AWS account.

"""
get_deployment(deploymentId; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetDeployment", Dict{String, Any}("deploymentId"=>deploymentId); aws_config=aws_config)
get_deployment(deploymentId, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetDeployment", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("deploymentId"=>deploymentId), args)); aws_config=aws_config)

"""
    GetDeploymentConfig()

Gets information about a deployment configuration.

# Required Parameters
- `deploymentConfigName`: The name of a deployment configuration associated with the IAM user or AWS account.

"""
get_deployment_config(deploymentConfigName; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetDeploymentConfig", Dict{String, Any}("deploymentConfigName"=>deploymentConfigName); aws_config=aws_config)
get_deployment_config(deploymentConfigName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetDeploymentConfig", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("deploymentConfigName"=>deploymentConfigName), args)); aws_config=aws_config)

"""
    GetDeploymentGroup()

Gets information about a deployment group.

# Required Parameters
- `applicationName`: The name of an AWS CodeDeploy application associated with the IAM user or AWS account.
- `deploymentGroupName`: The name of a deployment group for the specified application.

"""
get_deployment_group(applicationName, deploymentGroupName; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetDeploymentGroup", Dict{String, Any}("applicationName"=>applicationName, "deploymentGroupName"=>deploymentGroupName); aws_config=aws_config)
get_deployment_group(applicationName, deploymentGroupName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetDeploymentGroup", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName, "deploymentGroupName"=>deploymentGroupName), args)); aws_config=aws_config)

"""
    GetDeploymentInstance()

Gets information about an instance as part of a deployment.

# Required Parameters
- `deploymentId`:  The unique ID of a deployment.
- `instanceId`:  The unique ID of an instance in the deployment group.

"""
get_deployment_instance(deploymentId, instanceId; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetDeploymentInstance", Dict{String, Any}("deploymentId"=>deploymentId, "instanceId"=>instanceId); aws_config=aws_config)
get_deployment_instance(deploymentId, instanceId, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetDeploymentInstance", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("deploymentId"=>deploymentId, "instanceId"=>instanceId), args)); aws_config=aws_config)

"""
    GetDeploymentTarget()

 Returns information about a deployment target.

# Optional Parameters
- `deploymentId`:  The unique ID of a deployment.
- `targetId`:  The unique ID of a deployment target.
"""
get_deployment_target(; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetDeploymentTarget"; aws_config=aws_config)
get_deployment_target(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetDeploymentTarget", args; aws_config=aws_config)

"""
    GetOnPremisesInstance()

 Gets information about an on-premises instance.

# Required Parameters
- `instanceName`:  The name of the on-premises instance about which to get information.

"""
get_on_premises_instance(instanceName; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetOnPremisesInstance", Dict{String, Any}("instanceName"=>instanceName); aws_config=aws_config)
get_on_premises_instance(instanceName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("GetOnPremisesInstance", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("instanceName"=>instanceName), args)); aws_config=aws_config)

"""
    ListApplicationRevisions()

Lists information about revisions for an application.

# Required Parameters
- `applicationName`:  The name of an AWS CodeDeploy application associated with the IAM user or AWS account.

# Optional Parameters
- `deployed`:  Whether to list revisions based on whether the revision is the target revision of a deployment group:     include: List revisions that are target revisions of a deployment group.    exclude: Do not list revisions that are target revisions of a deployment group.    ignore: List all revisions.
- `nextToken`: An identifier returned from the previous ListApplicationRevisions call. It can be used to return the next set of applications in the list.
- `s3Bucket`:  An Amazon S3 bucket name to limit the search for revisions.   If set to null, all of the user's buckets are searched.
- `s3KeyPrefix`:  A key prefix for the set of Amazon S3 objects to limit the search for revisions.
- `sortBy`: The column name to use to sort the list results:    registerTime: Sort by the time the revisions were registered with AWS CodeDeploy.    firstUsedTime: Sort by the time the revisions were first used in a deployment.    lastUsedTime: Sort by the time the revisions were last used in a deployment.    If not specified or set to null, the results are returned in an arbitrary order.
- `sortOrder`:  The order in which to sort the list results:     ascending: ascending order.    descending: descending order.   If not specified, the results are sorted in ascending order. If set to null, the results are sorted in an arbitrary order.
"""
list_application_revisions(applicationName; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListApplicationRevisions", Dict{String, Any}("applicationName"=>applicationName); aws_config=aws_config)
list_application_revisions(applicationName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListApplicationRevisions", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName), args)); aws_config=aws_config)

"""
    ListApplications()

Lists the applications registered with the IAM user or AWS account.

# Optional Parameters
- `nextToken`: An identifier returned from the previous list applications call. It can be used to return the next set of applications in the list.
"""
list_applications(; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListApplications"; aws_config=aws_config)
list_applications(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListApplications", args; aws_config=aws_config)

"""
    ListDeploymentConfigs()

Lists the deployment configurations with the IAM user or AWS account.

# Optional Parameters
- `nextToken`: An identifier returned from the previous ListDeploymentConfigs call. It can be used to return the next set of deployment configurations in the list.
"""
list_deployment_configs(; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListDeploymentConfigs"; aws_config=aws_config)
list_deployment_configs(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListDeploymentConfigs", args; aws_config=aws_config)

"""
    ListDeploymentGroups()

Lists the deployment groups for an application registered with the IAM user or AWS account.

# Required Parameters
- `applicationName`: The name of an AWS CodeDeploy application associated with the IAM user or AWS account.

# Optional Parameters
- `nextToken`: An identifier returned from the previous list deployment groups call. It can be used to return the next set of deployment groups in the list.
"""
list_deployment_groups(applicationName; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListDeploymentGroups", Dict{String, Any}("applicationName"=>applicationName); aws_config=aws_config)
list_deployment_groups(applicationName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListDeploymentGroups", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName), args)); aws_config=aws_config)

"""
    ListDeploymentInstances()

  The newer BatchGetDeploymentTargets should be used instead because it works with all compute types. ListDeploymentInstances throws an exception if it is used with a compute platform other than EC2/On-premises or AWS Lambda.    Lists the instance for a deployment associated with the IAM user or AWS account.

# Required Parameters
- `deploymentId`:  The unique ID of a deployment.

# Optional Parameters
- `instanceStatusFilter`: A subset of instances to list by status:    Pending: Include those instances with pending deployments.    InProgress: Include those instances where deployments are still in progress.    Succeeded: Include those instances with successful deployments.    Failed: Include those instances with failed deployments.    Skipped: Include those instances with skipped deployments.    Unknown: Include those instances with deployments in an unknown state.
- `instanceTypeFilter`: The set of instances in a blue/green deployment, either those in the original environment (\"BLUE\") or those in the replacement environment (\"GREEN\"), for which you want to view instance information.
- `nextToken`: An identifier returned from the previous list deployment instances call. It can be used to return the next set of deployment instances in the list.
"""
list_deployment_instances(deploymentId; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListDeploymentInstances", Dict{String, Any}("deploymentId"=>deploymentId); aws_config=aws_config)
list_deployment_instances(deploymentId, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListDeploymentInstances", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("deploymentId"=>deploymentId), args)); aws_config=aws_config)

"""
    ListDeploymentTargets()

 Returns an array of target IDs that are associated a deployment.

# Optional Parameters
- `deploymentId`:  The unique ID of a deployment.
- `nextToken`:  A token identifier returned from the previous ListDeploymentTargets call. It can be used to return the next set of deployment targets in the list.
- `targetFilters`:  A key used to filter the returned targets. The two valid values are:    TargetStatus - A TargetStatus filter string can be Failed, InProgress, Pending, Ready, Skipped, Succeeded, or Unknown.     ServerInstanceLabel - A ServerInstanceLabel filter string can be Blue or Green.
"""
list_deployment_targets(; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListDeploymentTargets"; aws_config=aws_config)
list_deployment_targets(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListDeploymentTargets", args; aws_config=aws_config)

"""
    ListDeployments()

Lists the deployments in a deployment group for an application registered with the IAM user or AWS account.

# Optional Parameters
- `applicationName`: The name of an AWS CodeDeploy application associated with the IAM user or AWS account.  If applicationName is specified, then deploymentGroupName must be specified. If it is not specified, then deploymentGroupName must not be specified.
- `createTimeRange`: A time range (start and end) for returning a subset of the list of deployments.
- `deploymentGroupName`: The name of a deployment group for the specified application.  If deploymentGroupName is specified, then applicationName must be specified. If it is not specified, then applicationName must not be specified.
- `externalId`: The unique ID of an external resource for returning deployments linked to the external resource.
- `includeOnlyStatuses`: A subset of deployments to list by status:    Created: Include created deployments in the resulting list.    Queued: Include queued deployments in the resulting list.    In Progress: Include in-progress deployments in the resulting list.    Succeeded: Include successful deployments in the resulting list.    Failed: Include failed deployments in the resulting list.    Stopped: Include stopped deployments in the resulting list.
- `nextToken`: An identifier returned from the previous list deployments call. It can be used to return the next set of deployments in the list.
"""
list_deployments(; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListDeployments"; aws_config=aws_config)
list_deployments(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListDeployments", args; aws_config=aws_config)

"""
    ListGitHubAccountTokenNames()

Lists the names of stored connections to GitHub accounts.

# Optional Parameters
- `nextToken`: An identifier returned from the previous ListGitHubAccountTokenNames call. It can be used to return the next set of names in the list.
"""
list_git_hub_account_token_names(; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListGitHubAccountTokenNames"; aws_config=aws_config)
list_git_hub_account_token_names(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListGitHubAccountTokenNames", args; aws_config=aws_config)

"""
    ListOnPremisesInstances()

Gets a list of names for one or more on-premises instances. Unless otherwise specified, both registered and deregistered on-premises instance names are listed. To list only registered or deregistered on-premises instance names, use the registration status parameter.

# Optional Parameters
- `nextToken`: An identifier returned from the previous list on-premises instances call. It can be used to return the next set of on-premises instances in the list.
- `registrationStatus`: The registration status of the on-premises instances:    Deregistered: Include deregistered on-premises instances in the resulting list.    Registered: Include registered on-premises instances in the resulting list.
- `tagFilters`: The on-premises instance tags that are used to restrict the on-premises instance names returned.
"""
list_on_premises_instances(; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListOnPremisesInstances"; aws_config=aws_config)
list_on_premises_instances(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListOnPremisesInstances", args; aws_config=aws_config)

"""
    ListTagsForResource()

 Returns a list of tags for the resource identified by a specified Amazon Resource Name (ARN). Tags are used to organize and categorize your CodeDeploy resources.

# Required Parameters
- `ResourceArn`:  The ARN of a CodeDeploy resource. ListTagsForResource returns all the tags associated with the resource that is identified by the ResourceArn.

# Optional Parameters
- `NextToken`: An identifier returned from the previous ListTagsForResource call. It can be used to return the next set of applications in the list.
"""
list_tags_for_resource(ResourceArn; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListTagsForResource", Dict{String, Any}("ResourceArn"=>ResourceArn); aws_config=aws_config)
list_tags_for_resource(ResourceArn, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("ListTagsForResource", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("ResourceArn"=>ResourceArn), args)); aws_config=aws_config)

"""
    PutLifecycleEventHookExecutionStatus()

 Sets the result of a Lambda validation function. The function validates lifecycle hooks during a deployment that uses the AWS Lambda or Amazon ECS compute platform. For AWS Lambda deployments, the available lifecycle hooks are BeforeAllowTraffic and AfterAllowTraffic. For Amazon ECS deployments, the available lifecycle hooks are BeforeInstall, AfterInstall, AfterAllowTestTraffic, BeforeAllowTraffic, and AfterAllowTraffic. Lambda validation functions return Succeeded or Failed. For more information, see AppSpec 'hooks' Section for an AWS Lambda Deployment  and AppSpec 'hooks' Section for an Amazon ECS Deployment.

# Optional Parameters
- `deploymentId`:  The unique ID of a deployment. Pass this ID to a Lambda function that validates a deployment lifecycle event.
- `lifecycleEventHookExecutionId`:  The execution ID of a deployment's lifecycle hook. A deployment lifecycle hook is specified in the hooks section of the AppSpec file.
- `status`: The result of a Lambda function that validates a deployment lifecycle event (Succeeded or Failed).
"""
put_lifecycle_event_hook_execution_status(; aws_config::AWSConfig=global_aws_config()) = codedeploy("PutLifecycleEventHookExecutionStatus"; aws_config=aws_config)
put_lifecycle_event_hook_execution_status(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("PutLifecycleEventHookExecutionStatus", args; aws_config=aws_config)

"""
    RegisterApplicationRevision()

Registers with AWS CodeDeploy a revision for the specified application.

# Required Parameters
- `applicationName`: The name of an AWS CodeDeploy application associated with the IAM user or AWS account.
- `revision`: Information about the application revision to register, including type and location.

# Optional Parameters
- `description`: A comment about the revision.
"""
register_application_revision(applicationName, revision; aws_config::AWSConfig=global_aws_config()) = codedeploy("RegisterApplicationRevision", Dict{String, Any}("applicationName"=>applicationName, "revision"=>revision); aws_config=aws_config)
register_application_revision(applicationName, revision, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("RegisterApplicationRevision", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName, "revision"=>revision), args)); aws_config=aws_config)

"""
    RegisterOnPremisesInstance()

Registers an on-premises instance.  Only one IAM ARN (an IAM session ARN or IAM user ARN) is supported in the request. You cannot use both.

# Required Parameters
- `instanceName`: The name of the on-premises instance to register.

# Optional Parameters
- `iamSessionArn`: The ARN of the IAM session to associate with the on-premises instance.
- `iamUserArn`: The ARN of the IAM user to associate with the on-premises instance.
"""
register_on_premises_instance(instanceName; aws_config::AWSConfig=global_aws_config()) = codedeploy("RegisterOnPremisesInstance", Dict{String, Any}("instanceName"=>instanceName); aws_config=aws_config)
register_on_premises_instance(instanceName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("RegisterOnPremisesInstance", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("instanceName"=>instanceName), args)); aws_config=aws_config)

"""
    RemoveTagsFromOnPremisesInstances()

Removes one or more tags from one or more on-premises instances.

# Required Parameters
- `instanceNames`: The names of the on-premises instances from which to remove tags.
- `tags`: The tag key-value pairs to remove from the on-premises instances.

"""
remove_tags_from_on_premises_instances(instanceNames, tags; aws_config::AWSConfig=global_aws_config()) = codedeploy("RemoveTagsFromOnPremisesInstances", Dict{String, Any}("instanceNames"=>instanceNames, "tags"=>tags); aws_config=aws_config)
remove_tags_from_on_premises_instances(instanceNames, tags, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("RemoveTagsFromOnPremisesInstances", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("instanceNames"=>instanceNames, "tags"=>tags), args)); aws_config=aws_config)

"""
    SkipWaitTimeForInstanceTermination()

In a blue/green deployment, overrides any specified wait time and starts terminating instances immediately after the traffic routing is complete.

# Optional Parameters
- `deploymentId`:  The unique ID of a blue/green deployment for which you want to skip the instance termination wait time.
"""
skip_wait_time_for_instance_termination(; aws_config::AWSConfig=global_aws_config()) = codedeploy("SkipWaitTimeForInstanceTermination"; aws_config=aws_config)
skip_wait_time_for_instance_termination(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("SkipWaitTimeForInstanceTermination", args; aws_config=aws_config)

"""
    StopDeployment()

Attempts to stop an ongoing deployment.

# Required Parameters
- `deploymentId`:  The unique ID of a deployment.

# Optional Parameters
- `autoRollbackEnabled`:  Indicates, when a deployment is stopped, whether instances that have been updated should be rolled back to the previous version of the application revision.
"""
stop_deployment(deploymentId; aws_config::AWSConfig=global_aws_config()) = codedeploy("StopDeployment", Dict{String, Any}("deploymentId"=>deploymentId); aws_config=aws_config)
stop_deployment(deploymentId, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("StopDeployment", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("deploymentId"=>deploymentId), args)); aws_config=aws_config)

"""
    TagResource()

 Associates the list of tags in the input Tags parameter with the resource identified by the ResourceArn input parameter.

# Required Parameters
- `ResourceArn`:  The ARN of a resource, such as a CodeDeploy application or deployment group.
- `Tags`:  A list of tags that TagResource associates with a resource. The resource is identified by the ResourceArn input parameter.

"""
tag_resource(ResourceArn, Tags; aws_config::AWSConfig=global_aws_config()) = codedeploy("TagResource", Dict{String, Any}("ResourceArn"=>ResourceArn, "Tags"=>Tags); aws_config=aws_config)
tag_resource(ResourceArn, Tags, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("TagResource", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("ResourceArn"=>ResourceArn, "Tags"=>Tags), args)); aws_config=aws_config)

"""
    UntagResource()

 Disassociates a resource from a list of tags. The resource is identified by the ResourceArn input parameter. The tags are identified by the list of keys in the TagKeys input parameter.

# Required Parameters
- `ResourceArn`:  The Amazon Resource Name (ARN) that specifies from which resource to disassociate the tags with the keys in the TagKeys input parameter.
- `TagKeys`:  A list of keys of Tag objects. The Tag objects identified by the keys are disassociated from the resource specified by the ResourceArn input parameter.

"""
untag_resource(ResourceArn, TagKeys; aws_config::AWSConfig=global_aws_config()) = codedeploy("UntagResource", Dict{String, Any}("ResourceArn"=>ResourceArn, "TagKeys"=>TagKeys); aws_config=aws_config)
untag_resource(ResourceArn, TagKeys, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("UntagResource", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("ResourceArn"=>ResourceArn, "TagKeys"=>TagKeys), args)); aws_config=aws_config)

"""
    UpdateApplication()

Changes the name of an application.

# Optional Parameters
- `applicationName`: The current name of the application you want to change.
- `newApplicationName`: The new name to give the application.
"""
update_application(; aws_config::AWSConfig=global_aws_config()) = codedeploy("UpdateApplication"; aws_config=aws_config)
update_application(args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("UpdateApplication", args; aws_config=aws_config)

"""
    UpdateDeploymentGroup()

Changes information about a deployment group.

# Required Parameters
- `applicationName`: The application name that corresponds to the deployment group to update.
- `currentDeploymentGroupName`: The current name of the deployment group.

# Optional Parameters
- `alarmConfiguration`: Information to add or change about Amazon CloudWatch alarms when the deployment group is updated.
- `autoRollbackConfiguration`: Information for an automatic rollback configuration that is added or changed when a deployment group is updated.
- `autoScalingGroups`: The replacement list of Auto Scaling groups to be included in the deployment group, if you want to change them. To keep the Auto Scaling groups, enter their names. To remove Auto Scaling groups, do not enter any Auto Scaling group names.
- `blueGreenDeploymentConfiguration`: Information about blue/green deployment options for a deployment group.
- `deploymentConfigName`: The replacement deployment configuration name to use, if you want to change it.
- `deploymentStyle`: Information about the type of deployment, either in-place or blue/green, you want to run and whether to route deployment traffic behind a load balancer.
- `ec2TagFilters`: The replacement set of Amazon EC2 tags on which to filter, if you want to change them. To keep the existing tags, enter their names. To remove tags, do not enter any tag names.
- `ec2TagSet`: Information about groups of tags applied to on-premises instances. The deployment group includes only EC2 instances identified by all the tag groups.
- `ecsServices`:  The target Amazon ECS services in the deployment group. This applies only to deployment groups that use the Amazon ECS compute platform. A target Amazon ECS service is specified as an Amazon ECS cluster and service name pair using the format <clustername>:<servicename>.
- `loadBalancerInfo`: Information about the load balancer used in a deployment.
- `newDeploymentGroupName`: The new name of the deployment group, if you want to change it.
- `onPremisesInstanceTagFilters`: The replacement set of on-premises instance tags on which to filter, if you want to change them. To keep the existing tags, enter their names. To remove tags, do not enter any tag names.
- `onPremisesTagSet`: Information about an on-premises instance tag set. The deployment group includes only on-premises instances identified by all the tag groups.
- `serviceRoleArn`: A replacement ARN for the service role, if you want to change it.
- `triggerConfigurations`: Information about triggers to change when the deployment group is updated. For examples, see Edit a Trigger in a CodeDeploy Deployment Group in the AWS CodeDeploy User Guide.
"""
update_deployment_group(applicationName, currentDeploymentGroupName; aws_config::AWSConfig=global_aws_config()) = codedeploy("UpdateDeploymentGroup", Dict{String, Any}("applicationName"=>applicationName, "currentDeploymentGroupName"=>currentDeploymentGroupName); aws_config=aws_config)
update_deployment_group(applicationName, currentDeploymentGroupName, args::AbstractDict{String, <:Any}; aws_config::AWSConfig=global_aws_config()) = codedeploy("UpdateDeploymentGroup", Dict{String, Any}(mergewith(_merge, Dict{String, Any}("applicationName"=>applicationName, "currentDeploymentGroupName"=>currentDeploymentGroupName), args)); aws_config=aws_config)


text:
params = include("inputs.jl")
for p in params
	println(p)
end
readline()

ext: jl

max_stars_repo_name: ndgnuh/RiceBPH

max_issues_repo_name: ndgnuh/RiceBPH

max_forks_repo_name: ndgnuh/RiceBPH


text:
using CUDA
using CUDNN
if VERSION >= v"0.5-"
    using Base.Test
else
    using BaseTestNext
    const Test = BaseTestNext
end

@testset "activation" for i = 1:5
    x = CuArray(Float32, 10, 5, 3, 2)
    desc = ActivationDesc(CUDNN_ACTIVATION_SIGMOID)
    y = similar(x)
    CUDNN.activation!(desc, x, y)
end

@testset "convolution" for i = 1:5
    x = CuArray(Float32, 10, 5, 3, 2)
    desc = ConvolutionDesc()
    y = similar(x)
    CUDNN.activation!(desc, x, y)
end


text:
using BinDeps
using Compat

vers = "2.0" # Use version number in setup.py file of pyEMD: https://raw.githubusercontent.com/garydoranjr/pyemd/master/setup.py

tagfile = "installed_vers"
target = "libemd.$(Libdl.dlext)"
srcdir = joinpath(dirname(@__FILE__()), "c_src")

if !isfile(target) || !isfile(tagfile) || readchomp(tagfile) != "$vers $(Sys.WORD_SIZE)"
    cd(srcdir) do
        println("Compiling libemd...")
        run(`make -f make.emd LIB=../$target`)
        run(`make -f make.emd clean`)
    end
    open(tagfile, "w") do f
        println(f, "$vers $(Sys.WORD_SIZE)")
    end
end


text:
ELKI_LITERATURE = ["ALOI", "ALOI_norm", "ALOI_withoutdupl", "ALOI_withoutdupl_norm", "Glass_withoutdupl_norm",
                   "Ionosphere_withoutdupl_norm", "KDDCup99_1ofn", "KDDCup99_catremoved", "KDDCup99_idf",
                   "KDDCup99_norm_1ofn", "KDDCup99_norm_catremoved", "KDDCup99_norm_idf", "KDDCup99_original",
                   "KDDCup99_withoutdupl_1ofn", "KDDCup99_withoutdupl_catremoved", "KDDCup99_withoutdupl_idf",
                   "KDDCup99_withoutdupl_norm_1ofn", "KDDCup99_withoutdupl_norm_catremoved",
                   "KDDCup99_withoutdupl_norm_idf", "Lymphography_original", "Lymphography_withoutdupl_1ofn",
                   "Lymphography_withoutdupl_catremoved", "Lymphography_withoutdupl_idf",
                   "Lymphography_withoutdupl_norm_1ofn", "Lymphography_withoutdupl_norm_catremoved",
                   "Lymphography_withoutdupl_norm_idf", "PenDigits_withoutdupl_norm_v01",
                   "PenDigits_withoutdupl_norm_v02", "PenDigits_withoutdupl_norm_v03", "PenDigits_withoutdupl_norm_v04",
                   "PenDigits_withoutdupl_norm_v05", "PenDigits_withoutdupl_norm_v06", "PenDigits_withoutdupl_norm_v07",
                   "PenDigits_withoutdupl_norm_v08", "PenDigits_withoutdupl_norm_v09", "PenDigits_withoutdupl_norm_v10",
                   "Shuttle_withoutdupl_norm_v01", "Shuttle_withoutdupl_norm_v02", "Shuttle_withoutdupl_norm_v03",
                   "Shuttle_withoutdupl_norm_v04", "Shuttle_withoutdupl_norm_v05", "Shuttle_withoutdupl_norm_v06",
                   "Shuttle_withoutdupl_norm_v07", "Shuttle_withoutdupl_norm_v08", "Shuttle_withoutdupl_norm_v09",
                   "Shuttle_withoutdupl_norm_v10", "Shuttle_withoutdupl_v01", "Shuttle_withoutdupl_v02",
                   "Shuttle_withoutdupl_v03", "Shuttle_withoutdupl_v04", "Shuttle_withoutdupl_v05",
                   "Shuttle_withoutdupl_v06", "Shuttle_withoutdupl_v07", "Shuttle_withoutdupl_v08",
                   "Shuttle_withoutdupl_v09", "Shuttle_withoutdupl_v10", "Waveform_withoutdupl_norm_v01",
                   "Waveform_withoutdupl_norm_v02", "Waveform_withoutdupl_norm_v03", "Waveform_withoutdupl_norm_v04",
                   "Waveform_withoutdupl_norm_v05", "Waveform_withoutdupl_norm_v06", "Waveform_withoutdupl_norm_v07",
                   "Waveform_withoutdupl_norm_v08", "Waveform_withoutdupl_norm_v09", "Waveform_withoutdupl_norm_v10",
                   "Waveform_withoutdupl_v01", "Waveform_withoutdupl_v02", "Waveform_withoutdupl_v03",
                   "Waveform_withoutdupl_v04", "Waveform_withoutdupl_v05", "Waveform_withoutdupl_v06",
                   "Waveform_withoutdupl_v07", "Waveform_withoutdupl_v08", "Waveform_withoutdupl_v09",
                   "Waveform_withoutdupl_v10", "WBC_norm_v01", "WBC_norm_v02", "WBC_norm_v03", "WBC_norm_v04",
                   "WBC_norm_v05", "WBC_norm_v06", "WBC_norm_v07", "WBC_norm_v08", "WBC_norm_v09", "WBC_norm_v10",
                   "WBC_v01", "WBC_v02", "WBC_v03", "WBC_v04", "WBC_v05", "WBC_v06", "WBC_v07", "WBC_v08", "WBC_v09",
                   "WBC_v10", "WBC_withoutdupl_norm_v01", "WBC_withoutdupl_norm_v02", "WBC_withoutdupl_norm_v03",
                   "WBC_withoutdupl_norm_v04", "WBC_withoutdupl_norm_v05", "WBC_withoutdupl_norm_v06",
                   "WBC_withoutdupl_norm_v07", "WBC_withoutdupl_norm_v08", "WBC_withoutdupl_norm_v09",
                   "WBC_withoutdupl_norm_v10", "WBC_withoutdupl_v01", "WBC_withoutdupl_v02", "WBC_withoutdupl_v03",
                   "WBC_withoutdupl_v04", "WBC_withoutdupl_v05", "WBC_withoutdupl_v06", "WBC_withoutdupl_v07",
                   "WBC_withoutdupl_v08", "WBC_withoutdupl_v09", "WBC_withoutdupl_v10", "WDBC_withoutdupl_norm_v01",
                   "WDBC_withoutdupl_norm_v02", "WDBC_withoutdupl_norm_v03", "WDBC_withoutdupl_norm_v04",
                   "WDBC_withoutdupl_norm_v05", "WDBC_withoutdupl_norm_v06", "WDBC_withoutdupl_norm_v07",
                   "WDBC_withoutdupl_norm_v08", "WDBC_withoutdupl_norm_v09", "WDBC_withoutdupl_norm_v10",
                   "WDBC_withoutdupl_v01", "WDBC_withoutdupl_v02", "WDBC_withoutdupl_v03", "WDBC_withoutdupl_v04",
                   "WDBC_withoutdupl_v05", "WDBC_withoutdupl_v06", "WDBC_withoutdupl_v07", "WDBC_withoutdupl_v08",
                   "WDBC_withoutdupl_v09", "WDBC_withoutdupl_v10", "WPBC_withoutdupl_norm"]

ELKI_SEMANTIC = ["Annthyroid_02_v01", "Annthyroid_02_v02", "Annthyroid_02_v03", "Annthyroid_02_v04",
                 "Annthyroid_02_v05", "Annthyroid_02_v06", "Annthyroid_02_v07", "Annthyroid_02_v08",
                 "Annthyroid_02_v09", "Annthyroid_02_v10", "Annthyroid_05_v01", "Annthyroid_05_v02",
                 "Annthyroid_05_v03", "Annthyroid_05_v04", "Annthyroid_05_v05", "Annthyroid_05_v06",
                 "Annthyroid_05_v07", "Annthyroid_05_v08", "Annthyroid_05_v09", "Annthyroid_05_v10", "Annthyroid_07",
                 "Annthyroid_norm_02_v01", "Annthyroid_norm_02_v02", "Annthyroid_norm_02_v03", "Annthyroid_norm_02_v04",
                 "Annthyroid_norm_02_v05", "Annthyroid_norm_02_v06", "Annthyroid_norm_02_v07", "Annthyroid_norm_02_v08",
                 "Annthyroid_norm_02_v09", "Annthyroid_norm_02_v10", "Annthyroid_norm_05_v01", "Annthyroid_norm_05_v02",
                 "Annthyroid_norm_05_v03", "Annthyroid_norm_05_v04", "Annthyroid_norm_05_v05", "Annthyroid_norm_05_v06",
                 "Annthyroid_norm_05_v07", "Annthyroid_norm_05_v08", "Annthyroid_norm_05_v09", "Annthyroid_norm_05_v10",
                 "Annthyroid_norm_07", "Annthyroid_withoutdupl_02_v01", "Annthyroid_withoutdupl_02_v02",
                 "Annthyroid_withoutdupl_02_v03", "Annthyroid_withoutdupl_02_v04", "Annthyroid_withoutdupl_02_v05",
                 "Annthyroid_withoutdupl_02_v06", "Annthyroid_withoutdupl_02_v07", "Annthyroid_withoutdupl_02_v08",
                 "Annthyroid_withoutdupl_02_v09", "Annthyroid_withoutdupl_02_v10", "Annthyroid_withoutdupl_05_v01",
                 "Annthyroid_withoutdupl_05_v02", "Annthyroid_withoutdupl_05_v03", "Annthyroid_withoutdupl_05_v04",
                 "Annthyroid_withoutdupl_05_v05", "Annthyroid_withoutdupl_05_v06", "Annthyroid_withoutdupl_05_v07",
                 "Annthyroid_withoutdupl_05_v08", "Annthyroid_withoutdupl_05_v09", "Annthyroid_withoutdupl_05_v10",
                 "Annthyroid_withoutdupl_07", "Annthyroid_withoutdupl_norm_02_v01",
                 "Annthyroid_withoutdupl_norm_02_v02", "Annthyroid_withoutdupl_norm_02_v03",
                 "Annthyroid_withoutdupl_norm_02_v04", "Annthyroid_withoutdupl_norm_02_v05",
                 "Annthyroid_withoutdupl_norm_02_v06", "Annthyroid_withoutdupl_norm_02_v07",
                 "Annthyroid_withoutdupl_norm_02_v08", "Annthyroid_withoutdupl_norm_02_v09",
                 "Annthyroid_withoutdupl_norm_02_v10", "Annthyroid_withoutdupl_norm_05_v01",
                 "Annthyroid_withoutdupl_norm_05_v02", "Annthyroid_withoutdupl_norm_05_v03",
                 "Annthyroid_withoutdupl_norm_05_v04", "Annthyroid_withoutdupl_norm_05_v05",
                 "Annthyroid_withoutdupl_norm_05_v06", "Annthyroid_withoutdupl_norm_05_v07",
                 "Annthyroid_withoutdupl_norm_05_v08", "Annthyroid_withoutdupl_norm_05_v09",
                 "Annthyroid_withoutdupl_norm_05_v10", "Annthyroid_withoutdupl_norm_07",
                 "Arrhythmia_withoutdupl_02_v01", "Arrhythmia_withoutdupl_02_v02", "Arrhythmia_withoutdupl_02_v03",
                 "Arrhythmia_withoutdupl_02_v04", "Arrhythmia_withoutdupl_02_v05", "Arrhythmia_withoutdupl_02_v06",
                 "Arrhythmia_withoutdupl_02_v07", "Arrhythmia_withoutdupl_02_v08", "Arrhythmia_withoutdupl_02_v09",
                 "Arrhythmia_withoutdupl_02_v10", "Arrhythmia_withoutdupl_05_v01", "Arrhythmia_withoutdupl_05_v02",
                 "Arrhythmia_withoutdupl_05_v03", "Arrhythmia_withoutdupl_05_v04", "Arrhythmia_withoutdupl_05_v05",
                 "Arrhythmia_withoutdupl_05_v06", "Arrhythmia_withoutdupl_05_v07", "Arrhythmia_withoutdupl_05_v08",
                 "Arrhythmia_withoutdupl_05_v09", "Arrhythmia_withoutdupl_05_v10", "Arrhythmia_withoutdupl_10_v01",
                 "Arrhythmia_withoutdupl_10_v02", "Arrhythmia_withoutdupl_10_v03", "Arrhythmia_withoutdupl_10_v04",
                 "Arrhythmia_withoutdupl_10_v05", "Arrhythmia_withoutdupl_10_v06", "Arrhythmia_withoutdupl_10_v07",
                 "Arrhythmia_withoutdupl_10_v08", "Arrhythmia_withoutdupl_10_v09", "Arrhythmia_withoutdupl_10_v10",
                 "Arrhythmia_withoutdupl_20_v01", "Arrhythmia_withoutdupl_20_v02", "Arrhythmia_withoutdupl_20_v03",
                 "Arrhythmia_withoutdupl_20_v04", "Arrhythmia_withoutdupl_20_v05", "Arrhythmia_withoutdupl_20_v06",
                 "Arrhythmia_withoutdupl_20_v07", "Arrhythmia_withoutdupl_20_v08", "Arrhythmia_withoutdupl_20_v09",
                 "Arrhythmia_withoutdupl_20_v10", "Arrhythmia_withoutdupl_46", "Arrhythmia_withoutdupl_norm_02_v01",
                 "Arrhythmia_withoutdupl_norm_02_v02", "Arrhythmia_withoutdupl_norm_02_v03",
                 "Arrhythmia_withoutdupl_norm_02_v04", "Arrhythmia_withoutdupl_norm_02_v05",
                 "Arrhythmia_withoutdupl_norm_02_v06", "Arrhythmia_withoutdupl_norm_02_v07",
                 "Arrhythmia_withoutdupl_norm_02_v08", "Arrhythmia_withoutdupl_norm_02_v09",
                 "Arrhythmia_withoutdupl_norm_02_v10", "Arrhythmia_withoutdupl_norm_05_v01",
                 "Arrhythmia_withoutdupl_norm_05_v02", "Arrhythmia_withoutdupl_norm_05_v03",
                 "Arrhythmia_withoutdupl_norm_05_v04", "Arrhythmia_withoutdupl_norm_05_v05",
                 "Arrhythmia_withoutdupl_norm_05_v06", "Arrhythmia_withoutdupl_norm_05_v07",
                 "Arrhythmia_withoutdupl_norm_05_v08", "Arrhythmia_withoutdupl_norm_05_v09",
                 "Arrhythmia_withoutdupl_norm_05_v10", "Arrhythmia_withoutdupl_norm_10_v01",
                 "Arrhythmia_withoutdupl_norm_10_v02", "Arrhythmia_withoutdupl_norm_10_v03",
                 "Arrhythmia_withoutdupl_norm_10_v04", "Arrhythmia_withoutdupl_norm_10_v05",
                 "Arrhythmia_withoutdupl_norm_10_v06", "Arrhythmia_withoutdupl_norm_10_v07",
                 "Arrhythmia_withoutdupl_norm_10_v08", "Arrhythmia_withoutdupl_norm_10_v09",
                 "Arrhythmia_withoutdupl_norm_10_v10", "Arrhythmia_withoutdupl_norm_20_v01",
                 "Arrhythmia_withoutdupl_norm_20_v02", "Arrhythmia_withoutdupl_norm_20_v03",
                 "Arrhythmia_withoutdupl_norm_20_v04", "Arrhythmia_withoutdupl_norm_20_v05",
                 "Arrhythmia_withoutdupl_norm_20_v06", "Arrhythmia_withoutdupl_norm_20_v07",
                 "Arrhythmia_withoutdupl_norm_20_v08", "Arrhythmia_withoutdupl_norm_20_v09",
                 "Arrhythmia_withoutdupl_norm_20_v10", "Arrhythmia_withoutdupl_norm_46", "Cardiotocography_02_v01",
                 "Cardiotocography_02_v02", "Cardiotocography_02_v03", "Cardiotocography_02_v04",
                 "Cardiotocography_02_v05", "Cardiotocography_02_v06", "Cardiotocography_02_v07",
                 "Cardiotocography_02_v08", "Cardiotocography_02_v09", "Cardiotocography_02_v10",
                 "Cardiotocography_05_v01", "Cardiotocography_05_v02", "Cardiotocography_05_v03",
                 "Cardiotocography_05_v04", "Cardiotocography_05_v05", "Cardiotocography_05_v06",
                 "Cardiotocography_05_v07", "Cardiotocography_05_v08", "Cardiotocography_05_v09",
                 "Cardiotocography_05_v10", "Cardiotocography_10_v01", "Cardiotocography_10_v02",
                 "Cardiotocography_10_v03", "Cardiotocography_10_v04", "Cardiotocography_10_v05",
                 "Cardiotocography_10_v06", "Cardiotocography_10_v07", "Cardiotocography_10_v08",
                 "Cardiotocography_10_v09", "Cardiotocography_10_v10", "Cardiotocography_20_v01",
                 "Cardiotocography_20_v02", "Cardiotocography_20_v03", "Cardiotocography_20_v04",
                 "Cardiotocography_20_v05", "Cardiotocography_20_v06", "Cardiotocography_20_v07",
                 "Cardiotocography_20_v08", "Cardiotocography_20_v09", "Cardiotocography_20_v10", "Cardiotocography_22",
                 "Cardiotocography_norm_02_v01", "Cardiotocography_norm_02_v02", "Cardiotocography_norm_02_v03",
                 "Cardiotocography_norm_02_v04", "Cardiotocography_norm_02_v05", "Cardiotocography_norm_02_v06",
                 "Cardiotocography_norm_02_v07", "Cardiotocography_norm_02_v08", "Cardiotocography_norm_02_v09",
                 "Cardiotocography_norm_02_v10", "Cardiotocography_norm_05_v01", "Cardiotocography_norm_05_v02",
                 "Cardiotocography_norm_05_v03", "Cardiotocography_norm_05_v04", "Cardiotocography_norm_05_v05",
                 "Cardiotocography_norm_05_v06", "Cardiotocography_norm_05_v07", "Cardiotocography_norm_05_v08",
                 "Cardiotocography_norm_05_v09", "Cardiotocography_norm_05_v10", "Cardiotocography_norm_10_v01",
                 "Cardiotocography_norm_10_v02", "Cardiotocography_norm_10_v03", "Cardiotocography_norm_10_v04",
                 "Cardiotocography_norm_10_v05", "Cardiotocography_norm_10_v06", "Cardiotocography_norm_10_v07",
                 "Cardiotocography_norm_10_v08", "Cardiotocography_norm_10_v09", "Cardiotocography_norm_10_v10",
                 "Cardiotocography_norm_20_v01", "Cardiotocography_norm_20_v02", "Cardiotocography_norm_20_v03",
                 "Cardiotocography_norm_20_v04", "Cardiotocography_norm_20_v05", "Cardiotocography_norm_20_v06",
                 "Cardiotocography_norm_20_v07", "Cardiotocography_norm_20_v08", "Cardiotocography_norm_20_v09",
                 "Cardiotocography_norm_20_v10", "Cardiotocography_norm_22", "Cardiotocography_withoutdupl_02_v01",
                 "Cardiotocography_withoutdupl_02_v02", "Cardiotocography_withoutdupl_02_v03",
                 "Cardiotocography_withoutdupl_02_v04", "Cardiotocography_withoutdupl_02_v05",
                 "Cardiotocography_withoutdupl_02_v06", "Cardiotocography_withoutdupl_02_v07",
                 "Cardiotocography_withoutdupl_02_v08", "Cardiotocography_withoutdupl_02_v09",
                 "Cardiotocography_withoutdupl_02_v10", "Cardiotocography_withoutdupl_05_v01",
                 "Cardiotocography_withoutdupl_05_v02", "Cardiotocography_withoutdupl_05_v03",
                 "Cardiotocography_withoutdupl_05_v04", "Cardiotocography_withoutdupl_05_v05",
                 "Cardiotocography_withoutdupl_05_v06", "Cardiotocography_withoutdupl_05_v07",
                 "Cardiotocography_withoutdupl_05_v08", "Cardiotocography_withoutdupl_05_v09",
                 "Cardiotocography_withoutdupl_05_v10", "Cardiotocography_withoutdupl_10_v01",
                 "Cardiotocography_withoutdupl_10_v02", "Cardiotocography_withoutdupl_10_v03",
                 "Cardiotocography_withoutdupl_10_v04", "Cardiotocography_withoutdupl_10_v05",
                 "Cardiotocography_withoutdupl_10_v06", "Cardiotocography_withoutdupl_10_v07",
                 "Cardiotocography_withoutdupl_10_v08", "Cardiotocography_withoutdupl_10_v09",
                 "Cardiotocography_withoutdupl_10_v10", "Cardiotocography_withoutdupl_20_v01",
                 "Cardiotocography_withoutdupl_20_v02", "Cardiotocography_withoutdupl_20_v03",
                 "Cardiotocography_withoutdupl_20_v04", "Cardiotocography_withoutdupl_20_v05",
                 "Cardiotocography_withoutdupl_20_v06", "Cardiotocography_withoutdupl_20_v07",
                 "Cardiotocography_withoutdupl_20_v08", "Cardiotocography_withoutdupl_20_v09",
                 "Cardiotocography_withoutdupl_20_v10", "Cardiotocography_withoutdupl_22",
                 "Cardiotocography_withoutdupl_norm_02_v01", "Cardiotocography_withoutdupl_norm_02_v02",
                 "Cardiotocography_withoutdupl_norm_02_v03", "Cardiotocography_withoutdupl_norm_02_v04",
                 "Cardiotocography_withoutdupl_norm_02_v05", "Cardiotocography_withoutdupl_norm_02_v06",
                 "Cardiotocography_withoutdupl_norm_02_v07", "Cardiotocography_withoutdupl_norm_02_v08",
                 "Cardiotocography_withoutdupl_norm_02_v09", "Cardiotocography_withoutdupl_norm_02_v10",
                 "Cardiotocography_withoutdupl_norm_05_v01", "Cardiotocography_withoutdupl_norm_05_v02",
                 "Cardiotocography_withoutdupl_norm_05_v03", "Cardiotocography_withoutdupl_norm_05_v04",
                 "Cardiotocography_withoutdupl_norm_05_v05", "Cardiotocography_withoutdupl_norm_05_v06",
                 "Cardiotocography_withoutdupl_norm_05_v07", "Cardiotocography_withoutdupl_norm_05_v08",
                 "Cardiotocography_withoutdupl_norm_05_v09", "Cardiotocography_withoutdupl_norm_05_v10",
                 "Cardiotocography_withoutdupl_norm_10_v01", "Cardiotocography_withoutdupl_norm_10_v02",
                 "Cardiotocography_withoutdupl_norm_10_v03", "Cardiotocography_withoutdupl_norm_10_v04",
                 "Cardiotocography_withoutdupl_norm_10_v05", "Cardiotocography_withoutdupl_norm_10_v06",
                 "Cardiotocography_withoutdupl_norm_10_v07", "Cardiotocography_withoutdupl_norm_10_v08",
                 "Cardiotocography_withoutdupl_norm_10_v09", "Cardiotocography_withoutdupl_norm_10_v10",
                 "Cardiotocography_withoutdupl_norm_20_v01", "Cardiotocography_withoutdupl_norm_20_v02",
                 "Cardiotocography_withoutdupl_norm_20_v03", "Cardiotocography_withoutdupl_norm_20_v04",
                 "Cardiotocography_withoutdupl_norm_20_v05", "Cardiotocography_withoutdupl_norm_20_v06",
                 "Cardiotocography_withoutdupl_norm_20_v07", "Cardiotocography_withoutdupl_norm_20_v08",
                 "Cardiotocography_withoutdupl_norm_20_v09", "Cardiotocography_withoutdupl_norm_20_v10",
                 "Cardiotocography_withoutdupl_norm_22", "HeartDisease_withoutdupl_02_v01",
                 "HeartDisease_withoutdupl_02_v02", "HeartDisease_withoutdupl_02_v03",
                 "HeartDisease_withoutdupl_02_v04", "HeartDisease_withoutdupl_02_v05",
                 "HeartDisease_withoutdupl_02_v06", "HeartDisease_withoutdupl_02_v07",
                 "HeartDisease_withoutdupl_02_v08", "HeartDisease_withoutdupl_02_v09",
                 "HeartDisease_withoutdupl_02_v10", "HeartDisease_withoutdupl_05_v01",
                 "HeartDisease_withoutdupl_05_v02", "HeartDisease_withoutdupl_05_v03",
                 "HeartDisease_withoutdupl_05_v04", "HeartDisease_withoutdupl_05_v05",
                 "HeartDisease_withoutdupl_05_v06", "HeartDisease_withoutdupl_05_v07",
                 "HeartDisease_withoutdupl_05_v08", "HeartDisease_withoutdupl_05_v09",
                 "HeartDisease_withoutdupl_05_v10", "HeartDisease_withoutdupl_10_v01",
                 "HeartDisease_withoutdupl_10_v02", "HeartDisease_withoutdupl_10_v03",
                 "HeartDisease_withoutdupl_10_v04", "HeartDisease_withoutdupl_10_v05",
                 "HeartDisease_withoutdupl_10_v06", "HeartDisease_withoutdupl_10_v07",
                 "HeartDisease_withoutdupl_10_v08", "HeartDisease_withoutdupl_10_v09",
                 "HeartDisease_withoutdupl_10_v10", "HeartDisease_withoutdupl_20_v01",
                 "HeartDisease_withoutdupl_20_v02", "HeartDisease_withoutdupl_20_v03",
                 "HeartDisease_withoutdupl_20_v04", "HeartDisease_withoutdupl_20_v05",
                 "HeartDisease_withoutdupl_20_v06", "HeartDisease_withoutdupl_20_v07",
                 "HeartDisease_withoutdupl_20_v08", "HeartDisease_withoutdupl_20_v09",
                 "HeartDisease_withoutdupl_20_v10", "HeartDisease_withoutdupl_44",
                 "HeartDisease_withoutdupl_norm_02_v01", "HeartDisease_withoutdupl_norm_02_v02",
                 "HeartDisease_withoutdupl_norm_02_v03", "HeartDisease_withoutdupl_norm_02_v04",
                 "HeartDisease_withoutdupl_norm_02_v05", "HeartDisease_withoutdupl_norm_02_v06",
                 "HeartDisease_withoutdupl_norm_02_v07", "HeartDisease_withoutdupl_norm_02_v08",
                 "HeartDisease_withoutdupl_norm_02_v09", "HeartDisease_withoutdupl_norm_02_v10",
                 "HeartDisease_withoutdupl_norm_05_v01", "HeartDisease_withoutdupl_norm_05_v02",
                 "HeartDisease_withoutdupl_norm_05_v03", "HeartDisease_withoutdupl_norm_05_v04",
                 "HeartDisease_withoutdupl_norm_05_v05", "HeartDisease_withoutdupl_norm_05_v06",
                 "HeartDisease_withoutdupl_norm_05_v07", "HeartDisease_withoutdupl_norm_05_v08",
                 "HeartDisease_withoutdupl_norm_05_v09", "HeartDisease_withoutdupl_norm_05_v10",
                 "HeartDisease_withoutdupl_norm_10_v01", "HeartDisease_withoutdupl_norm_10_v02",
                 "HeartDisease_withoutdupl_norm_10_v03", "HeartDisease_withoutdupl_norm_10_v04",
                 "HeartDisease_withoutdupl_norm_10_v05", "HeartDisease_withoutdupl_norm_10_v06",
                 "HeartDisease_withoutdupl_norm_10_v07", "HeartDisease_withoutdupl_norm_10_v08",
                 "HeartDisease_withoutdupl_norm_10_v09", "HeartDisease_withoutdupl_norm_10_v10",
                 "HeartDisease_withoutdupl_norm_20_v01", "HeartDisease_withoutdupl_norm_20_v02",
                 "HeartDisease_withoutdupl_norm_20_v03", "HeartDisease_withoutdupl_norm_20_v04",
                 "HeartDisease_withoutdupl_norm_20_v05", "HeartDisease_withoutdupl_norm_20_v06",
                 "HeartDisease_withoutdupl_norm_20_v07", "HeartDisease_withoutdupl_norm_20_v08",
                 "HeartDisease_withoutdupl_norm_20_v09", "HeartDisease_withoutdupl_norm_20_v10",
                 "HeartDisease_withoutdupl_norm_44", "Hepatitis_withoutdupl_05_v01", "Hepatitis_withoutdupl_05_v02",
                 "Hepatitis_withoutdupl_05_v03", "Hepatitis_withoutdupl_05_v04", "Hepatitis_withoutdupl_05_v05",
                 "Hepatitis_withoutdupl_05_v06", "Hepatitis_withoutdupl_05_v07", "Hepatitis_withoutdupl_05_v08",
                 "Hepatitis_withoutdupl_05_v09", "Hepatitis_withoutdupl_05_v10", "Hepatitis_withoutdupl_10_v01",
                 "Hepatitis_withoutdupl_10_v02", "Hepatitis_withoutdupl_10_v03", "Hepatitis_withoutdupl_10_v04",
                 "Hepatitis_withoutdupl_10_v05", "Hepatitis_withoutdupl_10_v06", "Hepatitis_withoutdupl_10_v07",
                 "Hepatitis_withoutdupl_10_v08", "Hepatitis_withoutdupl_10_v09", "Hepatitis_withoutdupl_10_v10",
                 "Hepatitis_withoutdupl_16", "Hepatitis_withoutdupl_norm_05_v01", "Hepatitis_withoutdupl_norm_05_v02",
                 "Hepatitis_withoutdupl_norm_05_v03", "Hepatitis_withoutdupl_norm_05_v04",
                 "Hepatitis_withoutdupl_norm_05_v05", "Hepatitis_withoutdupl_norm_05_v06",
                 "Hepatitis_withoutdupl_norm_05_v07", "Hepatitis_withoutdupl_norm_05_v08",
                 "Hepatitis_withoutdupl_norm_05_v09", "Hepatitis_withoutdupl_norm_05_v10",
                 "Hepatitis_withoutdupl_norm_10_v01", "Hepatitis_withoutdupl_norm_10_v02",
                 "Hepatitis_withoutdupl_norm_10_v03", "Hepatitis_withoutdupl_norm_10_v04",
                 "Hepatitis_withoutdupl_norm_10_v05", "Hepatitis_withoutdupl_norm_10_v06",
                 "Hepatitis_withoutdupl_norm_10_v07", "Hepatitis_withoutdupl_norm_10_v08",
                 "Hepatitis_withoutdupl_norm_10_v09", "Hepatitis_withoutdupl_norm_10_v10",
                 "Hepatitis_withoutdupl_norm_16", "InternetAds_norm_02_v01", "InternetAds_norm_02_v02",
                 "InternetAds_norm_02_v03", "InternetAds_norm_02_v04", "InternetAds_norm_02_v05",
                 "InternetAds_norm_02_v06", "InternetAds_norm_02_v07", "InternetAds_norm_02_v08",
                 "InternetAds_norm_02_v09", "InternetAds_norm_02_v10", "InternetAds_norm_05_v01",
                 "InternetAds_norm_05_v02", "InternetAds_norm_05_v03", "InternetAds_norm_05_v04",
                 "InternetAds_norm_05_v05", "InternetAds_norm_05_v06", "InternetAds_norm_05_v07",
                 "InternetAds_norm_05_v08", "InternetAds_norm_05_v09", "InternetAds_norm_05_v10",
                 "InternetAds_norm_10_v01", "InternetAds_norm_10_v02", "InternetAds_norm_10_v03",
                 "InternetAds_norm_10_v04", "InternetAds_norm_10_v05", "InternetAds_norm_10_v06",
                 "InternetAds_norm_10_v07", "InternetAds_norm_10_v08", "InternetAds_norm_10_v09",
                 "InternetAds_norm_10_v10", "InternetAds_norm_19", "InternetAds_withoutdupl_norm_02_v01",
                 "InternetAds_withoutdupl_norm_02_v02", "InternetAds_withoutdupl_norm_02_v03",
                 "InternetAds_withoutdupl_norm_02_v04", "InternetAds_withoutdupl_norm_02_v05",
                 "InternetAds_withoutdupl_norm_02_v06", "InternetAds_withoutdupl_norm_02_v07",
                 "InternetAds_withoutdupl_norm_02_v08", "InternetAds_withoutdupl_norm_02_v09",
                 "InternetAds_withoutdupl_norm_02_v10", "InternetAds_withoutdupl_norm_05_v01",
                 "InternetAds_withoutdupl_norm_05_v02", "InternetAds_withoutdupl_norm_05_v03",
                 "InternetAds_withoutdupl_norm_05_v04", "InternetAds_withoutdupl_norm_05_v05",
                 "InternetAds_withoutdupl_norm_05_v06", "InternetAds_withoutdupl_norm_05_v07",
                 "InternetAds_withoutdupl_norm_05_v08", "InternetAds_withoutdupl_norm_05_v09",
                 "InternetAds_withoutdupl_norm_05_v10", "InternetAds_withoutdupl_norm_10_v01",
                 "InternetAds_withoutdupl_norm_10_v02", "InternetAds_withoutdupl_norm_10_v03",
                 "InternetAds_withoutdupl_norm_10_v04", "InternetAds_withoutdupl_norm_10_v05",
                 "InternetAds_withoutdupl_norm_10_v06", "InternetAds_withoutdupl_norm_10_v07",
                 "InternetAds_withoutdupl_norm_10_v08", "InternetAds_withoutdupl_norm_10_v09",
                 "InternetAds_withoutdupl_norm_10_v10", "InternetAds_withoutdupl_norm_19", "PageBlocks_02_v01",
                 "PageBlocks_02_v02", "PageBlocks_02_v03", "PageBlocks_02_v04", "PageBlocks_02_v05",
                 "PageBlocks_02_v06", "PageBlocks_02_v07", "PageBlocks_02_v08", "PageBlocks_02_v09",
                 "PageBlocks_02_v10", "PageBlocks_05_v01", "PageBlocks_05_v02", "PageBlocks_05_v03",
                 "PageBlocks_05_v04", "PageBlocks_05_v05", "PageBlocks_05_v06", "PageBlocks_05_v07",
                 "PageBlocks_05_v08", "PageBlocks_05_v09", "PageBlocks_05_v10", "PageBlocks_10",
                 "PageBlocks_norm_02_v01", "PageBlocks_norm_02_v02", "PageBlocks_norm_02_v03", "PageBlocks_norm_02_v04",
                 "PageBlocks_norm_02_v05", "PageBlocks_norm_02_v06", "PageBlocks_norm_02_v07", "PageBlocks_norm_02_v08",
                 "PageBlocks_norm_02_v09", "PageBlocks_norm_02_v10", "PageBlocks_norm_05_v01", "PageBlocks_norm_05_v02",
                 "PageBlocks_norm_05_v03", "PageBlocks_norm_05_v04", "PageBlocks_norm_05_v05", "PageBlocks_norm_05_v06",
                 "PageBlocks_norm_05_v07", "PageBlocks_norm_05_v08", "PageBlocks_norm_05_v09", "PageBlocks_norm_05_v10",
                 "PageBlocks_norm_10", "PageBlocks_withoutdupl_02_v01", "PageBlocks_withoutdupl_02_v02",
                 "PageBlocks_withoutdupl_02_v03", "PageBlocks_withoutdupl_02_v04", "PageBlocks_withoutdupl_02_v05",
                 "PageBlocks_withoutdupl_02_v06", "PageBlocks_withoutdupl_02_v07", "PageBlocks_withoutdupl_02_v08",
                 "PageBlocks_withoutdupl_02_v09", "PageBlocks_withoutdupl_02_v10", "PageBlocks_withoutdupl_05_v01",
                 "PageBlocks_withoutdupl_05_v02", "PageBlocks_withoutdupl_05_v03", "PageBlocks_withoutdupl_05_v04",
                 "PageBlocks_withoutdupl_05_v05", "PageBlocks_withoutdupl_05_v06", "PageBlocks_withoutdupl_05_v07",
                 "PageBlocks_withoutdupl_05_v08", "PageBlocks_withoutdupl_05_v09", "PageBlocks_withoutdupl_05_v10",
                 "PageBlocks_withoutdupl_09", "PageBlocks_withoutdupl_norm_02_v01",
                 "PageBlocks_withoutdupl_norm_02_v02", "PageBlocks_withoutdupl_norm_02_v03",
                 "PageBlocks_withoutdupl_norm_02_v04", "PageBlocks_withoutdupl_norm_02_v05",
                 "PageBlocks_withoutdupl_norm_02_v06", "PageBlocks_withoutdupl_norm_02_v07",
                 "PageBlocks_withoutdupl_norm_02_v08", "PageBlocks_withoutdupl_norm_02_v09",
                 "PageBlocks_withoutdupl_norm_02_v10", "PageBlocks_withoutdupl_norm_05_v01",
                 "PageBlocks_withoutdupl_norm_05_v02", "PageBlocks_withoutdupl_norm_05_v03",
                 "PageBlocks_withoutdupl_norm_05_v04", "PageBlocks_withoutdupl_norm_05_v05",
                 "PageBlocks_withoutdupl_norm_05_v06", "PageBlocks_withoutdupl_norm_05_v07",
                 "PageBlocks_withoutdupl_norm_05_v08", "PageBlocks_withoutdupl_norm_05_v09",
                 "PageBlocks_withoutdupl_norm_05_v10", "PageBlocks_withoutdupl_norm_09", "Parkinson_withoutdupl_05_v01",
                 "Parkinson_withoutdupl_05_v02", "Parkinson_withoutdupl_05_v03", "Parkinson_withoutdupl_05_v04",
                 "Parkinson_withoutdupl_05_v05", "Parkinson_withoutdupl_05_v06", "Parkinson_withoutdupl_05_v07",
                 "Parkinson_withoutdupl_05_v08", "Parkinson_withoutdupl_05_v09", "Parkinson_withoutdupl_05_v10",
                 "Parkinson_withoutdupl_10_v01", "Parkinson_withoutdupl_10_v02", "Parkinson_withoutdupl_10_v03",
                 "Parkinson_withoutdupl_10_v04", "Parkinson_withoutdupl_10_v05", "Parkinson_withoutdupl_10_v06",
                 "Parkinson_withoutdupl_10_v07", "Parkinson_withoutdupl_10_v08", "Parkinson_withoutdupl_10_v09",
                 "Parkinson_withoutdupl_10_v10", "Parkinson_withoutdupl_20_v01", "Parkinson_withoutdupl_20_v02",
                 "Parkinson_withoutdupl_20_v03", "Parkinson_withoutdupl_20_v04", "Parkinson_withoutdupl_20_v05",
                 "Parkinson_withoutdupl_20_v06", "Parkinson_withoutdupl_20_v07", "Parkinson_withoutdupl_20_v08",
                 "Parkinson_withoutdupl_20_v09", "Parkinson_withoutdupl_20_v10", "Parkinson_withoutdupl_75",
                 "Parkinson_withoutdupl_norm_05_v01", "Parkinson_withoutdupl_norm_05_v02",
                 "Parkinson_withoutdupl_norm_05_v03", "Parkinson_withoutdupl_norm_05_v04",
                 "Parkinson_withoutdupl_norm_05_v05", "Parkinson_withoutdupl_norm_05_v06",
                 "Parkinson_withoutdupl_norm_05_v07", "Parkinson_withoutdupl_norm_05_v08",
                 "Parkinson_withoutdupl_norm_05_v09", "Parkinson_withoutdupl_norm_05_v10",
                 "Parkinson_withoutdupl_norm_10_v01", "Parkinson_withoutdupl_norm_10_v02",
                 "Parkinson_withoutdupl_norm_10_v03", "Parkinson_withoutdupl_norm_10_v04",
                 "Parkinson_withoutdupl_norm_10_v05", "Parkinson_withoutdupl_norm_10_v06",
                 "Parkinson_withoutdupl_norm_10_v07", "Parkinson_withoutdupl_norm_10_v08",
                 "Parkinson_withoutdupl_norm_10_v09", "Parkinson_withoutdupl_norm_10_v10",
                 "Parkinson_withoutdupl_norm_20_v01", "Parkinson_withoutdupl_norm_20_v02",
                 "Parkinson_withoutdupl_norm_20_v03", "Parkinson_withoutdupl_norm_20_v04",
                 "Parkinson_withoutdupl_norm_20_v05", "Parkinson_withoutdupl_norm_20_v06",
                 "Parkinson_withoutdupl_norm_20_v07", "Parkinson_withoutdupl_norm_20_v08",
                 "Parkinson_withoutdupl_norm_20_v09", "Parkinson_withoutdupl_norm_20_v10",
                 "Parkinson_withoutdupl_norm_75", "Pima_withoutdupl_02_v01", "Pima_withoutdupl_02_v02",
                 "Pima_withoutdupl_02_v03", "Pima_withoutdupl_02_v04", "Pima_withoutdupl_02_v05",
                 "Pima_withoutdupl_02_v06", "Pima_withoutdupl_02_v07", "Pima_withoutdupl_02_v08",
                 "Pima_withoutdupl_02_v09", "Pima_withoutdupl_02_v10", "Pima_withoutdupl_05_v01",
                 "Pima_withoutdupl_05_v02", "Pima_withoutdupl_05_v03", "Pima_withoutdupl_05_v04",
                 "Pima_withoutdupl_05_v05", "Pima_withoutdupl_05_v06", "Pima_withoutdupl_05_v07",
                 "Pima_withoutdupl_05_v08", "Pima_withoutdupl_05_v09", "Pima_withoutdupl_05_v10",
                 "Pima_withoutdupl_10_v01", "Pima_withoutdupl_10_v02", "Pima_withoutdupl_10_v03",
                 "Pima_withoutdupl_10_v04", "Pima_withoutdupl_10_v05", "Pima_withoutdupl_10_v06",
                 "Pima_withoutdupl_10_v07", "Pima_withoutdupl_10_v08", "Pima_withoutdupl_10_v09",
                 "Pima_withoutdupl_10_v10", "Pima_withoutdupl_20_v01", "Pima_withoutdupl_20_v02",
                 "Pima_withoutdupl_20_v03", "Pima_withoutdupl_20_v04", "Pima_withoutdupl_20_v05",
                 "Pima_withoutdupl_20_v06", "Pima_withoutdupl_20_v07", "Pima_withoutdupl_20_v08",
                 "Pima_withoutdupl_20_v09", "Pima_withoutdupl_20_v10", "Pima_withoutdupl_35",
                 "Pima_withoutdupl_norm_02_v01", "Pima_withoutdupl_norm_02_v02", "Pima_withoutdupl_norm_02_v03",
                 "Pima_withoutdupl_norm_02_v04", "Pima_withoutdupl_norm_02_v05", "Pima_withoutdupl_norm_02_v06",
                 "Pima_withoutdupl_norm_02_v07", "Pima_withoutdupl_norm_02_v08", "Pima_withoutdupl_norm_02_v09",
                 "Pima_withoutdupl_norm_02_v10", "Pima_withoutdupl_norm_05_v01", "Pima_withoutdupl_norm_05_v02",
                 "Pima_withoutdupl_norm_05_v03", "Pima_withoutdupl_norm_05_v04", "Pima_withoutdupl_norm_05_v05",
                 "Pima_withoutdupl_norm_05_v06", "Pima_withoutdupl_norm_05_v07", "Pima_withoutdupl_norm_05_v08",
                 "Pima_withoutdupl_norm_05_v09", "Pima_withoutdupl_norm_05_v10", "Pima_withoutdupl_norm_10_v01",
                 "Pima_withoutdupl_norm_10_v02", "Pima_withoutdupl_norm_10_v03", "Pima_withoutdupl_norm_10_v04",
                 "Pima_withoutdupl_norm_10_v05", "Pima_withoutdupl_norm_10_v06", "Pima_withoutdupl_norm_10_v07",
                 "Pima_withoutdupl_norm_10_v08", "Pima_withoutdupl_norm_10_v09", "Pima_withoutdupl_norm_10_v10",
                 "Pima_withoutdupl_norm_20_v01", "Pima_withoutdupl_norm_20_v02", "Pima_withoutdupl_norm_20_v03",
                 "Pima_withoutdupl_norm_20_v04", "Pima_withoutdupl_norm_20_v05", "Pima_withoutdupl_norm_20_v06",
                 "Pima_withoutdupl_norm_20_v07", "Pima_withoutdupl_norm_20_v08", "Pima_withoutdupl_norm_20_v09",
                 "Pima_withoutdupl_norm_20_v10", "Pima_withoutdupl_norm_35", "SpamBase_02_v01", "SpamBase_02_v02",
                 "SpamBase_02_v03", "SpamBase_02_v04", "SpamBase_02_v05", "SpamBase_02_v06", "SpamBase_02_v07",
                 "SpamBase_02_v08", "SpamBase_02_v09", "SpamBase_02_v10", "SpamBase_05_v01", "SpamBase_05_v02",
                 "SpamBase_05_v03", "SpamBase_05_v04", "SpamBase_05_v05", "SpamBase_05_v06", "SpamBase_05_v07",
                 "SpamBase_05_v08", "SpamBase_05_v09", "SpamBase_05_v10", "SpamBase_10_v01", "SpamBase_10_v02",
                 "SpamBase_10_v03", "SpamBase_10_v04", "SpamBase_10_v05", "SpamBase_10_v06", "SpamBase_10_v07",
                 "SpamBase_10_v08", "SpamBase_10_v09", "SpamBase_10_v10", "SpamBase_20_v01", "SpamBase_20_v02",
                 "SpamBase_20_v03", "SpamBase_20_v04", "SpamBase_20_v05", "SpamBase_20_v06", "SpamBase_20_v07",
                 "SpamBase_20_v08", "SpamBase_20_v09", "SpamBase_20_v10", "SpamBase_39", "SpamBase_norm_02_v01",
                 "SpamBase_norm_02_v02", "SpamBase_norm_02_v03", "SpamBase_norm_02_v04", "SpamBase_norm_02_v05",
                 "SpamBase_norm_02_v06", "SpamBase_norm_02_v07", "SpamBase_norm_02_v08", "SpamBase_norm_02_v09",
                 "SpamBase_norm_02_v10", "SpamBase_norm_05_v01", "SpamBase_norm_05_v02", "SpamBase_norm_05_v03",
                 "SpamBase_norm_05_v04", "SpamBase_norm_05_v05", "SpamBase_norm_05_v06", "SpamBase_norm_05_v07",
                 "SpamBase_norm_05_v08", "SpamBase_norm_05_v09", "SpamBase_norm_05_v10", "SpamBase_norm_10_v01",
                 "SpamBase_norm_10_v02", "SpamBase_norm_10_v03", "SpamBase_norm_10_v04", "SpamBase_norm_10_v05",
                 "SpamBase_norm_10_v06", "SpamBase_norm_10_v07", "SpamBase_norm_10_v08", "SpamBase_norm_10_v09",
                 "SpamBase_norm_10_v10", "SpamBase_norm_20_v01", "SpamBase_norm_20_v02", "SpamBase_norm_20_v03",
                 "SpamBase_norm_20_v04", "SpamBase_norm_20_v05", "SpamBase_norm_20_v06", "SpamBase_norm_20_v07",
                 "SpamBase_norm_20_v08", "SpamBase_norm_20_v09", "SpamBase_norm_20_v10", "SpamBase_norm_39",
                 "SpamBase_withoutdupl_02_v01", "SpamBase_withoutdupl_02_v02", "SpamBase_withoutdupl_02_v03",
                 "SpamBase_withoutdupl_02_v04", "SpamBase_withoutdupl_02_v05", "SpamBase_withoutdupl_02_v06",
                 "SpamBase_withoutdupl_02_v07", "SpamBase_withoutdupl_02_v08", "SpamBase_withoutdupl_02_v09",
                 "SpamBase_withoutdupl_02_v10", "SpamBase_withoutdupl_05_v01", "SpamBase_withoutdupl_05_v02",
                 "SpamBase_withoutdupl_05_v03", "SpamBase_withoutdupl_05_v04", "SpamBase_withoutdupl_05_v05",
                 "SpamBase_withoutdupl_05_v06", "SpamBase_withoutdupl_05_v07", "SpamBase_withoutdupl_05_v08",
                 "SpamBase_withoutdupl_05_v09", "SpamBase_withoutdupl_05_v10", "SpamBase_withoutdupl_10_v01",
                 "SpamBase_withoutdupl_10_v02", "SpamBase_withoutdupl_10_v03", "SpamBase_withoutdupl_10_v04",
                 "SpamBase_withoutdupl_10_v05", "SpamBase_withoutdupl_10_v06", "SpamBase_withoutdupl_10_v07",
                 "SpamBase_withoutdupl_10_v08", "SpamBase_withoutdupl_10_v09", "SpamBase_withoutdupl_10_v10",
                 "SpamBase_withoutdupl_20_v01", "SpamBase_withoutdupl_20_v02", "SpamBase_withoutdupl_20_v03",
                 "SpamBase_withoutdupl_20_v04", "SpamBase_withoutdupl_20_v05", "SpamBase_withoutdupl_20_v06",
                 "SpamBase_withoutdupl_20_v07", "SpamBase_withoutdupl_20_v08", "SpamBase_withoutdupl_20_v09",
                 "SpamBase_withoutdupl_20_v10", "SpamBase_withoutdupl_40", "SpamBase_withoutdupl_norm_02_v01",
                 "SpamBase_withoutdupl_norm_02_v02", "SpamBase_withoutdupl_norm_02_v03",
                 "SpamBase_withoutdupl_norm_02_v04", "SpamBase_withoutdupl_norm_02_v05",
                 "SpamBase_withoutdupl_norm_02_v06", "SpamBase_withoutdupl_norm_02_v07",
                 "SpamBase_withoutdupl_norm_02_v08", "SpamBase_withoutdupl_norm_02_v09",
                 "SpamBase_withoutdupl_norm_02_v10", "SpamBase_withoutdupl_norm_05_v01",
                 "SpamBase_withoutdupl_norm_05_v02", "SpamBase_withoutdupl_norm_05_v03",
                 "SpamBase_withoutdupl_norm_05_v04", "SpamBase_withoutdupl_norm_05_v05",
                 "SpamBase_withoutdupl_norm_05_v06", "SpamBase_withoutdupl_norm_05_v07",
                 "SpamBase_withoutdupl_norm_05_v08", "SpamBase_withoutdupl_norm_05_v09",
                 "SpamBase_withoutdupl_norm_05_v10", "SpamBase_withoutdupl_norm_10_v01",
                 "SpamBase_withoutdupl_norm_10_v02", "SpamBase_withoutdupl_norm_10_v03",
                 "SpamBase_withoutdupl_norm_10_v04", "SpamBase_withoutdupl_norm_10_v05",
                 "SpamBase_withoutdupl_norm_10_v06", "SpamBase_withoutdupl_norm_10_v07",
                 "SpamBase_withoutdupl_norm_10_v08", "SpamBase_withoutdupl_norm_10_v09",
                 "SpamBase_withoutdupl_norm_10_v10", "SpamBase_withoutdupl_norm_20_v01",
                 "SpamBase_withoutdupl_norm_20_v02", "SpamBase_withoutdupl_norm_20_v03",
                 "SpamBase_withoutdupl_norm_20_v04", "SpamBase_withoutdupl_norm_20_v05",
                 "SpamBase_withoutdupl_norm_20_v06", "SpamBase_withoutdupl_norm_20_v07",
                 "SpamBase_withoutdupl_norm_20_v08", "SpamBase_withoutdupl_norm_20_v09",
                 "SpamBase_withoutdupl_norm_20_v10", "SpamBase_withoutdupl_norm_40", "Stamps_withoutdupl_02_v01",
                 "Stamps_withoutdupl_02_v02", "Stamps_withoutdupl_02_v03", "Stamps_withoutdupl_02_v04",
                 "Stamps_withoutdupl_02_v05", "Stamps_withoutdupl_02_v06", "Stamps_withoutdupl_02_v07",
                 "Stamps_withoutdupl_02_v08", "Stamps_withoutdupl_02_v09", "Stamps_withoutdupl_02_v10",
                 "Stamps_withoutdupl_05_v01", "Stamps_withoutdupl_05_v02", "Stamps_withoutdupl_05_v03",
                 "Stamps_withoutdupl_05_v04", "Stamps_withoutdupl_05_v05", "Stamps_withoutdupl_05_v06",
                 "Stamps_withoutdupl_05_v07", "Stamps_withoutdupl_05_v08", "Stamps_withoutdupl_05_v09",
                 "Stamps_withoutdupl_05_v10", "Stamps_withoutdupl_09", "Stamps_withoutdupl_norm_02_v01",
                 "Stamps_withoutdupl_norm_02_v02", "Stamps_withoutdupl_norm_02_v03", "Stamps_withoutdupl_norm_02_v04",
                 "Stamps_withoutdupl_norm_02_v05", "Stamps_withoutdupl_norm_02_v06", "Stamps_withoutdupl_norm_02_v07",
                 "Stamps_withoutdupl_norm_02_v08", "Stamps_withoutdupl_norm_02_v09", "Stamps_withoutdupl_norm_02_v10",
                 "Stamps_withoutdupl_norm_05_v01", "Stamps_withoutdupl_norm_05_v02", "Stamps_withoutdupl_norm_05_v03",
                 "Stamps_withoutdupl_norm_05_v04", "Stamps_withoutdupl_norm_05_v05", "Stamps_withoutdupl_norm_05_v06",
                 "Stamps_withoutdupl_norm_05_v07", "Stamps_withoutdupl_norm_05_v08", "Stamps_withoutdupl_norm_05_v09",
                 "Stamps_withoutdupl_norm_05_v10", "Stamps_withoutdupl_norm_09", "Wilt_02_v01", "Wilt_02_v02",
                 "Wilt_02_v03", "Wilt_02_v04", "Wilt_02_v05", "Wilt_02_v06", "Wilt_02_v07", "Wilt_02_v08",
                 "Wilt_02_v09", "Wilt_02_v10", "Wilt_05", "Wilt_norm_02_v01", "Wilt_norm_02_v02", "Wilt_norm_02_v03",
                 "Wilt_norm_02_v04", "Wilt_norm_02_v05", "Wilt_norm_02_v06", "Wilt_norm_02_v07", "Wilt_norm_02_v08",
                 "Wilt_norm_02_v09", "Wilt_norm_02_v10", "Wilt_norm_05", "Wilt_withoutdupl_02_v01",
                 "Wilt_withoutdupl_02_v02", "Wilt_withoutdupl_02_v03", "Wilt_withoutdupl_02_v04",
                 "Wilt_withoutdupl_02_v05", "Wilt_withoutdupl_02_v06", "Wilt_withoutdupl_02_v07",
                 "Wilt_withoutdupl_02_v08", "Wilt_withoutdupl_02_v09", "Wilt_withoutdupl_02_v10", "Wilt_withoutdupl_05",
                 "Wilt_withoutdupl_norm_02_v01", "Wilt_withoutdupl_norm_02_v02", "Wilt_withoutdupl_norm_02_v03",
                 "Wilt_withoutdupl_norm_02_v04", "Wilt_withoutdupl_norm_02_v05", "Wilt_withoutdupl_norm_02_v06",
                 "Wilt_withoutdupl_norm_02_v07", "Wilt_withoutdupl_norm_02_v08", "Wilt_withoutdupl_norm_02_v09",
                 "Wilt_withoutdupl_norm_02_v10", "Wilt_withoutdupl_norm_05"]


text:
module CairoScript

__precompile__(false)

depsjl = joinpath(dirname(@__FILE__), "..", "deps", "deps.jl")
isfile(depsjl) ? include(depsjl) : error("CairoScript not properly ",
    "installed. Please run\nPkg.build(\"CairoScript\")")

using Compat;  import Compat.String
using Cairo

import Graphics: GraphicsDevice

include("types.jl")
include("calls.jl")

end # module


text:
using YaoTensorNetwork, Yao
using Test, BitBasis
using YaoExtensions
using OMEinsum
using YaoBlocks.Optimise

@testset "GraphBuilder" begin
    gb = GraphBuilder(4)
    @test nlines(gb) == 4
    label = assign_label!(gb)
    @test label == 5
    tn_attach!(gb, 2=>Matrix(mat(X)))
    @test length(gb.tensors) == 5
    @test gb.label_counter == 6
    @test gb.lines == [1,6,3,4]
    tn_attach!(gb, (1,2)=>Matrix(mat(SWAP)))
    @test gb.label_counter == 8
    @test gb.lines == [7,8,3,4]
    tn_attach!(gb, (1,2)=>randn(ComplexF64, 4,4,2), (4,)=>randn(ComplexF64, 2,2,2))
    @test gb.label_counter == 12
    @test length(gb.labels) == ntensors(gb) == 8
    @test gb.lines == [9,10,3,12]
end

@testset "dump graph" begin
    nbit = 6
    config = bit_literal(ones(Int,nbit)...)   # final output config

    c = qft_circuit(nbit)
    gb = circuit2tn(c, final_config=config)
    @test contract(gb) ≈ select(zero_state(nbit) |> c, config).state[]

    dump_graph("_qft", gb)
    gb2 = load_graph(eltype(gb),"_qft")
    @test gb ≈ gb2
    @test contract(gb2) ≈ select(zero_state(nbit) |> c, config).state[]
end

@testset "circuit build" begin
    c = rand_google53(4)
    @test length(collect_blocks(FSimGate, c)) == 86
    @test nparameters(c) == 86*2
    @test length(collect_blocks(PrimitiveBlock{1}, c)) == 53*4
end

@testset "gates" begin
    @test isunitary(FSimGate(0.5, 0.6))
    fs = FSimGate(π/2, π/6)
    cphase(nbits, i::Int, j::Int, θ::T) where T = control(nbits, i, j=>shift(θ))
    ic = ISWAP*cphase(2, 2, 1, π/6)
    @test mat(fs) ≈ mat(ic)'
    ISWAP_ = SWAP*rot(kron(Z,Z), π/2)
    @test Matrix(ISWAP) ≈ Matrix(ISWAP_)*exp(im*π/4)
    fs_ = openbox(fs)
    @test mat(fs) ≈ Matrix(fs_)

    c  = chain(put(3,(3,1)=>fs), chain(put(3,(1,2)=>fs), put(3, (1,3)=>fs), put(3, (3,2)=>fs)))
    c_ = simplify_blocktypes(replace_block(fs=>fs_, c))
    c  = chain(put(3,(3,1)=>fs_), chain(put(3,(1,2)=>fs_), put(3, (1,3)=>fs_), put(3, (3,2)=>fs_)))

    @test Matrix(c) ≈ Matrix(simplify_blocktypes(c_))

    # add swap
    for config in basis(BitStr64{3})
        seperatecontrol(true)
        gb = circuit2tn(c_; final_config=config)
        @test maxorder(gb) == 3
        @test contract(gb) ≈ select(zero_state(3) |> c, config).state[]

        seperatecontrol(false)
        gb = circuit2tn(c_; final_config=config)
        @test maxorder(gb) == 4
        @test contract(gb) ≈ select(zero_state(3) |> c, config).state[]
    end
end