/* WARNING: This is auto-generated file. Do not modify, since changes will
 * be lost! Modify the generating script instead.
 */
const char*	getResultName											(VkResult value);
const char*	getStructureTypeName									(VkStructureType value);
const char*	getImageLayoutName										(VkImageLayout value);
const char*	getObjectTypeName										(VkObjectType value);
const char*	getVendorIdName											(VkVendorId value);
const char*	getPipelineCacheHeaderVersionName						(VkPipelineCacheHeaderVersion value);
const char*	getSystemAllocationScopeName							(VkSystemAllocationScope value);
const char*	getInternalAllocationTypeName							(VkInternalAllocationType value);
const char*	getFormatName											(VkFormat value);
const char*	getImageTilingName										(VkImageTiling value);
const char*	getImageTypeName										(VkImageType value);
const char*	getPhysicalDeviceTypeName								(VkPhysicalDeviceType value);
const char*	getQueryTypeName										(VkQueryType value);
const char*	getSharingModeName										(VkSharingMode value);
const char*	getComponentSwizzleName									(VkComponentSwizzle value);
const char*	getImageViewTypeName									(VkImageViewType value);
const char*	getBlendFactorName										(VkBlendFactor value);
const char*	getBlendOpName											(VkBlendOp value);
const char*	getCompareOpName										(VkCompareOp value);
const char*	getDynamicStateName										(VkDynamicState value);
const char*	getFrontFaceName										(VkFrontFace value);
const char*	getVertexInputRateName									(VkVertexInputRate value);
const char*	getPrimitiveTopologyName								(VkPrimitiveTopology value);
const char*	getPolygonModeName										(VkPolygonMode value);
const char*	getStencilOpName										(VkStencilOp value);
const char*	getLogicOpName											(VkLogicOp value);
const char*	getBorderColorName										(VkBorderColor value);
const char*	getFilterName											(VkFilter value);
const char*	getSamplerAddressModeName								(VkSamplerAddressMode value);
const char*	getSamplerMipmapModeName								(VkSamplerMipmapMode value);
const char*	getDescriptorTypeName									(VkDescriptorType value);
const char*	getAttachmentLoadOpName									(VkAttachmentLoadOp value);
const char*	getAttachmentStoreOpName								(VkAttachmentStoreOp value);
const char*	getPipelineBindPointName								(VkPipelineBindPoint value);
const char*	getCommandBufferLevelName								(VkCommandBufferLevel value);
const char*	getIndexTypeName										(VkIndexType value);
const char*	getSubpassContentsName									(VkSubpassContents value);
const char*	getPointClippingBehaviorName							(VkPointClippingBehavior value);
const char*	getTessellationDomainOriginName							(VkTessellationDomainOrigin value);
const char*	getSamplerYcbcrModelConversionName						(VkSamplerYcbcrModelConversion value);
const char*	getSamplerYcbcrRangeName								(VkSamplerYcbcrRange value);
const char*	getChromaLocationName									(VkChromaLocation value);
const char*	getDescriptorUpdateTemplateTypeName						(VkDescriptorUpdateTemplateType value);
const char*	getDriverIdName											(VkDriverId value);
const char*	getShaderFloatControlsIndependenceName					(VkShaderFloatControlsIndependence value);
const char*	getSamplerReductionModeName								(VkSamplerReductionMode value);
const char*	getSemaphoreTypeName									(VkSemaphoreType value);
const char*	getPresentModeKHRName									(VkPresentModeKHR value);
const char*	getColorSpaceKHRName									(VkColorSpaceKHR value);
const char*	getPerformanceCounterUnitKHRName						(VkPerformanceCounterUnitKHR value);
const char*	getPerformanceCounterScopeKHRName						(VkPerformanceCounterScopeKHR value);
const char*	getPerformanceCounterStorageKHRName						(VkPerformanceCounterStorageKHR value);
const char*	getFragmentShadingRateCombinerOpKHRName					(VkFragmentShadingRateCombinerOpKHR value);
const char*	getPipelineExecutableStatisticFormatKHRName				(VkPipelineExecutableStatisticFormatKHR value);
const char*	getDebugReportObjectTypeEXTName							(VkDebugReportObjectTypeEXT value);
const char*	getRasterizationOrderAMDName							(VkRasterizationOrderAMD value);
const char*	getShaderInfoTypeAMDName								(VkShaderInfoTypeAMD value);
const char*	getValidationCheckEXTName								(VkValidationCheckEXT value);
const char*	getDisplayPowerStateEXTName								(VkDisplayPowerStateEXT value);
const char*	getDeviceEventTypeEXTName								(VkDeviceEventTypeEXT value);
const char*	getDisplayEventTypeEXTName								(VkDisplayEventTypeEXT value);
const char*	getViewportCoordinateSwizzleNVName						(VkViewportCoordinateSwizzleNV value);
const char*	getDiscardRectangleModeEXTName							(VkDiscardRectangleModeEXT value);
const char*	getConservativeRasterizationModeEXTName					(VkConservativeRasterizationModeEXT value);
const char*	getBlendOverlapEXTName									(VkBlendOverlapEXT value);
const char*	getCoverageModulationModeNVName							(VkCoverageModulationModeNV value);
const char*	getValidationCacheHeaderVersionEXTName					(VkValidationCacheHeaderVersionEXT value);
const char*	getShadingRatePaletteEntryNVName						(VkShadingRatePaletteEntryNV value);
const char*	getCoarseSampleOrderTypeNVName							(VkCoarseSampleOrderTypeNV value);
const char*	getRayTracingShaderGroupTypeKHRName						(VkRayTracingShaderGroupTypeKHR value);
const char*	getGeometryTypeKHRName									(VkGeometryTypeKHR value);
const char*	getAccelerationStructureTypeKHRName						(VkAccelerationStructureTypeKHR value);
const char*	getCopyAccelerationStructureModeKHRName					(VkCopyAccelerationStructureModeKHR value);
const char*	getAccelerationStructureMemoryRequirementsTypeNVName	(VkAccelerationStructureMemoryRequirementsTypeNV value);
const char*	getQueueGlobalPriorityEXTName							(VkQueueGlobalPriorityEXT value);
const char*	getTimeDomainEXTName									(VkTimeDomainEXT value);
const char*	getMemoryOverallocationBehaviorAMDName					(VkMemoryOverallocationBehaviorAMD value);
const char*	getPerformanceConfigurationTypeINTELName				(VkPerformanceConfigurationTypeINTEL value);
const char*	getQueryPoolSamplingModeINTELName						(VkQueryPoolSamplingModeINTEL value);
const char*	getPerformanceOverrideTypeINTELName						(VkPerformanceOverrideTypeINTEL value);
const char*	getPerformanceParameterTypeINTELName					(VkPerformanceParameterTypeINTEL value);
const char*	getPerformanceValueTypeINTELName						(VkPerformanceValueTypeINTEL value);
const char*	getValidationFeatureEnableEXTName						(VkValidationFeatureEnableEXT value);
const char*	getValidationFeatureDisableEXTName						(VkValidationFeatureDisableEXT value);
const char*	getComponentTypeNVName									(VkComponentTypeNV value);
const char*	getScopeNVName											(VkScopeNV value);
const char*	getCoverageReductionModeNVName							(VkCoverageReductionModeNV value);
const char*	getLineRasterizationModeEXTName							(VkLineRasterizationModeEXT value);
const char*	getIndirectCommandsTokenTypeNVName						(VkIndirectCommandsTokenTypeNV value);
const char*	getDeviceMemoryReportEventTypeEXTName					(VkDeviceMemoryReportEventTypeEXT value);
const char*	getFragmentShadingRateTypeNVName						(VkFragmentShadingRateTypeNV value);
const char*	getFragmentShadingRateNVName							(VkFragmentShadingRateNV value);
const char*	getBuildAccelerationStructureModeKHRName				(VkBuildAccelerationStructureModeKHR value);
const char*	getAccelerationStructureBuildTypeKHRName				(VkAccelerationStructureBuildTypeKHR value);
const char*	getAccelerationStructureCompatibilityKHRName			(VkAccelerationStructureCompatibilityKHR value);
const char*	getShaderGroupShaderKHRName								(VkShaderGroupShaderKHR value);
const char*	getQueryResultStatusKHRName								(VkQueryResultStatusKHR value);
const char*	getdVideoH264ChromaFormatIdcName						(StdVideoH264ChromaFormatIdc value);
const char*	getdVideoH264ProfileIdcName								(StdVideoH264ProfileIdc value);
const char*	getdVideoH264LevelName									(StdVideoH264Level value);
const char*	getdVideoH264PocTypeName								(StdVideoH264PocType value);
const char*	getdVideoH264AspectRatioIdcName							(StdVideoH264AspectRatioIdc value);
const char*	getdVideoH264WeightedBiPredIdcName						(StdVideoH264WeightedBiPredIdc value);
const char*	getdVideoH264ModificationOfPicNumsIdcName				(StdVideoH264ModificationOfPicNumsIdc value);
const char*	getdVideoH264MemMgmtControlOpName						(StdVideoH264MemMgmtControlOp value);
const char*	getdVideoH264CabacInitIdcName							(StdVideoH264CabacInitIdc value);
const char*	getdVideoH264DisableDeblockingFilterIdcName				(StdVideoH264DisableDeblockingFilterIdc value);
const char*	getdVideoH264PictureTypeName							(StdVideoH264PictureType value);
const char*	getdVideoH264SliceTypeName								(StdVideoH264SliceType value);
const char*	getdVideoH264NonVclNaluTypeName							(StdVideoH264NonVclNaluType value);
const char*	getdVideoH265ChromaFormatIdcName						(StdVideoH265ChromaFormatIdc value);
const char*	getdVideoH265ProfileIdcName								(StdVideoH265ProfileIdc value);
const char*	getdVideoH265LevelName									(StdVideoH265Level value);
const char*	getFullScreenExclusiveEXTName							(VkFullScreenExclusiveEXT value);

