code: def _find_usage_nat_gateways(self, subnet_to_az):
          
          # currently, some regions (sa-east-1 as one example) don't have NAT
          # Gateway service; they return an AuthError,
          # "This request has been administratively disabled."
          try:
              gws_per_az = defaultdict(int)
              for gw in paginate_dict(self.conn.describe_nat_gateways,
                                      alc_marker_path=['NextToken'],
                                      alc_data_path=['NatGateways'],
                                      alc_marker_param='NextToken'
                                      )['NatGateways']:
                  if gw['State'] not in ['pending', 'available']:
                      logger.debug(
                          'Skipping NAT Gateway %s in state: %s',
                          gw['NatGatewayId'], gw['State']
                      )
                      continue
                  if gw['SubnetId'] not in subnet_to_az:
                      logger.error('ERROR: NAT Gateway %s in SubnetId %s, but '
                                   'SubnetId not found in subnet_to_az; Gateway '
                                   'cannot be counted!', gw['NatGatewayId'],
                                   gw['SubnetId'])
                      continue
                  gws_per_az[subnet_to_az[gw['SubnetId']]] += 1
              for az in sorted(gws_per_az.keys()):
                  self.limits['NAT Gateways per AZ']._add_current_usage(
                      gws_per_az[az],
                      resource_id=az,
                      aws_type='AWS::EC2::NatGateway'
                  )
          except ClientError:
              logger.error('Caught exception when trying to list NAT Gateways; '
                           'perhaps NAT service does not exist in this region?',
                           exc_info=1)
docs: find usage for NAT Gateways
  
          :param subnet_to_az: dict mapping subnet ID to AZ
          :type subnet_to_az: dict