public object Execute(ExecutorContext context)
 {
     var cmdletContext = context as CmdletContext;
     // create request
     var request = new Amazon.OpenSearchService.Model.DescribeInstanceTypeLimitsRequest();
     
     if (cmdletContext.DomainName != null)
     {
         request.DomainName = cmdletContext.DomainName;
     }
     if (cmdletContext.EngineVersion != null)
     {
         request.EngineVersion = cmdletContext.EngineVersion;
     }
     if (cmdletContext.InstanceType != null)
     {
         request.InstanceType = cmdletContext.InstanceType;
     }
     
     CmdletOutput output;
     
     // issue call
     var client = Client ?? CreateClient(_CurrentCredentials, _RegionEndpoint);
     try
     {
         var response = CallAWSServiceOperation(client, request);
         object pipelineOutput = null;
         pipelineOutput = cmdletContext.Select(response, this);
         output = new CmdletOutput
         {
             PipelineOutput = pipelineOutput,
             ServiceResponse = response
         };
     }
     catch (Exception e)
     {
         output = new CmdletOutput { ErrorResponse = e };
     }
     
     return output;
 }
 private Amazon.OpenSearchService.Model.DescribeInstanceTypeLimitsResponse CallAWSServiceOperation(IAmazonOpenSearchService client, Amazon.OpenSearchService.Model.DescribeInstanceTypeLimitsRequest request)
 {
     Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "Amazon OpenSearch Service", "DescribeInstanceTypeLimits");
     try
     {
         #if DESKTOP
         return client.DescribeInstanceTypeLimits(request);
         #elif CORECLR
         return client.DescribeInstanceTypeLimitsAsync(request).GetAwaiter().GetResult();
         #else
                 #error "Unknown build edition"
         #endif
     }
     catch (AmazonServiceException exc)
     {
         var webException = exc.InnerException as System.Net.WebException;
         if (webException != null)
         {
             throw new Exception(Utils.Common.FormatNameResolutionFailureMessage(client.Config, webException.Message), webException);
         }
         throw;
     }
 }