inline tcu::Format::Enum<VkResult>											getResultStr										(VkResult value)										{ return tcu::Format::Enum<VkResult>(getResultName, value);																					}
inline tcu::Format::Enum<VkStructureType>									getStructureTypeStr									(VkStructureType value)									{ return tcu::Format::Enum<VkStructureType>(getStructureTypeName, value);																	}
inline tcu::Format::Enum<VkImageLayout>										getImageLayoutStr									(VkImageLayout value)									{ return tcu::Format::Enum<VkImageLayout>(getImageLayoutName, value);																		}
inline tcu::Format::Enum<VkObjectType>										getObjectTypeStr									(VkObjectType value)									{ return tcu::Format::Enum<VkObjectType>(getObjectTypeName, value);																			}
inline tcu::Format::Enum<VkVendorId>										getVendorIdStr										(VkVendorId value)										{ return tcu::Format::Enum<VkVendorId>(getVendorIdName, value);																				}
inline tcu::Format::Enum<VkPipelineCacheHeaderVersion>						getPipelineCacheHeaderVersionStr					(VkPipelineCacheHeaderVersion value)					{ return tcu::Format::Enum<VkPipelineCacheHeaderVersion>(getPipelineCacheHeaderVersionName, value);											}
inline tcu::Format::Enum<VkSystemAllocationScope>							getSystemAllocationScopeStr							(VkSystemAllocationScope value)							{ return tcu::Format::Enum<VkSystemAllocationScope>(getSystemAllocationScopeName, value);													}
inline tcu::Format::Enum<VkInternalAllocationType>							getInternalAllocationTypeStr						(VkInternalAllocationType value)						{ return tcu::Format::Enum<VkInternalAllocationType>(getInternalAllocationTypeName, value);													}
inline tcu::Format::Enum<VkFormat>											getFormatStr										(VkFormat value)										{ return tcu::Format::Enum<VkFormat>(getFormatName, value);																					}
inline tcu::Format::Enum<VkImageTiling>										getImageTilingStr									(VkImageTiling value)									{ return tcu::Format::Enum<VkImageTiling>(getImageTilingName, value);																		}
inline tcu::Format::Enum<VkImageType>										getImageTypeStr										(VkImageType value)										{ return tcu::Format::Enum<VkImageType>(getImageTypeName, value);																			}
inline tcu::Format::Enum<VkPhysicalDeviceType>								getPhysicalDeviceTypeStr							(VkPhysicalDeviceType value)							{ return tcu::Format::Enum<VkPhysicalDeviceType>(getPhysicalDeviceTypeName, value);															}
inline tcu::Format::Enum<VkQueryType>										getQueryTypeStr										(VkQueryType value)										{ return tcu::Format::Enum<VkQueryType>(getQueryTypeName, value);																			}
inline tcu::Format::Enum<VkSharingMode>										getSharingModeStr									(VkSharingMode value)									{ return tcu::Format::Enum<VkSharingMode>(getSharingModeName, value);																		}
inline tcu::Format::Enum<VkComponentSwizzle>								getComponentSwizzleStr								(VkComponentSwizzle value)								{ return tcu::Format::Enum<VkComponentSwizzle>(getComponentSwizzleName, value);																}
inline tcu::Format::Enum<VkImageViewType>									getImageViewTypeStr									(VkImageViewType value)									{ return tcu::Format::Enum<VkImageViewType>(getImageViewTypeName, value);																	}
inline tcu::Format::Enum<VkBlendFactor>										getBlendFactorStr									(VkBlendFactor value)									{ return tcu::Format::Enum<VkBlendFactor>(getBlendFactorName, value);																		}
inline tcu::Format::Enum<VkBlendOp>											getBlendOpStr										(VkBlendOp value)										{ return tcu::Format::Enum<VkBlendOp>(getBlendOpName, value);																				}
inline tcu::Format::Enum<VkCompareOp>										getCompareOpStr										(VkCompareOp value)										{ return tcu::Format::Enum<VkCompareOp>(getCompareOpName, value);																			}
inline tcu::Format::Enum<VkDynamicState>									getDynamicStateStr									(VkDynamicState value)									{ return tcu::Format::Enum<VkDynamicState>(getDynamicStateName, value);																		}
inline tcu::Format::Enum<VkFrontFace>										getFrontFaceStr										(VkFrontFace value)										{ return tcu::Format::Enum<VkFrontFace>(getFrontFaceName, value);																			}
inline tcu::Format::Enum<VkVertexInputRate>									getVertexInputRateStr								(VkVertexInputRate value)								{ return tcu::Format::Enum<VkVertexInputRate>(getVertexInputRateName, value);																}
inline tcu::Format::Enum<VkPrimitiveTopology>								getPrimitiveTopologyStr								(VkPrimitiveTopology value)								{ return tcu::Format::Enum<VkPrimitiveTopology>(getPrimitiveTopologyName, value);															}
inline tcu::Format::Enum<VkPolygonMode>										getPolygonModeStr									(VkPolygonMode value)									{ return tcu::Format::Enum<VkPolygonMode>(getPolygonModeName, value);																		}
inline tcu::Format::Enum<VkStencilOp>										getStencilOpStr										(VkStencilOp value)										{ return tcu::Format::Enum<VkStencilOp>(getStencilOpName, value);																			}
inline tcu::Format::Enum<VkLogicOp>											getLogicOpStr										(VkLogicOp value)										{ return tcu::Format::Enum<VkLogicOp>(getLogicOpName, value);																				}
inline tcu::Format::Enum<VkBorderColor>										getBorderColorStr									(VkBorderColor value)									{ return tcu::Format::Enum<VkBorderColor>(getBorderColorName, value);																		}
inline tcu::Format::Enum<VkFilter>											getFilterStr										(VkFilter value)										{ return tcu::Format::Enum<VkFilter>(getFilterName, value);																					}
inline tcu::Format::Enum<VkSamplerAddressMode>								getSamplerAddressModeStr							(VkSamplerAddressMode value)							{ return tcu::Format::Enum<VkSamplerAddressMode>(getSamplerAddressModeName, value);															}
inline tcu::Format::Enum<VkSamplerMipmapMode>								getSamplerMipmapModeStr								(VkSamplerMipmapMode value)								{ return tcu::Format::Enum<VkSamplerMipmapMode>(getSamplerMipmapModeName, value);															}
inline tcu::Format::Enum<VkDescriptorType>									getDescriptorTypeStr								(VkDescriptorType value)								{ return tcu::Format::Enum<VkDescriptorType>(getDescriptorTypeName, value);																	}
inline tcu::Format::Enum<VkAttachmentLoadOp>								getAttachmentLoadOpStr								(VkAttachmentLoadOp value)								{ return tcu::Format::Enum<VkAttachmentLoadOp>(getAttachmentLoadOpName, value);																}
inline tcu::Format::Enum<VkAttachmentStoreOp>								getAttachmentStoreOpStr								(VkAttachmentStoreOp value)								{ return tcu::Format::Enum<VkAttachmentStoreOp>(getAttachmentStoreOpName, value);															}
inline tcu::Format::Enum<VkPipelineBindPoint>								getPipelineBindPointStr								(VkPipelineBindPoint value)								{ return tcu::Format::Enum<VkPipelineBindPoint>(getPipelineBindPointName, value);															}
inline tcu::Format::Enum<VkCommandBufferLevel>								getCommandBufferLevelStr							(VkCommandBufferLevel value)							{ return tcu::Format::Enum<VkCommandBufferLevel>(getCommandBufferLevelName, value);															}
inline tcu::Format::Enum<VkIndexType>										getIndexTypeStr										(VkIndexType value)										{ return tcu::Format::Enum<VkIndexType>(getIndexTypeName, value);																			}
inline tcu::Format::Enum<VkSubpassContents>									getSubpassContentsStr								(VkSubpassContents value)								{ return tcu::Format::Enum<VkSubpassContents>(getSubpassContentsName, value);																}
inline tcu::Format::Enum<VkPointClippingBehavior>							getPointClippingBehaviorStr							(VkPointClippingBehavior value)							{ return tcu::Format::Enum<VkPointClippingBehavior>(getPointClippingBehaviorName, value);													}
inline tcu::Format::Enum<VkTessellationDomainOrigin>						getTessellationDomainOriginStr						(VkTessellationDomainOrigin value)						{ return tcu::Format::Enum<VkTessellationDomainOrigin>(getTessellationDomainOriginName, value);												}
inline tcu::Format::Enum<VkSamplerYcbcrModelConversion>						getSamplerYcbcrModelConversionStr					(VkSamplerYcbcrModelConversion value)					{ return tcu::Format::Enum<VkSamplerYcbcrModelConversion>(getSamplerYcbcrModelConversionName, value);										}
inline tcu::Format::Enum<VkSamplerYcbcrRange>								getSamplerYcbcrRangeStr								(VkSamplerYcbcrRange value)								{ return tcu::Format::Enum<VkSamplerYcbcrRange>(getSamplerYcbcrRangeName, value);															}
inline tcu::Format::Enum<VkChromaLocation>									getChromaLocationStr								(VkChromaLocation value)								{ return tcu::Format::Enum<VkChromaLocation>(getChromaLocationName, value);																	}
inline tcu::Format::Enum<VkDescriptorUpdateTemplateType>					getDescriptorUpdateTemplateTypeStr					(VkDescriptorUpdateTemplateType value)					{ return tcu::Format::Enum<VkDescriptorUpdateTemplateType>(getDescriptorUpdateTemplateTypeName, value);										}
inline tcu::Format::Enum<VkDriverId>										getDriverIdStr										(VkDriverId value)										{ return tcu::Format::Enum<VkDriverId>(getDriverIdName, value);																				}
inline tcu::Format::Enum<VkShaderFloatControlsIndependence>					getShaderFloatControlsIndependenceStr				(VkShaderFloatControlsIndependence value)				{ return tcu::Format::Enum<VkShaderFloatControlsIndependence>(getShaderFloatControlsIndependenceName, value);								}
inline tcu::Format::Enum<VkSamplerReductionMode>							getSamplerReductionModeStr							(VkSamplerReductionMode value)							{ return tcu::Format::Enum<VkSamplerReductionMode>(getSamplerReductionModeName, value);														}
inline tcu::Format::Enum<VkSemaphoreType>									getSemaphoreTypeStr									(VkSemaphoreType value)									{ return tcu::Format::Enum<VkSemaphoreType>(getSemaphoreTypeName, value);																	}
inline tcu::Format::Enum<VkPresentModeKHR>									getPresentModeKHRStr								(VkPresentModeKHR value)								{ return tcu::Format::Enum<VkPresentModeKHR>(getPresentModeKHRName, value);																	}
inline tcu::Format::Enum<VkColorSpaceKHR>									getColorSpaceKHRStr									(VkColorSpaceKHR value)									{ return tcu::Format::Enum<VkColorSpaceKHR>(getColorSpaceKHRName, value);																	}
inline tcu::Format::Enum<VkPerformanceCounterUnitKHR>						getPerformanceCounterUnitKHRStr						(VkPerformanceCounterUnitKHR value)						{ return tcu::Format::Enum<VkPerformanceCounterUnitKHR>(getPerformanceCounterUnitKHRName, value);											}
inline tcu::Format::Enum<VkPerformanceCounterScopeKHR>						getPerformanceCounterScopeKHRStr					(VkPerformanceCounterScopeKHR value)					{ return tcu::Format::Enum<VkPerformanceCounterScopeKHR>(getPerformanceCounterScopeKHRName, value);											}
inline tcu::Format::Enum<VkPerformanceCounterStorageKHR>					getPerformanceCounterStorageKHRStr					(VkPerformanceCounterStorageKHR value)					{ return tcu::Format::Enum<VkPerformanceCounterStorageKHR>(getPerformanceCounterStorageKHRName, value);										}
inline tcu::Format::Enum<VkFragmentShadingRateCombinerOpKHR>				getFragmentShadingRateCombinerOpKHRStr				(VkFragmentShadingRateCombinerOpKHR value)				{ return tcu::Format::Enum<VkFragmentShadingRateCombinerOpKHR>(getFragmentShadingRateCombinerOpKHRName, value);								}
inline tcu::Format::Enum<VkPipelineExecutableStatisticFormatKHR>			getPipelineExecutableStatisticFormatKHRStr			(VkPipelineExecutableStatisticFormatKHR value)			{ return tcu::Format::Enum<VkPipelineExecutableStatisticFormatKHR>(getPipelineExecutableStatisticFormatKHRName, value);						}
inline tcu::Format::Enum<VkDebugReportObjectTypeEXT>						getDebugReportObjectTypeEXTStr						(VkDebugReportObjectTypeEXT value)						{ return tcu::Format::Enum<VkDebugReportObjectTypeEXT>(getDebugReportObjectTypeEXTName, value);												}
inline tcu::Format::Enum<VkRasterizationOrderAMD>							getRasterizationOrderAMDStr							(VkRasterizationOrderAMD value)							{ return tcu::Format::Enum<VkRasterizationOrderAMD>(getRasterizationOrderAMDName, value);													}
inline tcu::Format::Enum<VkShaderInfoTypeAMD>								getShaderInfoTypeAMDStr								(VkShaderInfoTypeAMD value)								{ return tcu::Format::Enum<VkShaderInfoTypeAMD>(getShaderInfoTypeAMDName, value);															}
inline tcu::Format::Enum<VkValidationCheckEXT>								getValidationCheckEXTStr							(VkValidationCheckEXT value)							{ return tcu::Format::Enum<VkValidationCheckEXT>(getValidationCheckEXTName, value);															}
inline tcu::Format::Enum<VkDisplayPowerStateEXT>							getDisplayPowerStateEXTStr							(VkDisplayPowerStateEXT value)							{ return tcu::Format::Enum<VkDisplayPowerStateEXT>(getDisplayPowerStateEXTName, value);														}
inline tcu::Format::Enum<VkDeviceEventTypeEXT>								getDeviceEventTypeEXTStr							(VkDeviceEventTypeEXT value)							{ return tcu::Format::Enum<VkDeviceEventTypeEXT>(getDeviceEventTypeEXTName, value);															}
inline tcu::Format::Enum<VkDisplayEventTypeEXT>								getDisplayEventTypeEXTStr							(VkDisplayEventTypeEXT value)							{ return tcu::Format::Enum<VkDisplayEventTypeEXT>(getDisplayEventTypeEXTName, value);														}
inline tcu::Format::Enum<VkViewportCoordinateSwizzleNV>						getViewportCoordinateSwizzleNVStr					(VkViewportCoordinateSwizzleNV value)					{ return tcu::Format::Enum<VkViewportCoordinateSwizzleNV>(getViewportCoordinateSwizzleNVName, value);										}
inline tcu::Format::Enum<VkDiscardRectangleModeEXT>							getDiscardRectangleModeEXTStr						(VkDiscardRectangleModeEXT value)						{ return tcu::Format::Enum<VkDiscardRectangleModeEXT>(getDiscardRectangleModeEXTName, value);												}
inline tcu::Format::Enum<VkConservativeRasterizationModeEXT>				getConservativeRasterizationModeEXTStr				(VkConservativeRasterizationModeEXT value)				{ return tcu::Format::Enum<VkConservativeRasterizationModeEXT>(getConservativeRasterizationModeEXTName, value);								}
inline tcu::Format::Enum<VkBlendOverlapEXT>									getBlendOverlapEXTStr								(VkBlendOverlapEXT value)								{ return tcu::Format::Enum<VkBlendOverlapEXT>(getBlendOverlapEXTName, value);																}
inline tcu::Format::Enum<VkCoverageModulationModeNV>						getCoverageModulationModeNVStr						(VkCoverageModulationModeNV value)						{ return tcu::Format::Enum<VkCoverageModulationModeNV>(getCoverageModulationModeNVName, value);												}
inline tcu::Format::Enum<VkValidationCacheHeaderVersionEXT>					getValidationCacheHeaderVersionEXTStr				(VkValidationCacheHeaderVersionEXT value)				{ return tcu::Format::Enum<VkValidationCacheHeaderVersionEXT>(getValidationCacheHeaderVersionEXTName, value);								}
inline tcu::Format::Enum<VkShadingRatePaletteEntryNV>						getShadingRatePaletteEntryNVStr						(VkShadingRatePaletteEntryNV value)						{ return tcu::Format::Enum<VkShadingRatePaletteEntryNV>(getShadingRatePaletteEntryNVName, value);											}
inline tcu::Format::Enum<VkCoarseSampleOrderTypeNV>							getCoarseSampleOrderTypeNVStr						(VkCoarseSampleOrderTypeNV value)						{ return tcu::Format::Enum<VkCoarseSampleOrderTypeNV>(getCoarseSampleOrderTypeNVName, value);												}
inline tcu::Format::Enum<VkRayTracingShaderGroupTypeKHR>					getRayTracingShaderGroupTypeKHRStr					(VkRayTracingShaderGroupTypeKHR value)					{ return tcu::Format::Enum<VkRayTracingShaderGroupTypeKHR>(getRayTracingShaderGroupTypeKHRName, value);										}
inline tcu::Format::Enum<VkGeometryTypeKHR>									getGeometryTypeKHRStr								(VkGeometryTypeKHR value)								{ return tcu::Format::Enum<VkGeometryTypeKHR>(getGeometryTypeKHRName, value);																}
inline tcu::Format::Enum<VkAccelerationStructureTypeKHR>					getAccelerationStructureTypeKHRStr					(VkAccelerationStructureTypeKHR value)					{ return tcu::Format::Enum<VkAccelerationStructureTypeKHR>(getAccelerationStructureTypeKHRName, value);										}
inline tcu::Format::Enum<VkCopyAccelerationStructureModeKHR>				getCopyAccelerationStructureModeKHRStr				(VkCopyAccelerationStructureModeKHR value)				{ return tcu::Format::Enum<VkCopyAccelerationStructureModeKHR>(getCopyAccelerationStructureModeKHRName, value);								}
inline tcu::Format::Enum<VkAccelerationStructureMemoryRequirementsTypeNV>	getAccelerationStructureMemoryRequirementsTypeNVStr	(VkAccelerationStructureMemoryRequirementsTypeNV value)	{ return tcu::Format::Enum<VkAccelerationStructureMemoryRequirementsTypeNV>(getAccelerationStructureMemoryRequirementsTypeNVName, value);	}
inline tcu::Format::Enum<VkQueueGlobalPriorityEXT>							getQueueGlobalPriorityEXTStr						(VkQueueGlobalPriorityEXT value)						{ return tcu::Format::Enum<VkQueueGlobalPriorityEXT>(getQueueGlobalPriorityEXTName, value);													}
inline tcu::Format::Enum<VkTimeDomainEXT>									getTimeDomainEXTStr									(VkTimeDomainEXT value)									{ return tcu::Format::Enum<VkTimeDomainEXT>(getTimeDomainEXTName, value);																	}
inline tcu::Format::Enum<VkMemoryOverallocationBehaviorAMD>					getMemoryOverallocationBehaviorAMDStr				(VkMemoryOverallocationBehaviorAMD value)				{ return tcu::Format::Enum<VkMemoryOverallocationBehaviorAMD>(getMemoryOverallocationBehaviorAMDName, value);								}
inline tcu::Format::Enum<VkPerformanceConfigurationTypeINTEL>				getPerformanceConfigurationTypeINTELStr				(VkPerformanceConfigurationTypeINTEL value)				{ return tcu::Format::Enum<VkPerformanceConfigurationTypeINTEL>(getPerformanceConfigurationTypeINTELName, value);							}
inline tcu::Format::Enum<VkQueryPoolSamplingModeINTEL>						getQueryPoolSamplingModeINTELStr					(VkQueryPoolSamplingModeINTEL value)					{ return tcu::Format::Enum<VkQueryPoolSamplingModeINTEL>(getQueryPoolSamplingModeINTELName, value);											}
inline tcu::Format::Enum<VkPerformanceOverrideTypeINTEL>					getPerformanceOverrideTypeINTELStr					(VkPerformanceOverrideTypeINTEL value)					{ return tcu::Format::Enum<VkPerformanceOverrideTypeINTEL>(getPerformanceOverrideTypeINTELName, value);										}
inline tcu::Format::Enum<VkPerformanceParameterTypeINTEL>					getPerformanceParameterTypeINTELStr					(VkPerformanceParameterTypeINTEL value)					{ return tcu::Format::Enum<VkPerformanceParameterTypeINTEL>(getPerformanceParameterTypeINTELName, value);									}
inline tcu::Format::Enum<VkPerformanceValueTypeINTEL>						getPerformanceValueTypeINTELStr						(VkPerformanceValueTypeINTEL value)						{ return tcu::Format::Enum<VkPerformanceValueTypeINTEL>(getPerformanceValueTypeINTELName, value);											}
inline tcu::Format::Enum<VkValidationFeatureEnableEXT>						getValidationFeatureEnableEXTStr					(VkValidationFeatureEnableEXT value)					{ return tcu::Format::Enum<VkValidationFeatureEnableEXT>(getValidationFeatureEnableEXTName, value);											}
inline tcu::Format::Enum<VkValidationFeatureDisableEXT>						getValidationFeatureDisableEXTStr					(VkValidationFeatureDisableEXT value)					{ return tcu::Format::Enum<VkValidationFeatureDisableEXT>(getValidationFeatureDisableEXTName, value);										}
inline tcu::Format::Enum<VkComponentTypeNV>									getComponentTypeNVStr								(VkComponentTypeNV value)								{ return tcu::Format::Enum<VkComponentTypeNV>(getComponentTypeNVName, value);																}
inline tcu::Format::Enum<VkScopeNV>											getScopeNVStr										(VkScopeNV value)										{ return tcu::Format::Enum<VkScopeNV>(getScopeNVName, value);																				}
inline tcu::Format::Enum<VkCoverageReductionModeNV>							getCoverageReductionModeNVStr						(VkCoverageReductionModeNV value)						{ return tcu::Format::Enum<VkCoverageReductionModeNV>(getCoverageReductionModeNVName, value);												}
inline tcu::Format::Enum<VkLineRasterizationModeEXT>						getLineRasterizationModeEXTStr						(VkLineRasterizationModeEXT value)						{ return tcu::Format::Enum<VkLineRasterizationModeEXT>(getLineRasterizationModeEXTName, value);												}
inline tcu::Format::Enum<VkIndirectCommandsTokenTypeNV>						getIndirectCommandsTokenTypeNVStr					(VkIndirectCommandsTokenTypeNV value)					{ return tcu::Format::Enum<VkIndirectCommandsTokenTypeNV>(getIndirectCommandsTokenTypeNVName, value);										}
inline tcu::Format::Enum<VkDeviceMemoryReportEventTypeEXT>					getDeviceMemoryReportEventTypeEXTStr				(VkDeviceMemoryReportEventTypeEXT value)				{ return tcu::Format::Enum<VkDeviceMemoryReportEventTypeEXT>(getDeviceMemoryReportEventTypeEXTName, value);									}
inline tcu::Format::Enum<VkFragmentShadingRateTypeNV>						getFragmentShadingRateTypeNVStr						(VkFragmentShadingRateTypeNV value)						{ return tcu::Format::Enum<VkFragmentShadingRateTypeNV>(getFragmentShadingRateTypeNVName, value);											}
inline tcu::Format::Enum<VkFragmentShadingRateNV>							getFragmentShadingRateNVStr							(VkFragmentShadingRateNV value)							{ return tcu::Format::Enum<VkFragmentShadingRateNV>(getFragmentShadingRateNVName, value);													}
inline tcu::Format::Enum<VkBuildAccelerationStructureModeKHR>				getBuildAccelerationStructureModeKHRStr				(VkBuildAccelerationStructureModeKHR value)				{ return tcu::Format::Enum<VkBuildAccelerationStructureModeKHR>(getBuildAccelerationStructureModeKHRName, value);							}
inline tcu::Format::Enum<VkAccelerationStructureBuildTypeKHR>				getAccelerationStructureBuildTypeKHRStr				(VkAccelerationStructureBuildTypeKHR value)				{ return tcu::Format::Enum<VkAccelerationStructureBuildTypeKHR>(getAccelerationStructureBuildTypeKHRName, value);							}
inline tcu::Format::Enum<VkAccelerationStructureCompatibilityKHR>			getAccelerationStructureCompatibilityKHRStr			(VkAccelerationStructureCompatibilityKHR value)			{ return tcu::Format::Enum<VkAccelerationStructureCompatibilityKHR>(getAccelerationStructureCompatibilityKHRName, value);					}
inline tcu::Format::Enum<VkShaderGroupShaderKHR>							getShaderGroupShaderKHRStr							(VkShaderGroupShaderKHR value)							{ return tcu::Format::Enum<VkShaderGroupShaderKHR>(getShaderGroupShaderKHRName, value);														}
inline tcu::Format::Enum<VkQueryResultStatusKHR>							getQueryResultStatusKHRStr							(VkQueryResultStatusKHR value)							{ return tcu::Format::Enum<VkQueryResultStatusKHR>(getQueryResultStatusKHRName, value);														}
inline tcu::Format::Enum<StdVideoH264ChromaFormatIdc>						getdVideoH264ChromaFormatIdcStr						(StdVideoH264ChromaFormatIdc value)						{ return tcu::Format::Enum<StdVideoH264ChromaFormatIdc>(getdVideoH264ChromaFormatIdcName, value);											}
inline tcu::Format::Enum<StdVideoH264ProfileIdc>							getdVideoH264ProfileIdcStr							(StdVideoH264ProfileIdc value)							{ return tcu::Format::Enum<StdVideoH264ProfileIdc>(getdVideoH264ProfileIdcName, value);														}
inline tcu::Format::Enum<StdVideoH264Level>									getdVideoH264LevelStr								(StdVideoH264Level value)								{ return tcu::Format::Enum<StdVideoH264Level>(getdVideoH264LevelName, value);																}
inline tcu::Format::Enum<StdVideoH264PocType>								getdVideoH264PocTypeStr								(StdVideoH264PocType value)								{ return tcu::Format::Enum<StdVideoH264PocType>(getdVideoH264PocTypeName, value);															}
inline tcu::Format::Enum<StdVideoH264AspectRatioIdc>						getdVideoH264AspectRatioIdcStr						(StdVideoH264AspectRatioIdc value)						{ return tcu::Format::Enum<StdVideoH264AspectRatioIdc>(getdVideoH264AspectRatioIdcName, value);												}
inline tcu::Format::Enum<StdVideoH264WeightedBiPredIdc>						getdVideoH264WeightedBiPredIdcStr					(StdVideoH264WeightedBiPredIdc value)					{ return tcu::Format::Enum<StdVideoH264WeightedBiPredIdc>(getdVideoH264WeightedBiPredIdcName, value);										}
inline tcu::Format::Enum<StdVideoH264ModificationOfPicNumsIdc>				getdVideoH264ModificationOfPicNumsIdcStr			(StdVideoH264ModificationOfPicNumsIdc value)			{ return tcu::Format::Enum<StdVideoH264ModificationOfPicNumsIdc>(getdVideoH264ModificationOfPicNumsIdcName, value);							}
inline tcu::Format::Enum<StdVideoH264MemMgmtControlOp>						getdVideoH264MemMgmtControlOpStr					(StdVideoH264MemMgmtControlOp value)					{ return tcu::Format::Enum<StdVideoH264MemMgmtControlOp>(getdVideoH264MemMgmtControlOpName, value);											}
inline tcu::Format::Enum<StdVideoH264CabacInitIdc>							getdVideoH264CabacInitIdcStr						(StdVideoH264CabacInitIdc value)						{ return tcu::Format::Enum<StdVideoH264CabacInitIdc>(getdVideoH264CabacInitIdcName, value);													}
inline tcu::Format::Enum<StdVideoH264DisableDeblockingFilterIdc>			getdVideoH264DisableDeblockingFilterIdcStr			(StdVideoH264DisableDeblockingFilterIdc value)			{ return tcu::Format::Enum<StdVideoH264DisableDeblockingFilterIdc>(getdVideoH264DisableDeblockingFilterIdcName, value);						}
inline tcu::Format::Enum<StdVideoH264PictureType>							getdVideoH264PictureTypeStr							(StdVideoH264PictureType value)							{ return tcu::Format::Enum<StdVideoH264PictureType>(getdVideoH264PictureTypeName, value);													}
inline tcu::Format::Enum<StdVideoH264SliceType>								getdVideoH264SliceTypeStr							(StdVideoH264SliceType value)							{ return tcu::Format::Enum<StdVideoH264SliceType>(getdVideoH264SliceTypeName, value);														}
inline tcu::Format::Enum<StdVideoH264NonVclNaluType>						getdVideoH264NonVclNaluTypeStr						(StdVideoH264NonVclNaluType value)						{ return tcu::Format::Enum<StdVideoH264NonVclNaluType>(getdVideoH264NonVclNaluTypeName, value);												}
inline tcu::Format::Enum<StdVideoH265ChromaFormatIdc>						getdVideoH265ChromaFormatIdcStr						(StdVideoH265ChromaFormatIdc value)						{ return tcu::Format::Enum<StdVideoH265ChromaFormatIdc>(getdVideoH265ChromaFormatIdcName, value);											}
inline tcu::Format::Enum<StdVideoH265ProfileIdc>							getdVideoH265ProfileIdcStr							(StdVideoH265ProfileIdc value)							{ return tcu::Format::Enum<StdVideoH265ProfileIdc>(getdVideoH265ProfileIdcName, value);														}
inline tcu::Format::Enum<StdVideoH265Level>									getdVideoH265LevelStr								(StdVideoH265Level value)								{ return tcu::Format::Enum<StdVideoH265Level>(getdVideoH265LevelName, value);																}
inline tcu::Format::Enum<VkFullScreenExclusiveEXT>							getFullScreenExclusiveEXTStr						(VkFullScreenExclusiveEXT value)						{ return tcu::Format::Enum<VkFullScreenExclusiveEXT>(getFullScreenExclusiveEXTName, value);													}

