{
  "version":"2.0",
  "metadata":{
    "apiVersion":"2018-05-10",
    "auth":["aws.auth#sigv4"],
    "endpointPrefix":"partnercentral-benefits",
    "jsonVersion":"1.0",
    "protocol":"json",
    "protocols":["json"],
    "serviceAbbreviation":"PartnerCentral Benefits",
    "serviceFullName":"Partner Central Benefits API",
    "serviceId":"PartnerCentral Benefits",
    "signatureVersion":"v4",
    "signingName":"partnercentral-benefits",
    "targetPrefix":"PartnerCentralBenefitsService",
    "uid":"partnercentral-benefits-2018-05-10"
  },
  "operations":{
    "AmendBenefitApplication":{
      "name":"AmendBenefitApplication",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AmendBenefitApplicationInput"},
      "output":{"shape":"AmendBenefitApplicationOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Modifies an existing benefit application by applying amendments to specific fields while maintaining revision control.</p>"
    },
    "AssociateBenefitApplicationResource":{
      "name":"AssociateBenefitApplicationResource",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AssociateBenefitApplicationResourceInput"},
      "output":{"shape":"AssociateBenefitApplicationResourceOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Links an AWS resource to an existing benefit application for tracking and management purposes.</p>"
    },
    "CancelBenefitApplication":{
      "name":"CancelBenefitApplication",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"CancelBenefitApplicationInput"},
      "output":{"shape":"CancelBenefitApplicationOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Cancels a benefit application that is currently in progress, preventing further processing.</p>"
    },
    "CreateBenefitApplication":{
      "name":"CreateBenefitApplication",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"CreateBenefitApplicationInput"},
      "output":{"shape":"CreateBenefitApplicationOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Creates a new benefit application for a partner to request access to AWS benefits and programs.</p>",
      "idempotent":true
    },
    "DisassociateBenefitApplicationResource":{
      "name":"DisassociateBenefitApplicationResource",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DisassociateBenefitApplicationResourceInput"},
      "output":{"shape":"DisassociateBenefitApplicationResourceOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Removes the association between an AWS resource and a benefit application.</p>"
    },
    "GetBenefit":{
      "name":"GetBenefit",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"GetBenefitInput"},
      "output":{"shape":"GetBenefitOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves detailed information about a specific benefit available in the partner catalog.</p>"
    },
    "GetBenefitAllocation":{
      "name":"GetBenefitAllocation",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"GetBenefitAllocationInput"},
      "output":{"shape":"GetBenefitAllocationOutput"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Retrieves detailed information about a specific benefit allocation that has been granted to a partner.</p>"
    },
    "GetBenefitApplication":{
      "name":"GetBenefitApplication",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"GetBenefitApplicationInput"},
      "output":{"shape":"GetBenefitApplicationOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Retrieves detailed information about a specific benefit application.</p>"
    },
    "ListBenefitAllocations":{
      "name":"ListBenefitAllocations",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListBenefitAllocationsInput"},
      "output":{"shape":"ListBenefitAllocationsOutput"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Retrieves a paginated list of benefit allocations based on specified filter criteria.</p>"
    },
    "ListBenefitApplications":{
      "name":"ListBenefitApplications",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListBenefitApplicationsInput"},
      "output":{"shape":"ListBenefitApplicationsOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves a paginated list of benefit applications based on specified filter criteria.</p>"
    },
    "ListBenefits":{
      "name":"ListBenefits",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListBenefitsInput"},
      "output":{"shape":"ListBenefitsOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves a paginated list of available benefits based on specified filter criteria.</p>"
    },
    "ListTagsForResource":{
      "name":"ListTagsForResource",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListTagsForResourceRequest"},
      "output":{"shape":"ListTagsForResourceResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Retrieves all tags associated with a specific resource.</p>",
      "readonly":true
    },
    "RecallBenefitApplication":{
      "name":"RecallBenefitApplication",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"RecallBenefitApplicationInput"},
      "output":{"shape":"RecallBenefitApplicationOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Recalls a submitted benefit application, returning it to draft status for further modifications.</p>"
    },
    "SubmitBenefitApplication":{
      "name":"SubmitBenefitApplication",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"SubmitBenefitApplicationInput"},
      "output":{"shape":"SubmitBenefitApplicationOutput"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Submits a benefit application for review and processing by AWS.</p>"
    },
    "TagResource":{
      "name":"TagResource",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"TagResourceRequest"},
      "output":{"shape":"TagResourceResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Adds or updates tags for a specified resource.</p>",
      "idempotent":true
    },
    "UntagResource":{
      "name":"UntagResource",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UntagResourceRequest"},
      "output":{"shape":"UntagResourceResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ServiceQuotaExceededException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Removes specified tags from a resource.</p>",
      "idempotent":true
    },
    "UpdateBenefitApplication":{
      "name":"UpdateBenefitApplication",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateBenefitApplicationInput"},
      "output":{"shape":"UpdateBenefitApplicationOutput"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Updates an existing benefit application with new information while maintaining revision control.</p>"
    }
  },
  "shapes":{
    "AccessDeniedException":{
      "type":"structure",
      "required":["Message"],
      "members":{
        "Message":{
          "shape":"String",
          "documentation":"<p>A message describing the access denial.</p>"
        }
      },
      "documentation":"<p>Thrown when the caller does not have sufficient permissions to perform the requested operation.</p>",
      "exception":true
    },
    "AccessDetails":{
      "type":"structure",
      "members":{
        "Description":{
          "shape":"String",
          "documentation":"<p>A description of the access privileges or permissions granted by this benefit.</p>"
        }
      },
      "documentation":"<p>Contains information about access-based benefit fulfillment, such as service permissions or feature access.</p>"
    },
    "AmendBenefitApplicationInput":{
      "type":"structure",
      "required":[
        "Catalog",
        "ClientToken",
        "Revision",
        "Identifier",
        "AmendmentReason",
        "Amendments"
      ],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that specifies which benefit catalog the application belongs to.</p>"
        },
        "ClientToken":{
          "shape":"AmendBenefitApplicationInputClientTokenString",
          "documentation":"<p>A unique, case-sensitive identifier to ensure idempotent processing of the amendment request.</p>"
        },
        "Revision":{
          "shape":"String",
          "documentation":"<p>The current revision number of the benefit application to ensure optimistic concurrency control.</p>"
        },
        "Identifier":{
          "shape":"BenefitApplicationIdentifier",
          "documentation":"<p>The unique identifier of the benefit application to be amended.</p>"
        },
        "AmendmentReason":{
          "shape":"AmendBenefitApplicationInputAmendmentReasonString",
          "documentation":"<p>A descriptive reason explaining why the benefit application is being amended.</p>"
        },
        "Amendments":{
          "shape":"AmendmentList",
          "documentation":"<p>A list of specific field amendments to apply to the benefit application.</p>"
        }
      }
    },
    "AmendBenefitApplicationInputAmendmentReasonString":{
      "type":"string",
      "max":1000,
      "min":0
    },
    "AmendBenefitApplicationInputClientTokenString":{
      "type":"string",
      "max":64,
      "min":1,
      "pattern":"[a-zA-Z0-9-]{1,64}"
    },
    "AmendBenefitApplicationOutput":{
      "type":"structure",
      "members":{}
    },
    "Amendment":{
      "type":"structure",
      "required":[
        "FieldPath",
        "NewValue"
      ],
      "members":{
        "FieldPath":{
          "shape":"String",
          "documentation":"<p>The JSON path or field identifier specifying which field in the benefit application to modify.</p>"
        },
        "NewValue":{
          "shape":"String",
          "documentation":"<p>The new value to set for the specified field in the benefit application.</p>"
        }
      },
      "documentation":"<p>Represents a specific change to be made to a benefit application field.</p>"
    },
    "AmendmentList":{
      "type":"list",
      "member":{"shape":"Amendment"}
    },
    "Arn":{
      "type":"string",
      "pattern":"arn:aws:([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?-[a-z]+-\\d{1})?:(\\d{12})?:(.+)"
    },
    "Arns":{
      "type":"list",
      "member":{"shape":"Arn"}
    },
    "AssociateBenefitApplicationResourceInput":{
      "type":"structure",
      "required":[
        "Catalog",
        "BenefitApplicationIdentifier",
        "ResourceArn"
      ],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that specifies which benefit catalog the application belongs to.</p>"
        },
        "BenefitApplicationIdentifier":{
          "shape":"BenefitApplicationIdentifier",
          "documentation":"<p>The unique identifier of the benefit application to associate the resource with.</p>"
        },
        "ResourceArn":{
          "shape":"AssociateBenefitApplicationResourceInputResourceArnString",
          "documentation":"<p>The Amazon Resource Name (ARN) of the AWS resource to associate with the benefit application.</p>"
        }
      }
    },
    "AssociateBenefitApplicationResourceInputResourceArnString":{
      "type":"string",
      "max":1600,
      "min":0,
      "pattern":"arn:aws:([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?-[a-z]+-\\d{1})?:(\\d{12})?:(.+)"
    },
    "AssociateBenefitApplicationResourceOutput":{
      "type":"structure",
      "members":{
        "Id":{
          "shape":"BenefitApplicationId",
          "documentation":"<p>The unique identifier of the benefit application after the resource association.</p>"
        },
        "Arn":{
          "shape":"String",
          "documentation":"<p>The Amazon Resource Name (ARN) of the benefit application after the resource association.</p>"
        },
        "Revision":{
          "shape":"String",
          "documentation":"<p>The updated revision number of the benefit application after the resource association.</p>"
        }
      }
    },
    "AssociatedResource":{
      "type":"structure",
      "members":{
        "ResourceType":{
          "shape":"ResourceType",
          "documentation":"<p>The type of AWS resource (e.g., EC2 instance, S3 bucket, Lambda function).</p>"
        },
        "ResourceIdentifier":{
          "shape":"String",
          "documentation":"<p>The unique identifier of the AWS resource within its service.</p>",
          "deprecated":true,
          "deprecatedMessage":"This field is no longer used",
          "deprecatedSince":"Oct 08 2025"
        },
        "ResourceArn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) that uniquely identifies the AWS resource.</p>"
        }
      },
      "documentation":"<p>Represents an AWS resource that is associated with a benefit application for tracking and management.</p>"
    },
    "AssociatedResources":{
      "type":"list",
      "member":{"shape":"AssociatedResource"}
    },
    "Attributes":{
      "type":"map",
      "key":{"shape":"String"},
      "value":{"shape":"String"}
    },
    "BenefitAllocationArn":{
      "type":"string",
      "pattern":"(arn:.+benalloc-[0-9a-z]{14})"
    },
    "BenefitAllocationId":{
      "type":"string",
      "pattern":"benalloc-[0-9a-z]{14}"
    },
    "BenefitAllocationIdentifier":{
      "type":"string",
      "pattern":"(arn:.+|benalloc-[0-9a-z]{14})"
    },
    "BenefitAllocationName":{
      "type":"string",
      "max":255,
      "min":1
    },
    "BenefitAllocationStatus":{
      "type":"string",
      "enum":[
        "ACTIVE",
        "INACTIVE",
        "FULFILLED"
      ]
    },
    "BenefitAllocationSummaries":{
      "type":"list",
      "member":{"shape":"BenefitAllocationSummary"}
    },
    "BenefitAllocationSummary":{
      "type":"structure",
      "members":{
        "Id":{
          "shape":"BenefitAllocationId",
          "documentation":"<p>The unique identifier of the benefit allocation.</p>"
        },
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that the benefit allocation belongs to.</p>"
        },
        "Arn":{
          "shape":"String",
          "documentation":"<p>The Amazon Resource Name (ARN) of the benefit allocation.</p>"
        },
        "Status":{
          "shape":"BenefitAllocationStatus",
          "documentation":"<p>The current status of the benefit allocation.</p>"
        },
        "StatusReason":{
          "shape":"String",
          "documentation":"<p>Additional information explaining the current status of the benefit allocation.</p>"
        },
        "Name":{
          "shape":"BenefitAllocationName",
          "documentation":"<p>The human-readable name of the benefit allocation.</p>"
        },
        "BenefitId":{
          "shape":"BenefitId",
          "documentation":"<p>The identifier of the benefit that this allocation is based on.</p>"
        },
        "BenefitApplicationId":{
          "shape":"BenefitApplicationId",
          "documentation":"<p>The identifier of the benefit application that resulted in this allocation.</p>"
        },
        "FulfillmentTypes":{
          "shape":"FulfillmentTypes",
          "documentation":"<p>The fulfillment types used for this benefit allocation.</p>"
        },
        "CreatedAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the benefit allocation was created.</p>"
        },
        "ExpiresAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the benefit allocation expires.</p>"
        },
        "ApplicableBenefitIds":{
          "shape":"BenefitIds",
          "documentation":"<p>The identifiers of the benefits applicable for this allocation.</p>"
        }
      },
      "documentation":"<p>A summary view of a benefit allocation containing key information for list operations.</p>"
    },
    "BenefitApplicationDescription":{
      "type":"string",
      "max":1000,
      "min":1
    },
    "BenefitApplicationId":{
      "type":"string",
      "pattern":"benappl-[0-9a-z]{14}"
    },
    "BenefitApplicationIdentifier":{
      "type":"string",
      "pattern":"(arn:.+|benappl-[0-9a-z]{14})"
    },
    "BenefitApplicationName":{
      "type":"string",
      "max":255,
      "min":1
    },
    "BenefitApplicationStage":{"type":"string"},
    "BenefitApplicationStatus":{
      "type":"string",
      "enum":[
        "PENDING_SUBMISSION",
        "IN_REVIEW",
        "ACTION_REQUIRED",
        "APPROVED",
        "REJECTED",
        "CANCELED"
      ]
    },
    "BenefitApplicationSummaries":{
      "type":"list",
      "member":{"shape":"BenefitApplicationSummary"}
    },
    "BenefitApplicationSummary":{
      "type":"structure",
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that the benefit application belongs to.</p>"
        },
        "Name":{
          "shape":"BenefitApplicationName",
          "documentation":"<p>The human-readable name of the benefit application.</p>"
        },
        "Id":{
          "shape":"BenefitApplicationId",
          "documentation":"<p>The unique identifier of the benefit application.</p>"
        },
        "Arn":{
          "shape":"String",
          "documentation":"<p>The Amazon Resource Name (ARN) of the benefit application.</p>"
        },
        "BenefitId":{
          "shape":"BenefitId",
          "documentation":"<p>The identifier of the benefit being requested in this application.</p>"
        },
        "Programs":{
          "shape":"Programs",
          "documentation":"<p>The AWS partner programs associated with this benefit application.</p>"
        },
        "FulfillmentTypes":{
          "shape":"FulfillmentTypes",
          "documentation":"<p>The fulfillment types requested for this benefit application.</p>"
        },
        "Status":{
          "shape":"BenefitApplicationStatus",
          "documentation":"<p>The current processing status of the benefit application.</p>"
        },
        "Stage":{
          "shape":"BenefitApplicationStage",
          "documentation":"<p>The current stage in the benefit application processing workflow..</p>"
        },
        "CreatedAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the benefit application was created.</p>"
        },
        "UpdatedAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the benefit application was last updated.</p>"
        },
        "BenefitApplicationDetails":{
          "shape":"Attributes",
          "documentation":"<p>Additional attributes and metadata associated with the benefit application.</p>"
        },
        "AssociatedResources":{
          "shape":"Arns",
          "documentation":"<p>AWS resources that are associated with this benefit application.</p>"
        }
      },
      "documentation":"<p>A summary view of a benefit application containing key information for list operations.</p>"
    },
    "BenefitId":{
      "type":"string",
      "pattern":"(arn:.+|ben-[0-9a-z]{14})"
    },
    "BenefitIdentifiers":{
      "type":"list",
      "member":{"shape":"BenefitId"}
    },
    "BenefitIds":{
      "type":"list",
      "member":{"shape":"BenefitId"}
    },
    "BenefitStatus":{
      "type":"string",
      "enum":[
        "ACTIVE",
        "INACTIVE"
      ]
    },
    "BenefitSummaries":{
      "type":"list",
      "member":{"shape":"BenefitSummary"}
    },
    "BenefitSummary":{
      "type":"structure",
      "members":{
        "Id":{
          "shape":"BenefitSummaryIdString",
          "documentation":"<p>The unique identifier of the benefit.</p>"
        },
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that the benefit belongs to.</p>"
        },
        "Arn":{
          "shape":"String",
          "documentation":"<p>The Amazon Resource Name (ARN) of the benefit.</p>"
        },
        "Name":{
          "shape":"BenefitSummaryNameString",
          "documentation":"<p>The human-readable name of the benefit.</p>"
        },
        "Description":{
          "shape":"BenefitSummaryDescriptionString",
          "documentation":"<p>A brief description of the benefit and its purpose.</p>"
        },
        "Programs":{
          "shape":"Programs",
          "documentation":"<p>The AWS partner programs that this benefit is associated with.</p>"
        },
        "FulfillmentTypes":{
          "shape":"FulfillmentTypes",
          "documentation":"<p>The available fulfillment types for this benefit.</p>"
        },
        "Status":{
          "shape":"BenefitStatus",
          "documentation":"<p>The current status of the benefit.</p>"
        }
      },
      "documentation":"<p>A summary view of a benefit containing key information for list operations.</p>"
    },
    "BenefitSummaryDescriptionString":{
      "type":"string",
      "max":1000,
      "min":0
    },
    "BenefitSummaryIdString":{
      "type":"string",
      "pattern":"ben-[0-9a-z]{14}"
    },
    "BenefitSummaryNameString":{
      "type":"string",
      "max":100,
      "min":1
    },
    "CancelBenefitApplicationInput":{
      "type":"structure",
      "required":[
        "Catalog",
        "ClientToken",
        "Identifier"
      ],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that specifies which benefit catalog the application belongs to.</p>"
        },
        "ClientToken":{
          "shape":"CancelBenefitApplicationInputClientTokenString",
          "documentation":"<p>A unique, case-sensitive identifier to ensure idempotent processing of the cancellation request.</p>"
        },
        "Identifier":{
          "shape":"BenefitApplicationIdentifier",
          "documentation":"<p>The unique identifier of the benefit application to cancel.</p>"
        },
        "Reason":{
          "shape":"CancelBenefitApplicationInputReasonString",
          "documentation":"<p>A descriptive reason explaining why the benefit application is being cancelled.</p>"
        }
      }
    },
    "CancelBenefitApplicationInputClientTokenString":{
      "type":"string",
      "max":64,
      "min":1,
      "pattern":"[a-zA-Z0-9-]{1,64}"
    },
    "CancelBenefitApplicationInputReasonString":{
      "type":"string",
      "max":1000,
      "min":0,
      "pattern":"[\\s\\S]{1,1000}"
    },
    "CancelBenefitApplicationOutput":{
      "type":"structure",
      "members":{}
    },
    "CatalogName":{
      "type":"string",
      "pattern":"[A-Za-z0-9_-]+"
    },
    "ConflictException":{
      "type":"structure",
      "required":["Message"],
      "members":{
        "Message":{
          "shape":"String",
          "documentation":"<p>A message describing the conflict.</p>"
        }
      },
      "documentation":"<p>Thrown when the request conflicts with the current state of the resource, such as attempting to modify a resource that has been changed by another process.</p>",
      "exception":true
    },
    "ConsumableDetails":{
      "type":"structure",
      "members":{
        "AllocatedAmount":{
          "shape":"MonetaryValue",
          "documentation":"<p>The total amount of the consumable benefit that has been allocated.</p>"
        },
        "RemainingAmount":{
          "shape":"MonetaryValue",
          "documentation":"<p>The remaining amount of the consumable benefit that is still available for use.</p>"
        },
        "UtilizedAmount":{
          "shape":"MonetaryValue",
          "documentation":"<p>The amount of the consumable benefit that has already been used.</p>"
        },
        "IssuanceDetails":{
          "shape":"IssuanceDetail",
          "documentation":"<p>Detailed information about how the consumable benefit was issued and distributed.</p>"
        }
      },
      "documentation":"<p>Contains information about consumable benefit fulfillment, such as usage quotas or service limits.</p>"
    },
    "Contact":{
      "type":"structure",
      "members":{
        "Email":{
          "shape":"ContactEmail",
          "documentation":"<p>The email address of the contact person.</p>"
        },
        "FirstName":{
          "shape":"ContactFirstName",
          "documentation":"<p>The first name of the contact person.</p>"
        },
        "LastName":{
          "shape":"ContactLastName",
          "documentation":"<p>The last name of the contact person.</p>"
        },
        "BusinessTitle":{
          "shape":"ContactBusinessTitleString",
          "documentation":"<p>The business title or role of the contact person within the organization.</p>"
        },
        "Phone":{
          "shape":"ContactPhone",
          "documentation":"<p>The phone number of the contact person.</p>"
        }
      },
      "documentation":"<p>Represents contact information for a partner representative.</p>"
    },
    "ContactBusinessTitleString":{
      "type":"string",
      "max":80,
      "min":0
    },
    "ContactEmail":{
      "type":"string",
      "max":80,
      "min":0,
      "pattern":"[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?",
      "sensitive":true
    },
    "ContactFirstName":{
      "type":"string",
      "max":80,
      "min":0,
      "sensitive":true
    },
    "ContactLastName":{
      "type":"string",
      "max":80,
      "min":0,
      "sensitive":true
    },
    "ContactPhone":{
      "type":"string",
      "sensitive":true
    },
    "Contacts":{
      "type":"list",
      "member":{"shape":"Contact"}
    },
    "CreateBenefitApplicationInput":{
      "type":"structure",
      "required":[
        "Catalog",
        "ClientToken",
        "BenefitIdentifier"
      ],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that specifies which benefit catalog to create the application in.</p>"
        },
        "ClientToken":{
          "shape":"CreateBenefitApplicationInputClientTokenString",
          "documentation":"<p>A unique, case-sensitive identifier to ensure idempotent processing of the creation request.</p>"
        },
        "Name":{
          "shape":"BenefitApplicationName",
          "documentation":"<p>A human-readable name for the benefit application.</p>"
        },
        "Description":{
          "shape":"BenefitApplicationDescription",
          "documentation":"<p>A detailed description of the benefit application and its intended use.</p>"
        },
        "BenefitIdentifier":{
          "shape":"CreateBenefitApplicationInputBenefitIdentifierString",
          "documentation":"<p>The unique identifier of the benefit being requested in this application.</p>"
        },
        "FulfillmentTypes":{
          "shape":"FulfillmentTypes",
          "documentation":"<p>The types of fulfillment requested for this benefit application (e.g., credits, access, disbursement).</p>"
        },
        "BenefitApplicationDetails":{
          "shape":"Document",
          "documentation":"<p>Detailed information and requirements specific to the benefit being requested.</p>"
        },
        "Tags":{
          "shape":"CreateBenefitApplicationInputTagsList",
          "documentation":"<p>Key-value pairs to categorize and organize the benefit application.</p>"
        },
        "AssociatedResources":{
          "shape":"CreateBenefitApplicationInputAssociatedResourcesList",
          "documentation":"<p>AWS resources that are associated with this benefit application.</p>"
        },
        "PartnerContacts":{
          "shape":"CreateBenefitApplicationInputPartnerContactsList",
          "documentation":"<p>Contact information for partner representatives responsible for this benefit application.</p>"
        },
        "FileDetails":{
          "shape":"CreateBenefitApplicationInputFileDetailsList",
          "documentation":"<p>Supporting documents and files attached to the benefit application.</p>"
        }
      }
    },
    "CreateBenefitApplicationInputAssociatedResourcesList":{
      "type":"list",
      "member":{"shape":"Arn"},
      "max":10,
      "min":0
    },
    "CreateBenefitApplicationInputBenefitIdentifierString":{
      "type":"string",
      "pattern":"(arn:.+|ben-[0-9a-z]{14})"
    },
    "CreateBenefitApplicationInputClientTokenString":{
      "type":"string",
      "max":64,
      "min":1,
      "pattern":"[!-~]{1,64}"
    },
    "CreateBenefitApplicationInputFileDetailsList":{
      "type":"list",
      "member":{"shape":"FileInput"},
      "max":30,
      "min":0
    },
    "CreateBenefitApplicationInputPartnerContactsList":{
      "type":"list",
      "member":{"shape":"Contact"},
      "max":1,
      "min":0
    },
    "CreateBenefitApplicationInputTagsList":{
      "type":"list",
      "member":{"shape":"Tag"},
      "max":200,
      "min":0
    },
    "CreateBenefitApplicationOutput":{
      "type":"structure",
      "members":{
        "Id":{
          "shape":"BenefitApplicationId",
          "documentation":"<p>The unique identifier assigned to the newly created benefit application.</p>"
        },
        "Arn":{
          "shape":"String",
          "documentation":"<p>The Amazon Resource Name (ARN) of the newly created benefit application.</p>"
        },
        "Revision":{
          "shape":"String",
          "documentation":"<p>The initial revision number of the newly created benefit application.</p>"
        }
      }
    },
    "CreditCode":{
      "type":"structure",
      "required":[
        "AwsAccountId",
        "Value",
        "AwsCreditCode",
        "Status",
        "IssuedAt",
        "ExpiresAt"
      ],
      "members":{
        "AwsAccountId":{
          "shape":"String",
          "documentation":"<p>The AWS account ID that the credit code is associated with or can be applied to.</p>"
        },
        "Value":{
          "shape":"MonetaryValue",
          "documentation":"<p>The monetary value of the credit code.</p>"
        },
        "AwsCreditCode":{
          "shape":"String",
          "documentation":"<p>The actual credit code string that can be redeemed in the AWS billing console.</p>"
        },
        "Status":{
          "shape":"BenefitAllocationStatus",
          "documentation":"<p>The current status of the credit code (e.g., active, redeemed, expired).</p>"
        },
        "IssuedAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the credit code was issued.</p>"
        },
        "ExpiresAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the credit code expires and can no longer be redeemed.</p>"
        }
      },
      "documentation":"<p>Represents an AWS credit code that can be applied to an AWS account for billing purposes.</p>"
    },
    "CreditCodes":{
      "type":"list",
      "member":{"shape":"CreditCode"}
    },
    "CreditDetails":{
      "type":"structure",
      "required":[
        "AllocatedAmount",
        "IssuedAmount",
        "Codes"
      ],
      "members":{
        "AllocatedAmount":{
          "shape":"MonetaryValue",
          "documentation":"<p>The total amount of credits that have been allocated for this benefit.</p>"
        },
        "IssuedAmount":{
          "shape":"MonetaryValue",
          "documentation":"<p>The amount of credits that have actually been issued and are available for use.</p>"
        },
        "Codes":{
          "shape":"CreditCodes",
          "documentation":"<p>A list of credit codes that have been generated for this benefit allocation.</p>"
        }
      },
      "documentation":"<p>Contains information about credit-based benefit fulfillment, including AWS promotional credits.</p>"
    },
    "CurrencyCode":{
      "type":"string",
      "enum":[
        "AED",
        "AMD",
        "ARS",
        "AUD",
        "AWG",
        "AZN",
        "BBD",
        "BDT",
        "BGN",
        "BMD",
        "BND",
        "BOB",
        "BRL",
        "BSD",
        "BYR",
        "BZD",
        "CAD",
        "CHF",
        "CLP",
        "CNY",
        "COP",
        "CRC",
        "CZK",
        "DKK",
        "DOP",
        "EEK",
        "EGP",
        "EUR",
        "GBP",
        "GEL",
        "GHS",
        "GTQ",
        "GYD",
        "HKD",
        "HNL",
        "HRK",
        "HTG",
        "HUF",
        "IDR",
        "ILS",
        "INR",
        "ISK",
        "JMD",
        "JPY",
        "KES",
        "KHR",
        "KRW",
        "KYD",
        "KZT",
        "LBP",
        "LKR",
        "LTL",
        "LVL",
        "MAD",
        "MNT",
        "MOP",
        "MUR",
        "MVR",
        "MXN",
        "MYR",
        "NAD",
        "NGN",
        "NIO",
        "NOK",
        "NZD",
        "PAB",
        "PEN",
        "PHP",
        "PKR",
        "PLN",
        "PYG",
        "QAR",
        "RON",
        "RUB",
        "SAR",
        "SEK",
        "SGD",
        "SIT",
        "SKK",
        "THB",
        "TND",
        "TRY",
        "TTD",
        "TWD",
        "TZS",
        "UAH",
        "USD",
        "UYU",
        "UZS",
        "VND",
        "XAF",
        "XCD",
        "XOF",
        "XPF",
        "ZAR"
      ]
    },
    "DisassociateBenefitApplicationResourceInput":{
      "type":"structure",
      "required":[
        "Catalog",
        "BenefitApplicationIdentifier",
        "ResourceArn"
      ],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that specifies which benefit catalog the application belongs to.</p>"
        },
        "BenefitApplicationIdentifier":{
          "shape":"BenefitApplicationIdentifier",
          "documentation":"<p>The unique identifier of the benefit application to disassociate the resource from.</p>"
        },
        "ResourceArn":{
          "shape":"DisassociateBenefitApplicationResourceInputResourceArnString",
          "documentation":"<p>The Amazon Resource Name (ARN) of the AWS resource to disassociate from the benefit application.</p>"
        }
      }
    },
    "DisassociateBenefitApplicationResourceInputResourceArnString":{
      "type":"string",
      "max":1600,
      "min":0,
      "pattern":"arn:aws:([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?-[a-z]+-\\d{1})?:(\\d{12})?:(.+)"
    },
    "DisassociateBenefitApplicationResourceOutput":{
      "type":"structure",
      "members":{
        "Id":{
          "shape":"BenefitApplicationId",
          "documentation":"<p>The unique identifier of the benefit application after the resource disassociation.</p>"
        },
        "Arn":{
          "shape":"String",
          "documentation":"<p>The Amazon Resource Name (ARN) of the benefit application after the resource disassociation.</p>"
        },
        "Revision":{
          "shape":"String",
          "documentation":"<p>The updated revision number of the benefit application after the resource disassociation.</p>"
        }
      }
    },
    "DisbursementDetails":{
      "type":"structure",
      "members":{
        "DisbursedAmount":{
          "shape":"MonetaryValue",
          "documentation":"<p>The total amount that has been disbursed for this benefit allocation.</p>"
        },
        "IssuanceDetails":{
          "shape":"IssuanceDetail",
          "documentation":"<p>Detailed information about how the disbursement was issued and processed.</p>"
        }
      },
      "documentation":"<p>Contains information about disbursement-based benefit fulfillment, such as direct payments or reimbursements.</p>"
    },
    "Document":{
      "type":"structure",
      "members":{},
      "document":true
    },
    "FileDetail":{
      "type":"structure",
      "required":["FileURI"],
      "members":{
        "FileURI":{
          "shape":"FileURI",
          "documentation":"<p>The URI or location where the file is stored.</p>"
        },
        "BusinessUseCase":{
          "shape":"String",
          "documentation":"<p>The business purpose or use case that this file supports in the benefit application.</p>"
        },
        "FileName":{
          "shape":"FileDetailFileNameString",
          "documentation":"<p>The original name of the uploaded file.</p>"
        },
        "FileStatus":{
          "shape":"FileDetailFileStatusString",
          "documentation":"<p>The current processing status of the file (e.g., uploaded, processing, approved, rejected).</p>"
        },
        "FileStatusReason":{
          "shape":"String",
          "documentation":"<p>The reason for that particulat file status.</p>"
        },
        "FileType":{
          "shape":"FileType",
          "documentation":"<p>The type or category of the file (e.g., document, image, spreadsheet).</p>"
        },
        "CreatedBy":{
          "shape":"FileDetailCreatedByString",
          "documentation":"<p>The identifier of the user who uploaded the file.</p>"
        },
        "CreatedAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the file was uploaded.</p>"
        }
      },
      "documentation":"<p>Represents detailed information about a file attached to a benefit application.</p>"
    },
    "FileDetailCreatedByString":{
      "type":"string",
      "max":255,
      "min":1
    },
    "FileDetailFileNameString":{
      "type":"string",
      "max":255,
      "min":1
    },
    "FileDetailFileStatusString":{
      "type":"string",
      "max":50,
      "min":1
    },
    "FileInput":{
      "type":"structure",
      "required":["FileURI"],
      "members":{
        "FileURI":{
          "shape":"FileURI",
          "documentation":"<p>The URI or location where the file should be stored or has been uploaded.</p>"
        },
        "BusinessUseCase":{
          "shape":"String",
          "documentation":"<p>The business purpose or use case that this file supports in the benefit application.</p>"
        }
      },
      "documentation":"<p>Represents input information for uploading a file to a benefit application.</p>"
    },
    "FileType":{
      "type":"string",
      "enum":[
        "application/msword",
        "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
        "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
        "application/vnd.openxmlformats-officedocument.presentationml.presentation",
        "application/pdf",
        "image/png",
        "image/jpeg",
        "image/svg+xml",
        "text/csv"
      ]
    },
    "FileURI":{
      "type":"string",
      "max":2000,
      "min":1,
      "pattern":"(s3://|https://).*"
    },
    "FulfillmentDetails":{
      "type":"structure",
      "members":{
        "DisbursementDetails":{
          "shape":"DisbursementDetails",
          "documentation":"<p>Details about disbursement-based fulfillment, if applicable to this benefit allocation.</p>"
        },
        "ConsumableDetails":{
          "shape":"ConsumableDetails",
          "documentation":"<p>Details about consumable-based fulfillment, if applicable to this benefit allocation.</p>"
        },
        "CreditDetails":{
          "shape":"CreditDetails",
          "documentation":"<p>Details about credit-based fulfillment, if applicable to this benefit allocation.</p>"
        },
        "AccessDetails":{
          "shape":"AccessDetails",
          "documentation":"<p>Details about access-based fulfillment, if applicable to this benefit allocation.</p>"
        }
      },
      "documentation":"<p>Contains comprehensive information about how a benefit allocation is fulfilled across different fulfillment types.</p>",
      "union":true
    },
    "FulfillmentType":{
      "type":"string",
      "enum":[
        "CREDITS",
        "CASH",
        "ACCESS"
      ]
    },
    "FulfillmentTypes":{
      "type":"list",
      "member":{"shape":"FulfillmentType"}
    },
    "GetBenefitAllocationInput":{
      "type":"structure",
      "required":[
        "Catalog",
        "Identifier"
      ],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that specifies which benefit catalog to query.</p>"
        },
        "Identifier":{
          "shape":"BenefitAllocationIdentifier",
          "documentation":"<p>The unique identifier of the benefit allocation to retrieve.</p>"
        }
      }
    },
    "GetBenefitAllocationOutput":{
      "type":"structure",
      "members":{
        "Id":{
          "shape":"BenefitAllocationId",
          "documentation":"<p>The unique identifier of the benefit allocation.</p>"
        },
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that the benefit allocation belongs to.</p>"
        },
        "Arn":{
          "shape":"BenefitAllocationArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the benefit allocation.</p>"
        },
        "Name":{
          "shape":"String",
          "documentation":"<p>The human-readable name of the benefit allocation.</p>"
        },
        "Description":{
          "shape":"String",
          "documentation":"<p>A detailed description of the benefit allocation.</p>"
        },
        "Status":{
          "shape":"BenefitAllocationStatus",
          "documentation":"<p>The current status of the benefit allocation (e.g., active, expired, consumed).</p>"
        },
        "StatusReason":{
          "shape":"String",
          "documentation":"<p>Additional information explaining the current status of the benefit allocation.</p>"
        },
        "BenefitApplicationId":{
          "shape":"BenefitApplicationId",
          "documentation":"<p>The identifier of the benefit application that resulted in this allocation.</p>"
        },
        "BenefitId":{
          "shape":"BenefitId",
          "documentation":"<p>The identifier of the benefit that this allocation is based on.</p>"
        },
        "FulfillmentType":{
          "shape":"FulfillmentType",
          "documentation":"<p>The fulfillment type used for this benefit allocation.</p>"
        },
        "ApplicableBenefitIds":{
          "shape":"BenefitIdentifiers",
          "documentation":"<p>A list of benefit identifiers that this allocation can be applied to.</p>"
        },
        "FulfillmentDetail":{
          "shape":"FulfillmentDetails",
          "documentation":"<p>Detailed information about how the benefit allocation is fulfilled.</p>"
        },
        "CreatedAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the benefit allocation was created.</p>"
        },
        "UpdatedAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the benefit allocation was last updated.</p>"
        },
        "StartsAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the benefit allocation becomes active and usable.</p>"
        },
        "ExpiresAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the benefit allocation expires and is no longer usable.</p>"
        }
      }
    },
    "GetBenefitApplicationInput":{
      "type":"structure",
      "required":[
        "Catalog",
        "Identifier"
      ],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that specifies which benefit catalog to query.</p>"
        },
        "Identifier":{
          "shape":"BenefitApplicationIdentifier",
          "documentation":"<p>The unique identifier of the benefit application to retrieve.</p>"
        }
      }
    },
    "GetBenefitApplicationOutput":{
      "type":"structure",
      "members":{
        "Id":{
          "shape":"BenefitApplicationId",
          "documentation":"<p>The unique identifier of the benefit application.</p>"
        },
        "Arn":{
          "shape":"Arn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the benefit application.</p>"
        },
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that the benefit application belongs to.</p>"
        },
        "BenefitId":{
          "shape":"BenefitId",
          "documentation":"<p>The identifier of the benefit being requested in this application.</p>"
        },
        "Name":{
          "shape":"BenefitApplicationName",
          "documentation":"<p>The human-readable name of the benefit application.</p>"
        },
        "Description":{
          "shape":"BenefitApplicationDescription",
          "documentation":"<p>A detailed description of the benefit application.</p>"
        },
        "FulfillmentTypes":{
          "shape":"FulfillmentTypes",
          "documentation":"<p>The fulfillment types requested for this benefit application.</p>"
        },
        "BenefitApplicationDetails":{
          "shape":"Document",
          "documentation":"<p>Detailed information and requirements specific to the benefit being requested.</p>"
        },
        "Programs":{
          "shape":"Programs",
          "documentation":"<p>The AWS partner programs associated with this benefit application.</p>"
        },
        "Status":{
          "shape":"BenefitApplicationStatus",
          "documentation":"<p>The current processing status of the benefit application.</p>"
        },
        "Stage":{
          "shape":"BenefitApplicationStage",
          "documentation":"<p>The current stage in the benefit application processing workflow.</p>"
        },
        "StatusReason":{
          "shape":"GetBenefitApplicationOutputStatusReasonString",
          "documentation":"<p>Additional information explaining the current status of the benefit application.</p>"
        },
        "StatusReasonCode":{
          "shape":"StatusReasonCode",
          "documentation":"<p>A standardized code representing the reason for the current status.</p>",
          "deprecated":true,
          "deprecatedMessage":"This field is no longer used",
          "deprecatedSince":"Nov 08 2025"
        },
        "StatusReasonCodes":{
          "shape":"StatusReasonCodes",
          "documentation":"<p>The list of standardized codes representing the reason for the current status.</p>"
        },
        "CreatedAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the benefit application was created.</p>"
        },
        "UpdatedAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when the benefit application was last updated.</p>"
        },
        "Revision":{
          "shape":"String",
          "documentation":"<p>The current revision number of the benefit application.</p>"
        },
        "AssociatedResources":{
          "shape":"GetBenefitApplicationOutputAssociatedResourcesList",
          "documentation":"<p>AWS resources that are associated with this benefit application.</p>"
        },
        "PartnerContacts":{
          "shape":"Contacts",
          "documentation":"<p>Contact information for partner representatives responsible for this benefit application.</p>"
        },
        "FileDetails":{
          "shape":"GetBenefitApplicationOutputFileDetailsList",
          "documentation":"<p>Supporting documents and files attached to the benefit application.</p>"
        }
      }
    },
    "GetBenefitApplicationOutputAssociatedResourcesList":{
      "type":"list",
      "member":{"shape":"Arn"},
      "max":10,
      "min":0
    },
    "GetBenefitApplicationOutputFileDetailsList":{
      "type":"list",
      "member":{"shape":"FileDetail"},
      "max":30,
      "min":0
    },
    "GetBenefitApplicationOutputStatusReasonString":{
      "type":"string",
      "max":1000,
      "min":0
    },
    "GetBenefitInput":{
      "type":"structure",
      "required":[
        "Catalog",
        "Identifier"
      ],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that specifies which benefit catalog to query.</p>"
        },
        "Identifier":{
          "shape":"GetBenefitInputIdentifierString",
          "documentation":"<p>The unique identifier of the benefit to retrieve.</p>"
        }
      }
    },
    "GetBenefitInputIdentifierString":{
      "type":"string",
      "pattern":"(arn:.+|ben-[0-9a-z]{14})"
    },
    "GetBenefitOutput":{
      "type":"structure",
      "members":{
        "Id":{
          "shape":"GetBenefitOutputIdString",
          "documentation":"<p>The unique identifier of the benefit.</p>"
        },
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that the benefit belongs to.</p>"
        },
        "Arn":{
          "shape":"String",
          "documentation":"<p>The Amazon Resource Name (ARN) of the benefit.</p>"
        },
        "Name":{
          "shape":"GetBenefitOutputNameString",
          "documentation":"<p>The human-readable name of the benefit.</p>"
        },
        "Description":{
          "shape":"GetBenefitOutputDescriptionString",
          "documentation":"<p>A detailed description of the benefit and its purpose.</p>"
        },
        "Programs":{
          "shape":"Programs",
          "documentation":"<p>The AWS partner programs that this benefit is associated with.</p>"
        },
        "FulfillmentTypes":{
          "shape":"FulfillmentTypes",
          "documentation":"<p>The available fulfillment types for this benefit (e.g., credits, access, disbursement).</p>"
        },
        "BenefitRequestSchema":{
          "shape":"Document",
          "documentation":"<p>The schema definition that describes the required fields for requesting this benefit.</p>"
        },
        "Status":{
          "shape":"BenefitStatus",
          "documentation":"<p>The current status of the benefit (e.g., active, inactive, deprecated).</p>"
        }
      }
    },
    "GetBenefitOutputDescriptionString":{
      "type":"string",
      "max":1000,
      "min":0
    },
    "GetBenefitOutputIdString":{
      "type":"string",
      "pattern":"ben-[0-9a-z]{14}"
    },
    "GetBenefitOutputNameString":{
      "type":"string",
      "max":100,
      "min":1
    },
    "InternalServerException":{
      "type":"structure",
      "required":["Message"],
      "members":{
        "Message":{
          "shape":"String",
          "documentation":"<p>A message describing the internal server error.</p>"
        }
      },
      "documentation":"<p>Thrown when an unexpected error occurs on the server side during request processing.</p>",
      "exception":true,
      "fault":true
    },
    "IssuanceDetail":{
      "type":"structure",
      "members":{
        "IssuanceId":{
          "shape":"String",
          "documentation":"<p>The unique identifier for this specific issuance.</p>"
        },
        "IssuanceAmount":{
          "shape":"MonetaryValue",
          "documentation":"<p>The monetary amount or value that was issued in this specific issuance.</p>"
        },
        "IssuedAt":{
          "shape":"Timestamp",
          "documentation":"<p>The timestamp when this specific issuance was processed.</p>"
        }
      },
      "documentation":"<p>Represents detailed information about a specific issuance of benefit value.</p>"
    },
    "ListBenefitAllocationsInput":{
      "type":"structure",
      "required":["Catalog"],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier to filter benefit allocations by catalog.</p>"
        },
        "FulfillmentTypes":{
          "shape":"ListBenefitAllocationsInputFulfillmentTypesList",
          "documentation":"<p>Filter benefit allocations by specific fulfillment types.</p>"
        },
        "BenefitIdentifiers":{
          "shape":"ListBenefitAllocationsInputBenefitIdentifiersList",
          "documentation":"<p>Filter benefit allocations by specific benefit identifiers.</p>"
        },
        "BenefitApplicationIdentifiers":{
          "shape":"ListBenefitAllocationsInputBenefitApplicationIdentifiersList",
          "documentation":"<p>Filter benefit allocations by specific benefit application identifiers.</p>"
        },
        "Status":{
          "shape":"ListBenefitAllocationsInputStatusList",
          "documentation":"<p>Filter benefit allocations by their current status.</p>"
        },
        "MaxResults":{
          "shape":"ListBenefitAllocationsInputMaxResultsInteger",
          "documentation":"<p>The maximum number of benefit allocations to return in a single response.</p>"
        },
        "NextToken":{
          "shape":"ListBenefitAllocationsInputNextTokenString",
          "documentation":"<p>A pagination token to retrieve the next set of results from a previous request.</p>"
        }
      }
    },
    "ListBenefitAllocationsInputBenefitApplicationIdentifiersList":{
      "type":"list",
      "member":{"shape":"BenefitApplicationIdentifier"},
      "max":1,
      "min":0
    },
    "ListBenefitAllocationsInputBenefitIdentifiersList":{
      "type":"list",
      "member":{"shape":"BenefitId"},
      "max":1,
      "min":0
    },
    "ListBenefitAllocationsInputFulfillmentTypesList":{
      "type":"list",
      "member":{"shape":"FulfillmentType"},
      "max":2,
      "min":0
    },
    "ListBenefitAllocationsInputMaxResultsInteger":{
      "type":"integer",
      "box":true,
      "max":100,
      "min":1
    },
    "ListBenefitAllocationsInputNextTokenString":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"[\\s\\S]*"
    },
    "ListBenefitAllocationsInputStatusList":{
      "type":"list",
      "member":{"shape":"BenefitAllocationStatus"},
      "max":1,
      "min":0
    },
    "ListBenefitAllocationsOutput":{
      "type":"structure",
      "members":{
        "BenefitAllocationSummaries":{
          "shape":"BenefitAllocationSummaries",
          "documentation":"<p>A list of benefit allocation summaries matching the specified criteria.</p>"
        },
        "NextToken":{
          "shape":"ListBenefitAllocationsOutputNextTokenString",
          "documentation":"<p>A pagination token to retrieve the next set of results, if more results are available.</p>"
        }
      }
    },
    "ListBenefitAllocationsOutputNextTokenString":{
      "type":"string",
      "max":2048,
      "min":0
    },
    "ListBenefitApplicationsInput":{
      "type":"structure",
      "required":["Catalog"],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier to filter benefit applications by catalog.</p>"
        },
        "Programs":{
          "shape":"ListBenefitApplicationsInputProgramsList",
          "documentation":"<p>Filter benefit applications by specific AWS partner programs.</p>"
        },
        "FulfillmentTypes":{
          "shape":"ListBenefitApplicationsInputFulfillmentTypesList",
          "documentation":"<p>Filter benefit applications by specific fulfillment types.</p>"
        },
        "BenefitIdentifiers":{
          "shape":"ListBenefitApplicationsInputBenefitIdentifiersList",
          "documentation":"<p>Filter benefit applications by specific benefit identifiers.</p>"
        },
        "Status":{
          "shape":"ListBenefitApplicationsInputStatusList",
          "documentation":"<p>Filter benefit applications by their current processing status.</p>"
        },
        "Stages":{
          "shape":"ListBenefitApplicationsInputStagesList",
          "documentation":"<p>Filter benefit applications by their current processing stage.</p>"
        },
        "AssociatedResources":{
          "shape":"AssociatedResources",
          "documentation":"<p>Filter benefit applications by associated AWS resources.</p>",
          "deprecated":true,
          "deprecatedMessage":"This field is no longer used.",
          "deprecatedSince":"Oct 08 2025"
        },
        "AssociatedResourceArns":{
          "shape":"Arns",
          "documentation":"<p>Filter benefit applications by specific AWS resource ARNs.</p>"
        },
        "MaxResults":{
          "shape":"ListBenefitApplicationsInputMaxResultsInteger",
          "documentation":"<p>The maximum number of benefit applications to return in a single response.</p>"
        },
        "NextToken":{
          "shape":"ListBenefitApplicationsInputNextTokenString",
          "documentation":"<p>A pagination token to retrieve the next set of results from a previous request.</p>"
        }
      }
    },
    "ListBenefitApplicationsInputBenefitIdentifiersList":{
      "type":"list",
      "member":{"shape":"BenefitId"},
      "max":1,
      "min":0
    },
    "ListBenefitApplicationsInputFulfillmentTypesList":{
      "type":"list",
      "member":{"shape":"FulfillmentType"},
      "max":2,
      "min":0
    },
    "ListBenefitApplicationsInputMaxResultsInteger":{
      "type":"integer",
      "box":true,
      "max":100,
      "min":1
    },
    "ListBenefitApplicationsInputNextTokenString":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"[\\s\\S]*"
    },
    "ListBenefitApplicationsInputProgramsList":{
      "type":"list",
      "member":{"shape":"Program"},
      "max":1,
      "min":0
    },
    "ListBenefitApplicationsInputStagesList":{
      "type":"list",
      "member":{"shape":"BenefitApplicationStage"},
      "max":1,
      "min":0
    },
    "ListBenefitApplicationsInputStatusList":{
      "type":"list",
      "member":{"shape":"BenefitApplicationStatus"},
      "max":1,
      "min":0
    },
    "ListBenefitApplicationsOutput":{
      "type":"structure",
      "members":{
        "BenefitApplicationSummaries":{
          "shape":"BenefitApplicationSummaries",
          "documentation":"<p>A list of benefit application summaries matching the specified criteria.</p>"
        },
        "NextToken":{
          "shape":"ListBenefitApplicationsOutputNextTokenString",
          "documentation":"<p>A pagination token to retrieve the next set of results, if more results are available.</p>"
        }
      }
    },
    "ListBenefitApplicationsOutputNextTokenString":{
      "type":"string",
      "max":2048,
      "min":0
    },
    "ListBenefitsInput":{
      "type":"structure",
      "required":["Catalog"],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier to filter benefits by catalog.</p>"
        },
        "Programs":{
          "shape":"ListBenefitsInputProgramsList",
          "documentation":"<p>Filter benefits by specific AWS partner programs.</p>"
        },
        "FulfillmentTypes":{
          "shape":"ListBenefitsInputFulfillmentTypesList",
          "documentation":"<p>Filter benefits by specific fulfillment types.</p>"
        },
        "Status":{
          "shape":"ListBenefitsInputStatusList",
          "documentation":"<p>Filter benefits by their current status.</p>"
        },
        "MaxResults":{
          "shape":"ListBenefitsInputMaxResultsInteger",
          "documentation":"<p>The maximum number of benefits to return in a single response.</p>"
        },
        "NextToken":{
          "shape":"ListBenefitsInputNextTokenString",
          "documentation":"<p>A pagination token to retrieve the next set of results from a previous request.</p>"
        }
      }
    },
    "ListBenefitsInputFulfillmentTypesList":{
      "type":"list",
      "member":{"shape":"FulfillmentType"},
      "max":2,
      "min":0
    },
    "ListBenefitsInputMaxResultsInteger":{
      "type":"integer",
      "box":true,
      "max":100,
      "min":1
    },
    "ListBenefitsInputNextTokenString":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"[\\s\\S]*"
    },
    "ListBenefitsInputProgramsList":{
      "type":"list",
      "member":{"shape":"Program"},
      "max":1,
      "min":0
    },
    "ListBenefitsInputStatusList":{
      "type":"list",
      "member":{"shape":"BenefitStatus"},
      "max":2,
      "min":0
    },
    "ListBenefitsOutput":{
      "type":"structure",
      "members":{
        "BenefitSummaries":{
          "shape":"BenefitSummaries",
          "documentation":"<p>A list of benefit summaries matching the specified criteria.</p>"
        },
        "NextToken":{
          "shape":"ListBenefitsOutputNextTokenString",
          "documentation":"<p>A pagination token to retrieve the next set of results, if more results are available.</p>"
        }
      }
    },
    "ListBenefitsOutputNextTokenString":{
      "type":"string",
      "max":2048,
      "min":0
    },
    "ListTagsForResourceRequest":{
      "type":"structure",
      "required":["resourceArn"],
      "members":{
        "resourceArn":{
          "shape":"TaggableResourceArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the resource to list tags for.</p>"
        }
      }
    },
    "ListTagsForResourceResponse":{
      "type":"structure",
      "members":{
        "tags":{
          "shape":"Tags",
          "documentation":"<p>A list of key-value pairs representing the tags associated with the resource.</p>"
        }
      }
    },
    "MonetaryValue":{
      "type":"structure",
      "required":[
        "Amount",
        "CurrencyCode"
      ],
      "members":{
        "Amount":{
          "shape":"String",
          "documentation":"<p>The numeric amount of the monetary value.</p>"
        },
        "CurrencyCode":{
          "shape":"CurrencyCode",
          "documentation":"<p>The ISO 4217 currency code (e.g., USD, EUR) for the monetary amount.</p>"
        }
      },
      "documentation":"<p>Represents a monetary amount with its associated currency.</p>"
    },
    "Program":{
      "type":"string",
      "max":255,
      "min":1,
      "pattern":"[A-Za-z0-9_-]+"
    },
    "Programs":{
      "type":"list",
      "member":{"shape":"Program"}
    },
    "RecallBenefitApplicationInput":{
      "type":"structure",
      "required":[
        "Catalog",
        "Identifier",
        "Reason"
      ],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that specifies which benefit catalog the application belongs to.</p>"
        },
        "ClientToken":{
          "shape":"String",
          "documentation":"<p>A unique, case-sensitive identifier to ensure idempotent processing of the recall request.</p>"
        },
        "Identifier":{
          "shape":"BenefitApplicationIdentifier",
          "documentation":"<p>The unique identifier of the benefit application to recall.</p>"
        },
        "Reason":{
          "shape":"String",
          "documentation":"<p>A descriptive reason explaining why the benefit application is being recalled.</p>"
        }
      }
    },
    "RecallBenefitApplicationOutput":{
      "type":"structure",
      "members":{}
    },
    "ResourceNotFoundException":{
      "type":"structure",
      "required":["Message"],
      "members":{
        "Message":{
          "shape":"String",
          "documentation":"<p>A message describing the resource not found error.</p>"
        }
      },
      "documentation":"<p>Thrown when the requested resource cannot be found or does not exist.</p>",
      "exception":true
    },
    "ResourceType":{
      "type":"string",
      "enum":[
        "OPPORTUNITY",
        "BENEFIT_ALLOCATION"
      ]
    },
    "ServiceQuotaExceededException":{
      "type":"structure",
      "required":[
        "Message",
        "ResourceId",
        "ResourceType",
        "QuotaCode"
      ],
      "members":{
        "Message":{
          "shape":"String",
          "documentation":"<p>A message describing the service quota exceeded error.</p>"
        },
        "ResourceId":{
          "shape":"String",
          "documentation":"<p>The identifier of the resource that would exceed the quota.</p>"
        },
        "ResourceType":{
          "shape":"String",
          "documentation":"<p>The type of the resource that would exceed the quota.</p>"
        },
        "QuotaCode":{
          "shape":"String",
          "documentation":"<p>The code identifying the specific quota that would be exceeded.</p>"
        }
      },
      "documentation":"<p>Thrown when the request would exceed the service quotas or limits for the account.</p>",
      "exception":true,
      "retryable":{"throttling":false}
    },
    "StatusReasonCode":{
      "type":"string",
      "max":255,
      "min":1
    },
    "StatusReasonCodes":{
      "type":"list",
      "member":{"shape":"StatusReasonCode"},
      "documentation":"<p>List of StatusReasonCodes</p>",
      "max":5,
      "min":0
    },
    "String":{"type":"string"},
    "SubmitBenefitApplicationInput":{
      "type":"structure",
      "required":[
        "Catalog",
        "Identifier"
      ],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that specifies which benefit catalog the application belongs to.</p>"
        },
        "Identifier":{
          "shape":"BenefitApplicationIdentifier",
          "documentation":"<p>The unique identifier of the benefit application to submit.</p>"
        }
      }
    },
    "SubmitBenefitApplicationOutput":{
      "type":"structure",
      "members":{}
    },
    "Tag":{
      "type":"structure",
      "required":[
        "Key",
        "Value"
      ],
      "members":{
        "Key":{
          "shape":"TagKey",
          "documentation":"<p>The tag key, which acts as a category or label for the tag.</p>"
        },
        "Value":{
          "shape":"TagValue",
          "documentation":"<p>The tag value, which provides additional information or context for the tag key.</p>"
        }
      },
      "documentation":"<p>Represents a key-value pair used for categorizing and organizing AWS resources.</p>"
    },
    "TagKey":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)"
    },
    "TagKeyList":{
      "type":"list",
      "member":{"shape":"TagKey"},
      "max":50,
      "min":1
    },
    "TagResourceRequest":{
      "type":"structure",
      "required":[
        "resourceArn",
        "tags"
      ],
      "members":{
        "resourceArn":{
          "shape":"TaggableResourceArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the resource to add tags to.</p>"
        },
        "tags":{
          "shape":"Tags",
          "documentation":"<p>A list of key-value pairs to add as tags to the resource.</p>"
        }
      }
    },
    "TagResourceResponse":{
      "type":"structure",
      "members":{}
    },
    "TagValue":{
      "type":"string",
      "max":256,
      "min":0,
      "pattern":"([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)"
    },
    "TaggableResourceArn":{
      "type":"string",
      "max":1000,
      "min":1,
      "pattern":"arn:[\\w+=/,.@-]+:partnercentral:[\\w+=/,.@-]*:[0-9]{12}:catalog/([a-zA-Z]+)/[\\w+=,.@-]+(/[\\w+=,.@-]+)*"
    },
    "Tags":{
      "type":"list",
      "member":{"shape":"Tag"}
    },
    "ThrottlingException":{
      "type":"structure",
      "required":["Message"],
      "members":{
        "Message":{
          "shape":"String",
          "documentation":"<p>A message describing the throttling error.</p>"
        }
      },
      "documentation":"<p>Thrown when the request rate exceeds the allowed limits and the request is being throttled.</p>",
      "exception":true
    },
    "Timestamp":{
      "type":"timestamp",
      "timestampFormat":"iso8601"
    },
    "UntagResourceRequest":{
      "type":"structure",
      "required":[
        "resourceArn",
        "tagKeys"
      ],
      "members":{
        "resourceArn":{
          "shape":"TaggableResourceArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the resource to remove tags from.</p>"
        },
        "tagKeys":{
          "shape":"TagKeyList",
          "documentation":"<p>A list of tag keys to remove from the resource.</p>"
        }
      }
    },
    "UntagResourceResponse":{
      "type":"structure",
      "members":{}
    },
    "UpdateBenefitApplicationInput":{
      "type":"structure",
      "required":[
        "Catalog",
        "ClientToken",
        "Identifier",
        "Revision"
      ],
      "members":{
        "Catalog":{
          "shape":"CatalogName",
          "documentation":"<p>The catalog identifier that specifies which benefit catalog the application belongs to.</p>"
        },
        "ClientToken":{
          "shape":"UpdateBenefitApplicationInputClientTokenString",
          "documentation":"<p>A unique, case-sensitive identifier to ensure idempotent processing of the update request.</p>"
        },
        "Name":{
          "shape":"BenefitApplicationName",
          "documentation":"<p>The updated human-readable name for the benefit application.</p>"
        },
        "Description":{
          "shape":"BenefitApplicationDescription",
          "documentation":"<p>The updated detailed description of the benefit application.</p>"
        },
        "Identifier":{
          "shape":"BenefitApplicationIdentifier",
          "documentation":"<p>The unique identifier of the benefit application to update.</p>"
        },
        "Revision":{
          "shape":"String",
          "documentation":"<p>The current revision number of the benefit application to ensure optimistic concurrency control.</p>"
        },
        "BenefitApplicationDetails":{
          "shape":"Document",
          "documentation":"<p>Updated detailed information and requirements specific to the benefit being requested.</p>"
        },
        "PartnerContacts":{
          "shape":"UpdateBenefitApplicationInputPartnerContactsList",
          "documentation":"<p>Updated contact information for partner representatives responsible for this benefit application.</p>"
        },
        "FileDetails":{
          "shape":"UpdateBenefitApplicationInputFileDetailsList",
          "documentation":"<p>Updated supporting documents and files attached to the benefit application.</p>"
        }
      }
    },
    "UpdateBenefitApplicationInputClientTokenString":{
      "type":"string",
      "max":64,
      "min":1,
      "pattern":"[!-~]{1,64}"
    },
    "UpdateBenefitApplicationInputFileDetailsList":{
      "type":"list",
      "member":{"shape":"FileInput"},
      "max":30,
      "min":0
    },
    "UpdateBenefitApplicationInputPartnerContactsList":{
      "type":"list",
      "member":{"shape":"Contact"},
      "max":1,
      "min":0
    },
    "UpdateBenefitApplicationOutput":{
      "type":"structure",
      "members":{
        "Id":{
          "shape":"BenefitApplicationId",
          "documentation":"<p>The unique identifier of the updated benefit application.</p>"
        },
        "Arn":{
          "shape":"String",
          "documentation":"<p>The Amazon Resource Name (ARN) of the updated benefit application.</p>"
        },
        "Revision":{
          "shape":"String",
          "documentation":"<p>The new revision number of the benefit application after the update.</p>"
        }
      }
    },
    "ValidationException":{
      "type":"structure",
      "required":[
        "Message",
        "Reason"
      ],
      "members":{
        "Message":{
          "shape":"String",
          "documentation":"<p>A message describing the validation error.</p>"
        },
        "Reason":{
          "shape":"ValidationExceptionReason",
          "documentation":"<p>The reason for the validation failure.</p>"
        },
        "FieldList":{
          "shape":"ValidationExceptionFieldList",
          "documentation":"<p>A list of fields that failed validation.</p>"
        }
      },
      "documentation":"<p>Thrown when the request contains invalid parameters or fails input validation requirements.</p>",
      "exception":true
    },
    "ValidationExceptionErrorCode":{
      "type":"string",
      "enum":[
        "REQUIRED_FIELD_MISSING",
        "INVALID_ENUM_VALUE",
        "INVALID_STRING_FORMAT",
        "INVALID_VALUE",
        "NOT_ENOUGH_VALUES",
        "TOO_MANY_VALUES",
        "INVALID_RESOURCE_STATE",
        "DUPLICATE_KEY_VALUE",
        "VALUE_OUT_OF_RANGE",
        "ACTION_NOT_PERMITTED"
      ]
    },
    "ValidationExceptionField":{
      "type":"structure",
      "required":[
        "Name",
        "Message"
      ],
      "members":{
        "Name":{
          "shape":"String",
          "documentation":"<p>The name of the field that failed validation.</p>"
        },
        "Message":{
          "shape":"String",
          "documentation":"<p>A detailed message explaining why the field validation failed.</p>"
        },
        "Code":{
          "shape":"ValidationExceptionErrorCode",
          "documentation":"<p>An error code explaining why the field validation failed.</p>"
        }
      },
      "documentation":"<p>Represents a field-specific validation error with detailed information.</p>"
    },
    "ValidationExceptionFieldList":{
      "type":"list",
      "member":{"shape":"ValidationExceptionField"}
    },
    "ValidationExceptionReason":{
      "type":"string",
      "enum":[
        "unknownOperation",
        "cannotParse",
        "fieldValidationFailed",
        "other",
        "BUSINESS_VALIDATION_FAILED"
      ]
    }
  },
  "documentation":"<p>AWS Partner Central Benefits Service provides APIs for managing partner benefits, applications, and allocations within the AWS Partner Network ecosystem.</p>"
}
