# File lib/fog/aws/requests/compute/describe_spot_price_history.rb, line 33
        def describe_spot_price_history(filters = {})
          params = {}

          for key in %w(AvailabilityZone StartTime EndTime MaxResults NextToken)
            if filters.is_a?(Hash) && filters.key?(key)
              params[key] = filters.delete(key)
            end
          end

          if instance_types = filters.delete('InstanceType')
            params.merge!(Fog::AWS.indexed_param('InstanceType', [*instance_types]))
          end

          if product_descriptions = filters.delete('ProductDescription')
            params.merge!(Fog::AWS.indexed_param('ProductDescription', [*product_descriptions]))
          end

          params.merge!(Fog::AWS.indexed_filters(filters))

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