inline std::ostream&	operator<<	(std::ostream& s, VkResult value)											{ return s << getResultStr(value);											}
inline std::ostream&	operator<<	(std::ostream& s, VkStructureType value)									{ return s << getStructureTypeStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkImageLayout value)										{ return s << getImageLayoutStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkObjectType value)										{ return s << getObjectTypeStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkVendorId value)											{ return s << getVendorIdStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkPipelineCacheHeaderVersion value)						{ return s << getPipelineCacheHeaderVersionStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkSystemAllocationScope value)							{ return s << getSystemAllocationScopeStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, VkInternalAllocationType value)							{ return s << getInternalAllocationTypeStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, VkFormat value)											{ return s << getFormatStr(value);											}
inline std::ostream&	operator<<	(std::ostream& s, VkImageTiling value)										{ return s << getImageTilingStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkImageType value)										{ return s << getImageTypeStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkPhysicalDeviceType value)								{ return s << getPhysicalDeviceTypeStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkQueryType value)										{ return s << getQueryTypeStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkSharingMode value)										{ return s << getSharingModeStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkComponentSwizzle value)									{ return s << getComponentSwizzleStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkImageViewType value)									{ return s << getImageViewTypeStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkBlendFactor value)										{ return s << getBlendFactorStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkBlendOp value)											{ return s << getBlendOpStr(value);											}
inline std::ostream&	operator<<	(std::ostream& s, VkCompareOp value)										{ return s << getCompareOpStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkDynamicState value)										{ return s << getDynamicStateStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkFrontFace value)										{ return s << getFrontFaceStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkVertexInputRate value)									{ return s << getVertexInputRateStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkPrimitiveTopology value)								{ return s << getPrimitiveTopologyStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkPolygonMode value)										{ return s << getPolygonModeStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkStencilOp value)										{ return s << getStencilOpStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkLogicOp value)											{ return s << getLogicOpStr(value);											}
inline std::ostream&	operator<<	(std::ostream& s, VkBorderColor value)										{ return s << getBorderColorStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkFilter value)											{ return s << getFilterStr(value);											}
inline std::ostream&	operator<<	(std::ostream& s, VkSamplerAddressMode value)								{ return s << getSamplerAddressModeStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkSamplerMipmapMode value)								{ return s << getSamplerMipmapModeStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkDescriptorType value)									{ return s << getDescriptorTypeStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkAttachmentLoadOp value)									{ return s << getAttachmentLoadOpStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkAttachmentStoreOp value)								{ return s << getAttachmentStoreOpStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkPipelineBindPoint value)								{ return s << getPipelineBindPointStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkCommandBufferLevel value)								{ return s << getCommandBufferLevelStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkIndexType value)										{ return s << getIndexTypeStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkSubpassContents value)									{ return s << getSubpassContentsStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkPointClippingBehavior value)							{ return s << getPointClippingBehaviorStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, VkTessellationDomainOrigin value)							{ return s << getTessellationDomainOriginStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkSamplerYcbcrModelConversion value)						{ return s << getSamplerYcbcrModelConversionStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkSamplerYcbcrRange value)								{ return s << getSamplerYcbcrRangeStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkChromaLocation value)									{ return s << getChromaLocationStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkDescriptorUpdateTemplateType value)						{ return s << getDescriptorUpdateTemplateTypeStr(value);					}
inline std::ostream&	operator<<	(std::ostream& s, VkDriverId value)											{ return s << getDriverIdStr(value);										}
inline std::ostream&	operator<<	(std::ostream& s, VkShaderFloatControlsIndependence value)					{ return s << getShaderFloatControlsIndependenceStr(value);					}
inline std::ostream&	operator<<	(std::ostream& s, VkSamplerReductionMode value)								{ return s << getSamplerReductionModeStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, VkSemaphoreType value)									{ return s << getSemaphoreTypeStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkPresentModeKHR value)									{ return s << getPresentModeKHRStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkColorSpaceKHR value)									{ return s << getColorSpaceKHRStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkPerformanceCounterUnitKHR value)						{ return s << getPerformanceCounterUnitKHRStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkPerformanceCounterScopeKHR value)						{ return s << getPerformanceCounterScopeKHRStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkPerformanceCounterStorageKHR value)						{ return s << getPerformanceCounterStorageKHRStr(value);					}
inline std::ostream&	operator<<	(std::ostream& s, VkFragmentShadingRateCombinerOpKHR value)					{ return s << getFragmentShadingRateCombinerOpKHRStr(value);				}
inline std::ostream&	operator<<	(std::ostream& s, VkPipelineExecutableStatisticFormatKHR value)				{ return s << getPipelineExecutableStatisticFormatKHRStr(value);			}
inline std::ostream&	operator<<	(std::ostream& s, VkDebugReportObjectTypeEXT value)							{ return s << getDebugReportObjectTypeEXTStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkRasterizationOrderAMD value)							{ return s << getRasterizationOrderAMDStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, VkShaderInfoTypeAMD value)								{ return s << getShaderInfoTypeAMDStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkValidationCheckEXT value)								{ return s << getValidationCheckEXTStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkDisplayPowerStateEXT value)								{ return s << getDisplayPowerStateEXTStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, VkDeviceEventTypeEXT value)								{ return s << getDeviceEventTypeEXTStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkDisplayEventTypeEXT value)								{ return s << getDisplayEventTypeEXTStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, VkViewportCoordinateSwizzleNV value)						{ return s << getViewportCoordinateSwizzleNVStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkDiscardRectangleModeEXT value)							{ return s << getDiscardRectangleModeEXTStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, VkConservativeRasterizationModeEXT value)					{ return s << getConservativeRasterizationModeEXTStr(value);				}
inline std::ostream&	operator<<	(std::ostream& s, VkBlendOverlapEXT value)									{ return s << getBlendOverlapEXTStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkCoverageModulationModeNV value)							{ return s << getCoverageModulationModeNVStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkValidationCacheHeaderVersionEXT value)					{ return s << getValidationCacheHeaderVersionEXTStr(value);					}
inline std::ostream&	operator<<	(std::ostream& s, VkShadingRatePaletteEntryNV value)						{ return s << getShadingRatePaletteEntryNVStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkCoarseSampleOrderTypeNV value)							{ return s << getCoarseSampleOrderTypeNVStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, VkRayTracingShaderGroupTypeKHR value)						{ return s << getRayTracingShaderGroupTypeKHRStr(value);					}
inline std::ostream&	operator<<	(std::ostream& s, VkGeometryTypeKHR value)									{ return s << getGeometryTypeKHRStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkAccelerationStructureTypeKHR value)						{ return s << getAccelerationStructureTypeKHRStr(value);					}
inline std::ostream&	operator<<	(std::ostream& s, VkCopyAccelerationStructureModeKHR value)					{ return s << getCopyAccelerationStructureModeKHRStr(value);				}
inline std::ostream&	operator<<	(std::ostream& s, VkAccelerationStructureMemoryRequirementsTypeNV value)	{ return s << getAccelerationStructureMemoryRequirementsTypeNVStr(value);	}
inline std::ostream&	operator<<	(std::ostream& s, VkQueueGlobalPriorityEXT value)							{ return s << getQueueGlobalPriorityEXTStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, VkTimeDomainEXT value)									{ return s << getTimeDomainEXTStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkMemoryOverallocationBehaviorAMD value)					{ return s << getMemoryOverallocationBehaviorAMDStr(value);					}
inline std::ostream&	operator<<	(std::ostream& s, VkPerformanceConfigurationTypeINTEL value)				{ return s << getPerformanceConfigurationTypeINTELStr(value);				}
inline std::ostream&	operator<<	(std::ostream& s, VkQueryPoolSamplingModeINTEL value)						{ return s << getQueryPoolSamplingModeINTELStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkPerformanceOverrideTypeINTEL value)						{ return s << getPerformanceOverrideTypeINTELStr(value);					}
inline std::ostream&	operator<<	(std::ostream& s, VkPerformanceParameterTypeINTEL value)					{ return s << getPerformanceParameterTypeINTELStr(value);					}
inline std::ostream&	operator<<	(std::ostream& s, VkPerformanceValueTypeINTEL value)						{ return s << getPerformanceValueTypeINTELStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkValidationFeatureEnableEXT value)						{ return s << getValidationFeatureEnableEXTStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkValidationFeatureDisableEXT value)						{ return s << getValidationFeatureDisableEXTStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkComponentTypeNV value)									{ return s << getComponentTypeNVStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkScopeNV value)											{ return s << getScopeNVStr(value);											}
inline std::ostream&	operator<<	(std::ostream& s, VkCoverageReductionModeNV value)							{ return s << getCoverageReductionModeNVStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, VkLineRasterizationModeEXT value)							{ return s << getLineRasterizationModeEXTStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkIndirectCommandsTokenTypeNV value)						{ return s << getIndirectCommandsTokenTypeNVStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkDeviceMemoryReportEventTypeEXT value)					{ return s << getDeviceMemoryReportEventTypeEXTStr(value);					}
inline std::ostream&	operator<<	(std::ostream& s, VkFragmentShadingRateTypeNV value)						{ return s << getFragmentShadingRateTypeNVStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, VkFragmentShadingRateNV value)							{ return s << getFragmentShadingRateNVStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, VkBuildAccelerationStructureModeKHR value)				{ return s << getBuildAccelerationStructureModeKHRStr(value);				}
inline std::ostream&	operator<<	(std::ostream& s, VkAccelerationStructureBuildTypeKHR value)				{ return s << getAccelerationStructureBuildTypeKHRStr(value);				}
inline std::ostream&	operator<<	(std::ostream& s, VkAccelerationStructureCompatibilityKHR value)			{ return s << getAccelerationStructureCompatibilityKHRStr(value);			}
inline std::ostream&	operator<<	(std::ostream& s, VkShaderGroupShaderKHR value)								{ return s << getShaderGroupShaderKHRStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, VkQueryResultStatusKHR value)								{ return s << getQueryResultStatusKHRStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264ChromaFormatIdc value)						{ return s << getdVideoH264ChromaFormatIdcStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264ProfileIdc value)								{ return s << getdVideoH264ProfileIdcStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264Level value)									{ return s << getdVideoH264LevelStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264PocType value)								{ return s << getdVideoH264PocTypeStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264AspectRatioIdc value)							{ return s << getdVideoH264AspectRatioIdcStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264WeightedBiPredIdc value)						{ return s << getdVideoH264WeightedBiPredIdcStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264ModificationOfPicNumsIdc value)				{ return s << getdVideoH264ModificationOfPicNumsIdcStr(value);				}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264MemMgmtControlOp value)						{ return s << getdVideoH264MemMgmtControlOpStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264CabacInitIdc value)							{ return s << getdVideoH264CabacInitIdcStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264DisableDeblockingFilterIdc value)				{ return s << getdVideoH264DisableDeblockingFilterIdcStr(value);			}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264PictureType value)							{ return s << getdVideoH264PictureTypeStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264SliceType value)								{ return s << getdVideoH264SliceTypeStr(value);								}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH264NonVclNaluType value)							{ return s << getdVideoH264NonVclNaluTypeStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH265ChromaFormatIdc value)						{ return s << getdVideoH265ChromaFormatIdcStr(value);						}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH265ProfileIdc value)								{ return s << getdVideoH265ProfileIdcStr(value);							}
inline std::ostream&	operator<<	(std::ostream& s, StdVideoH265Level value)									{ return s << getdVideoH265LevelStr(value);									}
inline std::ostream&	operator<<	(std::ostream& s, VkFullScreenExclusiveEXT value)							{ return s << getFullScreenExclusiveEXTStr(value);							}

