    # File lib/fog/aws/requests/compute/create_image.rb, line 23
            def create_image(instance_id, name, description, no_reboot = false, options={})
              params = {}
              block_device_mappings = options[:block_device_mappings] ||  []

              params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.DeviceName', block_device_mappings.map{|mapping| mapping['DeviceName']})
              params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.NoDevice', block_device_mappings.map{|mapping| mapping['NoDevice']})
              params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.VirtualName', block_device_mappings.map{|mapping| mapping['VirtualName']})
              params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.SnapshotId', block_device_mappings.map{|mapping| mapping['Ebs.SnapshotId']})
              params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.DeleteOnTermination', block_device_mappings.map{|mapping| mapping['Ebs.DeleteOnTermination']})
              params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.VolumeType', block_device_mappings.map{|mapping| mapping['Ebs.VolumeType']})
              params.merge!Fog::AWS.indexed_param('BlockDeviceMapping.%d.Ebs.Iops', block_device_mappings.map{|mapping| mapping['Ebs.Iops']})
              params.reject!{|k,v| v.nil?}

              request({
                'Action'            => 'CreateImage',
                'InstanceId'        => instance_id,
                'Name'              => name,
                'Description'       => description,
                'NoReboot'          => no_reboot.to_s,
                :parser             => Fog::Parsers::Compute::AWS::CreateImage.new
              }.merge!(params))
            end