# File lib/fog/aws/requests/compute/describe_instances.rb, line 59
        def describe_instances(filters = {})
          unless filters.is_a?(Hash)
            Fog::Logger.deprecation("describe_instances with #{filters.class} param is deprecated, use describe_instances('instance-id' => []) instead [light_black](#{caller.first})[/]")
            filters = {'instance-id' => [*filters]}
          end
          params = {}

          next_token  = filters.delete('nextToken') || filters.delete('NextToken')
          max_results = filters.delete('maxResults') || filters.delete('MaxResults')

          if filters['instance-id']
            instance_ids = filters.delete('instance-id')
            instance_ids = [instance_ids] unless instance_ids.is_a?(Array)
            instance_ids.each_with_index do |id, index|
              params.merge!("InstanceId.#{index}" => id)
            end
          end

          params['NextToken']  = next_token if next_token
          params['MaxResults'] = max_results if max_results
          params.merge!(Fog::AWS.indexed_filters(filters))

          request({
            'Action'    => 'DescribeInstances',
            :idempotent => true,
            :parser     => Fog::Parsers::Compute::AWS::DescribeInstances.new
          }.merge!(params))
        end