tcu::Format::Bitfield<32>	getAccessFlagsStr											(VkAccessFlags value);
tcu::Format::Bitfield<32>	getImageAspectFlagsStr										(VkImageAspectFlags value);
tcu::Format::Bitfield<32>	getFormatFeatureFlagsStr									(VkFormatFeatureFlags value);
tcu::Format::Bitfield<32>	getImageCreateFlagsStr										(VkImageCreateFlags value);
tcu::Format::Bitfield<32>	getSampleCountFlagsStr										(VkSampleCountFlags value);
tcu::Format::Bitfield<32>	getImageUsageFlagsStr										(VkImageUsageFlags value);
tcu::Format::Bitfield<32>	getMemoryHeapFlagsStr										(VkMemoryHeapFlags value);
tcu::Format::Bitfield<32>	getMemoryPropertyFlagsStr									(VkMemoryPropertyFlags value);
tcu::Format::Bitfield<32>	getQueueFlagsStr											(VkQueueFlags value);
tcu::Format::Bitfield<32>	getDeviceQueueCreateFlagsStr								(VkDeviceQueueCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineStageFlagsStr									(VkPipelineStageFlags value);
tcu::Format::Bitfield<32>	getSparseMemoryBindFlagsStr									(VkSparseMemoryBindFlags value);
tcu::Format::Bitfield<32>	getSparseImageFormatFlagsStr								(VkSparseImageFormatFlags value);
tcu::Format::Bitfield<32>	getFenceCreateFlagsStr										(VkFenceCreateFlags value);
tcu::Format::Bitfield<32>	getEventCreateFlagsStr										(VkEventCreateFlags value);
tcu::Format::Bitfield<32>	getQueryPipelineStatisticFlagsStr							(VkQueryPipelineStatisticFlags value);
tcu::Format::Bitfield<32>	getQueryResultFlagsStr										(VkQueryResultFlags value);
tcu::Format::Bitfield<32>	getBufferCreateFlagsStr										(VkBufferCreateFlags value);
tcu::Format::Bitfield<32>	getBufferUsageFlagsStr										(VkBufferUsageFlags value);
tcu::Format::Bitfield<32>	getImageViewCreateFlagsStr									(VkImageViewCreateFlags value);
tcu::Format::Bitfield<32>	getShaderModuleCreateFlagsStr								(VkShaderModuleCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineCacheCreateFlagsStr								(VkPipelineCacheCreateFlags value);
tcu::Format::Bitfield<32>	getColorComponentFlagsStr									(VkColorComponentFlags value);
tcu::Format::Bitfield<32>	getPipelineCreateFlagsStr									(VkPipelineCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineShaderStageCreateFlagsStr						(VkPipelineShaderStageCreateFlags value);
tcu::Format::Bitfield<32>	getShaderStageFlagsStr										(VkShaderStageFlags value);
tcu::Format::Bitfield<32>	getCullModeFlagsStr											(VkCullModeFlags value);
tcu::Format::Bitfield<32>	getSamplerCreateFlagsStr									(VkSamplerCreateFlags value);
tcu::Format::Bitfield<32>	getDescriptorPoolCreateFlagsStr								(VkDescriptorPoolCreateFlags value);
tcu::Format::Bitfield<32>	getDescriptorSetLayoutCreateFlagsStr						(VkDescriptorSetLayoutCreateFlags value);
tcu::Format::Bitfield<32>	getAttachmentDescriptionFlagsStr							(VkAttachmentDescriptionFlags value);
tcu::Format::Bitfield<32>	getDependencyFlagsStr										(VkDependencyFlags value);
tcu::Format::Bitfield<32>	getFramebufferCreateFlagsStr								(VkFramebufferCreateFlags value);
tcu::Format::Bitfield<32>	getRenderPassCreateFlagsStr									(VkRenderPassCreateFlags value);
tcu::Format::Bitfield<32>	getSubpassDescriptionFlagsStr								(VkSubpassDescriptionFlags value);
tcu::Format::Bitfield<32>	getCommandPoolCreateFlagsStr								(VkCommandPoolCreateFlags value);
tcu::Format::Bitfield<32>	getCommandPoolResetFlagsStr									(VkCommandPoolResetFlags value);
tcu::Format::Bitfield<32>	getCommandBufferUsageFlagsStr								(VkCommandBufferUsageFlags value);
tcu::Format::Bitfield<32>	getQueryControlFlagsStr										(VkQueryControlFlags value);
tcu::Format::Bitfield<32>	getCommandBufferResetFlagsStr								(VkCommandBufferResetFlags value);
tcu::Format::Bitfield<32>	getStencilFaceFlagsStr										(VkStencilFaceFlags value);
tcu::Format::Bitfield<32>	getSubgroupFeatureFlagsStr									(VkSubgroupFeatureFlags value);
tcu::Format::Bitfield<32>	getPeerMemoryFeatureFlagsStr								(VkPeerMemoryFeatureFlags value);
tcu::Format::Bitfield<32>	getMemoryAllocateFlagsStr									(VkMemoryAllocateFlags value);
tcu::Format::Bitfield<32>	getExternalMemoryHandleTypeFlagsStr							(VkExternalMemoryHandleTypeFlags value);
tcu::Format::Bitfield<32>	getExternalMemoryFeatureFlagsStr							(VkExternalMemoryFeatureFlags value);
tcu::Format::Bitfield<32>	getExternalFenceHandleTypeFlagsStr							(VkExternalFenceHandleTypeFlags value);
tcu::Format::Bitfield<32>	getExternalFenceFeatureFlagsStr								(VkExternalFenceFeatureFlags value);
tcu::Format::Bitfield<32>	getFenceImportFlagsStr										(VkFenceImportFlags value);
tcu::Format::Bitfield<32>	getSemaphoreImportFlagsStr									(VkSemaphoreImportFlags value);
tcu::Format::Bitfield<32>	getExternalSemaphoreHandleTypeFlagsStr						(VkExternalSemaphoreHandleTypeFlags value);
tcu::Format::Bitfield<32>	getExternalSemaphoreFeatureFlagsStr							(VkExternalSemaphoreFeatureFlags value);
tcu::Format::Bitfield<32>	getResolveModeFlagsStr										(VkResolveModeFlags value);
tcu::Format::Bitfield<32>	getDescriptorBindingFlagsStr								(VkDescriptorBindingFlags value);
tcu::Format::Bitfield<32>	getSemaphoreWaitFlagsStr									(VkSemaphoreWaitFlags value);
tcu::Format::Bitfield<32>	getSurfaceTransformFlagsKHRStr								(VkSurfaceTransformFlagsKHR value);
tcu::Format::Bitfield<32>	getCompositeAlphaFlagsKHRStr								(VkCompositeAlphaFlagsKHR value);
tcu::Format::Bitfield<32>	getSwapchainCreateFlagsKHRStr								(VkSwapchainCreateFlagsKHR value);
tcu::Format::Bitfield<32>	getDeviceGroupPresentModeFlagsKHRStr						(VkDeviceGroupPresentModeFlagsKHR value);
tcu::Format::Bitfield<32>	getDisplayPlaneAlphaFlagsKHRStr								(VkDisplayPlaneAlphaFlagsKHR value);
tcu::Format::Bitfield<32>	getPerformanceCounterDescriptionFlagsKHRStr					(VkPerformanceCounterDescriptionFlagsKHR value);
tcu::Format::Bitfield<32>	getAcquireProfilingLockFlagsKHRStr							(VkAcquireProfilingLockFlagsKHR value);
tcu::Format::Bitfield<32>	getSubmitFlagsKHRStr										(VkSubmitFlagsKHR value);
tcu::Format::Bitfield<32>	getDebugReportFlagsEXTStr									(VkDebugReportFlagsEXT value);
tcu::Format::Bitfield<32>	getExternalMemoryHandleTypeFlagsNVStr						(VkExternalMemoryHandleTypeFlagsNV value);
tcu::Format::Bitfield<32>	getExternalMemoryFeatureFlagsNVStr							(VkExternalMemoryFeatureFlagsNV value);
tcu::Format::Bitfield<32>	getConditionalRenderingFlagsEXTStr							(VkConditionalRenderingFlagsEXT value);
tcu::Format::Bitfield<32>	getSurfaceCounterFlagsEXTStr								(VkSurfaceCounterFlagsEXT value);
tcu::Format::Bitfield<32>	getDebugUtilsMessageSeverityFlagsEXTStr						(VkDebugUtilsMessageSeverityFlagsEXT value);
tcu::Format::Bitfield<32>	getDebugUtilsMessageTypeFlagsEXTStr							(VkDebugUtilsMessageTypeFlagsEXT value);
tcu::Format::Bitfield<32>	getGeometryFlagsKHRStr										(VkGeometryFlagsKHR value);
tcu::Format::Bitfield<32>	getGeometryInstanceFlagsKHRStr								(VkGeometryInstanceFlagsKHR value);
tcu::Format::Bitfield<32>	getBuildAccelerationStructureFlagsKHRStr					(VkBuildAccelerationStructureFlagsKHR value);
tcu::Format::Bitfield<32>	getPipelineCompilerControlFlagsAMDStr						(VkPipelineCompilerControlFlagsAMD value);
tcu::Format::Bitfield<32>	getPipelineCreationFeedbackFlagsEXTStr						(VkPipelineCreationFeedbackFlagsEXT value);
tcu::Format::Bitfield<32>	getShaderCorePropertiesFlagsAMDStr							(VkShaderCorePropertiesFlagsAMD value);
tcu::Format::Bitfield<32>	getToolPurposeFlagsEXTStr									(VkToolPurposeFlagsEXT value);
tcu::Format::Bitfield<32>	getIndirectStateFlagsNVStr									(VkIndirectStateFlagsNV value);
tcu::Format::Bitfield<32>	getIndirectCommandsLayoutUsageFlagsNVStr					(VkIndirectCommandsLayoutUsageFlagsNV value);
tcu::Format::Bitfield<32>	getPrivateDataSlotCreateFlagsEXTStr							(VkPrivateDataSlotCreateFlagsEXT value);
tcu::Format::Bitfield<32>	getDeviceDiagnosticsConfigFlagsNVStr						(VkDeviceDiagnosticsConfigFlagsNV value);
tcu::Format::Bitfield<32>	getAccelerationStructureCreateFlagsKHRStr					(VkAccelerationStructureCreateFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoCodecOperationFlagsKHRStr							(VkVideoCodecOperationFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoChromaSubsamplingFlagsKHRStr						(VkVideoChromaSubsamplingFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoComponentBitDepthFlagsKHRStr						(VkVideoComponentBitDepthFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoCapabilitiesFlagsKHRStr								(VkVideoCapabilitiesFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoSessionCreateFlagsKHRStr							(VkVideoSessionCreateFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoCodingControlFlagsKHRStr							(VkVideoCodingControlFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoCodingQualityPresetFlagsKHRStr						(VkVideoCodingQualityPresetFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoDecodeFlagsKHRStr									(VkVideoDecodeFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoEncodeFlagsKHRStr									(VkVideoEncodeFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoEncodeRateControlFlagsKHRStr						(VkVideoEncodeRateControlFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoEncodeRateControlModeFlagsKHRStr					(VkVideoEncodeRateControlModeFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoEncodeH264CapabilitiesFlagsEXTStr					(VkVideoEncodeH264CapabilitiesFlagsEXT value);
tcu::Format::Bitfield<32>	getVideoEncodeH264InputModeFlagsEXTStr						(VkVideoEncodeH264InputModeFlagsEXT value);
tcu::Format::Bitfield<32>	getVideoEncodeH264OutputModeFlagsEXTStr						(VkVideoEncodeH264OutputModeFlagsEXT value);
tcu::Format::Bitfield<32>	getVideoEncodeH264CreateFlagsEXTStr							(VkVideoEncodeH264CreateFlagsEXT value);
tcu::Format::Bitfield<32>	getVideoDecodeH264FieldLayoutFlagsEXTStr					(VkVideoDecodeH264FieldLayoutFlagsEXT value);
tcu::Format::Bitfield<32>	getInstanceCreateFlagsStr									(VkInstanceCreateFlags value);
tcu::Format::Bitfield<32>	getDeviceCreateFlagsStr										(VkDeviceCreateFlags value);
tcu::Format::Bitfield<32>	getMemoryMapFlagsStr										(VkMemoryMapFlags value);
tcu::Format::Bitfield<32>	getSemaphoreCreateFlagsStr									(VkSemaphoreCreateFlags value);
tcu::Format::Bitfield<32>	getQueryPoolCreateFlagsStr									(VkQueryPoolCreateFlags value);
tcu::Format::Bitfield<32>	getBufferViewCreateFlagsStr									(VkBufferViewCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineVertexInputStateCreateFlagsStr					(VkPipelineVertexInputStateCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineInputAssemblyStateCreateFlagsStr					(VkPipelineInputAssemblyStateCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineTessellationStateCreateFlagsStr					(VkPipelineTessellationStateCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineViewportStateCreateFlagsStr						(VkPipelineViewportStateCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineRasterizationStateCreateFlagsStr					(VkPipelineRasterizationStateCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineMultisampleStateCreateFlagsStr					(VkPipelineMultisampleStateCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineDepthStencilStateCreateFlagsStr					(VkPipelineDepthStencilStateCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineColorBlendStateCreateFlagsStr					(VkPipelineColorBlendStateCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineDynamicStateCreateFlagsStr						(VkPipelineDynamicStateCreateFlags value);
tcu::Format::Bitfield<32>	getPipelineLayoutCreateFlagsStr								(VkPipelineLayoutCreateFlags value);
tcu::Format::Bitfield<32>	getDescriptorPoolResetFlagsStr								(VkDescriptorPoolResetFlags value);
tcu::Format::Bitfield<32>	getCommandPoolTrimFlagsStr									(VkCommandPoolTrimFlags value);
tcu::Format::Bitfield<32>	getDescriptorUpdateTemplateCreateFlagsStr					(VkDescriptorUpdateTemplateCreateFlags value);
tcu::Format::Bitfield<32>	getDisplayModeCreateFlagsKHRStr								(VkDisplayModeCreateFlagsKHR value);
tcu::Format::Bitfield<32>	getDisplaySurfaceCreateFlagsKHRStr							(VkDisplaySurfaceCreateFlagsKHR value);
tcu::Format::Bitfield<32>	getPipelineRasterizationStateStreamCreateFlagsEXTStr		(VkPipelineRasterizationStateStreamCreateFlagsEXT value);
tcu::Format::Bitfield<32>	getPipelineViewportSwizzleStateCreateFlagsNVStr				(VkPipelineViewportSwizzleStateCreateFlagsNV value);
tcu::Format::Bitfield<32>	getPipelineDiscardRectangleStateCreateFlagsEXTStr			(VkPipelineDiscardRectangleStateCreateFlagsEXT value);
tcu::Format::Bitfield<32>	getPipelineRasterizationConservativeStateCreateFlagsEXTStr	(VkPipelineRasterizationConservativeStateCreateFlagsEXT value);
tcu::Format::Bitfield<32>	getPipelineRasterizationDepthClipStateCreateFlagsEXTStr		(VkPipelineRasterizationDepthClipStateCreateFlagsEXT value);
tcu::Format::Bitfield<32>	getDebugUtilsMessengerCallbackDataFlagsEXTStr				(VkDebugUtilsMessengerCallbackDataFlagsEXT value);
tcu::Format::Bitfield<32>	getDebugUtilsMessengerCreateFlagsEXTStr						(VkDebugUtilsMessengerCreateFlagsEXT value);
tcu::Format::Bitfield<32>	getPipelineCoverageToColorStateCreateFlagsNVStr				(VkPipelineCoverageToColorStateCreateFlagsNV value);
tcu::Format::Bitfield<32>	getPipelineCoverageModulationStateCreateFlagsNVStr			(VkPipelineCoverageModulationStateCreateFlagsNV value);
tcu::Format::Bitfield<32>	getValidationCacheCreateFlagsEXTStr							(VkValidationCacheCreateFlagsEXT value);
tcu::Format::Bitfield<32>	getPipelineCoverageReductionStateCreateFlagsNVStr			(VkPipelineCoverageReductionStateCreateFlagsNV value);
tcu::Format::Bitfield<32>	getHeadlessSurfaceCreateFlagsEXTStr							(VkHeadlessSurfaceCreateFlagsEXT value);
tcu::Format::Bitfield<32>	getDeviceMemoryReportFlagsEXTStr							(VkDeviceMemoryReportFlagsEXT value);
tcu::Format::Bitfield<32>	getAndroidSurfaceCreateFlagsKHRStr							(VkAndroidSurfaceCreateFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoBeginCodingFlagsKHRStr								(VkVideoBeginCodingFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoEndCodingFlagsKHRStr								(VkVideoEndCodingFlagsKHR value);
tcu::Format::Bitfield<32>	getVideoDecodeH264CreateFlagsEXTStr							(VkVideoDecodeH264CreateFlagsEXT value);
tcu::Format::Bitfield<32>	getVideoDecodeH265CreateFlagsEXTStr							(VkVideoDecodeH265CreateFlagsEXT value);
tcu::Format::Bitfield<32>	getImagePipeSurfaceCreateFlagsFUCHSIAStr					(VkImagePipeSurfaceCreateFlagsFUCHSIA value);
tcu::Format::Bitfield<32>	getStreamDescriptorSurfaceCreateFlagsGGPStr					(VkStreamDescriptorSurfaceCreateFlagsGGP value);
tcu::Format::Bitfield<32>	getIOSSurfaceCreateFlagsMVKStr								(VkIOSSurfaceCreateFlagsMVK value);
tcu::Format::Bitfield<32>	getMacOSSurfaceCreateFlagsMVKStr							(VkMacOSSurfaceCreateFlagsMVK value);
tcu::Format::Bitfield<32>	getMetalSurfaceCreateFlagsEXTStr							(VkMetalSurfaceCreateFlagsEXT value);
tcu::Format::Bitfield<32>	getViSurfaceCreateFlagsNNStr								(VkViSurfaceCreateFlagsNN value);
tcu::Format::Bitfield<32>	getWaylandSurfaceCreateFlagsKHRStr							(VkWaylandSurfaceCreateFlagsKHR value);
tcu::Format::Bitfield<32>	getWin32SurfaceCreateFlagsKHRStr							(VkWin32SurfaceCreateFlagsKHR value);
tcu::Format::Bitfield<32>	getXcbSurfaceCreateFlagsKHRStr								(VkXcbSurfaceCreateFlagsKHR value);
tcu::Format::Bitfield<32>	getXlibSurfaceCreateFlagsKHRStr								(VkXlibSurfaceCreateFlagsKHR value);
tcu::Format::Bitfield<32>	getBuildAccelerationStructureFlagsNVStr						(VkBuildAccelerationStructureFlagsNV value);

std::ostream&	operator<<	(std::ostream& s, const VkExtent2D& value);
std::ostream&	operator<<	(std::ostream& s, const VkExtent3D& value);
std::ostream&	operator<<	(std::ostream& s, const VkOffset2D& value);
std::ostream&	operator<<	(std::ostream& s, const VkOffset3D& value);
std::ostream&	operator<<	(std::ostream& s, const VkRect2D& value);
std::ostream&	operator<<	(std::ostream& s, const VkBaseInStructure& value);
std::ostream&	operator<<	(std::ostream& s, const VkBaseOutStructure& value);
std::ostream&	operator<<	(std::ostream& s, const VkBufferMemoryBarrier& value);
std::ostream&	operator<<	(std::ostream& s, const VkDispatchIndirectCommand& value);
std::ostream&	operator<<	(std::ostream& s, const VkDrawIndexedIndirectCommand& value);
std::ostream&	operator<<	(std::ostream& s, const VkDrawIndirectCommand& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageSubresourceRange& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageMemoryBarrier& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryBarrier& value);
std::ostream&	operator<<	(std::ostream& s, const VkAllocationCallbacks& value);
std::ostream&	operator<<	(std::ostream& s, const VkApplicationInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkFormatProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageFormatProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkInstanceCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryHeap& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryType& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceLimits& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceMemoryProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceSparseProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkQueueFamilyProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceQueueCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkExtensionProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkLayerProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkSubmitInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkMappedMemoryRange& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryAllocateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryRequirements& value);
std::ostream&	operator<<	(std::ostream& s, const VkSparseMemoryBind& value);
std::ostream&	operator<<	(std::ostream& s, const VkSparseBufferMemoryBindInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSparseImageOpaqueMemoryBindInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageSubresource& value);
std::ostream&	operator<<	(std::ostream& s, const VkSparseImageMemoryBind& value);
std::ostream&	operator<<	(std::ostream& s, const VkSparseImageMemoryBindInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkBindSparseInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSparseImageFormatProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkSparseImageMemoryRequirements& value);
std::ostream&	operator<<	(std::ostream& s, const VkFenceCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSemaphoreCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkEventCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkQueryPoolCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkBufferCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkBufferViewCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSubresourceLayout& value);
std::ostream&	operator<<	(std::ostream& s, const VkComponentMapping& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageViewCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkShaderModuleCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineCacheCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSpecializationMapEntry& value);
std::ostream&	operator<<	(std::ostream& s, const VkSpecializationInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineShaderStageCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkComputePipelineCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkVertexInputBindingDescription& value);
std::ostream&	operator<<	(std::ostream& s, const VkVertexInputAttributeDescription& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineVertexInputStateCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineInputAssemblyStateCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineTessellationStateCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkViewport& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineViewportStateCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineRasterizationStateCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineMultisampleStateCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkStencilOpState& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineDepthStencilStateCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineColorBlendAttachmentState& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineColorBlendStateCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineDynamicStateCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkGraphicsPipelineCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPushConstantRange& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineLayoutCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSamplerCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkCopyDescriptorSet& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorBufferInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorImageInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorPoolSize& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorPoolCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorSetAllocateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorSetLayoutBinding& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorSetLayoutCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkWriteDescriptorSet& value);
std::ostream&	operator<<	(std::ostream& s, const VkAttachmentDescription& value);
std::ostream&	operator<<	(std::ostream& s, const VkAttachmentReference& value);
std::ostream&	operator<<	(std::ostream& s, const VkFramebufferCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSubpassDescription& value);
std::ostream&	operator<<	(std::ostream& s, const VkSubpassDependency& value);
std::ostream&	operator<<	(std::ostream& s, const VkRenderPassCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkCommandPoolCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkCommandBufferAllocateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkCommandBufferInheritanceInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkCommandBufferBeginInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkBufferCopy& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageSubresourceLayers& value);
std::ostream&	operator<<	(std::ostream& s, const VkBufferImageCopy& value);
std::ostream&	operator<<	(std::ostream& s, const VkClearColorValue& value);
std::ostream&	operator<<	(std::ostream& s, const VkClearDepthStencilValue& value);
std::ostream&	operator<<	(std::ostream& s, const VkClearValue& value);
std::ostream&	operator<<	(std::ostream& s, const VkClearAttachment& value);
std::ostream&	operator<<	(std::ostream& s, const VkClearRect& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageBlit& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageCopy& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageResolve& value);
std::ostream&	operator<<	(std::ostream& s, const VkRenderPassBeginInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceSubgroupProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkBindBufferMemoryInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkBindImageMemoryInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevice16BitStorageFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryDedicatedRequirements& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryDedicatedAllocateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryAllocateFlagsInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceGroupRenderPassBeginInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceGroupCommandBufferBeginInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceGroupSubmitInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceGroupBindSparseInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkBindBufferMemoryDeviceGroupInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkBindImageMemoryDeviceGroupInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceGroupProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceGroupDeviceCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkBufferMemoryRequirementsInfo2& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageMemoryRequirementsInfo2& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageSparseMemoryRequirementsInfo2& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryRequirements2& value);
std::ostream&	operator<<	(std::ostream& s, const VkSparseImageMemoryRequirements2& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFeatures2& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceProperties2& value);
std::ostream&	operator<<	(std::ostream& s, const VkFormatProperties2& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageFormatProperties2& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceImageFormatInfo2& value);
std::ostream&	operator<<	(std::ostream& s, const VkQueueFamilyProperties2& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceMemoryProperties2& value);
std::ostream&	operator<<	(std::ostream& s, const VkSparseImageFormatProperties2& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceSparseImageFormatInfo2& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevicePointClippingProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkInputAttachmentAspectReference& value);
std::ostream&	operator<<	(std::ostream& s, const VkRenderPassInputAttachmentAspectCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageViewUsageCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineTessellationDomainOriginStateCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkRenderPassMultiviewCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceMultiviewFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceMultiviewProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceVariablePointersFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceProtectedMemoryFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceProtectedMemoryProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceQueueInfo2& value);
std::ostream&	operator<<	(std::ostream& s, const VkProtectedSubmitInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSamplerYcbcrConversionCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSamplerYcbcrConversionInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkBindImagePlaneMemoryInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkImagePlaneMemoryRequirementsInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceSamplerYcbcrConversionFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkSamplerYcbcrConversionImageFormatProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorUpdateTemplateEntry& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorUpdateTemplateCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkExternalMemoryProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceExternalImageFormatInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkExternalImageFormatProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceExternalBufferInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkExternalBufferProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceIDProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkExternalMemoryImageCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkExternalMemoryBufferCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkExportMemoryAllocateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceExternalFenceInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkExternalFenceProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkExportFenceCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkExportSemaphoreCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceExternalSemaphoreInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkExternalSemaphoreProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceMaintenance3Properties& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorSetLayoutSupport& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderDrawParametersFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceVulkan11Features& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceVulkan11Properties& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceVulkan12Features& value);
std::ostream&	operator<<	(std::ostream& s, const VkConformanceVersion& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceVulkan12Properties& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageFormatListCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkAttachmentDescription2& value);
std::ostream&	operator<<	(std::ostream& s, const VkAttachmentReference2& value);
std::ostream&	operator<<	(std::ostream& s, const VkSubpassDescription2& value);
std::ostream&	operator<<	(std::ostream& s, const VkSubpassDependency2& value);
std::ostream&	operator<<	(std::ostream& s, const VkRenderPassCreateInfo2& value);
std::ostream&	operator<<	(std::ostream& s, const VkSubpassBeginInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSubpassEndInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevice8BitStorageFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceDriverProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderAtomicInt64Features& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderFloat16Int8Features& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFloatControlsProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorSetLayoutBindingFlagsCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceDescriptorIndexingFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceDescriptorIndexingProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorSetVariableDescriptorCountAllocateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorSetVariableDescriptorCountLayoutSupport& value);
std::ostream&	operator<<	(std::ostream& s, const VkSubpassDescriptionDepthStencilResolve& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceDepthStencilResolveProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceScalarBlockLayoutFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageStencilUsageCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSamplerReductionModeCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceSamplerFilterMinmaxProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceVulkanMemoryModelFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceImagelessFramebufferFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkFramebufferAttachmentImageInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkFramebufferAttachmentsCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkRenderPassAttachmentBeginInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceUniformBufferStandardLayoutFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkAttachmentReferenceStencilLayout& value);
std::ostream&	operator<<	(std::ostream& s, const VkAttachmentDescriptionStencilLayout& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceHostQueryResetFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceTimelineSemaphoreFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceTimelineSemaphoreProperties& value);
std::ostream&	operator<<	(std::ostream& s, const VkSemaphoreTypeCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkTimelineSemaphoreSubmitInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSemaphoreWaitInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSemaphoreSignalInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceBufferDeviceAddressFeatures& value);
std::ostream&	operator<<	(std::ostream& s, const VkBufferDeviceAddressInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkBufferOpaqueCaptureAddressCreateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryOpaqueCaptureAddressAllocateInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceMemoryOpaqueCaptureAddressInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkSurfaceCapabilitiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkSurfaceFormatKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkSwapchainCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPresentInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageSwapchainCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkBindImageMemorySwapchainInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAcquireNextImageInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceGroupPresentCapabilitiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceGroupPresentInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceGroupSwapchainCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayModeParametersKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayModeCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayModePropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayPlaneCapabilitiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayPlanePropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayPropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplaySurfaceCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayPresentInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkImportMemoryFdInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryFdPropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryGetFdInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkImportSemaphoreFdInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkSemaphoreGetFdInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevicePushDescriptorPropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkRectLayerKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPresentRegionKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPresentRegionsKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkSharedPresentSurfaceCapabilitiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkImportFenceFdInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkFenceGetFdInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevicePerformanceQueryFeaturesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevicePerformanceQueryPropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPerformanceCounterKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPerformanceCounterDescriptionKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkQueryPoolPerformanceCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPerformanceCounterResultKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAcquireProfilingLockInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPerformanceQuerySubmitInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceSurfaceInfo2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkSurfaceCapabilities2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkSurfaceFormat2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayProperties2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayPlaneProperties2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayModeProperties2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayPlaneInfo2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayPlaneCapabilities2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderClockFeaturesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkFragmentShadingRateAttachmentInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineFragmentShadingRateStateCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFragmentShadingRateFeaturesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFragmentShadingRatePropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFragmentShadingRateKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkSurfaceProtectedCapabilitiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineExecutablePropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineExecutableInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineExecutableStatisticValueKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineExecutableStatisticKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineExecutableInternalRepresentationKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineLibraryCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryBarrier2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkBufferMemoryBarrier2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageMemoryBarrier2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDependencyInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkSemaphoreSubmitInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkCommandBufferSubmitInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkSubmitInfo2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceSynchronization2FeaturesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkQueueFamilyCheckpointProperties2NV& value);
std::ostream&	operator<<	(std::ostream& s, const VkCheckpointData2NV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkBufferCopy2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkCopyBufferInfo2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageCopy2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkCopyImageInfo2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkBufferImageCopy2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkCopyBufferToImageInfo2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkCopyImageToBufferInfo2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageBlit2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkBlitImageInfo2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageResolve2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkResolveImageInfo2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDebugReportCallbackCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineRasterizationStateRasterizationOrderAMD& value);
std::ostream&	operator<<	(std::ostream& s, const VkDebugMarkerObjectNameInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDebugMarkerObjectTagInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDebugMarkerMarkerInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDedicatedAllocationImageCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkDedicatedAllocationBufferCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkDedicatedAllocationMemoryAllocateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceTransformFeedbackFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceTransformFeedbackPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineRasterizationStateStreamCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageViewHandleInfoNVX& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageViewAddressPropertiesNVX& value);
std::ostream&	operator<<	(std::ostream& s, const VkTextureLODGatherFormatPropertiesAMD& value);
std::ostream&	operator<<	(std::ostream& s, const VkShaderResourceUsageAMD& value);
std::ostream&	operator<<	(std::ostream& s, const VkShaderStatisticsInfoAMD& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceCornerSampledImageFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkExternalImageFormatPropertiesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkExternalMemoryImageCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkExportMemoryAllocateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkValidationFlagsEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageViewASTCDecodeModeEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceASTCDecodeFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkConditionalRenderingBeginInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceConditionalRenderingFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkCommandBufferInheritanceConditionalRenderingInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkViewportWScalingNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineViewportWScalingStateCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkSurfaceCapabilities2EXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayPowerInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceEventInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayEventInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkSwapchainCounterCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkRefreshCycleDurationGOOGLE& value);
std::ostream&	operator<<	(std::ostream& s, const VkPastPresentationTimingGOOGLE& value);
std::ostream&	operator<<	(std::ostream& s, const VkPresentTimeGOOGLE& value);
std::ostream&	operator<<	(std::ostream& s, const VkPresentTimesInfoGOOGLE& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX& value);
std::ostream&	operator<<	(std::ostream& s, const VkViewportSwizzleNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineViewportSwizzleStateCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceDiscardRectanglePropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineDiscardRectangleStateCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceConservativeRasterizationPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineRasterizationConservativeStateCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceDepthClipEnableFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineRasterizationDepthClipStateCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkXYColorEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkHdrMetadataEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDebugUtilsLabelEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDebugUtilsObjectNameInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDebugUtilsMessengerCallbackDataEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDebugUtilsMessengerCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDebugUtilsObjectTagInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceInlineUniformBlockFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceInlineUniformBlockPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkWriteDescriptorSetInlineUniformBlockEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDescriptorPoolInlineUniformBlockCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkSampleLocationEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkSampleLocationsInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkAttachmentSampleLocationsEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkSubpassSampleLocationsEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkRenderPassSampleLocationsBeginInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineSampleLocationsStateCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceSampleLocationsPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkMultisamplePropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineColorBlendAdvancedStateCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineCoverageToColorStateCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineCoverageModulationStateCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderSMBuiltinsPropertiesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkDrmFormatModifierPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDrmFormatModifierPropertiesListEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceImageDrmFormatModifierInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageDrmFormatModifierListCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageDrmFormatModifierExplicitCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkImageDrmFormatModifierPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkValidationCacheCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkShaderModuleValidationCacheCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkShadingRatePaletteNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineViewportShadingRateImageStateCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShadingRateImageFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShadingRateImagePropertiesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkCoarseSampleLocationNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkCoarseSampleOrderCustomNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineViewportCoarseSampleOrderStateCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkRayTracingShaderGroupCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkRayTracingPipelineCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkGeometryTrianglesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkGeometryAABBNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkGeometryDataNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkGeometryNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkBindAccelerationStructureMemoryInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkWriteDescriptorSetAccelerationStructureNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureMemoryRequirementsInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceRayTracingPropertiesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkTransformMatrixKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAabbPositionsKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureInstanceKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineRepresentativeFragmentTestStateCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceImageViewImageFormatInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkFilterCubicImageViewImageFormatPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceQueueGlobalPriorityCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkImportMemoryHostPointerInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryHostPointerPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceExternalMemoryHostPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineCompilerControlCreateInfoAMD& value);
std::ostream&	operator<<	(std::ostream& s, const VkCalibratedTimestampInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderCorePropertiesAMD& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceMemoryOverallocationCreateInfoAMD& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVertexInputBindingDivisorDescriptionEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineVertexInputDivisorStateCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineCreationFeedbackEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineCreationFeedbackCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceMeshShaderFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceMeshShaderPropertiesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkDrawMeshTasksIndirectCommandNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderImageFootprintFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineViewportExclusiveScissorStateCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceExclusiveScissorFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkQueueFamilyCheckpointPropertiesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkCheckpointDataNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL& value);
std::ostream&	operator<<	(std::ostream& s, const VkPerformanceValueDataINTEL& value);
std::ostream&	operator<<	(std::ostream& s, const VkPerformanceValueINTEL& value);
std::ostream&	operator<<	(std::ostream& s, const VkInitializePerformanceApiInfoINTEL& value);
std::ostream&	operator<<	(std::ostream& s, const VkQueryPoolPerformanceQueryCreateInfoINTEL& value);
std::ostream&	operator<<	(std::ostream& s, const VkPerformanceMarkerInfoINTEL& value);
std::ostream&	operator<<	(std::ostream& s, const VkPerformanceStreamMarkerInfoINTEL& value);
std::ostream&	operator<<	(std::ostream& s, const VkPerformanceOverrideInfoINTEL& value);
std::ostream&	operator<<	(std::ostream& s, const VkPerformanceConfigurationAcquireInfoINTEL& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevicePCIBusInfoPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDisplayNativeHdrSurfaceCapabilitiesAMD& value);
std::ostream&	operator<<	(std::ostream& s, const VkSwapchainDisplayNativeHdrCreateInfoAMD& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFragmentDensityMapFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFragmentDensityMapPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkRenderPassFragmentDensityMapCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceSubgroupSizeControlFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceSubgroupSizeControlPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderCoreProperties2AMD& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceCoherentMemoryFeaturesAMD& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceMemoryBudgetPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceMemoryPriorityFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryPriorityAllocateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkBufferDeviceAddressCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceToolPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkValidationFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkCooperativeMatrixPropertiesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceCooperativeMatrixFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceCooperativeMatrixPropertiesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceCoverageReductionModeFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineCoverageReductionStateCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkFramebufferMixedSamplesCombinationNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkHeadlessSurfaceCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceLineRasterizationFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceLineRasterizationPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineRasterizationLineStateCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceIndexTypeUint8FeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkGraphicsShaderGroupCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkGraphicsPipelineShaderGroupsCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkBindShaderGroupIndirectCommandNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkBindIndexBufferIndirectCommandNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkBindVertexBufferIndirectCommandNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkSetStateFlagsIndirectCommandNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkIndirectCommandsStreamNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkIndirectCommandsLayoutTokenNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkIndirectCommandsLayoutCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkGeneratedCommandsInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkGeneratedCommandsMemoryRequirementsInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceInheritedViewportScissorFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkCommandBufferInheritanceViewportScissorInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkRenderPassTransformBeginInfoQCOM& value);
std::ostream&	operator<<	(std::ostream& s, const VkCommandBufferInheritanceRenderPassTransformInfoQCOM& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceMemoryReportCallbackDataEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceDeviceMemoryReportCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceRobustness2FeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceRobustness2PropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkSamplerCustomBorderColorCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceCustomBorderColorPropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceCustomBorderColorFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevicePrivateDataFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDevicePrivateDataCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPrivateDataSlotCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceDiagnosticsConfigFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceDiagnosticsConfigCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineFragmentShadingRateEnumStateCreateInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkCopyCommandTransformInfoQCOM& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceImageRobustnessFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevice4444FormatsFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE& value);
std::ostream&	operator<<	(std::ostream& s, const VkMutableDescriptorTypeListVALVE& value);
std::ostream&	operator<<	(std::ostream& s, const VkMutableDescriptorTypeCreateInfoVALVE& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVertexInputBindingDescription2EXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVertexInputAttributeDescription2EXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceColorWriteEnableFeaturesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkPipelineColorWriteCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceOrHostAddressKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkDeviceOrHostAddressConstKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureBuildRangeInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureGeometryTrianglesDataKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureGeometryAabbsDataKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureGeometryInstancesDataKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureGeometryDataKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureGeometryKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureBuildGeometryInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkWriteDescriptorSetAccelerationStructureKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceAccelerationStructureFeaturesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceAccelerationStructurePropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureDeviceAddressInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureVersionInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkCopyAccelerationStructureToMemoryInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkCopyMemoryToAccelerationStructureInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkCopyAccelerationStructureInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAccelerationStructureBuildSizesInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkRayTracingShaderGroupCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkRayTracingPipelineInterfaceCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkRayTracingPipelineCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceRayTracingPipelineFeaturesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceRayTracingPipelinePropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkStridedDeviceAddressRegionKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkTraceRaysIndirectCommandKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceRayQueryFeaturesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAndroidSurfaceCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkAndroidHardwareBufferUsageANDROID& value);
std::ostream&	operator<<	(std::ostream& s, const VkAndroidHardwareBufferPropertiesANDROID& value);
std::ostream&	operator<<	(std::ostream& s, const VkAndroidHardwareBufferFormatPropertiesANDROID& value);
std::ostream&	operator<<	(std::ostream& s, const VkImportAndroidHardwareBufferInfoANDROID& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryGetAndroidHardwareBufferInfoANDROID& value);
std::ostream&	operator<<	(std::ostream& s, const VkExternalFormatANDROID& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoQueueFamilyProperties2KHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoProfileKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoProfilesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoCapabilitiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDeviceVideoFormatInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoFormatPropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoPictureResourceKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoReferenceSlotKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoGetMemoryPropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoBindMemoryKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoSessionCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoSessionParametersCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoSessionParametersUpdateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoBeginCodingInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoEndCodingInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoCodingControlInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevicePortabilitySubsetFeaturesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkPhysicalDevicePortabilitySubsetPropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoEncodeInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoEncodeRateControlInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH264SpsVuiFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH264HrdParameters& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH264SequenceParameterSetVui& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH264SpsFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH264ScalingLists& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH264SequenceParameterSet& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH264PpsFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH264PictureParameterSet& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoEncodeH264SliceHeaderFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoEncodeH264PictureInfoFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoEncodeH264RefMgmtFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoEncodeH264RefListModEntry& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoEncodeH264RefPicMarkingEntry& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoEncodeH264RefMemMgmtCtrlOperations& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoEncodeH264PictureInfo& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoEncodeH264SliceHeader& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoEncodeH264CapabilitiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoEncodeH264SessionCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoEncodeH264SessionParametersAddInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoEncodeH264SessionParametersCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoEncodeH264DpbSlotInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoEncodeH264NaluSliceEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoEncodeH264VclFrameInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoEncodeH264EmitPictureParametersEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoEncodeH264ProfileEXT& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoDecodeH264PictureInfoFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoDecodeH264PictureInfo& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoDecodeH264ReferenceInfoFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoDecodeH264ReferenceInfo& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoDecodeH264MvcElementFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoDecodeH264MvcElement& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoDecodeH264Mvc& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH264ProfileEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH264CapabilitiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH264SessionCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH264SessionParametersAddInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH264SessionParametersCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH264PictureInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH264MvcEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH264DpbSlotInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265DecPicBufMgr& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265SubLayerHrdParameters& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265HrdFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265HrdParameters& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265VpsFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265VideoParameterSet& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265ScalingLists& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265SpsVuiFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265SequenceParameterSetVui& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265PredictorPaletteEntries& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265SpsFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265SequenceParameterSet& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265PpsFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoH265PictureParameterSet& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoDecodeH265PictureInfoFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoDecodeH265PictureInfo& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoDecodeH265ReferenceInfoFlags& value);
std::ostream&	operator<<	(std::ostream& s, const StdVideoDecodeH265ReferenceInfo& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH265ProfileEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH265CapabilitiesEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH265SessionCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH265SessionParametersAddInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH265SessionParametersCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH265PictureInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkVideoDecodeH265DpbSlotInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkImagePipeSurfaceCreateInfoFUCHSIA& value);
std::ostream&	operator<<	(std::ostream& s, const VkImportMemoryZirconHandleInfoFUCHSIA& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryZirconHandlePropertiesFUCHSIA& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryGetZirconHandleInfoFUCHSIA& value);
std::ostream&	operator<<	(std::ostream& s, const VkImportSemaphoreZirconHandleInfoFUCHSIA& value);
std::ostream&	operator<<	(std::ostream& s, const VkSemaphoreGetZirconHandleInfoFUCHSIA& value);
std::ostream&	operator<<	(std::ostream& s, const VkStreamDescriptorSurfaceCreateInfoGGP& value);
std::ostream&	operator<<	(std::ostream& s, const VkPresentFrameTokenGGP& value);
std::ostream&	operator<<	(std::ostream& s, const VkIOSSurfaceCreateInfoMVK& value);
std::ostream&	operator<<	(std::ostream& s, const VkMacOSSurfaceCreateInfoMVK& value);
std::ostream&	operator<<	(std::ostream& s, const VkMetalSurfaceCreateInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkViSurfaceCreateInfoNN& value);
std::ostream&	operator<<	(std::ostream& s, const VkWaylandSurfaceCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkWin32SurfaceCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkImportMemoryWin32HandleInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkExportMemoryWin32HandleInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryWin32HandlePropertiesKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkMemoryGetWin32HandleInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkWin32KeyedMutexAcquireReleaseInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkImportSemaphoreWin32HandleInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkExportSemaphoreWin32HandleInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkD3D12FenceSubmitInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkSemaphoreGetWin32HandleInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkImportFenceWin32HandleInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkExportFenceWin32HandleInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkFenceGetWin32HandleInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkImportMemoryWin32HandleInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkExportMemoryWin32HandleInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkWin32KeyedMutexAcquireReleaseInfoNV& value);
std::ostream&	operator<<	(std::ostream& s, const VkSurfaceFullScreenExclusiveInfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkSurfaceCapabilitiesFullScreenExclusiveEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkSurfaceFullScreenExclusiveWin32InfoEXT& value);
std::ostream&	operator<<	(std::ostream& s, const VkXcbSurfaceCreateInfoKHR& value);
std::ostream&	operator<<	(std::ostream& s, const VkXlibSurfaceCreateInfoKHR& value);
