docs: public Waiter<DescribeNatGatewaysRequest> natGatewayAvailable() {
  
          return new WaiterBuilder<DescribeNatGatewaysRequest, DescribeNatGatewaysResult>()
                  .withSdkFunction(new DescribeNatGatewaysFunction(client))
                  .withAcceptors(new NatGatewayAvailable.IsAvailableMatcher(), new NatGatewayAvailable.IsFailedMatcher(),
                          new NatGatewayAvailable.IsDeletingMatcher(), new NatGatewayAvailable.IsDeletedMatcher(),
                          new NatGatewayAvailable.IsNatGatewayNotFoundMatcher())
                  .withDefaultPollingStrategy(new PollingStrategy(new MaxAttemptsRetryStrategy(40), new FixedDelayStrategy(15)))
                  .withExecutorService(executorService).build();
      }