OpenCL 3.0 Specifications v3.0.5 (#88)

diff --git a/index.php b/index.php
index d20e570..6d5fc37 100644
--- a/index.php
+++ b/index.php
@@ -20,72 +20,35 @@
     </a> GitHub repository. </p>
 
 
-<h6> OpenCL 3.0 Provisional </h6>
+<h6> OpenCL 3.0 Unified Specifications </h6>
 
-<p> The latest provisional version of OpenCL is OpenCL 3.0. </p>
+<p> The latest version of OpenCL is OpenCL 3.0. </p>
 
-<p> The OpenCL 3.0 Provisional specifications have been ratified under the
-    Khronos Intellectual Property framework and are being made publicly
-    available to enable review and feedback from the community. </p>
-
-<p> To provide feedback, please file an issue on the
-    <a href="https://github.com/KhronosGroup/OpenCL-Docs/issues">
-    OpenCL-Docs </a> GitHub repository. </p>
+<p> The OpenCL specifications are now unified so they describe OpenCL 3.0
+    and all previous versions of OpenCL. </p>
 
 <ul>
 <li> OpenCL API Specification
      (<a href="specs/3.0-unified/html/OpenCL_API.html">HTML</a>)
      (<a href="specs/3.0-unified/pdf/OpenCL_API.pdf">PDF</a>)
-     (April 27, 2020). </li>
+     (September 30, 2020). </li>
+<li> OpenCL C Language Specification
+     (<a href="specs/3.0-unified/html/OpenCL_C.html">HTML</a>)
+     (<a href="specs/3.0-unified/pdf/OpenCL_C.pdf">PDF</a>)
+     (September 30, 2020). </li>
 <li> OpenCL Extension Specification
      (<a href="specs/3.0-unified/html/OpenCL_Ext.html">HTML</a>)
      (<a href="specs/3.0-unified/pdf/OpenCL_Ext.pdf">PDF</a>)
-     (April 27, 2020. </li>
+     (September 30, 2020. </li>
 <li> OpenCL SPIR-V Environment Specification
      (<a href="specs/3.0-unified/html/OpenCL_Env.html">HTML</a>)
      (<a href="specs/3.0-unified/pdf/OpenCL_Env.pdf">PDF</a>)
-     (April 27, 2020). </li>
-<li> OpenCL C 3.0 Language Specification
-     (<a href="specs/3.0-unified/html/OpenCL_C.html">HTML</a>)
-     (<a href="specs/3.0-unified/pdf/OpenCL_C.pdf">PDF</a>)
-     (April 27, 2020). </li>
+     (September 30, 2020). </li>
 <li> <a href="https://www.khronos.org/files/opencl30-reference-guide.pdf">
      OpenCL 3.0 Reference Guide.</a> </li>
 </ul>
 
 
-<h6> OpenCL 2.2 </h6>
-
-<p> The latest non-provisional version of OpenCL is OpenCL 2.2. </p>
-
-<ul>
-<li> OpenCL 2.2 API Specification
-     (<a href="specs/2.2/html/OpenCL_API.html">HTML</a>)
-     (<a href="specs/2.2/pdf/OpenCL_API.pdf">PDF</a>)
-     (July 19, 2019). </li>
-<li> OpenCL Extension Specification
-     (<a href="specs/2.2/html/OpenCL_Ext.html">HTML</a>)
-     (<a href="specs/2.2/pdf/OpenCL_Ext.pdf">PDF</a>)
-     (July 19, 2019). </li>
-<li> OpenCL SPIR-V Environment Specification
-     (<a href="specs/2.2/html/OpenCL_Env.html">HTML</a>)
-     (<a href="specs/2.2/pdf/OpenCL_Env.pdf">PDF</a>)
-     (July 19, 2019). </li>
-<li> OpenCL C Language Specification
-     (<a href="specs/2.2/html/OpenCL_C.html">HTML</a>)
-     (<a href="specs/2.2/pdf/OpenCL_C.pdf">PDF</a>)
-     (July 19, 2019). </li>
-<li> OpenCL C++ Language Specification
-     (<a href="specs/2.2/html/OpenCL_Cxx.html">HTML</a>)
-     (<a href="specs/2.2/pdf/OpenCL_Cxx.pdf">PDF</a>)
-     (July 19, 2019). </li>
-<li> <a href="http://www.khronos.org/registry/OpenCL//sdk/2.2/docs/man/html/">
-     OpenCL 2.2 Reference Pages.</a> </li>
-<li> <a href="https://www.khronos.org/files/opencl22-reference-guide.pdf">
-     OpenCL 2.2 Reference Guide.</a> </li>
-</ul>
-
-
 <h6> Related Specifications and Resources </h6>
 
 <ul>
@@ -124,6 +87,36 @@
 
 <p> Older versions of OpenCL are provided for reference. </p>
 
+<p> OpenCL 2.2. </p>
+
+<ul>
+<li> OpenCL 2.2 API Specification
+     (<a href="specs/2.2/html/OpenCL_API.html">HTML</a>)
+     (<a href="specs/2.2/pdf/OpenCL_API.pdf">PDF</a>)
+     (July 19, 2019). </li>
+<li> OpenCL Extension Specification
+     (<a href="specs/2.2/html/OpenCL_Ext.html">HTML</a>)
+     (<a href="specs/2.2/pdf/OpenCL_Ext.pdf">PDF</a>)
+     (July 19, 2019). </li>
+<li> OpenCL SPIR-V Environment Specification
+     (<a href="specs/2.2/html/OpenCL_Env.html">HTML</a>)
+     (<a href="specs/2.2/pdf/OpenCL_Env.pdf">PDF</a>)
+     (July 19, 2019). </li>
+<li> OpenCL C Language Specification
+     (<a href="specs/2.2/html/OpenCL_C.html">HTML</a>)
+     (<a href="specs/2.2/pdf/OpenCL_C.pdf">PDF</a>)
+     (July 19, 2019). </li>
+<li> OpenCL C++ Language Specification
+     (<a href="specs/2.2/html/OpenCL_Cxx.html">HTML</a>)
+     (<a href="specs/2.2/pdf/OpenCL_Cxx.pdf">PDF</a>)
+     (July 19, 2019). </li>
+<li> <a href="http://www.khronos.org/registry/OpenCL//sdk/2.2/docs/man/html/">
+     OpenCL 2.2 Reference Pages.</a> </li>
+<li> <a href="https://www.khronos.org/files/opencl22-reference-guide.pdf">
+     OpenCL 2.2 Reference Guide.</a> </li>
+</ul>
+
+
 <p> OpenCL 2.1 </p>
 
 <ul>
diff --git a/specs/3.0-unified/html/OpenCL_API.html b/specs/3.0-unified/html/OpenCL_API.html
index 93850d5..656d7eb 100644
--- a/specs/3.0-unified/html/OpenCL_API.html
+++ b/specs/3.0-unified/html/OpenCL_API.html
@@ -841,9 +841,9 @@
 <h1>The OpenCL<sup>&#8482;</sup> Specification</h1>
 <div class="details">
 <span id="author" class="author">Khronos<sup>&#174;</sup> OpenCL Working Group</span><br>
-<span id="revnumber">version v3.0.1-Provisional,</span>
-<span id="revdate">Mon, 27 Apr 2020 04:09:39 +0000</span>
-<br><span id="revremark">from git branch: master commit: fafc202e2b6a80bd2276596227317696d76e1f63</span>
+<span id="revnumber">version v3.0.5,</span>
+<span id="revdate">Wed, 30 Sep 2020 00:00:00 +0000</span>
+<br><span id="revremark">from git branch: master commit: 4d8a36725aa8af9658ab5cb62fdbf52adb44bcca</span>
 </div>
 <div id="toc" class="toc2">
 <div id="toctitle">Table of Contents</div>
@@ -1041,6 +1041,7 @@
 <li><a href="#_3d_image_writes">3D Image Writes</a></li>
 <li><a href="#_work_group_collective_functions">Work Group Collective Functions</a></li>
 <li><a href="#_generic_address_space">Generic Address Space</a></li>
+<li><a href="#_language_features_that_were_already_optional">Language Features that Were Already Optional</a></li>
 </ul>
 </li>
 <li><a href="#_acknowledgements">Acknowledgements</a></li>
@@ -1097,7 +1098,7 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="_introduction">1. Introduction</h2>
+<h2 id="_introduction"><a class="anchor" href="#_introduction"></a>1. Introduction</h2>
 <div class="sectionbody">
 <div class="paragraph">
 <p>Modern processor architectures have embraced parallelism as an important
@@ -1193,7 +1194,7 @@
 core specification in later revisions of the OpenCL specification.</p>
 </div>
 <div class="sect2">
-<h3 id="_normative_references">1.1. Normative References</h3>
+<h3 id="_normative_references"><a class="anchor" href="#_normative_references"></a>1.1. Normative References</h3>
 <div class="paragraph">
 <p>Normative references are references to external documents or resources to
 which implementers of OpenCL must comply with all, or specified portions of,
@@ -1207,7 +1208,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_version_numbers">1.2. Version Numbers</h3>
+<h3 id="_version_numbers"><a class="anchor" href="#_version_numbers"></a>1.2. Version Numbers</h3>
 <div class="paragraph">
 <p>The OpenCL version number follows a <em>major.minor-revision</em> scheme.  When this
 version number is used within the API it generally only includes the
@@ -1230,7 +1231,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="unified-spec">1.3. Unified Specification</h3>
+<h3 id="unified-spec"><a class="anchor" href="#unified-spec"></a>1.3. Unified Specification</h3>
 <div class="paragraph">
 <p>This document specifies all versions of the OpenCL API.</p>
 </div>
@@ -1256,29 +1257,11 @@
 </li>
 </ul>
 </div>
-<div class="admonitionblock note">
-<table>
-<tr>
-<td class="icon">
-<i class="fa icon-note" title="Note"></i>
-</td>
-<td class="content">
-<div class="paragraph">
-<p>The OpenCL 3.0 features described in this specification are provisional.
-They have been Ratified under the Khronos Intellectual Property Framework, and are being made publicly available to enable review and feedback from the community.</p>
-</div>
-<div class="paragraph">
-<p>If you have feedback please create an issue on <a href="https://github.com/KhronosGroup/OpenCL-Docs/" class="bare">https://github.com/KhronosGroup/OpenCL-Docs/</a></p>
-</div>
-</td>
-</tr>
-</table>
-</div>
 </div>
 </div>
 </div>
 <div class="sect1">
-<h2 id="_glossary">2. Glossary</h2>
+<h2 id="_glossary"><a class="anchor" href="#_glossary"></a>2. Glossary</h2>
 <div class="sectionbody">
 <div class="dlist">
 <dl>
@@ -2294,7 +2277,7 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="_the_opencl_architecture">3. The OpenCL Architecture</h2>
+<h2 id="_the_opencl_architecture"><a class="anchor" href="#_the_opencl_architecture"></a>3. The OpenCL Architecture</h2>
 <div class="sectionbody">
 <div class="paragraph">
 <p><strong>OpenCL</strong> is an open industry standard for programming a heterogeneous
@@ -2336,7 +2319,7 @@
 </ul>
 </div>
 <div class="sect2">
-<h3 id="_platform_model">3.1. Platform Model</h3>
+<h3 id="_platform_model"><a class="anchor" href="#_platform_model"></a>3.1. Platform Model</h3>
 <div class="paragraph">
 <p>The <a href="#platform-model-image">Platform model</a> for OpenCL is defined below.
 The model consists of a <strong>host</strong> connected to one or more <strong>OpenCL devices</strong>.
@@ -2432,7 +2415,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_execution_model">3.2. Execution Model</h3>
+<h3 id="_execution_model"><a class="anchor" href="#_execution_model"></a>3.2. Execution Model</h3>
 <div class="paragraph">
 <p>The OpenCL execution model is defined in terms of two distinct units of
 execution: <strong>kernels</strong> that execute on one or more OpenCL devices and a <strong>host
@@ -2534,7 +2517,7 @@
 <li>
 <p><strong>Complete</strong>: The command and its child commands have finished execution
 and the status of the event object, if any, associated with the command
-is set to <a href="#CL_COMPLETE"><code>CL_&#8203;COMPLETE</code></a>.</p>
+is set to <a href="#CL_COMPLETE"><code>CL_COMPLETE</code></a>.</p>
 </li>
 </ol>
 </div>
@@ -2551,14 +2534,14 @@
 </div>
 <div id="profiled-states-image" class="imageblock text-center">
 <div class="content">
-<img src="data:image/jpg;base64,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wqevIf7De4t/h/f3mtazc3d9cxyyu96+Axtnc7V6LyMcdiR3r16gDzTx34g074a/DRk8OCGJ7iRoLIRvvCuxLO4OT0+Y/XFc58Cfh+ltYL4x1WPzL67ybMScmND1k/3m559PrXmPjiG7tPCHg3Tr2Ga2CtfO0cqFSC1yecH2A/OvrPT7eG0021trcAQQwokYHQKAAP0oAs0UUUAFFFFABRRRQAx445BiRFcejDNVJdE0mf8A12mWUmf79up/mKvUU02gMl/C3h6TG/QdLbHTNnGf6Uz/AIRHw1/0L2lf+Acf+FbNFPml3FZGWvhrQVIK6Jpox0xapx+lW4tPsoP9TZ28f+5Eo/kKs0UrthZAAAMAYooopDCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArMu9D0+81/TtYnVjfWCSpbkPgASABsjvwK064XxAsp+L3g1lWQxC2vt5AO0fIuM0Ad1RRRQAUUUUAFYN34J8MX2qHUrrQrGW8LBmlaEZYjuexP1reooAzrvQdKvr+K+utPt5rqKJoUkdASEYYZfcHJ4PrVOx8F+GtNAFlolnBgOoKRgHDjawz6EcYrdooAzbrw/pF7pttp9zp8EtpalDBEy8RlBhdvpgVpUUUAeDfF7yfHvwz0/xhpltMq2NxIjrIBuEe4oxOD03Kv4GvQvhP4pj8U+AbCYybru0QWtyCeQ6gAH8Rg/iau+E/B66J4GHhrUnivI388S7VIV1kdmxz7NivC9Pur/4GfFCa0uvNl0G86sB/rISflcf7adCPr6igD6eoqG1uoL60hu7WVJreZA8ciHIZSMgipqACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArLu9fsbLxBpuiTGT7ZqCSvBhcriMAtk9utalcxq3h67vvH/h3XYniFrp0NykysTuJkUBcDHtQB09FFFABRRRQAUUUUAFFFFABRRRQByfw21y/8R+CLXU9TlWW6kmnVmVAoIWVlHA9gKPiF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" alt="profiled states">
+<img src="data:image/png;base64,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" alt="profiled states">
 </div>
 <div class="title">Figure 2. The states and transitions between states defined in the OpenCL execution model. A subset of these transitions is exposed through the <a href="#profiling-operations">profiling interface</a>.</div>
 </div>
 <div class="paragraph">
 <p>Commands communicate their status through <em>Event objects</em>.
 Successful completion is indicated by setting the event status associated
-with a command to <a href="#CL_COMPLETE"><code>CL_&#8203;COMPLETE</code></a>.
+with a command to <a href="#CL_COMPLETE"><code>CL_COMPLETE</code></a>.
 Unsuccessful completion results in abnormal termination of the command which
 is indicated by setting the event status to a negative value.
 In this case, the command-queue associated with the abnormally terminated
@@ -2714,7 +2697,7 @@
 The details of this mapping are described in the following section.</p>
 </div>
 <div class="sect3">
-<h4 id="_mapping_work_items_onto_an_ndrange">3.2.1. Mapping work-items onto an NDRange</h4>
+<h4 id="_mapping_work_items_onto_an_ndrange"><a class="anchor" href="#_mapping_work_items_onto_an_ndrange"></a>3.2.1. Mapping work-items onto an NDRange</h4>
 <div class="paragraph">
 <p>The index space supported by OpenCL is called an NDRange.
 An NDRange is an N-dimensional index space, where N is one, two or three.
@@ -2805,36 +2788,33 @@
 work-group (S<sub>x</sub>,S<sub>y</sub>) and the local ID (s<sub>x</sub>, s<sub>y</sub>) inside the work-group
 such that</p>
 </div>
-<div class="dlist">
-<dl>
-<dt class="hdlist1"></dt>
-<dd>
+<div class="ulist none">
+<ul class="none">
+<li>
 <p>(g<sub>x</sub> , g<sub>y</sub>) = (w<sub>x</sub> S<sub>x</sub> + s<sub>x</sub> + F<sub>x</sub>, w<sub>y</sub> S<sub>y</sub> + s<sub>y</sub> + F<sub>y</sub>)</p>
-</dd>
-</dl>
+</li>
+</ul>
 </div>
 <div class="paragraph">
 <p>The number of work-groups can be computed as:</p>
 </div>
-<div class="dlist">
-<dl>
-<dt class="hdlist1"></dt>
-<dd>
+<div class="ulist none">
+<ul class="none">
+<li>
 <p>(W<sub>x</sub>, W<sub>y</sub>) = (ceil(G<sub>x</sub> / S<sub>x</sub>), ceil(G<sub>y</sub> / S<sub>y</sub>))</p>
-</dd>
-</dl>
+</li>
+</ul>
 </div>
 <div class="paragraph">
 <p>Given a global ID and the work-group size, the work-group ID for a work-item
 is computed as:</p>
 </div>
-<div class="dlist">
-<dl>
-<dt class="hdlist1"></dt>
-<dd>
+<div class="ulist none">
+<ul class="none">
+<li>
 <p>(w<sub>x</sub>, w<sub>y</sub>) = ( (g<sub>x</sub> s<sub>x</sub> F<sub>x</sub>) / S<sub>x</sub>, (g<sub>y</sub> s<sub>y</sub> F<sub>y</sub>) / S<sub>y</sub> )</p>
-</dd>
-</dl>
+</li>
+</ul>
 </div>
 <div id="index-space-image" class="imageblock text-center">
 <div class="content">
@@ -2883,7 +2863,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="_execution_of_kernel_instances">3.2.2. Execution of kernel-instances</h4>
+<h4 id="_execution_of_kernel_instances"><a class="anchor" href="#_execution_of_kernel_instances"></a>3.2.2. Execution of kernel-instances</h4>
 <div class="paragraph">
 <p>The work carried out by an OpenCL program occurs through the execution of
 kernel-instances on compute devices.
@@ -2922,7 +2902,7 @@
 </li>
 <li>
 <p>Each of the events in an optional event list defined when the
-kernel-instance was enqueued are set to <a href="#CL_COMPLETE"><code>CL_&#8203;COMPLETE</code></a>.</p>
+kernel-instance was enqueued are set to <a href="#CL_COMPLETE"><code>CL_COMPLETE</code></a>.</p>
 </li>
 </ul>
 </div>
@@ -2939,7 +2919,7 @@
 the kernel-instance end their execution, updates to global memory associated
 with a command are visible globally, and the device signals successful
 completion by setting the event associated with the kernel-enqueue command
-to <a href="#CL_COMPLETE"><code>CL_&#8203;COMPLETE</code></a>.</p>
+to <a href="#CL_COMPLETE"><code>CL_COMPLETE</code></a>.</p>
 </div>
 <div class="paragraph">
 <p>While a command-queue is associated with only one device, a single device
@@ -3013,7 +2993,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="device-side-enqueue">3.2.3. Device-side enqueue</h4>
+<h4 id="device-side-enqueue"><a class="anchor" href="#device-side-enqueue"></a>3.2.3. Device-side enqueue</h4>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -3051,16 +3031,16 @@
 enforce order constraints just as for the command-queue on the host.
 These events, however, are only visible to the parent kernel running on the
 device.
-When these prerequisite events take on the value <a href="#CL_COMPLETE"><code>CL_&#8203;COMPLETE</code></a>, the
+When these prerequisite events take on the value <a href="#CL_COMPLETE"><code>CL_COMPLETE</code></a>, the
 work-groups associated with the child kernel are launched into the devices
 work pool.
 The device then schedules them for execution on the compute units of the
 device.
 Child and parent kernels execute asynchronously.
 However, a parent will not indicate that it is complete by setting its event
-to <a href="#CL_COMPLETE"><code>CL_&#8203;COMPLETE</code></a> until all child kernels have ended execution and have
+to <a href="#CL_COMPLETE"><code>CL_COMPLETE</code></a> until all child kernels have ended execution and have
 signaled completion by setting any associated events to the value
-<a href="#CL_COMPLETE"><code>CL_&#8203;COMPLETE</code></a>.
+<a href="#CL_COMPLETE"><code>CL_COMPLETE</code></a>.
 Should any child kernel complete with an event status set to a negative
 value (i.e. abnormally terminate), the parent kernel will abnormally
 terminate and propagate the childs negative event value as the value of the
@@ -3071,7 +3051,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="execution-model-sync">3.2.4. Synchronization</h4>
+<h4 id="execution-model-sync"><a class="anchor" href="#execution-model-sync"></a>3.2.4. Synchronization</h4>
 <div class="paragraph">
 <p>Synchronization refers to mechanisms that constrain the order of execution
 between two or more units of execution.
@@ -3146,7 +3126,7 @@
 <ul>
 <li>
 <p><strong>Launching a command:</strong> A kernel-instance is launched onto a device after
-all events that kernel is waiting-on have been set to <a href="#CL_COMPLETE"><code>CL_&#8203;COMPLETE</code></a>.</p>
+all events that kernel is waiting-on have been set to <a href="#CL_COMPLETE"><code>CL_COMPLETE</code></a>.</p>
 </li>
 <li>
 <p><strong>Ending a command:</strong> Child kernels may be enqueued such that they wait
@@ -3161,7 +3141,7 @@
 completed.
 This is signaled to the host, a parent kernel or other kernels within
 command queues by setting the value of the event associated with a
-kernel to <a href="#CL_COMPLETE"><code>CL_&#8203;COMPLETE</code></a>.</p>
+kernel to <a href="#CL_COMPLETE"><code>CL_COMPLETE</code></a>.</p>
 </li>
 <li>
 <p><strong>Blocking Commands:</strong> A blocking command defines a synchronization point
@@ -3208,7 +3188,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="_categories_of_kernels">3.2.5. Categories of Kernels</h4>
+<h4 id="_categories_of_kernels"><a class="anchor" href="#_categories_of_kernels"></a>3.2.5. Categories of Kernels</h4>
 <div class="paragraph">
 <p>The OpenCL execution model supports three types of kernels:</p>
 </div>
@@ -3252,7 +3232,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_memory_model">3.3. Memory Model</h3>
+<h3 id="_memory_model"><a class="anchor" href="#_memory_model"></a>3.3. Memory Model</h3>
 <div class="paragraph">
 <p>The OpenCL memory model describes the structure, contents, and behavior of
 the memory exposed by an OpenCL platform as an OpenCL program runs.
@@ -3303,7 +3283,7 @@
 </ul>
 </div>
 <div class="sect3">
-<h4 id="_fundamental_memory_regions">3.3.1. Fundamental Memory Regions</h4>
+<h4 id="_fundamental_memory_regions"><a class="anchor" href="#_fundamental_memory_regions"></a>3.3.1. Fundamental Memory Regions</h4>
 <div class="paragraph">
 <p>Memory in OpenCL is divided into two parts.</p>
 </div>
@@ -3448,7 +3428,7 @@
 </div>
 <div id="memory-regions-image" class="imageblock text-center">
 <div class="content">
-<img src="data:image/jpg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAGjAkADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3+ivL/j67J8MpGRmU/bIeQcetZdh8BPD91p1rcPq+sBpYkcgTLjJAP92gD2SivI/+GfPDv/QY1n/v8v8A8TR/wz54d/6DGs/9/l/+JoA9coryP/hnzw7/ANBjWf8Av8v/AMTR/wAM+eHf+gxrP/f5f/iaAPXKK8j/AOGfPDv/AEGNZ/7/AC//ABNH/DPnh3/oMaz/AN/l/wDiaAPXKK8j/wCGfPDv/QY1n/v8v/xNH/DPnh3/AKDGs/8Af5f/AImgD1yivI/+GfPDv/QY1n/v8v8A8TR/wz54d/6DGs/9/l/+JoA9coryP/hnzw7/ANBjWf8Av8v/AMTR/wAM+eHf+gxrP/f5f/iaAPXKK8j/AOGfPDv/AEGNZ/7/AC//ABNH/DPnh3/oMaz/AN/l/wDiaAPXKK8j/wCGfPDv/QY1n/v8v/xNH/DPnh3/AKDGs/8Af5f/AImgD1yivI/+GfPDv/QY1n/v8v8A8TR/wz54d/6DGs/9/l/+JoA9coryP/hnzw7/ANBjWf8Av8v/AMTR/wAM+eHf+gxrP/f5f/iaAPXKK8j/AOGfPDv/AEGNZ/7/AC//ABNH/DPnh3/oMaz/AN/l/wDiaAPXKK8j/wCGfPDv/QY1n/v8v/xNH/DPnh3/AKDGs/8Af5f/AImgD1yivI/+GfPDv/QY1n/v8v8A8TR/wz54d/6DGs/9/l/+JoA9coryP/hnzw7/ANBjWf8Av8v/AMTR/wAM+eHf+gxrP/f5f/iaAPXKK8j/AOGfPDv/AEGNZ/7/AC//ABNH/DPnh3/oMaz/AN/l/wDiaAPXKK8j/wCGfPDv/QY1n/v8v/xNH/DPnh3/AKDGs/8Af5f/AImgD1yq2osE0y7ZkaRVhclEcqW4PAK8g+45ryz/AIZ88O/9BjWf+/y//E1Fc/ArQ9MtZr+31vWUmtkM0bC4C4ZRkHIXI5HWgD2Bfuj6UteRD9n7w8wDHWNZyef9cv8A8TS/8M+eHf8AoMaz/wB/l/8AiaAPXKK8j/4Z88O/9BjWf+/y/wDxNH/DPnh3/oMaz/3+X/4mgD1yivI/+GfPDv8A0GNZ/wC/y/8AxNH/AAz54d/6DGs/9/l/+JoA9coryP8A4Z88O/8AQY1n/v8AL/8AE0f8M+eHf+gxrP8A3+X/AOJoA9coryP/AIZ88O/9BjWf+/y//E0f8M+eHf8AoMaz/wB/l/8AiaAPXKK8j/4Z88O/9BjWf+/y/wDxNH/DPnh3/oMaz/3+X/4mgD1yivI/+GfPDv8A0GNZ/wC/y/8AxNH/AAz54d/6DGs/9/l/+JoA9coryP8A4Z88O/8AQY1n/v8AL/8AE0f8M+eHf+gxrP8A3+X/AOJoA9coryP/AIZ88O/9BjWf+/y//E0f8M+eHf8AoMaz/wB/l/8AiaAPXKK+fvH/AMHtH8K+CtQ1mz1TVJLi3ClFllBU5YDnA969g8BEn4e+HCSSTptvkk/9MxQB0NFFFABRRVDWNT/sjTnvDZ3N0qEbo7ZQzAd25I4FAF+isjw1r0fibRIdWgtLi2gnJMS3ChWdR0bHoe1a9ABRRRQAUUUUAFFFFABRRRQAUUUUAeW/tAf8kwk/6/If616Lo/8AyA7D/r2j/wDQRXnX7QH/ACTCT/r8h/rXouj/APID0/8A69o//QRQBw+l/YrrRofEOpa/d22q/aSJCtwcRv5m3yPK6Y7YxnvQ/jTV0i+3mWwMNxLdQRWQU+bAYlchmOefufMMDG4V2Z8P6QdUGpnTbU3wO7z/ACxuz659feqF7YWMGssbTQ7Se9vYXM8rYTcg2ggnBznIoA5eTxR4otra4nlutNcW9jbag6rbsNyyHBi+9wOCQ36VaTxXrAv5p3ubB7SPVzpwslQ+cykgBt2fvDOcYwRmt9rS5dHRvD1iVeJYWBuBgov3VPy9B6Vn6Z4fl0y/uL8aJaTXs08k/wBoecb03/wg7eg6UAZFz4v1C98PWKxXVtFdXthfSStGMtG0SnaQM8VUj8ZeILY21pbol0LK1tWndkUC4MgBJLFxswOhAbJzXWQ6T9nupLmHwxpqTyli8izDLbvvfwd+9M/sRN1qx8K6YWtBiAmYfuxnOB8vrQBB4ltodR8W6FY3k00drJb3MjIlw0W5hsxkqRnGTXO/8JPqmmM2j6VNJeRG+nitruRROwjjVWKcsu7DMRknoD1rrtT06XWfK/tLw5Y3XlZ8sy3GSueuPlps+lG506LTpvDOnPZxHMcJmG1foNvFAGLD4x1iUW9nNBbxahqCQyWiL8yhORNkg87QpPB/iFM8O+JNSvvsqR3en2ltbRwNNHcbi1x5jN91i2RjAA65NdKtvdo9u6+H7FWtkMcBE4HlqeCF+TgHAqv/AGUfOtZv+EY07zLQYgbzhmMdePk4oAxvDXjDWdY12ATWirp908yKpVVMOwkDB3EuTjkbRiu/rnINPltdRl1GDw3p8d5L9+dZwGbPXnb3q/8Aa9Z/6BcH/gX/APY0AalFZf2vWf8AoFwf+Bf/ANjR9r1n/oFwf+Bf/wBjQBqUVl/a9Z/6BcH/AIF//Y0fa9Z/6BcH/gX/APY0AalFZf2vWf8AoFwf+Bf/ANjR9r1n/oFwf+Bf/wBjQBqUVl/a9Z/6BcH/AIF//Y0fa9Z/6BcH/gX/APY0AalFZf2vWf8AoFwf+Bf/ANjR9r1n/oFwf+Bf/wBjQBqUVkNqeoW81ut3p0ccc0oi3pcbipOcHG0ela9ABRRRQAUUUUAFFV7+7FjYXF0ULiGMvtBxnA6VSW81hkVhpcGCM/8AH3/9jQBq0Vl/a9Z/6BcH/gX/APY0fa9Z/wCgXB/4F/8A2NAGpVTVJTBpN5KoQlIXYB1yvAPUZGR+Iqt9r1n/AKBcH/gX/wDY1DeXmtLZTsunIjCNiGin3uOOqrsOT6DHNAGypyin2payhd6zgf8AErg6d7r/AOxpftes/wDQLg/8C/8A7GgDUorL+16z/wBAuD/wL/8AsaPtes/9AuD/AMC//saANSisv7XrP/QLg/8AAv8A+xo+16z/ANAuD/wL/wDsaANSisv7XrP/AEC4P/Av/wCxo+16z/0C4P8AwL/+xoA1KKy/tes/9AuD/wAC/wD7Gj7XrP8A0C4P/Av/AOxoA1KKy/tes/8AQLg/8C//ALGj7XrP/QLg/wDAv/7GgDUorL+16z/0C4P/AAL/APsaPtes/wDQLg/8C/8A7GgDUorL+16z/wBAuD/wL/8AsaPtWs/9AuD/AMC//saANSiqmm3h1DT4rox+UXzlN2cEEg8/hVugDgvjN/ySrWf91P8A0Na2/AP/ACTzw5/2Dbf/ANFrWJ8Zv+SVaz/up/6GtbfgH/knnhz/ALBtv/6LWgDoqKKKACuZ8UaXqPiG5s9GVfK0WTMmozh8NKoPEIHUBj1PoMd66aigBscaQxJFEipGihVVRgADoBTqwNd03X73WNHuNK1hLKyt5i17AYtxnTHQH/PXPapdK8V6TrWt6ppFlOz3mmOEuVKEAE+h6HnI/CgDaooooAKKKKACiiigAooooAKKKKAPLf2gP+SYSf8AX5D/AFr0XR/+QHp//XtH/wCgivOv2gP+SYSf9fkP9a9F0f8A5Aen/wDXtH/6CKALtZkv/IzWv/XpL/6EladZkv8AyM1r/wBekv8A6ElAFHxLeXgvdJ0mzuTaHUZnSS5VQWRUQsQueNx6Z7c1ny6hqXh5hpcV/HrF7dXCx2iXLBHhBUsTKy9R8pI4yeldHqukWWtWn2a+i8xAwdCrFWRh0ZWHII9RWaPBeiDTpLM28jeZKJmnaZjMZBwG8zO7IHA56UAYUvjrVSJIrbSLdri1t7ia8D3BCqYXCsEOOcjkZx70+Txvq0SNG2kW5u5HtTbxi4O0pOSBubHDLt5xwe1dBD4U0a3h8qK02qbaS1Pzklkc5fJzySeSetUtc8F2WrQwxxgRYktxKSzZaKEkqoIPB560AR2Hiu8l1m20i9sYYrz7TJb3BilLIMRearLx3BHB6Vhnx3qKXa6pLBEulRabcTy26MS5dJtgwcd+PzNaV/a+BdOjXSr7VbK0uLeb7RmXURHcCQj7xYtu5U456g1XST4bRxW8SazowighkgWP+0U2mOQ5ZWG7kZ5570Aa/hbxNd639sivbA28tuFYOqOsbhgeBvUHIxg8Yqn/AMJvN/Y+m332FM3dtdzlPM+75IJA984pdH1jwLoaSiz8SaYWlI3vNqayMQOAMsx4HpVCJfhrDPJKmt6Vl1lQKdTUqiyjDhRuwoPtQA9/F+qmHy76witpZI7W6hNtcE/JLKqbWJHUE846itrwjf6tqGgXFxqBt2uhdXCRGMnaQsjKoPHtj6Cs2bUfh9OyNJrujkpFFCv/ABME4SNg6D73YgGrWneIvBOlLcJaeJNJRJ5mnZTqKEBmOWxluATzgetAE/hC71W+i1SfVLmKZlvpIYfJTbGqphSFzyfm3cmukrl9P8TeCtLs1tbTxFo6QhmbH2+M8sSSfvepNWv+E38J/wDQzaP/AOB0f/xVAG9RWD/wm/hP/oZtH/8AA6P/AOKo/wCE38J/9DNo/wD4HR//ABVAG9RWD/wm/hP/AKGbR/8AwOj/APiqP+E38J/9DNo//gdH/wDFUAb1FYP/AAm/hP8A6GbR/wDwOj/+Ko/4Tfwn/wBDNo//AIHR/wDxVAG9RWD/AMJv4T/6GbR//A6P/wCKo/4Tfwn/ANDNo/8A4HR//FUAWtb/AOYf/wBfsf8AWtSuP1fxl4Xk+w7PEekttvI2bF7GcDnnr0rS/wCE38J/9DNo/wD4HR//ABVAG9RWD/wm/hP/AKGbR/8AwOj/APiqP+E38J/9DNo//gdH/wDFUAb1FYP/AAm/hP8A6GbR/wDwOj/+Ko/4Tfwn/wBDNo//AIHR/wDxVAFzX/8AkX7/AP64N/KsrW7u9l1PRtDtLtrJb1JJJblAC+1FB2pngE56+gNQ654z8LS6HfRx+JNId2hYKq3sZJOPrUeo654G1qxhgvvEOkN5RDxumoIjxtjqrBsg0AK+paposkWi295DrGo3E7LA1ywjMKBN580r1OM4wATkVny/EDUmt5ZrXR4HFpaNc3ayXGCCkjI6IQOT8uQTxTi/w4Omiy/t7SwBN5/njVFE3mYxv8zduzjjr04qZbv4cpbSWya1oqQyWv2RlXUE5jyWx97rkk5680AEnjLV45WsTpVqdQa8hgRRcHy9kqM6sTjORt5AHPapE8VX98z6U1ksWoFLuGXyZc7ZYlUrsPGQd46kYrO1yTwPq80Ei+JtHi/0qKa4I1BAziNGVQpDfKRuHPtUl5J4BfSo7az17SkuLYvJbSLqaBzKw5LNuO7ccZzkGgCqnj3U43fVp7eL+zRpEdwLZGJfznl8sc46Zx+FdN4c8SXWr2N+93YmCazP3gjrHKCuQV3gNx0PFY4f4biKGL+2tH8uK1NmI/7RTaYic7SN3ODyD1FXtJ1vwNo1vLFa+JNLbzW3SPPqaSM/GBksx7cUAQ3HjmeDRbO/FgjNcaVLf+X5nQpswufff1qNvFWqmcWd5ZRQXQuLRkNvOSjJMxADEjPBU59arQxfDOBZlTW9K2yxPBtbVFISNyCUUFvlXIHArQl1XwBNdi6fXtHMwMJDf2gn/LIkp/F2JNAEen69qo+GEur6hJF/aBSURvFyCxcqnXvnFN0fWNVn1XSdFurste2bTrqLBR++CABG9g24H8DT4tR8AQ6b/Zy+INJNp9o+0CJtRQgPv38fN03c46VYj17wJFrc2spr+jC/nhWCSX7fHyinIGN2O9AHW0Vg/wDCb+E/+hm0f/wOj/8AiqP+E38J/wDQzaP/AOB0f/xVAG9RWD/wm/hP/oZtH/8AA6P/AOKo/wCE38J/9DNo/wD4HR//ABVAG9RWD/wm/hP/AKGbR/8AwOj/APiqP+E38J/9DNo//gdH/wDFUAb1FYP/AAm/hP8A6GbR/wDwOj/+Ko/4Tfwn/wBDNo//AIHR/wDxVAG9RWD/AMJv4T/6GbR//A6P/wCKo/4Tfwn/ANDNo/8A4HR//FUAWvD3/IDg/wB5/wD0Nq1K5DQvGXheLR4Uk8R6QjBnyrXsYP3z71o/8Jv4T/6GbR//AAOj/wDiqAMD4zf8kq1n/dT/ANDWtvwD/wAk88Of9g23/wDRa1x3xa8VeHtR+GmrWtlrumXNw6psihu0dm+cdADmtfwT4v8ADNr4E0C3uPEOlRTRafAkkcl5GrKwQZBBPBFAHeUVg/8ACb+E/wDoZtH/APA6P/4qj/hN/Cf/AEM2j/8AgdH/APFUAb1FYP8Awm/hP/oZtH/8Do//AIqj/hN/Cf8A0M2j/wDgdH/8VQBvVnapp0txpmoR6ZMlhf3URVbtYgWVsYDH1xVL/hN/Cf8A0M2j/wDgdH/8VR/wm/hP/oZtH/8AA6P/AOKoAuaFaX2naDZ22q3/ANuvYYgJ7ort3nua8/fXv+E18XSRWniCfRrWzRv7LdRtF9KDh5fm+WSNcFdueck8V2w1vwz4jSXSYdZ069NzGyNBb3is7LjnG056elT3XhrRb3R4dJutMtprCBQsULxghAOmPT8KAKfgzX5vEWhNc3KxefBcSWskkJzFK0bbS6f7Jroa5W51ZtJv4fDXhjRoZ5oIBLIm8QwW0ZOFBIB+ZsHAA9zSeGPF83inULhbbTXgsbRPKuZZTyt0Gw0S9mC45b3FAHV0UUUAFFFFABRRRQB5b+0B/wAkwk/6/If616Lo/wDyA9P/AOvaP/0EV51+0B/yTCT/AK/If616Lo//ACA9P/69o/8A0EUAXazJf+Rmtf8Ar0l/9CStOsyX/kZrX/r0l/8AQkoA0ZH8uJ3xnapOKw7fVNZubaK4SxswkqB1BnOQCMjPFbNz/wAes3+438qydJ/5A1j/ANe8f/oIppXLhFMUXmuHpZWX/f8AP+FH2zXAcGysv+/5/wAK574iW15eeGYbaxR5Jpb+BCqu6AqW53MvIX1IrDs9L8S6HLYaO2oypbzLeXMiWwMyRAAeXCJJAWxnPuc07Ibikzmx4csPFv7QWuWfiKxjmRbGOTyklbAYJGAcjB6Gu8b4M+AFUs2iKFAySZ5MD/x6uC+GbTv8Zbh7oOtw2iQmRXUgqdkXGDzXqfjgL9j01rxXfSUvUOoKoJHl4ONwHJTftz7VJDMaH4PfDy5jEkGkRSxnoyXLsD+IapP+FL+Av+gGv/f+T/4qql5qWkWsV1J4YMllZyXFvHqGoWkf7mNCSGKD7oYDGWA4BBPSq8Go6vqMyWsGuX4sUS9aC7RFD3KRhNhJK4OCWGQBuAoEaf8AwpfwF/0A1/7/AMn/AMVR/wAKX8Bf9ANf+/8AJ/8AFVi3ut63p+kmaTW7sG50+yvJJmiU+Q7yqr7FA6bSfl5q9H4iubO6hkTV7i50GLU0jN/MoO5GiYsjMAMqH2/NjvjPFAFs/BnwAGCnREDHoPtEmT/49S/8KX8Bf9ANf+/8n/xVYT6rf3F7Y61FdXU10seqJZxsMJKVceWu3HPHQd9tb3w91XU9QubpbrUUvbcQRyH94ZGjlOdwzsUAf7PJFAFdPhL8NpZzBHptu8wzmNbtywx143Zqf/hS/gL/AKAa/wDf+T/4quetToj+HZLe1SE+JzqUn2fyY/8ASFk884JOMgY654xVm21fxLqfiS6shqi2tzJNcQfZi+TEig+Wyps+Xop3FiDk0AazfBv4foyq2iopY4UG4fk+3zU7/hS/gL/oBr/3/k/+KrKk8Ra3qH2XVoY5A3mvBBaPFn97HA5c9M8ycD12+9F1r95D4bWTS9fur9JbiBby5mAj+yBlJYBwny5IA6HbmgDV/wCFL+Av+gGv/f8Ak/8AiqP+FL+Av+gGv/f+T/4qtzwVeXt94dWW+uUuWErrHMhJ3oD8uWIG4+4GDXRUAcD/AMKX8Bf9ANf+/wDJ/wDFUf8ACl/AX/QDX/v/ACf/ABVd9RQBwP8AwpfwF/0A1/7/AMn/AMVR/wAKX8Bf9ANf+/8AJ/8AFV31FAHA/wDCl/AX/QDX/v8Ayf8AxVH/AApfwF/0A1/7/wAn/wAVXfUUAcD/AMKX8Bf9ANf+/wDJ/wDFUf8ACl/AX/QDX/v/ACf/ABVd9RQBwP8AwpfwF/0A1/7/AMn/AMVR/wAKX8Bf9ANf+/8AJ/8AFV31FAHA/wDCl/AX/QDX/v8Ayf8AxVH/AApfwF/0A1/7/wAn/wAVXfUUAcD/AMKX8Bf9ANf+/wDJ/wDFVFc/B7wNa2s1xBpSW80SF0na6kQRsBkMW3cYPOa9Dqrqaq2lXavIYlMLgyBS20YPOFIJ/A5oA4ofBfwEVH/EjU8f895P/iqX/hS/gL/oBr/3/k/+KrvV+4vfiloA4H/hS/gL/oBr/wB/5P8A4qj/AIUv4C/6Aa/9/wCT/wCKrvqKAOB/4Uv4C/6Aa/8Af+T/AOKo/wCFL+Av+gGv/f8Ak/8Aiq76igDgf+FL+Av+gGv/AH/k/wDiqP8AhS/gL/oBr/3/AJP/AIqu+ooA4H/hS/gL/oBr/wB/5P8A4qj/AIUv4C/6Aa/9/wCT/wCKrvqKAOB/4Uv4C/6Aa/8Af+T/AOKo/wCFL+Av+gGv/f8Ak/8Aiq76igDgf+FL+Av+gGv/AH/k/wDiqP8AhS/gL/oBr/3/AJP/AIqu+ooA4H/hS/gL/oBr/wB/5P8A4qj/AIUv4C/6Aa/9/wCT/wCKrvqKAOB/4Uv4C/6Aa/8Af+T/AOKo/wCFL+Av+gGv/f8Ak/8Aiq76igDgf+FL+Av+gGv/AH/k/wDiqP8AhS/gL/oBr/3/AJP/AIqu+ooA4H/hS/gL/oBr/wB/5P8A4qj/AIUv4C/6Aa/9/wCT/wCKrvqKAOB/4Uv4C/6Aa/8Af+T/AOKo/wCFL+Av+gGv/f8Ak/8Aiq76igDgf+FL+Av+gGv/AH/k/wDiqP8AhS/gL/oBr/3/AJP/AIqu+ooA8L07w3pPhf8AaN0vT9HtRbWx055Cm8t8xR8nk+1e6V5Bf/8AJz2l/wDYLb/0CSvX6AOV17wzqlxe3WoeH9YGm3t3EkFwXhEisqnhh/dcKWx26V5w9pcWNzfrHLcGDTpXtLPTbW8MN1CQMrcKuQJ2kJLHOc9s8ivcapT6Rptzfw389hay3kP+qneJS6fRsZFAGP4Y8Qz6hBc2+pRCG506KBLyZmAQzNGGce23Iz9a27S/t72S5jgLk28nluWQqM4B4J6jBHIryvWvBusfvdPu71rptVv5rhViQrbWqE5aaY/8tHCgBVPGQODWzpHiHVdO8P2eoWWkxnwtEY7a3V5Xa8ki3BBNjGMEnO3rjmgD0WiiigAooooA8t/aA/5JhJ/1+Q/1r0XR/wDkB6f/ANe0f/oIrzr9oD/kmEn/AF+Q/wBa9F0f/kB6f/17R/8AoIoAu1mS/wDIzWv/AF6S/wDoSVp1mS/8jNa/9ekv/oSUAXrn/j1m/wBxv5Vz66hDpPhGPUbkOYLWyWWQIMttCgnA9a6C5/49Zv8AcP8AKuUS40bUfC0em3l7CIZ7NYZlEu1sFQCPY1US4FS2+IelS3fkT2mo2eGZHkuIcKjCPzcEg9SnNQQ/E3Rbm2SS2tr+eSSXy1gjiBc/IXDdcY2qe/Hep20fwm9wZpLqNy03nMrXGVZvK8rkemzt+NMttD8K2sVtGuotILZy8PmXW7blCm36BSaepV2cd4L1SHW/2gNW1O3jmSC50uOSMTLtYqUiwce9e3kAjBGQa8Q8F29nZ/H/AFS00999nb6VFFEd275VSIde9e31DM3uNEcax+WqKE/ugcViWL6tfWi3Mc1jEjMyqht2O0BiMZ3e1btZfh7/AJAkP+9J/wChtQIqX+jahqdusF1c2bRrIkgCwMOVYMv8fTIq19k1fy/L+02Gz+79lbH5bq44rpV/Jr194h1Wa0vrK7dYytyY2tYlwYzGoPORz0O4nFSSeLNTXU3ljvbcQQX0NkumyRYnnV1U+YT1B+bIAGMKc0Adb9m1jj/SrDg5H+jNx/4/QttrCAhLqwXJycWzDJ/77rh7fX/FVzZ2so1eyX7XY3F2MWgPl+SwAA553A856dqH8Z6xJ9tvU1GwhjtILSdbBosvcGWNWZQc55JIXHegDtxZ6srl1uNPDnqwtTn/ANCpfs2sBy4urDeRgt9mbOP++65k+LbtvLt/tVul1Jrj2Pl4G9YgrEfL6jA5rmbHxT4gstE0uytr1biUWc13JcyiIbyJWXyyXYAAY5xluRQB6b9n1nj/AEux4OR/ozf/ABdJ9l1cIVFzYbW6j7K2D/49Wfqev3NnF4bndobdL+4RLncQVUNGzYDfUDmufj8S63q93BbWGpWsCSNft54gEmVhkCpjnHTqaAOxEGsqoC3liAOABbNx/wCP0vk63/z+2X/gM3/xdedTa7qWrPp1yL6OxaWbTJJmiXIbeXyDk/dyK63x6l3LpNrBa6lPaNc3UVuFgIUyl3AwW6gAbjxQBseTrf8Az+2X/gM3/wAXR5Ot/wDP7Zf+Azf/ABdaQAVQo6AYFLQBmeTrf/P7Zf8AgM3/AMXR5Ot/8/tl/wCAzf8AxdadFAGZ5Ot/8/tl/wCAzf8AxdHk63/z+2X/AIDN/wDF1p0UAZnk63/z+2X/AIDN/wDF0eTrf/P7Zf8AgM3/AMXWnRQBmeTrf/P7Zf8AgM3/AMXR5Ot/8/tl/wCAzf8AxdadFAGdplzdSz3tvdtE728iqHiUqCCoboSfWtGszTv+Qvq//XaP/wBFrWnQAVU1QRHSbwTlhEYH3lFBIXBzgHgn61bqpqhjXSbwzKzRCFy4RtpIwc4PY+9AFpcbFx0xS0i/cXHpS0AZd5c3zatFZWbwRgwNMzyxls4YDAwR60vk63/z+2X/AIDN/wDF0jf8jVH/ANeTf+hrXFQf2TeWmo6rr2rXFrq1teSIWjuGWS2CvhERO4Ixxg7s0Adt5Ot/8/tl/wCAzf8AxdHk63/z+2X/AIDN/wDF1yDeLNUGpPOLy28oai1gNMMX70KFJ8wnOc8bsYxiqMXiPxU2nLcNq1lufRzqvFp90r/yzHP3T3PUdqAO98nW/wDn9sv/AAGb/wCLo8nW/wDn9sv/AAGb/wCLrin8Xav9tv7lNRshFaXdvEmm+WDLMsqoSM5zn5yRgduasnxZe3ENjare263dzfXltIqqC6JGJNp29iNq0AdZ5Ot/8/tl/wCAzf8AxdHk63/z+2X/AIDN/wDF15naeLPEFlo2lWtrdR3DQaXHdyTzGIC4LMRtYswwABglcnJrv9T1uay1Pw9HJJDBb3zyLOXIwCIiwAY+4/GgC75Ot/8AP7Zf+Azf/F0eTrf/AD+2X/gM3/xdcPB4o1/VoYjZ6lawL9gubxpPs4k3+XMyqBzwCByahOsX+pazps63qWSyX9k0qxrkSeZas5UknpngfWgDvvJ1v/n9sv8AwGb/AOLo8nW/+f2y/wDAZv8A4uuW8TXd0PFi3lrNKI9CtkuJ4kY7ZFkfDhh3wgLD6Vt+DJTeaE2pGVpFv7ma5jJbOI2c7Me20CgC95Ot/wDP7Zf+Azf/ABdHk63/AM/tl/4DN/8AF1p0UAZnk63/AM/tl/4DN/8AF0eTrf8Az+2X/gM3/wAXWnRQBmeTrf8Az+2X/gM3/wAXR5Ot/wDP7Zf+Azf/ABdadFAGZ5Ot/wDP7Zf+Azf/ABdHk63/AM/tl/4DN/8AF1p0UAZnk63/AM/tl/4DN/8AF1FJPqtndWYuJ7WWKecRMEhZSMqTkHcfStiszV/9dpf/AF+r/wCgPQBp0UUUAeQX/wDyc9pf/YLb/wBAkr1+vIL/AP5Oe0v/ALBbf+gSV6/QAUUUUAIyq6MjAFWGCD3FcJqmgat4Y8N6lNoer6hPHb2rJY2BRGWAEjJBxubaM7QT2xzXeUUAeKaJLHoF5DqOlXCanZ2CyT6lqlrOzPND5bNsniJP73dggj0PTpXpnh3xTFr0ktvJZy2V5HEk/kSOr74n+46spIIOCPYimeIPDkl79kutJa2tr20maYJJH+5uAylWSQLyQQevODTfBXh2fw5oSWl41u9wHcr5IJWGMsWWJWb5iq54zQB0lFFFAHlv7QH/ACTCT/r8h/rXouj/APID0/8A69o//QRXnX7QH/JMJP8Ar8h/rXouj/8AID0//r2j/wDQRQBdrMl/5Ga1/wCvSX/0JK06zJf+Rmtf+vSX/wBCSgDTqL7NB/zxj/74FS1x8V7qtyJJf7UeMGWRQiwIQoDEDr7CmlcmU1FXZ1f2aD/nhH/3wKPs0H/PCP8A74Fcx5uqf9BiX/vwlMN3fq4RtdKueitHECfwp8jI9tA4/RlVP2mdfVVCgadHwBj+CKvX68V8KtK37RmuGaczyf2eoLlQCflj7Cvaqk0TurhWX4e/5AkP+9J/6G1alZfh7/kCQ/70n/obUDJ7nSNNvLuO7ubC2muIvuSyRKzL9CRT202xfUFv2s4GvEXas5jG8D03daqatcXiXdjbWk6QmcuXdo9/CrnAFQeVq/8A0Fo//AUf400mxqLZprYWaKirawhURo1AQYVT1A9jWfb+F9Lt9XuNSNtFJPIyGPfGp8jYgUBOOBgVRk1GWG+Wxl8TWKXj4227RoJDnphd2asv/acckcb6zCskpIjU26gvjk4GeaLMfKzzHxXqniuf4w3Gg+Fk0iK4FqlyJbm1Qtwoyd5UnPPFJJ4Y+LcsaxyL4VeNJDKqtaxkBz1YDZ1PrU+mrOn7TEwuJhNJ/ZXLhNv8K9q9P8RatPpVpbrZwxy3l5cpbQLISEDNk5bHOAATxSJPMbnR/jPe25t7u58OXEB6xSwoynHTgpSRaJ8ZIdvlT+Go9gIXZAgwD1A+Tv3r0A6xq2gW88mvpb3UeUW2ksUIeaRjgR7Ceucc5x9Khfx3bqY4BpOotfs8kb2aqu+NkUOcndtwVIIIPNAHBN4f+MLxGJn8MNEQoKG3jwQv3eNnbt6VYk0342SlDJfeH38ttybo1O0+o+Tg12I+Ium/Yprx7DUEhW2S6h3RDdPGzBMqM5yGIGDjrVyHxjatcJa3FjeWt411HbmCZV3L5gJR8gkbSFPfg8UAcL9j+OP/AEEtC/74X/4ij7H8cf8AoJaF/wB8L/8AEV19z43Eet2ltFZyGyM11Fd3D4HleSASRzyOaueHvGeneI7uS1t0kimEQnRZGQ+ZETgN8pOPocGgDhPsfxx/6CWhf98L/wDEUfY/jj/0EtC/74X/AOIro/8AhIvEa2Oo63mwl0+yu5YntBGyyGJH2kh843Y56e1XJfiJpEeoy2iRTy7GaNXQod8qruKBd27PBGcYzxmgDkPsfxx/6CWhf98L/wDEUfY/jj/0EtC/74X/AOIrtbrxrYrd2UcLsIpRFLJMUyqo6swBOeDhSe9B8c2kWkyajdaffWsZaMW4nRV+0+Z9zac4575Ix3oA4r7H8cf+gloX/fC//EUfY/jj/wBBLQv++F/+Ir0nQNftPENg11ahlMcjRSxsQSjjqMgkH6g1q0AeQ/Y/jj/0EtC/74X/AOIo+x/HH/oJaF/3wv8A8RXr1FAHjkel/G2KaaVNR0IPMwZztXkgAD+D0FS/Y/jj/wBBLQv++F/+Ir16igDyH7H8cf8AoJaF/wB8L/8AEUyaz+M/kSfb9U0UWe0+eY4Q7BMfNhQoJOM8AjNew1T1WQRaPeyMkbqkDsVlAKHCnhgSBj6kUAeW/Y/jh/DqehY7fIv/AMRR9j+OP/QS0L/vhf8A4ivXU5RTx07UtAHjn9lfG03Yuv7R0LzRGYwdq/dJB/ue1Qy+HfjBPepezN4Yku0xtne3jLrjphtma9pooA8X/sH4xG9N6ZfDP2tl2GfyE3lfTdszinDRPjKE2Cfw2FEflY8hMbP7v3Pu+1ezUUAeHW/hL4uW2oTX6SeGzdSyeZ5zQoWQ7QvynZ8owBwKsL4f+MKXbXav4YW6c7mmFvHvJ6ZJ2ZzivaaKAPEm8L/FtlhVl8KlYWLxA2seI2JySvycHPNWLrRvjPfwiG8ufDlzEGDBJoUdcjocFOtey0UAeMponxliAEc/hpAEMYCwIPlJyV+50J7U1tA+MLpsaTwwygq2DbpjK/dP3O3b0r2iigDx06X8ay0rG88PbpRtkPlJlx0wfk5pYtN+NtvCkMN94fiiQBURI1CqB0AATgV7DRQB5D9j+OP/AEEtC/74X/4ij7H8cf8AoJaF/wB8L/8AEV69RQB5D9j+OP8A0EtC/wC+F/8AiKPsfxx/6CWhf98L/wDEV69RQB5D9j+OP/QS0L/vhf8A4ij7H8cf+gloX/fC/wDxFevUUAeQ/Y/jj/0EtC/74X/4ij7H8cf+gloX/fC//EV69RQB5D9j+OP/AEEtC/74X/4ioptL+Ntw0LSajoRMUnmJ8q8HBH9z3Nex0UAeQ/Y/jj/0EtC/74X/AOIo+x/HH/oJaF/3wv8A8RXr1FAHg0ngf4ty+LofFD3ui/2pDCYEkyNoQgj7uzHc1t/Y/jj/ANBLQv8Avhf/AIivXqKAPIfsfxx/6CWhf98L/wDEUfY/jj/0EtC/74X/AOIr16igDyH7H8cf+gloX/fC/wDxFH2P44/9BLQv++F/+Ir16igDyH7H8cf+gloX/fC//EUfY/jj/wBBLQv++F/+Ir16igDxjRPE/wAQtO+KejeGfFF7YSw3sckrLbRLyoRyOcAg5WvZ68g8Rf8AJyfhX/ryk/8AQJa9foA8t/aA/wCSYSf9fkP9a9F0f/kB6f8A9e0f/oIrzr9oD/kmEn/X5D/WvRdH/wCQHp//AF7R/wDoIoAu1mS/8jNa/wDXpL/6EladZkv/ACM1r/16S/8AoSUAadcZYf8AHs//AF3m/wDRjV2dctHoerweYkT2LRmV3UuXBwzE84HvVRaTMqsXJaCV5zr3g258T+ONWJeC2tja2yi5ltS78Zz5L5AVh6816V/ZOteunf8AfT/4Uf2Vrfrp3/fT/wCFW2mYxpzWyPLPh/E8H7QfiKNw/Fu+C/Vh8mD+I5r3mvF/DEU8H7R2uR3Pl+aNOTPlk7fuRY617RWb3OqOyuFZfh7/AJAkP+9J/wChtWpWX4e/5AkP+9J/6G1IZHqn/Ia0r/tt/wCgirNVtU/5DWlf9tv/AEEVzXi3xhd+HLzybXTobpY7F72YyTmMhVdU2rwck7qtbGsHZGdf+AZdd8balqN9cfZ9PaW1dFSCNnm8tQTiQ/NHgjHHWq0Xg/V7hbL7SbqKaa5vjdz/AGokxoysISOeAMrwKmuviPe2wFsNDE2oLcTxyRRSlk2xBSdpx1IYdeBzRc/ETU0urhINEtjEklxGhluir5hjEjbgBxwccd6NA0OU8FjWf+Gg5W15Fjv20w7kVtwVQqgc++M/jXtms6RDrVgLaWSWF0kWWGaJsPFIv3WX3/xNeQeH9RTVf2jDeRxvGJNGRtrdsxofx69a9vqDN7nLP4L+1wzvqGs3t1fPsMN18qfZyh3KUQfL16561QtdO0az1BbufWLm6vo5JvPmMRPmO6hD91cAKFAAHpXcVmaD/wAgw/8AXxN/6MagRw+taPp0ugJa6df3D3ENkllGWjZflEqOXzt+8NtXJNL0qeOSabXr2TVGnjmS+NuQUMedgC7cYwWyO+TWxc+I9UmvL1NF0Zb63sJPKnd5xG0jgAskYxyQD3wM8Vak8XaRDqUOnzyyRXMmwOrRHbCzj5UdhwrH0JoA5tNG0JY4lk1i8mYT3EszSQMTMJhiRT8vA44x0q54cttH8PSuy6rPcDyxFErWmwIg6Z2oNze5q4fiD4dBdRcTuy79oS2c+YUOHC8fMV746VNP468PW9wkLXjMWjjmLpEzIkcn3HZgMBT6mgDB/srTWNxbS+Ir1tLuLlrmWyFqVDFm3FS+3O3PaprXTNCs9ebUYNTnSFp2uDbC048xuvz7N23vtzXTP4i0tEdzP8qXYsjhT/riAQv6jmsex+IGlXGjw39xHcwGWWVFh8hmcLGxDOQB90cZP4UAZsGh+GYLQWovrlovtrXRDROcgqVEf3fuhTgU1tI0mbSTYXev39ysTRtaNJbk/Z/L+7hdmGPOCT1FdnNq9hBDZTNOpjvZEit3XkOzDK/nWdeeMtFsTtkmleQzSwLHFCzszx43gADtmgCDQ7vStF0/7N/aEs7s5d5GtimSfRVUAD2rS/4SLS/+fh/+/L/4Vi6h490+zSGeBGvLef7OYzArM22Vyu4jHQYPvnitPxP4hXw3pDXv2G5vGx8scK/T7xPCjkUAT/8ACRaX/wA/D/8Afl/8KP8AhItL/wCfh/8Avy/+FaMZZokZ1CsVBIBzg0+gDL/4SLS/+fh/+/L/AOFH/CRaX/z8P/35f/CtSigDL/4SLS/+fh/+/L/4VBeeIbI2U4tbhvtHlt5WYXxuxx1XHWtuquomUaZdG33+cIX8vYPm3YOMcHnPtQBUHiLTNozcPnHP7l/8KX/hItL/AOfh/wDvy/8AhWmv3RnrjmloAy/+Ei0v/n4f/vy/+FH/AAkWl/8APw//AH5f/CtSigCrZ6jaagJDay7/ACyA42kFSeRwatVlWH/Ie1b/ALY/+gVq0AFFFFABRRRQBUvNTs9PaNLmbY0gJVQpYnHXgD3qt/wkWl/8/D/9+X/wpJ/+Ros/+vWX/wBCSsuTxLqlxPdS6Ron22ws5jDK5nCSSsv3vLXHOOnJGSOKANX/AISLS/8An4f/AL8v/hR/wkWl/wDPw/8A35f/AAqu3izR01hdLadluSwjOYzsWQjIjL9A+O2aof8ACxfDZjZ1upmUJ5i4tnO9AcMy8che57UAa/8AwkWl/wDPw/8A35f/AAo/4SLS/wDn4f8A78v/AIVSl8a6DDqH2J7tjIDGHdYmMaeYAULNjADZGM1afxJpawiXziQbp7RQEOTKucr/AOOmgB//AAkWl/8APw//AH5f/Cj/AISLS/8An4f/AL8v/hWNYfEHSLnRbHULlLi3N0jSeV5LM0aKxUu2Bwvua6GfVLO3kskkmGb19luVGQ52luv0BNAFf/hItL/5+H/78v8A4Uf8JFpf/Pw//fl/8Ko3fjfQrMJvnldnMoVIoGdj5TbXOAOgNVb7xzY2l1bpEhu4rme2ije3VmIWYEhjx0wOKANj/hItL/5+H/78v/hR/wAJFpf/AD8P/wB+X/wqprniZNE1fTLJ7YyR3bHzpQ2BAuQoYjuCzAVc0jVDqj6h+48uO1u3tlbdnzNuMn25yPwoAT/hItL/AOfh/wDvy/8AhR/wkWl/8/D/APfl/wDCtSigDL/4SLS/+fh/+/L/AOFH/CRaX/z8P/35f/CtSigDL/4SLS/+fh/+/L/4Uf8ACRaX/wA/D/8Afl/8K1KKAMv/AISLS/8An4f/AL8v/hR/wkWl/wDPw/8A35f/AArUooAy/wDhItL/AOfh/wDvy/8AhT4te02aaOFLg75G2oGjZcn0yRWjWXrX3bD/AK/Yv5mgDUooooA8g8Rf8nJ+Ff8Aryk/9Alr1+vIPEX/ACcn4V/68pP/AECWvX6APLf2gP8AkmEn/X5D/WvRdH/5Aen/APXtH/6CK86/aA/5JhJ/1+Q/1r0XR/8AkB6f/wBe0f8A6CKALtY2oXUdjr1pcThxEbeVN6oWG7chxwPY1s0UAZX/AAkWm/8APWT/AL8P/hR/wkWm/wDPWT/vw/8AhWrRQBlf8JFpv/PWT/vw/wDhR/wkWm/89ZP+/D/4Vq0UAeOeH7mK7/aU16aEkxtpyYJUjokXY17HXkOkf8nN+IP+wdH/AOi4q9eoAKy/D3/IEh/3pP8A0Nq1Ky/D3/IEh/3pP/Q2oAi1nzI9Q065W3nmjjMgfyU3FcrxxVG5NheszXWh3c7NGYiZLInKEglfpkA49q6eimnYpSaOSntdIukKXHhyeVTL55D2Of3mMbvrgCntFpjuzN4fuCzM7MTY9S42sfxHB9q6qijmYc7PDvD1/aX37SNyLOJ4orbTTbeW8ewoUVQRj0Fe414B4O/5Oc8Qf9vH/ste/wBIkKzNB/5Bh/6+Jv8A0Y1adZmg/wDIMP8A18Tf+jGoAybjw/rNteX50TVbe1ttQkMsyzQF3hkIAZoyCOuM4PQ1Wm8GXjXM0EeqA6Xdywz3ayx7p3eML0fOPm2LnI45xXT32o22nJG1y5XzG2oFUsWOM9B7Cqf/AAkmnetx/wCA7/4UAZtl4TmtBpubtGNmt2DhMbvOORj0xWBaeENbS61DSY7uOHTpLC1s55nt8mUKjBjGc8HBxz0zmux/4STTvW4/8B3/AMKP+Ek071uP/Ad/8KAsYcng2/8At+2HUYV0z+0Y9QETQky7lABTdnG35Qc4zWfdfDm5mSBhdWU0tuZ4oxcwMyGGSTfyAw+cHPsRXWf8JJp3rcf+A7/4Uf8ACSad63H/AIDv/hQFipqXhuWbQtNs9PuIoLjTZIpbdni/dlkGMFR0BGenSqml+Eruz1K3vrm/jmlSe7nk2RbQTMF4HPGMVrf8JJp3rcf+A7/4UjeJtMRSzvMqjks0DgD68UAc7H4Du7eySOHUYvPiit1jLRHaWimaXkZ6Hdium1zSpNZsIbTzljQXEUs3y53qjBiv4kCtNWDKGU5BGQaWgAoopGZURnYgKoySewoAWisdfE2mOoZHnZTyGEDkEflS/wDCSad63H/gO/8AhQBr1W1FJpNMukt93nNC4j2tg7sHGDkY/MfUVR/4STTvW4/8B3/wqrqev6dPpV5DvkXzIXXMkLBRkHqSpAH4GgLHQLnaM9cUtY6+I9OCAZn4H/Pu/wDhS/8ACSad63H/AIDv/hQFjXorI/4STTvW4/8AAd/8Ku2Oo22oxu9s5by22OGUqVOM8g+xoAq2P/Ie1b/tj/6BWpWXY/8AIe1b/tj/AOgVqUAFFFFABRRRQBlT/wDI0Wf/AF6y/wDoSVkP4b1q0lvbfR9XhtdPvZWmffAWmgZvv+W2cc9RkcE9615/+Ros/wDr1l/9CStKWVIYXlkYLGilmY9gOpoA5F/Bt2b54V1JP7HlvEvpInjzMZVA435xtJUEnGafb+DZobO0gN6hMGmz2JIj6mQg7vwx0rXHibTWUMrTkEZBFu/P6Uf8JJp3rcf+A7/4UBY5G18JaxNdatpjXMcGlSi1ilZoMvMscSAmM5wMkY5Bx2rTXwfqC6pGRqUH9mw6i2oJF5J8wswYFS2cYBbg4rb/AOEk071uP/Ad/wDCj/hJNO9bj/wHf/CgLHIS/Da6khtA11YTywW7WZNxbsy+TvLKwAYfONxBB4NdPq+gXFzaaV/ZtzDBdaZIrwmWLMbAIUIIBGODxjpVj/hJNO9bj/wHf/Cj/hJNO9bj/wAB3/woCxj6X4OubG5hnm1BJpEiukcrFt3NNJvyBnjHSq0Pga8tYLfyNQh863NkyF4ztJgDA5we4b8K6H/hJNO9bj/wHf8Awq5Y6jbaikj2zlvLba4ZSpU4zyD7GgDM1Dw2up6lf3NzMDHcWItI0A/1fzFi357f++an8NaPJoWg29jPc/abhdzzT7ceY7Ektj3JrXooAKKKzbnXbC0untpHkMqAFwkTNtz0zgUAaVFZH/CSad63H/gO/wDhR/wkmnetx/4Dv/hQFjXorI/4STTvW4/8B3/wo/4STTvW4/8AAd/8KAsa9FZH/CSad63H/gO/+FH/AAkmnetx/wCA7/4UBY16y9a+7p//AF+xfzNLBr+n3FzHbrJIskpwgeJlDHGcZIpNa+7p/wD1+xfzNAGpRRRQB5B4i/5OT8K/9eUn/oEtev15B4i/5OT8K/8AXlJ/6BLXr9AHlv7QH/JMJP8Ar8h/rXouj/8AID0//r2j/wDQRXnX7QH/ACTCT/r8h/rXouj/APID0/8A69o//QRQBdooooAKKKKACiisR7zU59QvIraS0iit3VB5kbMzZUNngj1oGlc880j/AJOb8Qf9g6P/ANFxV69XjXh0zn9pLXftLxvL/ZyZMakL9yLsa9loEFZfh7/kCQ/70n/obVqVl+Hv+QJD/vSf+htQBX8U5bT7aPe6rJdRq+xipI54yKxv7Ntv+m//AIEP/jW14n/49LL/AK/I/wCtUO9aQWhzVm1LQoT2djbW8txM8yRRIXdjcPhVHU9axIPEnhC4tbi5i1ZjFboJJSZZVKqTgHB5IzxxW7rFtJe6HqFpAFM09tJEgY4BYqQM1xl58P2XwfJDbSXF1rb2cNvuurrIjVWVmRD0UZH8qpozi+7M3wZPpV1+0JNPo53WsmnMxbawLPhdxO7nOa98rwDwLb3lr8fpIr9LhJxphJFxd/aWxtXHz4H5dq9/rJ7nXH4UFZmg/wDIMP8A18Tf+jGrTrM0H/kGH/r4m/8ARjUihmrEjUtJx/z2k/8ARbVY3N6n86rat/yEtJ/67Sf+i2ouL6zsyguruCAv90SyBd30zVx2NYbHC+JPF/iOx8ZT6VpKLOsKW7JbCyeUzFz8wMgOI+O5q1N471GSeI22lHyjf3Fmi+eGa4aJGJA4+XJXg811Ec+jwSz6pHc2aNcMsMtyJlw5XIVSc4yOeKqGHwzZTorPp8M1rO92qtMoaOVvvPgngnP60BYwrj4lxDT3vLLT3uk3KkI8/BmbyvMkCgAnKDAPv6VW/wCFm3Cy3D/2UZLd2tY7JVlO92ljMh3gA4wPQHpXRS6B4VeG30qSzsAjSPcQW+/aWZvvMoByc5OexqFdG8HXfmxRxafIUhRZFjn5RI/unhsrt6Zo1DU2dI1M6tpFrqAhmt/PQOYZhh0PcGjWGb+xL7k/6h+/tVa61XRvD+n2izXMNvbyFIbWNTkyE8KEA5brVjWRjRb8f9MH/lTK6Gta/wDHnB/1zX+VTVDa/wDHnB/1zX+VTVmYBVe+/wCQfc/9cm/kasVXvv8AkH3P/XJv5GgDN0lm/sax5P8AqE7+1Y/jnXb7QPD8d3YSKk8l3FBuaEzbQ7YJCDlj7CtKxube00GxluZ4oI/JQb5XCjOPU0TTaPqUW6W5s7iO1dLnPnKREw5VyQePatOhv0OU0vxrrzW9rbXul+beXJuXjnbNsGhix+8MbZIJz932psHjttS0uGwmtiL6+gjKFpAFaKSNmabA6Ku0gjP411VzLoc13bXd1c2TXBiZIJHmXLRvwwXnkHH6VQubDwxBpkV0gsYo0tHsbWdMSYjYcxoM/N/ujJPSkTYwIviVeXht4rPSQkjXtvCxmnO14ZVZg6nA5wp9vrW54U8aL4qmnEenXVtEsYlhmkyVlQsR1wMNxnAz160Q+H/B1rL/AGdFb2Ec7PG3ked+83pynGcgjPA9Kkln8L+DtPn1UeTaW0swikkhy4LlsBQBnHJPA4HNA1c6Pc3qfzqvpBJv9Wyc/wCkL/6LWqcfiDTJvEMmgxXG/UYoBcSRKpwqHoSemeRx71b0f/j/ANW/6+F/9FrRLYU7WH2P/Ie1b/tj/wCgVqVl2P8AyHtW/wC2P/oFalQZBRRRQAUUUUAZU/8AyNFn/wBesv8A6ElWNY/5Al//ANe8n/oJqvP/AMjRZ/8AXrL/AOhJVjWP+QJf/wDXvJ/6CaAIbRm+xW/zH/VL39hWB4512+0Dw4L2wdVna6ih3PEZcBmwSEHLH2FbcEiRadDJI6pGsKlmY4AGByTVaSbRtYMNu1zZ3bLIJoo1mVjvQ5DAA9jWhv0OT0vxrrzQ2tte6X5t3ctctDOwNqGhiAPmGNskZzjHtU2lfEI3EFhDcWjm8ukhkT94FDxOrM0vsF2MCK6O5m0K4kj1K5ubF2hEkCXDTLhdw+dc5xyByKggsfDMKR3UCacE0+A2qyiRSIIm6oTngH3pE2ZzCfEy7vGhjs9ICyNe28RMs52vDKGIdTgc4U+31rc8K+NV8UzzLHp11bQiPzYZpMlZE3FfQYbjOBn603+w/BVhAqeVpsEU5jkTdcY37CdjKS3QEnGPpWrYaboukS3b2MVvbOfnuNsn3AcnkE4UdT2FA1c1Nzep/Oq2kEnUtWz/AM9k/wDRa1FperWGt2Zu9NuFuLYSNGJVHysVODg9xnvUukf8hLVv+uyf+i1olsKexr0UUVBkFYdsSNa1bBI/eRf+gVuVh23/ACGtW/34v/QKa3KhuXwSWA3H868t0r4geIXubu6uYBd6bbpdPOsdm8IhWInbiUna5bGMAV6Iur6YZNi6lZl9wTaJ1zuPQdetV/J0OHTbrSS1mlmisLm2MoAQOSTuGeMkn86s0euxzq+PLq31D/iZ2ItrQw20suJgwt1mLAOzY5HAyO2aT/hZGLnTYm0mXF75e/E+WgEjERlhjjdgHkjrxmtz7D4Z1RbiALYXQuLVYZkWUNvgQ/KDg/dBzzUFxp/hG5kg1acaaxhKRxXPnAKDH90ZBwSvbuKQanPaf8TrmSHTku9GlkurlPOmFo5cRxGUxqRxyeCSCR069q9FLMD94/nXP2/h3wu8to9taWbPlprfy5T82W3MRg8ru5x0BqOTx34cj0i51Z9Q/wBDt7o2cj+W2fNzjaBjJ/CmC03NTUCTeaVkn/j7Hf8A2GqzrX3dP/6/Yv5mqt8d11pLDoboEf8AfDVa1r7un/8AX7F/M1MtzOe5qUUUVJJ5B4i/5OT8K/8AXlJ/6BLXr9eQeIv+Tk/Cv/XlJ/6BLXr9AHlv7QH/ACTCT/r8h/rXouj/APID0/8A69o//QRXnX7QH/JMJP8Ar8h/rXouj/8AID0//r2j/wDQRQBdooooAKKKKACsO0/5Cmrf9fCf+i1rcrDtP+Qpq3/Xwn/otacdy4bnnOhf8nLa9/2Dk/8AQIq9irxjw1OJ/wBpTxEQuNlkI/rtWMZ/SvZ6HuS9wrL8Pf8AIEh/3pP/AENq1KwdPk1TT7NbU6S0mx3w6zphgWJB5+tIRoappq6parC00kLJIsiPHjII+tZ3/CNzf9Bi7/75T/CrX9o6l/0BZP8Av+lH9o6l/wBAWT/v+lO7E4p7oq/8I3N/0GLv/vlP8KP+Ebm/6DF3/wB8p/hVr+0dS/6Asn/f9KP7R1L/AKAsn/f9KLsXJHseWaXatZ/tLzQtO85GlffcAH7q+le0V41YSyy/tNTvNAYH/srlCwb+Fe4r2WkUtArM0H/kGH/r4m/9GNWnWZoP/IMP/XxN/wCjGoAZq3/IS0n/AK7Sf+i2rmvGHg+TxPcLIrWwC6fc2qidN215Nu1h6Ywffmuvv9Ng1FYhK0qNE29HicowOCOo9jVT/hH4P+f3UP8AwJamnoUpJKx5/qHwzubjf5M1oI/tTSrbfNHGVaFYznaOGBUnjrmpj8NSbwyk2Tr9qaUGSMsxT7N5KqSeThuef513X/CPwf8AP7qH/gS1H/CPwf8AP7qH/gS1O6HzI4aH4eX0c9mGu7Ro1SzM05RjNE1uMbYj2Vvfpk9aqal4Hu4NJ0HSbOPF408sV9dW0OIzayMWkDt1zjAHvWl4StptQ8ZeMrO41LUXgsruFIFN03yAx5P612X/AAj8H/P7qH/gS1F0HMjL1vw4mqXOiGJLeODTrpJm3R5YogO1FPbnaT9K0NYz/Yt9/wBcH/lUn/CPwf8AP7qH/gS1Nk8N2ssbRyXV+6MMMpuWwR6Ucw+dGna/8ecH/XNf5VNSKoRFVRhVGAKWpMwqvff8g+5/65N/I1YproskbI4yrAgj1BoA4690Ntd0DQYf3Xl21xb3UqSruDonVcep965f/hV10NMNrHdWkTfZlQ+WpUSOtwZRux/DghfavQk8N2sUaxx3V+qKMKouWwB6U7/hH4P+f3UP/Alqq6L5kefSfDCWW1aMmxBa1WIKwaQRv9o81ipbnBHH1qW88E32n2817bTWJ8l711ilQ7IY5iGDpyAJF2+oHuK7z/hH4P8An91D/wACWrhviKkuiXPhv7Nfal5c+oFJ41umHmpsJ28fSi6C6ItT8HXOmaBrFxaK95qs1xbzadPFFumWSNFVS5PbKknnGDWjqXgWW88K6TokU0Kx2ivJOXBPmTshw3H+2xY11o0CAgH7ZqAyP+flqP8AhH4P+f3UP/AlqLoOZHOeFfCFxoOoz393dJdXM9qkckoBDPLktIx9j8oA7Ba6TSP+P/Vv+vhf/Ra0n/CPwf8AP7qH/gS1XLDToNOSUQtKxlfe7yuWYnAHU+wFJvQTkmrFax/5D2rf9sf/AECtSsux/wCQ9q3/AGx/9ArUpEhRRRQAUUUUAZU//I0Wf/XrL/6ElWNY/wCQJf8A/XvJ/wCgmq8//I0Wf/XrL/6ElaU0KXEEkMo3RyKUYeoIwaAOc1XTZNY8H3WmROscl3ZeSruOFLLjJrlv+FcOL1popbS2Vrjfvhi2uqfZvJIGO+75q7dfDtuiKq3moBVGAPtLcCl/4R+D/n91D/wJaqui+ZHn2m/DGa1hs0uGsnME26QZeRZAIWjVsNwGy2fwp9r8N7yzso0hmsS8MdkRCYz5U8kG7cJB3Vt3XrxXff8ACPwf8/uof+BLVx3iu2msPGng2zt9S1FIL25nSdBdNhwqAjP40XQXQyy8ApYmSfUhBeQf2dcQvDFDuKNJIXIiB6KAcDvV7wRoV5Z+FZG1iMS6nqBL3AnQcgDZGrj2UDI9zXTf8I/B/wA/uof+BLUf8I/B/wA/uof+BLUXQcyKPhjRm8P+G7PTHZHlhUmV41wrOzFmIHpk1e0j/kJat/12T/0WtH/CPwf8/uof+BLVbsNNg05ZRC0rNK293lcszHGOp9hSbCUrqxcooopEBWHa/wDIb1b/AK6Rf+gVuVmXGh21xdyXPm3UUkuN/kzFQ2BgcU07DTszzofDCcWioJLDzxatF5nlHPmG5E2/PX7vy560k/wwuZX1bNzbv9qdzFNIzliHlV2V16YAGO/bpXoX/CPwf8/uof8AgS1H/CPwf8/uof8AgS1O6K5kcPJ8N5HubxoZ7a0S5a+y0Ee11WcKEHH93byPfin2fgC6/tCzvL3+zVEd7FPJaQRHydscRjBUH+Ikgn6V0fiLSFs/DOqXMN9qCyxWkjo32luCFJBql4G046p4E0O+u9Q1CS4ns45JHNy3zMRyaLoLozfCXh67tdS1y98qSGFWktdIS4j2mKJiXY4/ulzx7AVmW/wtuo1Ect/A9urQOsW04Djb57+7MFwPTJr0X/hH4P8An91D/wACWpP+Efg/5/dQ/wDAlqLoOZEOo/8AH7pXGP8AS/8A2Rqs6193T/8Ar9i/maIdBtYrmGdpruVoW3IJZ2ZQcYzijWvu6f8A9fsX8zSbuTJ3ZqUUUUhHkHiL/k5Pwr/15Sf+gS16/XkHiL/k5Pwr/wBeUn/oEtev0AeW/tAf8kwk/wCvyH+tei6P/wAgPT/+vaP/ANBFedftAf8AJMJP+vyH+tei6P8A8gPT/wDr2j/9BFAF2iiigAoorKOvQebKkVpezCJzGzxwEruHXBoA1a5r7dDY6vqa3AmQyTI6EQswYeWoyCB6g1of26v/AEDtR/8AAc0f26v/AEDtR/8AAc01oUrpnlfhd4Jf2kNfktwRG9grcqVJJWPJwfevaa8b8P3Auf2lNelEUsedOT5ZV2sPki7V7JSJYUUUUAFFFFABRRRQB5BD/wAnQXH/AGCR/wCgrXr9eQQ/8nQXH/YJH/oK16/QAVmaD/yDD/18Tf8Aoxq06zNB/wCQYf8Ar4m/9GNQBLquof2ZZeeITMxdY1QMFyWOByelZv8AwkF9/wBAj/yaSpvE/wDyDIv+vqH/ANDFUD1NXGKaMKtSUXZFj/hIL7/oEf8Ak0lH/CQX3/QI/wDJpKzr+V4NMvJozteOB3U+hCkivL7XxB40Twpd6zNNeC2/s0TLPdwRLiYsu0xbfvKQT972puKRKqTZ3vh6LVNG8SeJNUksIpI9WuI5o0W5XMYVNpDf/WrpP+Egvv8AoEf+TSVyHg651K6huX1K41GQjZsW9jhUjjkr5ZPH1pdL1LWLvxvqtjdm2jsLK2RkihO4lnY7S7H+LaM4HAzRyoXtZnXf8JBff9Aj/wAmkpsvia6t4zLNpJEakbityhIGcdO9QVT1X/kFXH0H8xRyISrSudtXPWOi6xb+Mb/VbjXJJ9MnjCw6eV+WE8cg/gfzroaKzOs5zQdE1nTdU1i51DXZL+3u5d9rAy4FsuT8o/MflTvCGi6xoen3EGta5Jq80k5kSWRcFFwPl/z610NFAHOp4luZtzwaUWiDsqs1wqk4JGcdulL/AMJBff8AQI/8mkrL03/jy/7ay/8AobVcUZdQe5rRRRyyrSTsWP8AhIL7/oEf+TSVyfjiLUte/sm7XTLfytLuTdTRTXCkTKEI28etc3per+LtQ8QXDwPdy6fBqM0MpkhiFssKZ6N9/eOO1Hg7W9c1O1+2ajd380bWskmJ4YBbuRnGNp3n8cUrIrnmeoDxBfbRjSB0/wCfpKP+Egvv+gR/5NJXmuteMdQ0zxtPbRyB9PS3+zxW4QfvLsoGXnrxkZ9q6LwVdajfeErK81W5+03c+9zKFCgruO3AHsKfKiXUmlc6j/hIL7/oEf8Ak0laWk6kdTt5JGgMEkUrROhYNyPQisSr3hn/AFGof9fsn9KUopIulUlJ2ZYsf+Q9q3/bH/0CtSsux/5D2rf9sf8A0CtSoNzntV0XWLzxVpWpWmuSWunWoIubFV+W469aT+xNZ/4Tn+2P7ck/snyPL/szb8u/H3s10VFAHPaTousWXinVdSvNcku9PugPs1iy4W3+ldDRRQBlT/8AI0Wf/XrL/wChJWrWVP8A8jRZ/wDXrL/6ElatAHPDxJcyNIYNLLxrIyBmuFUnaxGcdulH/CQX3/QI/wDJpKzbD/j3f/rvN/6MarNaKCscsq0k2iz/AMJBff8AQI/8mkrnNfi1XWPE3hvVY7CKOPSZpZZEa5XdIHUKAv8A9euW8R6r4rbxffadoD3r+RbwSRRQwxNEHbOfNZuQpx2pLPWdfvPGV9ayXt+trb34gK28UBgRQFJDFiH6k9B0osh+0n5Hpv8AwkF9/wBAj/yaSj/hIL7/AKBH/k0lcj411PWNM0+2OkfZke4uY7cyykllLsAAi9z1OT0xXTEbTjOccZ9aOVE+2na5Z/4SC+/6BH/k0laOk6kdTt5ZGtzA8UrROhYNyMdCPrWJV7wz/qNQ/wCv1/8A0FaUopI0pVJSdmReLdF1jW7Szj0bXJNJkhuBJK6LnzUA+7Sa5oms6jrWj3dhrslja2cm66tlXIuRkcH8j+ddFRUG5z13ousTeNLPVodcki0qGIpLpwX5ZWwfmz+I/KreqazJYXkNrDZm4kkjaQ/vAgUAgd/rWtXNa1/yMlr/ANekn/oQppXZM21FtEn/AAkF9/0CP/JpKP8AhIL7/oEf+TSVWrjPGup6zaavotjpEt8v2pJ2kSxhjklbaARgPxgd6txRzqrNux1+s6lqGp6JfWCaWqPc27xKzXK4BYEZP51W8LXGpeH/AArpekS6akslnbJC0iXK7WKjGRmvPLrW/F8ep2Wn3dxfQ3Q05J7iOwigYhy7DLeYQBwBnHeun8a6rqOleFIjplxt1O4eOKKVlBOcbmOOnQGjlQ/aTudl/wAJBff9Aj/yaSj/AISC+/6BH/k0lee+GfEuo+I/FoMVxjRk05ZBHsH72TIUyZ64LbsD2ruaFFMTqzRftNemm1GC0uNPMHn7tjiZXGVGeQKn1r7un/8AX7F/M1jwf8h/S/8Ael/9ArY1r7un/wDX7F/M1ElZm9OTlG7NSiiikWeQeIv+Tk/Cv/XlJ/6BLXr9eQeIv+Tk/Cv/AF5Sf+gS16/QB5b+0B/yTCT/AK/If616Lo//ACA9P/69o/8A0EV51+0B/wAkwk/6/If616Lo/wDyA9P/AOvaP/0EUAXaKKKACsDSP9Vef9fk38636wNIB8q74/5fJv5047lw3NCiqOtatbaBot3qt6StvaxmRvU+gHuTgfjXmnwt8eatq+talpfiKOSKa5uZXst4wFZMeZCP90FT+dXc1urk2hf8nLa9/wBg5P8A0CKvYq8d0L/k5bXv+wcn/oEVexVD3MJbhRRRSEFFFFAGdrs0sGh3ksMhjkWM7XXqKpf2ZwP+JjqXT/n5NWvEf/IvX3/XOpew+lVE0gk9zyfTYfI/aYmj82WXGkg7pX3N91e9ez147af8nOz/APYJH/oK17FUsh7hWZoP/IMP/XxN/wCjGrTrM0H/AJBh/wCvib/0Y1AiLxLHK+lKYoZJSlxE5WNSzYDAk4HWsY3LZ/48dQ/8BH/wrsaKpSaM501J3ZxjzeZG0cmn37I6lWU2j4IPUdKrvbWkmm/2a+jXTWOwR/ZzZPs2DouMdK7uinzsn2ETz3TNK0rRDKdL8P3FmZQBJ5Nk43Y6Z4q3EsMNxPPFpV6k1wQZpFs3zIQMDPHYV29FHOw9jHucd9pf/nx1D/wEf/Cq9801zZSQRWF+ZHwFBtXA6jviu5oo52CoRQUUUVBsFFFFAHD2pmtYWhlsL7essmdtszDlyQQQOeKn+0uDkWOof+Aj/wCFdjRVc7MXRi3c4i3SG0jkjt9KvIkldpHVLNwGZvvE8dTWXb+HtI0yV7vSPDclnf7GEc8dk6lSR64IH5GvS6q6iJW0y6W33+cYXEew4bdg4xyOc+4o52HsV3OKbT9Okm8+TQbhpvMMpkNk+d7LtZs46kcVagZLW3jt7fTL6KGJQiRpZuAoHQDiu0X7oz1xzS0+dh7GPc477S//AD46h/4CP/hWt4ajlW0u3khliEt1I6CVCrFTjBwa26KTk2VCmou6Mux/5D2rf9sf/QK1KyrD/kPat/2x/wDQK1ak0CiiigAooooAyp/+Ros/+vWX/wBCStWsqf8A5Giz/wCvWX/0JK1aAOJgaa2WWKSxvtwnlPy2zMCC7EEEDng1L9pf/nx1D/wEf/CuxoqudmLoxbucQghju5bpNLvVuJVVZJRZvucL0BOO2azpfD2hT6idRm8MSPelxIZzYvvLDvn1r0iijnYexXc4i4EV20TXOl3sphkEsZezc7HHRhx15qb7S/8Az46h/wCAj/4V2NFPnYewicd9pf8A58dQ/wDAR/8ACtbwykq2l28kMsXmXTuiyoVYrhRnB+lbdFJybKhTUXdBRRRUmgVzWvLNHrdrcC2uJYvs7oWhiL4bIODiulopp2FJcyszjvtL/wDPjqH/AICP/hULrDLdQ3UmlXrXEAYRSmzfcgbqBx3rt6KrnZl7CJ51qWh6LrM6z6n4bmu5lXYHmsXJC+nTpVqS2tJoreOXRrt47cEQq1m5EYK7eOPTiu7opc7D2K7nCWlrZ2BzZ6LdW58tYv3dk4+Rfur06DJq19pf/nx1D/wEf/Cuxop87D2ETkrHzrjXdPZbO7RIvNLvLAyKMrgcn3rZ1r7un/8AX7F/M1qVl6192w/6/Yv51LdzSMVFWRqUUUUijyDxF/ycn4V/68pP/QJa9fryDxF/ycn4V/68pP8A0CWvX6APLf2gP+SYSf8AX5D/AFrX0z4o+CIdJs4pPElkrpAisCW4IUZ7V2V9p9lqdt9nv7O3u4MhvLniEi5HQ4IxWZ/whfhX/oWtH/8AAGL/AOJoAyv+FreBf+hlsvzb/Cj/AIWt4F/6GWy/Nv8ACtX/AIQvwr/0LWj/APgDF/8AE0f8IX4V/wCha0f/AMAYv/iaAMr/AIWt4F/6GWy/Nv8ACst/Gvw0eaSX/hIrdWkYuwSeVQWPU4HFdT/whfhX/oWtH/8AAGL/AOJo/wCEL8K/9C1o/wD4Axf/ABNAHIzeLPhfcxGK41+2mjJBKSTyspxyODXKeCvEHgCBtdk1XVrdJDrl1NZu8r58ptoV1PuM89TXrP8AwhfhX/oWtH/8AYv/AImuL+HXhfw/eJ4p+06Fpk/k+IryKPzbSNtiArhRkcAdhQBz3gm+0vUf2gtautGuhdWL6cvlyhywOFjB5PPXNe414z4csbTTv2kddtbG1gtbdNOTbFBGERcpETgDjrXs1ABRRRQAUUUUAZfiP/kXr7/rnWV4u1K80jwpfX9ht+1xInl7k3gEsByO/WtvWLWW90e6toAplkjIUMcAmqXmatgf8SlOn/P0v+FUmXFpHj/hG8vrv9pDUV1CVJp7e0kt/NSPyw4UKAcV73XjOnNM37TE5ngEMn9lcoHDfwr3r2apJYVmN4f0t5Hc2uGdizbZGAJPJOAa06KBGX/wjul/8+x/7+v/AI0f8I7pf/Psf+/r/wCNalFAGX/wjul/8+x/7+v/AI0f8I7pf/Psf+/r/wCNalFAGX/wjul/8+x/7+v/AI0f8I7pf/Psf+/r/wCNalFAHjPjnWLvSfG2mWej6NcTafauTfYZ83HyFiic/MVT5uO+BXp0Gh6RcW8U8ds+yRA65kcHBGRxmsHxVPD/AMJv4QPmx4hurjzfmHyfuCfm9OOea7VWV0V0YMrDIIOQRQBmf8I7pf8Az7H/AL+v/jR/wjul/wDPsf8Av6/+NalFAGX/AMI7pf8Az7H/AL+v/jR/wjul/wDPsf8Av6/+NalFAGX/AMI7pf8Az7H/AL+v/jXA/FWZvD/h4RaDYynUJ/m88O+yCNSNzE5xkkhQPevUq4/4pf8AJOdW/wB2P/0YtAEnhe2sdd0GC8utMltLwZjuYHeQbJVOGA55Geh9K0bzw9YiynNtb4nEbeWWlbG7HHU461sx/wCrX6CquqxrLo97GzxIrwOpeUgIoKnliQRj14oArDw7peBm2Oe/71/8aX/hHdL/AOfY/wDf1/8AGtNeEUcdO1LQBl/8I7pf/Psf+/r/AONH/CO6X/z7H/v6/wDjWpRQBVstOtNPEgtYRH5hy5ySWI46mrVFFABRRRQAUUUUAVLzTLPUGja6gEjR5CNuIIz15B9qrf8ACO6X/wA+x/7+v/jWpRQBl/8ACO6X/wA+x/7+v/jR/wAI7pf/AD7H/v6/+NalFAGX/wAI7pf/AD7H/v6/+NH/AAjul/8APsf+/r/41qUUAeV/FadtA0FINAspf7QmO8z732wRKwySc4ySQoHua6nwzbafrug299caXNZ3RylxbyPIDHIpwwHPIz0PpUXxQdP+Fd6xHvXzDCGVM8kB1JwK6mznjntkaORH2gK21gcNjkH3oApf8I7pf/Psf+/r/wCNH/CO6X/z7H/v6/8AjWpRQBl/8I7pf/Psf+/r/wCNH/CO6X/z7H/v6/8AjWpRQBl/8I7pf/Psf+/r/wCNeU6hr08HxRitodHuT4diRoZhuk3uQ4VplXOSqsQPpk17VXF3f/JZdM/7As//AKNSgDoP+Ed0r/n2P/f1/wDGj/hHdL/59j/39f8AxrUooAy/+Ed0v/n2P/f1/wDGj/hHdL/59j/39f8AxrUooAy/+Ed0v/n2P/f1/wDGj/hHdL/59j/39f8AxrUooAy/+Ed0v/n2P/f1/wDGnRaDpkM8cyW37yNtyFnY4PrgmtKigAooooA8g8Rf8nJ+Ff8Aryk/9Alr1+vIPEX/ACcn4V/68pP/AECWvX6ACiiigAooooAKKKKACuE+GP8Aq/F3/YzXv81ru64T4Y/6vxd/2M17/NaAOc0j/k5vxB/2Do//AEXFXr1eQ6R/yc34g/7B0f8A6Lir16gAooooAo6vfSafY+dDGkkjSJGodsLliBk4+tVftOt5/wBVp3/fx/8A4ml8R/8AINi/6+Yf/QxVk/eP1qkrlwinuVPtOtf88tO/7+P/APE0fada/wCeWnf9/H/+Jq1RT5UXyI8p09rh/wBpmc3KxCT+yhkRElfur6ivZa8dtP8Ak52f/sEj/wBBWvYqgye4UUUUCCiiigCK6uI7S1luZc+XEhdsDJwBms0a6SARpWo4IyP3Q/xqbXv+Rf1D/r3f+Roi/wBTH/uD+VNK5UY3Iv7cb/oFaj/36H+NH9uN/wBArUf+/Q/xqwvLAe9cLp3jeODwpqt9d3cF5qNlPdbbRZFEhRJCFG0c4Axk46DNOyKcEjJ8Z+C28TeMNN1W3tNStrV226pEqhfOQLgEc9SPkPsa9Fi1dYIUii0jUEjRQqqIRgAdB1rij471EP8AYNmk/bPtAi+2+e32PHk+b97rux8uPXn2qDUfiJdpqjWNtFZtE0LRmeKQkxzeQZQVz95fw/GiyFyo7/8Atxv+gVqP/fof40f243/QK1H/AL9D/Gqvh+5lvfDWlXdw++ae0ikkfGNzFQSa0afKiuREmn6hHqEcrJFLE0Unlukq7WBwD/IirdZOi/8AHzqv/X3/AOyJWtUGTCuP+KX/ACTnVv8Adj/9GLXYVx/xS/5Jzq3+7H/6MWgDro/9Wv0FV9TVW0q7V5DEphcGQKTtGDzhSCfwOasR/wCrX6Cq2qCI6TeCcsIjA+8ooJAwc4B4J+tAFpfuLznilpFxsXHTFLQAUUUUAFFFFABRRRQAUUUUAFFFFABWZca7aW93LbeXcyyRY3+VCzBSRkDI9q06w7Qn+19X5/5bR/8AosU0rjirsl/4SK2/59b7/wABmo/4SK2/59b7/wABmqzk+prA1HWprLxhpGnNcRRWd1bXEkvmEDLJt24J6dTT5UW4JGH8SNMh8ZeHTDZR31vqkGWtpvs7AHPDIf8AZYfqBWz4VOn+F/D1rpcMF/I0Y3TTNbNmWU8s59yao3Xjv7NrM0H2IPp8F2tjJOs370ysm8FY8cpjjOfeqx8fXy6HFqB0218y8MZsYEvd7Sq6lsMAMqwC/T34oshcqOw/4SK2/wCfW+/8Bmo/4SK2/wCfW+/8BmrnPCXim58SaleMyiK1Fla3EUPVkaQNuBbvyK6zJ9TRyoagmQwa9aT3UVv5dzE8pIQywsoJAzjJ9hWpWHfE/wBoaTz/AMvR/wDQGrcpNWIkrOwVxd3/AMll0z/sCz/+jUrtK4u7/wCSy6Z/2BZ//RqUhHaUUUUAFFFFABRRRQAUUUUAFFFFAHkHiL/k5Pwr/wBeUn/oEtev15B4i/5OT8K/9eUn/oEtev0AFFFFABRRRQAUUUUAFcJ8Mf8AV+Lv+xmvf5rXd1wnwx/1fi7/ALGa9/mtAHOaR/yc34g/7B0f/ouKvXq8S1WfXPDPxy1nxBB4V1fVbKe0jhR7SBipPlx5O7GDgqRXQf8AC1Na/wCia+Jv+/B/+JoA9NorzL/hamtf9E18Tf8Afg//ABNH/C1Na/6Jr4m/78H/AOJoA7XxMyx6UsjnCJcRMzdgN45qI61peT/xMLf/AL7rjz8U9aIwfhr4mP8A2wP/AMTTf+Fn6v8A9Ey8Sf8AgOf/AImmnYqMrFP4n/EoeG9NtbfQpo7jU55VYhPmEcQIzn/ePyj8a67RPF+j63o1rqMV5DH5yAtE7YaNv4lPuDxXlnjzxbNqOlyXEnw71jTrqSa2Vr2eDGVSUMqZx3PA9zXT2Xj6701JksvhV4ggWaVppAlsQGduWb7vU0+YfOyjptxDc/tMTSwSrJGdJA3Kcj7q17PXhHhPWJ9d/aHlvrjSLvSpG0wqbW7XbIMBecY6Gvd6kgKKKKACiiigDO17/kX9Q/693/kagnvLbT9Na8vJkgtoYg8krnAUY6mp9e/5F/UP+vd/5Gs7WtJGu+GrrSjN5IurcRmQLu25xzjvVRNIENn4t8PX9wILXWLWSUqzbQ2DhRluvoOfpzWeNZ8DW2NVWbSY2ldo/tAiAdmxlh0zyvPuKguvh/BeXE7zXz+XPcTTOixgHEkAhwD7Yzn8Kr2Pw4jtI7fN7EJYfNDPFb7d4aExDOSeQDnP4cVWpWpqLqvgyTQ5wk2lPpcEiiRFjBjDtyvy45J7YHNNuda8FwTwz3E+l+bPAskcnlAkxcqDkDheo/SqEfw+NusUlvqmy7t/srW0hgBVWgjKZZc8hgx47VLZ+CIdItrxkeS/87TntHtyFQyszs7EE8LktgDoKWotTohqml28N2FuYY4tOAW4C9IOAQDj2xwKZoetWniHSY9TsRL9llZhG0ibSwU4zj0OKzPCPh+70XweljdzbtTnVpLmdiHPmsMA577QFH4Vq6HpSaJoVlpcchkW2iCeYRguepY/UkmmUmyxov8Ax86r/wBff/siVrVk6L/x86r/ANff/siVrVD3MXuFcf8AFL/knOrf7sf/AKMWuwrj/il/yTnVv92P/wBGLSEddH/q1+gqtqhjXSbwzKzRCF94RgpIwc4J4BqzH/q1+gqvqbKmlXbPF5qiFyY8kbhg8ZAJGfYE0AWVxsXHTFLSL9xeMcUtABRRRQAUUUUAFFFFABRRRQAUUUUAFYVp/wAhfV/+u0f/AKLFbtYdp/yF9X/67R/+ixTjuVDchm8R6HbzSwz6xYxyxHEiPOoKHOMEVU1qz8K6zcLba1Hpl3NbxmVY7gqWjQjJb2GOaw7v4dm6uruc3NruuJr6XLQZI8+MIuT/ALOM1Wb4Ys13dSm8t38+Darurl45PJ8rjnG3vyM9qvU0uzorBvB82p2sunvpMl8sfk25iZS+1R0H0H6VALTwN9jvCI9F+zJODdEFdqyc43HseuPxrPi+Hvl3kc4urdFWe3kPlw7W2x25hIB7Ek7qrQ/De4EEMc9/aH7MttBEIrfaskUMvmZkGfmc9M9Pzpai1Oq0tvD0CxSaU9gi3OIIzAw/ebMnYPXbk8dqh/4TDRTcXdutw7TWt7HYyosZJEz/AHQPUdefY1l6T4dlT4ianq728kOmxfNaROFAM7gCWRAOxVVGTjvUVn8P2ttb0vVJL9Wkt55ri8RUwLl2dmjPXgpuI5o1HdnUX3Go6UP+no/+gNW7WFff8hDSf+vo/wDoDVu1MtzOe4Vxd3/yWXTP+wLP/wCjUrtK4u7/AOSy6Z/2BZ//AEalIk7SiiigAooooAKKKKACiiigAooooA8g8Rf8nJ+Ff+vKT/0CWvX68g8Rf8nJ+Ff+vKT/ANAlr1+gAooooAKKKKACiiigArhPhj/q/F3/AGM17/Na7uuE+GP+r8Xf9jNe/wA1oA7uiiigAooooAKKKKAOF+Lf/Ij/APb/AGn/AKOSu6rhfi3/AMiP/wBv9p/6OSu6oA8gh/5OguP+wSP/AEFa9fryCH/k6C4/7BI/9BWvX6ACiiigBGZVUsxAUdST0qL7Zbf8/EP/AH2KzfE6htClVgCrPGCD0I3ikbStO3H/AIl9p1/54L/hTSuVGNzQlmsp4XhlmgeN1KspcYIPUVmjRvD4GAkOB/03P+NL/Zenf9A+0/78L/hR/Zenf9A+0/78L/hT5SvZsT+x/D/9yH/v+f8AGj+x/D/9yH/v+f8AGl/svTv+gfaf9+F/wo/svTv+gfaf9+F/wo5Q5GJ/Y/h/+5D/AN/z/jR/Y/h/+5D/AN/z/jS/2Xp3/QPtP+/C/wCFH9l6d/0D7T/vwv8AhRyhyMT+x/D/APch/wC/5/xo/sfw/wD3If8Av+f8aX+y9O/6B9p/34X/AAo/svTv+gfaf9+F/wAKOUORluzTTNPiaK1eCJGYsQJAcn15NWftlt/z8Q/99isv+y9O/wCgfaf9+F/wo/svTv8AoH2n/fhf8KOUPZs1Ptlt/wA/EP8A32K84+Mk2p/8Ik9xpU8VxariO8s8gl1LKVdT1yrAfgTWtrmp6Ro99b6dBoB1PU50MqWlnbx7hGDguxbAUZ4561DDrejPFpRm8Oy2kuo3hslgubRUeOQAkk8crx1FFhcvmb3hae+j8P27a7fQSajLmWVVKhYtxyIx7KMDPtV7U762TSbxvMtpNsLnZIylW4PBBIBH4isEaj4Vlmvbe2bS7m6s42kmt4VRnAUZPGKzrDxD4V1zw/Pfad/ZizpZm5eF0jLwDBOXGO3eiwcvmdyt5bbF/wBIhHHZxS/bLb/n4h/77FcVc6/4Vh0yG/toLK/hku4bM/ZokJR5DgZyOB3qHUPEWg2NzPaR6Ebu8W7NnBb29uha4kCBm254CqCMk0WFy+Z3f2y2/wCfiH/vsUfbLb/n4h/77FcfaaroD6NLqep6XFo0cMphlTUbdIyrjsD0YehFT3GpeELWyt7ye40eO1uFLQzME2yAddpxzijlHyeZ1P2y2/5+If8AvsUfbLb/AJ+If++xXK3Gp+D7WK0luLnRoo7wZt2YJiUeo46e9VY/EHg6TVtU04nT45dMVWuWkiQKM+hxzjIB9zRyhyeZ2n2y2/5+If8AvsUfbLb/AJ+If++xXKSap4PisYb2S50dLWYsscrKgViv3gOOo9KryeIPByatpWmqdPlm1RC9s0cSFGUdOcdzwPcUcocnmdn9stv+fiH/AL7FH2y2/wCfiH/vsVyXiq/0XwloEur3ekRTxRuiGOGBNxLHAxkVnP4p8NDXdC0lNJSSXWIVmhkWBNsYIJAfjrwaLA42O++2W3/PxD/32KPtlt/z8Q/99iuWTU/CEkd5Ilzo7JZnFywCERc4+bj14zTINX8GXUsMUF3ossk8hiiVPLJdx1A460cocnmdZ9stv+fiH/vsVn3On6Jd3D3EywNK+NzCXGcdM4NZSXPhd9XbSEfSW1FBlrUKnmD8MdfaobHVfB+p3wsbG40i5uiCRFGqFjjr27Ucocnma39j+H/7kP8A3/P+NH9j+H/7kP8A3/P+NZd5f+GLHw/Lrrx2MmnRgnzYoFbec7cLxySeMetU9L1fTL17kah4Ym0ZYIftBkv7aNYzH67xkA+x5osHL5nQf2P4f/uQ/wDf8/40f2P4f/uQ/wDf8/41l/2l4R/sp9U8/SBYo+x5yqBVb+6eOvtVC78S+D7HUrS1uF05Le6tGu4r0rH5JUMFxnucmiwcvmdH/Y/h/wDuQ/8Af8/40f2P4f8A7kP/AH/P+NZ8934Vtbm1t55NJjmuwGt0YIDKD0I9j2rR/srTv+gfaf8Afhf8KOUfI+4+307Q7W4S4hWBZUztYy5xkY4ya0ftlt/z8Q/99isv+y9O/wCgfaf9+F/wo/svTv8AoH2n/fhf8KOUPZs1Ptlt/wA/EP8A32K8f1L/AISn/hcdtaQ3kJt5bdzFqXy5htjIrOmOhYFdo9mzXpn9l6d/0D7T/vwv+FH9l6d/0D7T/vwv+FHKHs2an2u2/wCfmL/vsUfbLb/n4h/77FZf9l6d/wBA+0/78L/hR/Zenf8AQPtP+/C/4UcoezZqfbLb/n4h/wC+xR9stv8An4h/77FZf9l6d/0D7T/vwv8AhR/Zenf9A+0/78L/AIUcoezZqfbLb/n4h/77FH2y2/5+If8AvsVl/wBl6d/0D7T/AL8L/hR/Zenf9A+0/wC/C/4UcoezZrJcQyNtjmjdvRWBqSucaztbbXdKa3toYWLSgmOMKSNntXR0mrENWdgooopCPIPEX/JyfhX/AK8pP/QJa9fryDxF/wAnJ+Ff+vKT/wBAlr1+gAooooAKKKKACiiigArhPhj/AKvxd/2M17/Na7uuE+GP+r8Xf9jNe/zWgDu6KKKACiiigAooooA4X4t/8iP/ANv9p/6OSu6rhfi3/wAiP/2/2n/o5K7qgDyCH/k6C4/7BI/9BWvX68gh/wCToLj/ALBI/wDQVr1+gAooooAyPEv/ACBJP+ukf/oYqy332+tLqti2o6dJbJKInYgq5XcAQQeR+FVDZ6yST9ssuf8Ap3b/AOKqk7FwkkLf31vpmn3F9dyCO3t42kkc9gBmsrwj4qsfGPh+LVrEFFZijxMfmjYHofwwfxqt4s8I6l4l0cWN3qkEdosgmmiit2HnheQjHd0Jx09K5T4P+FLyy8LWWtafqEMMeo2oE1q8JZS6uwEmd33scU+Yrn1PUaKrfYtZ/wCfyy/8B2/+Ko+xaz/z+WX/AIDt/wDFUcyHzos0VW+xaz/z+WX/AIDt/wDFUfYtZ/5/LL/wHb/4qjmQc6LNFVvsWs/8/ll/4Dt/8VR9i1n/AJ/LL/wHb/4qjmQc6LNFVvsWs/8AP5Zf+A7f/FUfYtZ/5/LL/wAB2/8AiqOZBzo5zxB4f1V9fXXdDe0eeSyNjdWt07RrLETuBV15VgSaydM8C6xa22lLd6hHM8GrNfSL5zuIIjGUEaM3LEZzk13P2LWf+fyy/wDAdv8A4qj7FrP/AD+WX/gO3/xVK6JvE880z4e6xbNp1rcSaYlrpMdyLa5gBE92ZVKjzeOAM5PXJFR6V4F16wisZLwaVH/ZOmyW0P2KEyvdF8E71OAeARjPJOeK9H+xaz/z+WX/AIDt/wDFVDd2OtNZzBbm1kYxsAkcTIzcdA2/5T79qNBXiefWfw+1tEvnmltvMutSsb0B5zIQsP3wWwOT2wMdq1X8H6vbppOrWM9m2vWNzc3EqTE+TOJ2Jddw5BA24PtXYiy1nA/0yy6f8+7f/F0v2LWf+fyy/wDAdv8A4qi6HeJyOp6B4o1e20y/vH0iXVNOvWuYrMhvs7RldoQseSw6hsfhVXSfAF3aX+i3V6bGVbe7vLy6gRf3cbTLhViUjoDXcfYtZ/5/LL/wHb/4qj7FrP8Az+WX/gO3/wAVRdBeJ5XefC/XW0fSrezk0+O8tYpYWn81lKK0pcDGCrrg/dIHPetnUPBviL+0dXl06407ZfraM0zKFk3RABlA2kLu5IbtxXd/YtZ/5/LL/wAB2/8AiqPsWs/8/ll/4Dt/8VRoF4nAaJ8PtRsrnSWvjaSxWmr3V/KpkMhZJUwoyw+ZgepP1p+j+BdW0e88OXKDT5Dp014J0YkDy5n3AocdVHau8+xaz/z+WX/gO3/xVH2LWf8An8sv/Adv/iqNAvEyPGmhXHiPQF0+2aNX+1wTEynAKo4Zh9cCuTs/hxqcOqQXE15A0cGoO0RVjujtPLZUUf7QLE16H9i1n/n8sv8AwHb/AOKo+xaz/wA/ll/4Dt/8VTugcos8rtvhVqkXh++09/7P+0CyFlbXAnkYyr5gcllPCjA6DPNbF78PbqXUdTubdLCP7RqljdwYGCkcIG8cDgnHGK7z7FrP/P5Zf+A7f/FUfYtZ/wCfyy/8B2/+KpaBeJwVv4C1WLVYIHl04aZb6s+qJeop+1uWJPlnt1OCc8gVla34bvPD/gHRdPtVA8Sx3zm1ks4S4YyMwfcQOBsfkn0r1L7FrP8Az+WX/gO3/wAVR9j1kdL2y/8AAdv/AIqjQV4mDq3gyC98BR+GLSYW32eOL7PKRkLJGQwJHcFhz9aqXlj451jRtRtbufRbSSSBUt1hVpQzhgWZiwwARwBg4PNdT9i1n/n8sv8AwHb/AOKo+xaz/wA/ll/4Dt/8VTuh3iecW3w+122SW7V7Ga8TVV1GK3upmljlHlbGWRsZyOoOK0k8EahPe2lzew6QPK0i5s2htotsSSytlSqnsB1Ndr9i1n/n8sv/AAHb/wCKo+xaz/z+WX/gO3/xVLQLxPMD8LtSMtkJGsrmJ7G2tboSzyJ5Jh7oF++D2Bxg16xjAAHQDHNVvsWs/wDP5Zf+A7f/ABVH2LWf+fyy/wDAdv8A4qndDUoos0VW+xaz/wA/ll/4Dt/8VR9i1n/n8sv/AAHb/wCKo5kPnRZoqt9i1n/n8sv/AAHb/wCKo+xaz/z+WX/gO3/xVHMg50WaKrfYtZ/5/LL/AMB2/wDiqPsWs/8AP5Zf+A7f/FUcyDnRZoqt9i1n/n8sv/Adv/iqPsWs/wDP5Zf+A7f/ABVHMg50WaKrfYtZ/wCfyy/8B2/+Ko+xaz/z+WX/AIDt/wDFUcyDnRHcf8hrSf8Afl/9ArcrHh0y+bUba5u7q3ZLfeVSKEqSWGOSWNbFS9zOTuwooopEnkHiL/k5Pwr/ANeUn/oEtev15D4jz/w0n4U/68pP/QJa9eoAKKKKACiiigAooooAK4T4Y/6vxd/2M17/ADWu7rhPhj/q/F3/AGM17/NaAO7ooooAKKKKACiiigDhfi3/AMiP/wBv9p/6OSu6rhfi3/yI/wD2/wBp/wCjkruqAOA8S/CfTPEvieTX31fV7G8eJYibOZUG0DH90n9az/8AhStp/wBDh4p/8DV/+Jr0+igDzD/hStp/0OHin/wNX/4mj/hStp/0OHin/wADV/8Aia9PooA8w/4Uraf9Dh4p/wDA1f8A4mj/AIUraf8AQ4eKf/A1f/ia9PooA8sn+DFolvI//CX+KDtQnBvF54/3a57wB8K7bXfAmk6m/ibxDatcRFjDbXQWNPmIwo2nHSvbrr/jzn/65t/KuQ+Ef/JKvD//AFwb/wBDagDF/wCFK2n/AEOHin/wNX/4mj/hStp/0OHin/wNX/4mvT6KAPMP+FK2n/Q4eKf/AANX/wCJo/4Uraf9Dh4p/wDA1f8A4mvT6KAPMP8AhStp/wBDh4p/8DV/+Jo/4Uraf9Dh4p/8DV/+Jr0+igDzD/hStp/0OHin/wADV/8AiaP+FK2n/Q4eKf8AwNX/AOJr0+igDzD/AIUraf8AQ4eKf/A1f/iaP+FK2n/Q4eKf/A1f/ia9PooA8w/4Uraf9Dh4p/8AA1f/AImg/B61sx9pHizxJIYf3gSbUAiNjnDMFyo9SOlen1U1RVfSbxHkSJWgcNI/3VGDyfagDzv/AIUtaHn/AIS/xRz6Xq//ABNH/ClbT/ocPFP/AIGr/wDE16cv3F5zxS0AeYf8KVtP+hw8U/8Agav/AMTR/wAKVtP+hw8U/wDgav8A8TXp9FAHmH/ClbT/AKHDxT/4Gr/8TR/wpW0/6HDxT/4Gr/8AE16fRQB5h/wpW0/6HDxT/wCBq/8AxNH/AApW0/6HDxT/AOBq/wDxNen0UAeYf8KVtP8AocPFP/gav/xNH/ClbT/ocPFP/gav/wATXp9FAHmH/ClbT/ocPFP/AIGr/wDE0f8AClbT/ocPFP8A4Gr/APE16fRQB5h/wpW0/wChw8U/+Bq//E0f8KVtP+hw8U/+Bq//ABNen0UAeYf8KVtP+hw8U/8Agav/AMTR/wAKVtP+hw8U/wDgav8A8TXp9FAHmH/ClbT/AKHDxT/4Gr/8TR/wpW0/6HDxT/4Gr/8AE16fRQB5h/wpW0/6HDxT/wCBq/8AxNH/AApW0/6HDxT/AOBq/wDxNen0UAeYf8KVtP8AocPFP/gav/xNH/ClbT/ocPFP/gav/wATXp9FAHmH/ClbT/ocPFP/AIGr/wDE0f8AClbT/ocPFP8A4Gr/APE16fRQB5h/wpW0/wChw8U/+Bq//E0f8KVtP+hw8U/+Bq//ABNen0UAeYf8KVtP+hw8U/8Agav/AMTR/wAKVtP+hw8U/wDgav8A8TXp9FAHmH/ClbT/AKHDxT/4Gr/8TR/wpW0/6HDxT/4Gr/8AE16fRQB5h/wpW0/6HDxT/wCBq/8AxNH/AApW0/6HDxT/AOBq/wDxNen0UAeYf8KVtP8AocPFP/gav/xNH/ClbT/ocPFP/gav/wATXp9FAHnmg/CHTNC8UWfiD+2tZvry0DCMXkyuMMpXH3Qf4j3r0OiigAorkvG3inUvD0mj2uk2Fvd3mp3JgQXEpjRcKWySAfSsb/hJPiL/ANC/oH/gwf8A+JppNkuSW7PRqK85/wCEk+Iv/Qv6B/4MH/8AiaP+Ek+Iv/Qv6B/4MH/+Jo5WL2ke56NRXnP/AAknxF/6F/QP/Bg//wATR/wknxF/6F/QP/Bg/wD8TRysPaR7nd6lqdlo9hJfajcpb2sWN8r/AHVyQBn8SK4P4c6rYWt14isprqNLm98TX/2aMnmXGwkj2xVfUdT8d6tptxp974a8PzWtxGY5Ua/blT/wGuI8B+EvGngzUrrUF0rS724bKRNdXzDyweWK4H8WBk9eKOVh7SPc+hqK85/4ST4i/wDQv6B/4MH/APiaP+Ek+Iv/AEL+gf8Agwf/AOJo5WHtI9z0aivOf+Ek+Iv/AEL+gf8Agwf/AOJo/wCEk+Iv/Qv6B/4MH/8AiaOVh7SPc9Gorzn/AIST4i/9C/oH/gwf/wCJo/4ST4i/9C/oH/gwf/4mjlYe0j3KHxg8T2lrZLoF3HJBJJLa3UE7/wCrlCzrvUH1UAE+xrvfDXiGHxPpbala28sVq0zxwvJ/y2VTgOP9k44ryrxvpfjLx3pMNjqGgaHGYZlljmS/bcv94fd6Ecf/AKq6Gz1nx7p9lDZ2nhrw9FbwII441v2wqgYA+7RysPaR7nplFec/8JJ8Rf8AoX9A/wDBg/8A8TR/wknxF/6F/QP/AAYP/wDE0crD2ke56NRXnP8AwknxF/6F/QP/AAYP/wDE0f8ACSfEX/oX9A/8GD//ABNHKw9pHuejUV5z/wAJJ8Rf+hf0D/wYP/8AE0f8JJ8Rf+hf0D/wYP8A/E0crD2ke52usapY6bbol7cxwNdMYIN5xvkKkhR7nBrkPhFqlifAGg6ULmM362RnMAPzCMyMAx9s1g+Kf+E58V+H7jSb3QNCVZAGjlTUG3ROOVdfl6g1jfD/AEXxt4H06ZLfRdIubicjfNc3zBwg+6gAGAByfxo5WHtI9z3eivOf+Ek+Iv8A0L+gf+DB/wD4mj/hJPiL/wBC/oH/AIMH/wDiaOVh7SPc9Gorzn/hJPiL/wBC/oH/AIMH/wDiaP8AhJPiL/0L+gf+DB//AImjlYe0j3PRqK85/wCEk+Iv/Qv6B/4MH/8AiaP+Ek+Iv/Qv6B/4MH/+Jo5WHtI9z0aivOf+Ek+Iv/Qv6B/4MH/+Jo/4ST4i/wDQv6B/4MH/APiaOVh7SPc9Gorzn/hJPiL/ANC/oH/gwf8A+Jo/4ST4i/8AQv6B/wCDB/8A4mjlYe0j3PRqq6kqNpV2sjtGhhcM6qWKjB5AHJPsK4P/AIST4i/9C/oH/gwf/wCJqtqHiL4gPpt0s/h7QjC0LB9uoHO3BzjK4/PijlYe0j3PTl+4v0pa85HiT4ibRjw/oGMcf8TBv/iaP+Ek+Iv/AEL+gf8Agwf/AOJo5WHtI9z0aivOf+Ek+Iv/AEL+gf8Agwf/AOJo/wCEk+Iv/Qv6B/4MH/8AiaOVh7SPc9Gorzn/AIST4i/9C/oH/gwf/wCJo/4ST4i/9C/oH/gwf/4mjlYe0j3PRqK85/4ST4i/9C/oH/gwf/4mj/hJPiL/ANC/oH/gwf8A+Jo5WHtI9z0aivOf+Ek+Iv8A0L+gf+DB/wD4mj/hJPiL/wBC/oH/AIMH/wDiaOVh7SPc9Gorzn/hJPiL/wBC/oH/AIMH/wDiaP8AhJPiL/0L+gf+DB//AImjlYe0j3PRqK85/wCEk+Iv/Qv6B/4MH/8AiaP+Ek+Iv/Qv6B/4MH/+Jo5WHtI9z0aivOf+Ek+Iv/Qv6B/4MH/+Jo/4ST4i/wDQv6B/4MH/APiaOVh7SPc9Gorzn/hJPiL/ANC/oH/gwf8A+Jo/4ST4i/8AQv6B/wCDB/8A4mjlYe0j3PRqK85/4ST4i/8AQv6B/wCDB/8A4mj/AIST4i/9C/oH/gwf/wCJo5WHtI9z0aivOf8AhJPiL/0L+gf+DB//AImj/hJPiL/0L+gf+DB//iaOVh7SPc9Gorzn/hJPiL/0L+gf+DB//iaP+Ek+Iv8A0L+gf+DB/wD4mjlYe0j3PRqK85/4ST4i/wDQv6B/4MH/APiaP+Ek+Iv/AEL+gf8Agwf/AOJo5WHtI9z0aivOf+Ek+Iv/AEL+gf8Agwf/AOJo/wCEk+Iv/Qv6B/4MH/8AiaOVh7SPc9Gorzn/AIST4i/9C/oH/gwf/wCJo/4ST4i/9C/oH/gwf/4mjlYe0j3PRqK85/4ST4i/9C/oH/gwf/4mj/hJPiL/ANC/oH/gwf8A+Jo5WHtI9z0aivOf+Ek+Iv8A0L+gf+DB/wD4mj/hJPiL/wBC/oH/AIMH/wDiaOVh7SPc9GorzoeI/iKSB/wj+gc/9RB//ia3/AviW68U6DLe3tpFa3MN3LayRxOXXKHBIJoaaGpJ7GJ8Q/8AkaPA/wD2E5P/AEU1WNWvbmzhtRZxQyXFzdR2yCdiEBfPJxz2qv8AEP8A5GjwP/2E5P8A0U1P1n/XaJ/2F7f/ANmq47GNRJ1EmTfYvFf9zQf+/s//AMTR9i8V/wBzQf8Av7P/APE11NFPU6vq1Psct9i8V/3NB/7+z/8AxNH2LxX/AHNB/wC/s/8A8TXU0Uah9Wp9jlvsXiv+5oP/AH9n/wDiaPsXiv8AuaD/AN/Z/wD4mupoo1D6tT7HLfYvFf8Ac0H/AL+z/wDxNH2LxX/c0H/v7P8A/E11NFGofVqfY5b7F4r/ALmg/wDf2f8A+Jo+xeK/7mg/9/Z//ia6mqer6lFo+jXupTgmK0geZgOpCjOKTdldgsNTbtYwvsXiv+5oP/f2f/4mj7F4r/uaD/39n/8Aia5WO58dX/h+38Sr4t0uwlvFE9tpM0EawFDghTKx3ZxycfpWqPGM9j431OPVL6FdHtNEivXEIDIJC2CVbGWB6Chu2j/rS5Ko0nsjV+xeK/7mg/8Af2f/AOJo+xeK/wC5oP8A39n/APiapWPxDt9SZ7STS9R0m6ns5Lmwa9jAFwFUnK4J5HBwayPB3xOa40vQYdds9QEuoN5C6o8KpBLNk/KMflnGKE3ewOjS7HSfYvFf9zQf+/s//wATR9i8V/3NB/7+z/8AxNU3+JenReIrfSptM1KGK5uvskF7LGFjkk6cKTuxnjOMVZ+Hus6hrmhXtzqU/nTRalcQK2wLhFbCjgdqE77f1t/mP2FK9rD/ALF4r/uaD/39n/8AiaPsXiv+5oP/AH9n/wDia57xB4q1vTfi1Y6bDdgaL5UBuLcxryZGZc7sZHOO9UtC+IF+ni/xJNrd/wD8SG0tXuraMRKCiCbyxyBkk4PU96Slf8fwB0KadrdvxOu+xeK/7mg/9/Z//iaPsXiv+5oP/f2f/wCJrMtfippU9jqc8un3ltPYWv2w20jRl5Ys43KVYjr2JqAfFyxaV4E8O641wbYXcMXkrmaHu454UAd6d7C9hS7G19i8V/3NB/7+z/8AxNH2LxX/AHNB/wC/s/8A8TVaf4j6b9k0l9O0+/1O71SA3EFnaxgyrGM5ZsnAAII96iufihpEGi6bqUVlf3P265azFtEg82KYDlGUnrnjii4/YUi99i8V/wBzQf8Av7P/APE0fYvFf9zQf+/s/wD8TUVh4+tp5NTi1HSr7SbjT7T7ZJDebNzxc8rgnuMfjW/ompjWtFs9TW2mtluoxKsU2N6qemccdOaev9f15AqFJ9DF+xeK/wC5oP8A39n/APiaPsXiv+5oP/f2f/4mupoo1H9Wp9jlvsXiv+5oP/f2f/4mj7F4r/uaD/39n/8Aia6mijUPq1Psct9i8V/3NB/7+z//ABNH2LxX/c0H/v7P/wDE11NFGofVqfY5b7F4r/uaD/39n/8AiaPsXiv+5oP/AH9n/wDia6mijUPq1Psct9i8V/3NB/7+z/8AxNVGu9ShvrvTdWt7M7bE3Smylk+ZdxUqdwBB46iu0rkNbZU8XXLMiyKNEyUfow85uD7UXZnVowjG6RpjoPpWXDNrmo3uoJp0OliCzuPs+bqSQOx2I5OFGMfPj8K1B90fSofC3/Hz4h/7Cf8A7Qhps56EIzlaRB9i8V/3NB/7+z//ABNH2LxX/c0H/v7P/wDE11NFLU7Pq1Psct9i8V/3NB/7+z//ABNH2LxX/c0H/v7P/wDE11NFGofVqfY5b7F4r/uaD/39n/8AiaPsXiv+5oP/AH9n/wDia6mijUPq1Psct9i8V/3NB/7+z/8AxNH2LxX/AHNB/wC/s/8A8TXU0Uah9Wp9jlvsXiv+5oP/AH9n/wDiaPsXiv8AuaD/AN/Z/wD4msd9Q8S+LvEetWWha5HotjpEot/MW1WeS4lIyc7uFUe1aL+KNQ8MeHNOHieBbzXrqUwRWumLua4bPBAPAOOT2pJ6XF7Cne1if7F4r/uaD/39n/8AiaPsXiv+5oP/AH9n/wDiaozfE/S7fQbrUrjT9Qins7pLS6sHQCeF3ztJGcEEDPFLD8TNNA1calpmpaZLplsLqSG6jG+SMnAKgE9SQOfWi/mHsKXYu/YvFf8Ac0H/AL+z/wDxNH2LxX/c0H/v7P8A/E1mQfEn+0NE1W6s9A1NLqztvPjjkRWWQHuGU7eOCRnOKr6J8RboeCNK1LUtF1O5v7oH5YYlAlAGTKDnaqc45I6UXF7Ck+ht/YvFf9zQf+/s/wD8TR9i8V/3NB/7+z//ABNZx+KeltpWj31tpuo3J1SaS3ighRTIsqYypGeeSORxWT4i+KVwvgjU9Q0fSr221GzuRaTx3Uak2rHHzMM4Oeg689aL/wBf16j9hS7HT/YvFf8Ac0H/AL+z/wDxNH2LxX/c0H/v7P8A/E1fm1S6k8F3OqfZp7G7FjJMIpwN8bBSRkDI6jNeX2Xj3xPL8M553v1bXmuIxBceSn+rePzPu4xwAw6UnK179P8AhgVCk0nbc9B+xeK/7mg/9/Z//iaPsXiv+5oP/f2f/wCJrAtfifBp3hzQ/t8NzqWq3OnJeXK2/lpsU9XOSByewq9f/FHS7ae0istN1HUjd2H2+I2iKcx5IOcngjBJ+lU3ZvX+v6QlRpPoaP2LxX/c0H/v7P8A/E0fYvFf9zQf+/s//wATVHRvifpOtanp9olhqNtDqETyWt3cRBY5Cgy6jnPHPPTiiz+J+l3d9br/AGdqMOmXVx9mttVkiAt5ZM4ABzkZPAJFGt7B7Gla5e+xeK/7mg/9/Z//AImj7F4r/uaD/wB/Z/8A4msyb4nRfatVgs/DWs3o0uV47qWBU2Jtyc5LegPHXitmDxlYXeoaHZ2kM1w+r2xuo2TGIYgAdz8++OO9JO+w3QpJ2sQ/YvFf9zQf+/s//wATR9i8V/3NB/7+z/8AxNdTRT1H9Wp9jlvsXiv+5oP/AH9n/wDiaPsXiv8AuaD/AN/Z/wD4mupoo1D6tT7HLfYvFf8Ac0H/AL+z/wDxNH2LxX/c0H/v7P8A/E11NFGofVqfY5b7F4r/ALmg/wDf2f8A+Jo+xeK/7mg/9/Z//ia6mijUPq1Psci82uadqGmx6jDpZgvLn7Pm1kkLqdjuDhhjHyY/Gk+En/Itap/2Gbz/ANGVf8Tf8fvhz/sKD/0RNVD4Sf8AItap/wBhm8/9GVMtjLkUJtRGfEP/AJGjwP8A9hOT/wBFNT9Z/wBdon/YXt//AGamfEP/AJGjwP8A9hOT/wBFNU2s213cRWclkkMk9rexXIjlkKK4XORuAOOvpTjsZVHaomzrKK5r+2vEf/QD07/wZt/8Zo/trxH/ANAPTv8AwZt/8ZpnZ7en3Olormv7a8R/9APTv/Bm3/xmj+2vEf8A0A9O/wDBm3/xmgPb0+50tFc1/bXiP/oB6d/4M2/+M0f214j/AOgHp3/gzb/4zQHt6fc6Wiua/trxH/0A9O/8Gbf/ABmj+2vEf/QD07/wZt/8ZoD29PudLVe+s4NR0+4sblN8FxE0Ui+qsMGsL+2vEf8A0A9O/wDBm3/xmj+2vEf/AEA9O/8ABm3/AMZpNXVmCr011ONvfhx4nutFi8NyXXh+80i3BjtL28tna7t4z/dA+XcBwDV9vha0kt7avfp/Z82hw6XG4B80PGwIcjpjjpmuj/trxH/0A9O/8Gbf/GaP7a8R/wDQD07/AMGbf/GaLX/r5fqSqtJdTAs/BfiS/wBRsrvxLqGmyf2XaS29ilkjjezps3yFvbHAqjpXw88UC18P6TrGq6Y+j6PcLdJ9mjfzndc7UJOBtGTz1rrf7a8R/wDQD07/AMGbf/GaP7a8R/8AQD07/wAGbf8AxmnbW4e0pWtc4aP4Va6Nctb+e90m4a01QXq3DrJ9omj3ZKMxyAB2UDGT1ruvBXh268NaRdWd3LDK819PcqYicBXbIByBzSf214j/AOgHp3/gzb/4zR/bXiP/AKAenf8Agzb/AOM0krKy/rb/ACD2tK97/wBa/wCZj+J/Auoa54g1TUra6tovtGmx21uXLbo5kkDhzx04rMHwquJo7y3uL2AQ3OixWG9NxYTq+8vgjG0nP511f9teI/8AoB6d/wCDNv8A4zR/bXiP/oB6d/4M2/8AjNLl0t/XX/Mftqd73/rT/I4+0+GOqf2JrNvcR+HbW6urH7Hb/wBnWpRc8Zd3I3ZOOg4rc/4Qq/8A+Egt9Q+0W3lR6CdLK5bcZP73T7v6+1an9teI/wDoB6d/4M2/+M0f214j/wCgHp3/AIM2/wDjNNq/9ev+bEqtJbP+tP8AI5mz8AeIdDg8P32i3+mjWNOsWsZ0uldoJULFsgj5gQSO1SWvw4vrWLQ3N9by3dvqz6pqEhBVXZhyIxjt2ziui/trxH/0A9O/8Gbf/GaP7a8R/wDQD07/AMGbf/GafW/9b3/MXtKVrX/q1vyOO+I+mJ4j8baNpWn/AGpb6QGHUCkLCM2ZIY5fp/DjHvXqkcaQxJFGoWNFCqB2A4Fc5/bfiPGP7D07H/YTb/4zR/bXiP8A6Aenf+DNv/jNJKysV7ane9zpaK5r+2vEf/QD07/wZt/8Zo/trxH/ANAPTv8AwZt/8Zpj9vT7nS0VzX9teI/+gHp3/gzb/wCM0f214j/6Aenf+DNv/jNAe3p9zpaK5r+2vEf/AEA9O/8ABm3/AMZo/trxH/0A9O/8Gbf/ABmgPb0+50tFc1/bXiP/AKAenf8Agzb/AOM0f214j/6Aenf+DNv/AIzQHt6fc6WuQ1pzF4uuZAFJTRN2HGRxM3UZGR+NWv7a8R/9APTv/Bm3/wAZrPf+159VutWurW3tWXT/ALPClvcGdiwcvnlB+WDQZVqsJQsmbI+6PpUPhb/j58Q/9hP/ANoQ1MOgz6Vl2j61pN7qZtNPsrqC7uvtCPJetEy/u0TBXy27p696bOfDyUZ3Z2FFc1/bXiP/AKAenf8Agzb/AOM0f214j/6Aenf+DNv/AIzSO329PudLRXNf214j/wCgHp3/AIM2/wDjNH9teI/+gHp3/gzb/wCM0B7en3Olormv7a8R/wDQD07/AMGbf/GaP7a8R/8AQD07/wAGbf8AxmgPb0+50tFc1/bXiP8A6Aenf+DNv/jNH9teI/8AoB6d/wCDNv8A4zQHt6fczLzwx4l0nXtS1PwlfaYqaowkurbUkcqkgGN6FOefQ8VDe+CvEE2maHdLr8V34j0md50uLuI+VJv+8hC87QM4PX6dtn+2vEf/AEA9O/8ABm3/AMZo/trxH/0A9O/8Gbf/ABmklZCdak+py9z8OdZ1DTr+5vr+xbW9R1C3urholZYESI8InBJOO5rX1XwZqGoeJ9Z1OK8tIor7SksoxLF5uHDbjuRhtKnpWj/bXiP/AKAenf8Agzb/AOM0f214j/6Aenf+DNv/AIzRy6W/rawva0r3v/V7nK+EfhnqeizavJd3VhbR31m1strpxlMO9ushDng9OF4qs/w58VTaLoFhcXuizR6TvhNrIJjbzxMAAzqMbnHPHTpXZ/214j/6Aenf+DNv/jNH9teI/wDoB6d/4M2/+M0W/r+vUPa0u5y+hfDbVNITwzG93ZMmj6jc3Uhj3DzEkAAAGOD7Zx71Pqfw71HUNI8YWYvLVH1q8jubZjuIQJjh+OM47Zrof7a8R/8AQD07/wAGbf8Axmj+2vEf/QD07/wZt/8AGaLf193+SD2tLv8A1r/mXTZane+EZrDUGtBqU9o8Dtb7vJDFSoIzzjpXCW3wu1KEWIa9tNkGkG0kQFsNc7GRZOnQB/r7V139teI/+gHp3/gzb/4zR/bXiP8A6Aenf+DNv/jNDjdu/X/g/wCY1WppJX2/4H+RxV58KNREWkzWv9h3d3b6alhcx6nC0sQK9JI8DOfqK3rPwHdWOv2t5FPZ/ZodEfTiqR+XmVmzuCKNoXntWv8A214j/wCgHp3/AIM2/wDjNH9teI/+gHp3/gzb/wCM0NXv53/G/wDmxKrSXX+lb/I53Tfh3qFqng6O4urV49FiuI7rYzZk8xSBs47Z74qvZ/DrxALTTfDt9qunyeGNOuxcxGOJhdShWLKjZ+UDJPI5rqv7a8R/9APTv/Bm3/xmj+2vEf8A0A9O/wDBm3/xmn1v/XcXtKVrXINA0N/C0Pia81J45ra9vJb3bCrORERyCuMk47DNcz8JNAME+q6yRcGzMjWmlfaEKMLYOzH5TyAWPf0rrf7b8R/9APTv/Bm3/wAZoOt+Iz10PTv/AAZt/wDGaSVn8rf1/Xcbq03163Olormv7a8R/wDQD07/AMGbf/GaP7a8R/8AQD07/wAGbf8AxmmV7en3Olormv7a8R/9APTv/Bm3/wAZo/trxH/0A9O/8Gbf/GaA9vT7nS0VzX9teI/+gHp3/gzb/wCM0f214j/6Aenf+DNv/jNAe3p9zpaK5r+2vEf/AEA9O/8ABm3/AMZo/trxH/0A9O/8Gbf/ABmgPb0+5L4m/wCP3w5/2FB/6Imqh8JP+Ra1T/sM3n/oyi4fWtW1HSjd6fZWsFpd/aHeO9aVm/dumAPLXu/r2o+En/Itap/2Gbz/ANGVMtjFyUptrsa/jHwnF4mXT5W1W50ybT5jNDcW5UEMV2/xDHeuf/4QW7/6KPrP/fcP/wATXQ+M7eG7TQ7e5hjmgk1WJXikUMrDa/BB4NS3HhzwraW8lxc6LosMEY3PJJaRKqj1JIwKlXK5U9zmf+EFu/8Aoo+s/wDfcP8A8TR/wgt3/wBFH1n/AL7h/wDia0fM+Gvr4T/K3o8z4a+vhP8AK3o1FyR7Gd/wgt3/ANFH1n/vuH/4mj/hBbv/AKKPrP8A33D/APE1o+Z8NfXwn+VvR5nw19fCf5W9Gockexnf8ILd/wDRR9Z/77h/+Jo/4QW7/wCij6z/AN9w/wDxNaPmfDX18J/lb0eZ8NfXwn+VvRqHJHsZ3/CC3f8A0UfWf++4f/iaP+EFu/8Aoo+s/wDfcP8A8TWj5nw19fCf5W9HmfDX18J/lb0ahyR7Gd/wgt3/ANFH1n/vuH/4mj/hBbv/AKKPrP8A33D/APE1o+Z8NfXwn+VvR5nw19fCf5W9Gockexnf8ILd/wDRR9Z/77h/+Jo/4QW7/wCij6z/AN9w/wDxNaPmfDX18J/lb0eZ8NfXwn+VvRqHJHsZ3/CC3f8A0UfWf++4f/iaP+EFu/8Aoo+s/wDfcP8A8TWj5nw19fCf5W9HmfDX18J/lb0ahyR7Gd/wgt3/ANFH1n/vuH/4mj/hBbv/AKKPrP8A33D/APE1o+Z8NfXwn+VvR5nw19fCf5W9Gockexnf8ILd/wDRR9Z/77h/+Jo/4QW7/wCij6z/AN9w/wDxNaPmfDX18J/lb0eZ8NfXwn+VvRqHJHsZ3/CC3f8A0UfWf++4f/iaP+EFu/8Aoo+s/wDfcP8A8TWj5nw19fCf5W9HmfDX18J/lb0ahyR7Gd/wgt3/ANFH1n/vuH/4mj/hBbv/AKKPrP8A33D/APE1o+Z8NfXwn+VvR5nw19fCf5W9Gockexnf8ILd/wDRR9Z/77h/+Jo/4QW7/wCij6z/AN9w/wDxNaPmfDX18J/lb0eZ8NfXwn+VvRqHJHsZ3/CC3f8A0UfWf++4f/iaP+EFu/8Aoo+s/wDfcP8A8TWj5nw19fCf5W9HmfDX18J/lb0ahyR7Gd/wgt3/ANFH1n/vuH/4mj/hBbv/AKKPrP8A33D/APE1o+Z8NfXwn+VvR5nw19fCf5W9Gockexnf8ILd/wDRR9Z/77h/+Jo/4QW7/wCij6z/AN9w/wDxNaPmfDX18J/lb0eZ8NfXwn+VvRqHJHsZ3/CC3f8A0UfWf++4f/iaP+EFu/8Aoo+s/wDfcP8A8TWj5nw19fCf5W9HmfDX18J/lb0ahyR7Gd/wgt3/ANFH1n/vuH/4mmy+CtSt4XmtviDq008alo4pPJdXYcgFeMgntkfUVp+Z8NfXwn+VvVbUR8OZ9Muooj4T8x4WVObdeSDjnt9aNQ5I9iuPAt5jn4j6znv88P8AhR/wgt3/ANFH1n/vuH/4mtBX+GwUDPhPp6W9L5nw19fCf5W9Gockexnf8ILd/wDRR9Z/77h/+Jo/4QW7/wCij6z/AN9w/wDxNaPmfDX18J/lb0eZ8NfXwn+VvRqHJHsZ3/CC3f8A0UfWf++4f/iaP+EFu/8Aoo+s/wDfcP8A8TWj5nw19fCf5W9HmfDX18J/lb0ahyR7Gd/wgt3/ANFH1n/vuH/4mj/hBbv/AKKPrP8A33D/APE1o+Z8NfXwn+VvR5nw19fCf5W9Gockexnf8ILd/wDRR9Z/77h/+Jo/4QW7/wCij6z/AN9w/wDxNaPmfDX18J/lb0eZ8NfXwn+VvRqHJHsZ3/CC3f8A0UfWf++4f/iaP+EFu/8Aoo+s/wDfcP8A8TWj5nw19fCf5W9HmfDX18J/lb0ahyR7Gd/wgt3/ANFH1n/vuH/4mj/hBbv/AKKPrP8A33D/APE1o+Z8NfXwn+VvR5nw19fCf5W9Gockexnf8ILd/wDRR9Z/77h/+Jo/4QW7/wCij6z/AN9w/wDxNaPmfDX18J/lb0eZ8NfXwn+VvRqHJHsZ3/CC3f8A0UfWf++4f/iaP+EFu/8Aoo+s/wDfcP8A8TWj5nw19fCf5W9HmfDX18J/lb0ahyR7Gd/wgt3/ANFH1n/vuH/4mj/hBbv/AKKPrP8A33D/APE1o+Z8NfXwn+VvR5nw19fCf5W9Gockexnf8ILd/wDRR9Z/77h/+Jo/4QW7/wCij6z/AN9w/wDxNaPmfDX18J/lb0eZ8NfXwn+VvRqHJHsZ3/CC3f8A0UfWf++4f/iaP+EFu/8Aoo+s/wDfcP8A8TWj5nw19fCf5W9HmfDX18J/lb0ahyR7Gd/wgt3/ANFH1n/vuH/4mj/hBbv/AKKPrP8A33D/APE1o+Z8NfXwn+VvR5nw19fCf5W9Gockexnf8ILd/wDRR9Z/77h/+Jo/4QW7/wCij6z/AN9w/wDxNaPmfDX18J/lb0eZ8NfXwn+VvRqHJHsZ3/CC3f8A0UfWf++4f/iaP+EFu/8Aoo+s/wDfcP8A8TWj5nw19fCf5W9HmfDX18J/lb0ahyR7Gd/wgt3/ANFH1n/vuH/4mj/hBbv/AKKPrP8A33D/APE1o+Z8NfXwn+VvR5nw19fCf5W9Gockexnf8ILd/wDRR9Z/77h/+Jo/4QW7/wCij6z/AN9w/wDxNaPmfDX18J/lb0eZ8NfXwn+VvRqHJHsZ48C3gOR8R9Z/77h/+JrpvB3hu38LaI9jb3018JLiS4eeUruZ3OT0461HZ6D4Q1G2FzZaRodzAxIEsNtE6kjryBim+DLeG0TXLe2hjhgj1aVUijUKqjanAA4FDHypbEniv/W+H/8AsLxf+gvUXjrnwZfg+sX/AKNSpfFf+t8P/wDYXi/9BeovHX/Im3/1i/8ARqUug1saDwxeY37qPqf4BTfJi/55R/8AfAqV/wDWN9TTa4jEZ5MX/PKP/vgUeTF/zyj/AO+BT6KAGeTF/wA8o/8AvgUeTF/zyj/74FPooAZ5MX/PKP8A74FHkxf88o/++BT6KAGeTF/zyj/74FHkxf8APKP/AL4FPooAZ5MX/PKP/vgUeTF/zyj/AO+BT6KAGeTF/wA8o/8AvgUeTF/zyj/74FPooAZ5MX/PKP8A74FHkxf88o/++BT6KAGeTF/zyj/74FHkxf8APKP/AL4FPooAZ5MX/PKP/vgUeTF/zyj/AO+BT6KAGeTF/wA8o/8AvgUeTF/zyj/74FPooAZ5MX/PKP8A74FHkxf88o/++BT6KAGeTF/zyj/74FHkxf8APKP/AL4FPooAZ5MX/PKP/vgUeTF/zyj/AO+BT6KAMqy1jTL/AFzUNHgjzd6eEM4aEBRuGRg96boOtaX4ktJ7nToy0cM727+ZCFO9ev4VwVvpesan8VvFo0jxHJo5jW38wpaxz+ZlePvdMe1clpzzQ+BYIL66uP7GfxHNHq88IKlo+OW28qpPXFWoppei/NFNf18rnv3kRf8APGP/AL4FVtRurDSdOuNQvhHFa26GSRzHnAH4V4pMYj4f8XWuhandweEllg+yXGJZYwx5lUH7/lk9T24qjpMEGo/DnxlZNal0tI0uI3tLuSW183B/1eeQQOoJP4UcmjYKOqR73by2tzYRXsUS+TLEJlzGAdpGRx64rlYvG3hzxB4S1fUbFZGt7ZTDKr2o3bmGBhec5Jq54JGlL8PrIaPIr2gtjkq5YCTb84yefvZ4rx3QFdND0rTEJWPXIhIzDOB9nkdmzj2C01H33H+v6shR1jdnu2g6np3iHRLbVNPj3Ws6nYZIgrcEqcj6g1o+RF/zxj/74FfODG5m8IeDbW7vLS10V7W4bfemYQGYStw3lENux0/GuistLfWtR8D6Zq9/cXdvNZXeXUyQNLGD8oOcNjGPqAKcqaTdu7/C/wDkFu57b5Ef/PGP/vgUeRF/zxj/AO+BXgnhi0FpD4K1eO6u2vZdZksWke4dh5ClgIwpOAv+JqOWeA21zePd33/CxhquyGHfJv2b8BQn3fL2Z/8A1UvZ62/rp/mFv6+//I+gPIj/AOeMf/fApPJi/wCeMf8A3wK8r0rwrpvin4geMBrSyzfZ5ohHEs7qiOU5bCkZ/Gq/hIahq3ibS/DWoCQx+E2me4diQJWziH6/Lz+FJR6X8wasmz1zyYv+eUf/AHwKPJi/55R/98Cn0VAhnkxf88o/++BR5MX/ADyj/wC+BT6KAGeTF/zyj/74FHkxf88o/wDvgU+igBnkxf8APKP/AL4FHkxf88o/++BT6KAGeTF/zyj/AO+BR5MX/PKP/vgU+igBnkxf88o/++BR5MX/ADyj/wC+BT6KAGeTF/zyj/74FHkxf88o/wDvgU+igBnkxf8APKP/AL4FHkxf88o/++BT6KAGeTF/zyj/AO+BR5MX/PKP/vgU+igBnkxf88o/++BR5MX/ADyj/wC+BT6KAGeTF/zyj/74FHkxf88o/wDvgU+igBnkxf8APKP/AL4FHkxf88o/++BT6KAGeTF/zyj/AO+BR5MX/PKP/vgU+igBnkxf88o/++BR5MX/ADyj/wC+BT6KAM3wgAsOsgAADV7ngD3FTeFP9d4g/wCwvL/6AlReEf8AVa1/2F7n+YqXwp/rvEH/AGF5f/QErsWyNugeK/8AW+H/APsLxf8AoL1D48ZU8F6gzMFUeUSScADzUqbxX/rfD/8A2F4v/QXrakijmiaKWNJI2GGR1BBHuDVAtjFfWtJLt/xNtP6/8/Sf403+2tJ/6C2n/wDgUn+NX/7B0b/oEWH/AIDJ/hR/YOjf9Aiw/wDAZP8ACsfYeZPsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHsyh/bWk/9BbT/APwKT/Gj+2tJ/wCgtp//AIFJ/jV/+wdG/wCgRYf+Ayf4Uf2Do3/QIsP/AAGT/Cj2HmHszOGraMrs66lpoZvvMLiME/U55pBqmiCNoxqGlhG+8oniw31Gea0v7B0b/oEWH/gMn+FH9g6N/wBAiw/8Bk/wo9h5h7Mzl1XRFi8pdR0xY+mwXEYX8s4pE1TRI0MceoaWiHqqzxAH8Aa0v7B0b/oEWH/gMn+FH9g6N/0CLD/wGT/Cj2HmHszOTVtFjTZHqWmon91LiMD8gagubzQ57KWBbywbdGyKkDxO/IxhF7k+mOa2P7B0b/oEWH/gMn+FQXukaPa2NxcDTLWMxRs++GFEdcDOVbA2n0ORij2PmHIUv7R0IwrC19pRjXpGZosD8M4FP/tbRdyt/aWmblGFP2iPKj0HPFaA0LRyAf7JsORnm2T/AApf7B0b/oEWH/gMn+FHsPMPZmaNT0MBQL/SwFO5QJ4vlPqOeDR/amied539oaX5vTzPPj3fnnNaX9g6N/0CLD/wGT/Cj+wdG/6BFh/4DJ/hR7DzD2ZmtqmjFZAuqafG0gIZ0uYw31znrWN4csPD3hpbtotfjvbq8kElxd3l9G8shAwATkcAV1f9g6N/0CLD/wABk/wo/sHRv+gRYf8AgMn+FCo26h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7Mof21pP8A0FtP/wDApP8AGj+2tJ/6C2n/APgUn+NX/wCwdG/6BFh/4DJ/hR/YOjf9Aiw/8Bk/wo9h5h7MyvBksc9rrEsMiSRtq1yVdGDAjI6EVY8Kf67xB/2F5f8A0BK2YLeC1iEVvDHDGOiRoFUfgKxvCn+u8Qf9heX/ANAStbWVinsHiv8A1vh//sLxf+gvW7WF4r/1vh//ALC8X/oL1u00OIUVxVl44tUk8RQapq2nW1xY3ssNtFJIsbFFUFcgnnknmn6N42Evh/SJLq2ub7VLuyF3LDYQglU6FyCQAM8AZyewovpf0/Ed9bHZUVzj+NdNZYTYW99qZltvtRWyiDlI8kZYEg5yCMDJ4PFM0vxJc6h401LSDZTpZ21tDLFM0YXJcE85ORnsMdjnFPrYLnTUUUUDCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAqrqTKul3bPF5qiFyY9xG4YPGQCRn2GatVU1SRYtJvJGSN1SB2KSgFGwDwwJAx680CLS/dXtxS0i/cU+w6UtABRRRQMKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKwvCn+u8Qf8AYXl/9ASt2sLwp/rvEH/YXl/9ASkyZB4r/wBb4f8A+wvF/wCgvW7WV4k0y+1G3sX09rcXFpeJcqtwWCNtDDBKgkfe9KrbvGP/AD66D/4Ezf8AxFCEmV9H0G6s4/EguI4S2oXs09uQc/KyADPHByKxdE8PeIPDMWn3VtaW17ONLjsbm3Nx5ex0ZmV1YjBX5iCOvSui3eMf+fXQf/Amb/4ijd4x/wCfXQf/AAJm/wDiKXT7vwVh3X9fecs/gy/s9GsbQaXBf3sUEgF/b3zWk0ErsWIBHJTLcD26Vt+H9F1jS/EU11ful4tzp9vDNdh8N5sYIbK453Zzmr27xj/z66D/AOBM3/xFG7xj/wA+ug/+BM3/AMRTTsLT+v68jeorB3eMf+fXQf8AwJm/+Io3eMf+fXQf/Amb/wCIouO6N6isHd4x/wCfXQf/AAJm/wDiKN3jH/n10H/wJm/+IouF0b1FYO7xj/z66D/4Ezf/ABFG7xj/AM+ug/8AgTN/8RRcLo3qKwd3jH/n10H/AMCZv/iKN3jH/n10H/wJm/8AiKLhdG9RWDu8Y/8AProP/gTN/wDEUbvGP/ProP8A4Ezf/EUXC6N6isHd4x/59dB/8CZv/iKN3jH/AJ9dB/8AAmb/AOIouF0b1FYO7xj/AM+ug/8AgTN/8RRu8Y/8+ug/+BM3/wARRcLo3qKwd3jH/n10H/wJm/8AiKN3jH/n10H/AMCZv/iKLhdG9RWDu8Y/8+ug/wDgTN/8RRu8Y/8AProP/gTN/wDEUXC6N6isHd4x/wCfXQf/AAJm/wDiKN3jH/n10H/wJm/+IouF0b1FYO7xj/z66D/4Ezf/ABFG7xj/AM+ug/8AgTN/8RRcLo3qKwd3jH/n10H/AMCZv/iKN3jH/n10H/wJm/8AiKLhdG9RWDu8Y/8AProP/gTN/wDEUbvGP/ProP8A4Ezf/EUXC6N6isHd4x/59dB/8CZv/iKN3jH/AJ9dB/8AAmb/AOIouF0b1VtRkkh0y6li/wBYkLsvy7uQDjjvWVu8Y/8AProP/gTN/wDEU2V/FgiczW+lJEFO9rWaVpgO5QMmC3oDxnFFwub68qCfSlrB3eMO1roWO2bmbP8A6BRu8Y/8+ug/+BM3/wARRcLo3qKwd3jH/n10H/wJm/8AiKN3jH/n10H/AMCZv/iKLhdG9RWDu8Y/8+ug/wDgTN/8RRu8Y/8AProP/gTN/wDEUXC6N6isHd4x/wCfXQf/AAJm/wDiKN3jH/n10H/wJm/+IouF0b1FYO7xj/z66D/4Ezf/ABFG7xj/AM+ug/8AgTN/8RRcLo3qKwd3jH/n10H/AMCZv/iKN3jH/n10H/wJm/8AiKLhdG9RWDu8Y/8AProP/gTN/wDEUbvGP/ProP8A4Ezf/EUXC6N6isHd4x/59dB/8CZv/iKN3jH/AJ9dB/8AAmb/AOIouF0b1FYO7xj/AM+ug/8AgTN/8RRu8Y/8+ug/+BM3/wARRcLo3qKwd3jH/n10H/wJm/8AiKN3jH/n10H/AMCZv/iKLhdG9RWDu8Y/8+ug/wDgTN/8RRu8Y/8AProP/gTN/wDEUXC6N6isHd4x/wCfXQf/AAJm/wDiKN3jH/n10H/wJm/+IouF0b1FYO7xj/z66D/4Ezf/ABFG7xj/AM+ug/8AgTN/8RRcLo3qKwd3jH/n10H/AMCZv/iKN3jH/n10H/wJm/8AiKLhdG9RWDu8Y/8AProP/gTN/wDEUbvGP/ProP8A4Ezf/EUXC6N6isHd4x/59dB/8CZv/iKN3jH/AJ9dB/8AAmb/AOIouF0b1FYO7xj/AM+ug/8AgTN/8RRu8Y/8+ug/+BM3/wARRcLo3qwvCn+u8Qf9heX/ANASk3eMf+fXQf8AwJm/+Iqz4b0y+063vn1Brc3F3ePcstuWKLuCjALAE/d9KGJs2qKKKQgooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKiulD2kyEsAyEZRipHHYjkH3FFFAEg6CloooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigD/9k=" alt="memory regions">
+<img src="data:image/png;base64,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" alt="memory regions">
 </div>
 <div class="title">Figure 4. The named address spaces exposed in an OpenCL Platform. Global and Constant memories are shared between the one or more devices within a context, while local and private memories are associated with a single device. Each device may include an optional cache to support efficient access to their view of the global and constant address spaces.</div>
 </div>
@@ -3462,7 +3442,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="_memory_objects">3.3.2. Memory Objects</h4>
+<h4 id="_memory_objects"><a class="anchor" href="#_memory_objects"></a>3.3.2. Memory Objects</h4>
 <div class="paragraph">
 <p>The contents of global memory are <em>memory objects</em>.
 A memory object is a handle to a reference counted region of global memory.
@@ -3513,7 +3493,7 @@
 <p>Memory objects are allocated by host APIs.
 The host program can provide the runtime with a pointer to a block of
 continuous memory to hold the memory object when the object is created
-(<a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a>).
+(<a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a>).
 Alternatively, the physical memory can be managed by the OpenCL runtime and
 not be directly accessible to the host program.</p>
 </div>
@@ -3659,7 +3639,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="shared-virtual-memory">3.3.3. Shared Virtual Memory</h4>
+<h4 id="shared-virtual-memory"><a class="anchor" href="#shared-virtual-memory"></a>3.3.3. Shared Virtual Memory</h4>
 <div class="admonitionblock important">
 <table>
 <tr>
@@ -3769,7 +3749,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="_memory_consistency_model_for_opencl_1_x">3.3.4. Memory Consistency Model for OpenCL 1.x</h4>
+<h4 id="_memory_consistency_model_for_opencl_1_x"><a class="anchor" href="#_memory_consistency_model_for_opencl_1_x"></a>3.3.4. Memory Consistency Model for OpenCL 1.x</h4>
 <div class="admonitionblock important">
 <table>
 <tr>
@@ -3802,7 +3782,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="memory-consistency-model">3.3.5. Memory Consistency Model for OpenCL 2.x</h4>
+<h4 id="memory-consistency-model"><a class="anchor" href="#memory-consistency-model"></a>3.3.5. Memory Consistency Model for OpenCL 2.x</h4>
 <div class="admonitionblock important">
 <table>
 <tr>
@@ -3942,23 +3922,10 @@
 <ul>
 <li>
 <p><strong>memory_scope_work_item</strong>: memory-ordering constraints only apply within
-the work-item<sup>1</sup>.</p>
-<div class="openblock">
-<div class="content">
-<div class="dlist">
-<dl>
-<dt class="hdlist1">1</dt>
-<dd>
-<p>This value for memory_scope can only be used with atomic_work_item_fence
-with flags set to CLK_IMAGE_MEM_FENCE.</p>
-</dd>
-</dl>
-</div>
-</div>
-</div>
+the work-item <sup class="footnote">[<a id="_footnoteref_1" class="footnote" href="#_footnotedef_1" title="View footnote.">1</a>]</sup>.</p>
 </li>
 <li>
-<p><strong>memory_scope_sub_group</strong>:memory-ordering constraints only apply within
+<p><strong>memory_scope_sub_group</strong>: memory-ordering constraints only apply within
 the sub-group.</p>
 </li>
 <li>
@@ -3974,7 +3941,7 @@
 work-items executing across multiple devices and (when using SVM) the
 host.
 A release performed with <strong>memory_scope_all_svm_devices</strong> to a buffer that
-does not have the <a href="#CL_MEM_SVM_ATOMICS"><code>CL_&#8203;MEM_&#8203;SVM_&#8203;ATOMICS</code></a> flag set will commit to at least
+does not have the <a href="#CL_MEM_SVM_ATOMICS"><code>CL_MEM_<wbr>SVM_<wbr>ATOMICS</code></a> flag set will commit to at least
 <strong>memory_scope_device</strong> visibility, with full synchronization of the
 buffer at a queue synchronization point (e.g. an OpenCL event).</p>
 </li>
@@ -4039,7 +4006,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="_overview_of_atomic_and_fence_operations">3.3.6. Overview of atomic and fence operations</h4>
+<h4 id="_overview_of_atomic_and_fence_operations"><a class="anchor" href="#_overview_of_atomic_and_fence_operations"></a>3.3.6. Overview of atomic and fence operations</h4>
 <div class="paragraph">
 <p>OpenCL 2.x has a number of <em>synchronization operations</em> that are used to define
 memory order constraints in a program.
@@ -4164,7 +4131,7 @@
 <p><strong>P</strong> is <strong>memory_scope_device</strong> and <strong>A</strong> and <strong>B</strong> are executed by work-items
 on the same device when <strong>A</strong> and <strong>B</strong> apply to an SVM allocation or <strong>A</strong>
 and <strong>B</strong> are executed by work-items in the same kernel or one of its
-children when <strong>A</strong> and <strong>B</strong> apply to a cl_mem buffer.</p>
+children when <strong>A</strong> and <strong>B</strong> apply to a <code>cl_mem</code> buffer.</p>
 </li>
 <li>
 <p><strong>P</strong> is <strong>memory_scope_all_svm_devices</strong> if <strong>A</strong> and <strong>B</strong> are executed by
@@ -4175,7 +4142,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="memory-ordering-rules">3.3.7. Memory Ordering Rules</h4>
+<h4 id="memory-ordering-rules"><a class="anchor" href="#memory-ordering-rules"></a>3.3.7. Memory Ordering Rules</h4>
 <div class="paragraph">
 <p>Fundamentally, the issue in a memory model is to understand the orderings in
 time of modifications to objects in memory.
@@ -4425,7 +4392,7 @@
 This requirement is known as write-read coherence.</p>
 </div>
 <div class="sect4">
-<h5 id="_atomic_operations">Atomic Operations</h5>
+<h5 id="_atomic_operations"><a class="anchor" href="#_atomic_operations"></a>3.3.7.1. Atomic Operations</h5>
 <div class="paragraph">
 <p>This and following sections describe how different program actions in kernel
 C code and the host program contribute to the local- and
@@ -4491,7 +4458,7 @@
 operations that is consistent with the modification orders for all affected
 locations, as well as the appropriate global-happens-before and
 local-happens-before orders for those locations, such that each
-<strong>memory_order_seq</strong> operation <strong>B</strong> that loads a value from an atomic object
+<strong>memory_order_seq_cst</strong> operation <strong>B</strong> that loads a value from an atomic object
 <strong>M</strong> in global or local memory observes one of the following values:</p>
 </div>
 <div class="ulist">
@@ -4635,7 +4602,7 @@
 </li>
 <li>
 <p>The optional OpenCL 2.x SVM atomic-controlled visibility specified by
-provision of the <a href="#CL_MEM_SVM_ATOMICS"><code>CL_&#8203;MEM_&#8203;SVM_&#8203;ATOMICS</code></a> flag must be supported by the device
+provision of the <a href="#CL_MEM_SVM_ATOMICS"><code>CL_MEM_<wbr>SVM_<wbr>ATOMICS</code></a> flag must be supported by the device
 and the flag provided to the SVM buffer on allocation.</p>
 </li>
 <li>
@@ -4653,7 +4620,7 @@
 </div>
 </div>
 <div class="sect4">
-<h5 id="memory-ordering-fence">Fence Operations</h5>
+<h5 id="memory-ordering-fence"><a class="anchor" href="#memory-ordering-fence"></a>3.3.7.2. Fence Operations</h5>
 <div class="paragraph">
 <p>This section describes how the OpenCL 2.x fence operations contribute to the
 local- and global-happens-before relations.</p>
@@ -4699,10 +4666,8 @@
 atomic object <strong>M</strong>, such that <strong>A</strong> is sequenced-before <strong>X</strong>, <strong>X</strong> modifies <strong>M</strong>,
 <strong>Y</strong> is sequenced-before <strong>B</strong>, and <strong>Y</strong> reads the value written by <strong>X</strong> or a
 value written by any side effect in the hypothetical release sequence <strong>X</strong>
-would head if it were a</p>
-</div>
-<div class="paragraph">
-<p>release operation, and the scopes of <strong>A</strong> and <strong>B</strong> are inclusive.
+would head if it were a release operation, and the scopes of <strong>A</strong> and <strong>B</strong> are
+inclusive.
 <a href="#iso-c11">[C11 standard, Section 7.17.4, paragraph 2, modified.]</a></p>
 </div>
 <div class="paragraph">
@@ -4732,7 +4697,7 @@
 </div>
 </div>
 <div class="sect4">
-<h5 id="_work_group_functions">Work-group Functions</h5>
+<h5 id="_work_group_functions"><a class="anchor" href="#_work_group_functions"></a>3.3.7.3. Work-group Functions</h5>
 <div class="paragraph">
 <p>The OpenCL kernel execution model includes collective operations across the
 work-items within a single work-group.
@@ -4803,7 +4768,7 @@
 </div>
 </div>
 <div class="sect4">
-<h5 id="_sub_group_functions">Sub-group Functions</h5>
+<h5 id="_sub_group_functions"><a class="anchor" href="#_sub_group_functions"></a>3.3.7.4. Sub-group Functions</h5>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -4886,7 +4851,7 @@
 </div>
 </div>
 <div class="sect4">
-<h5 id="_host_side_and_device_side_commands">Host-side and Device-side Commands</h5>
+<h5 id="_host_side_and_device_side_commands"><a class="anchor" href="#_host_side_and_device_side_commands"></a>3.3.7.5. Host-side and Device-side Commands</h5>
 <div class="paragraph">
 <p>This section describes how the OpenCL API functions associated with
 command-queues contribute to happens-before relations.
@@ -5010,7 +4975,7 @@
 <li>
 <p>If <strong>C</strong> is a command that waits for an event <strong>E</strong>'s completion, and API
 function call <strong>X</strong> sets the status of a user event <strong>E</strong>'s status to
-<a href="#CL_COMPLETE"><code>CL_&#8203;COMPLETE</code></a> (for example, from a host thread using a
+<a href="#CL_COMPLETE"><code>CL_COMPLETE</code></a> (for example, from a host thread using a
 <a href="#clSetUserEventStatus"><strong>clSetUserEventStatus</strong></a> function), then <strong>X</strong> global-synchronizes-with <strong>C</strong>.</p>
 </li>
 <li>
@@ -5038,14 +5003,14 @@
 <div class="ulist">
 <ul>
 <li>
-<p>access to shared locations or disjoint locations in a single cl_mem
+<p>access to shared locations or disjoint locations in a single <code>cl_mem</code>
 object when using atomic operations from different kernel instances
 enqueued from the host such that one or more of the atomic operations is
 a write is implementation-defined and correct behavior is not guaranteed
 except at synchronization points.</p>
 </li>
 <li>
-<p>access to shared locations or disjoint locations in a single cl_mem
+<p>access to shared locations or disjoint locations in a single <code>cl_mem</code>
 object when using atomic operations from different kernel instances
 consisting of a parent kernel and any number of child kernels enqueued
 by that kernel is guaranteed under the memory ordering rules described
@@ -5106,7 +5071,7 @@
 may be overwritten by the map operation.</p>
 </div>
 <div class="paragraph">
-<p>Access to non-SVM cl_mem buffers and coarse-grained SVM allocations is
+<p>Access to non-SVM <code>cl_mem</code> buffers and coarse-grained SVM allocations is
 ordered at synchronization points between host commands.
 In the presence of an out-of-order command queue or a set of command queues
 mapped to the same device, multiple kernel instances may execute
@@ -5116,7 +5081,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="opencl-framework">3.4. The OpenCL Framework</h3>
+<h3 id="opencl-framework"><a class="anchor" href="#opencl-framework"></a>3.4. The OpenCL Framework</h3>
 <div class="paragraph">
 <p>The OpenCL framework allows applications to use a host and one or more
 OpenCL devices as a single heterogeneous parallel computer system.
@@ -5144,7 +5109,7 @@
 </ul>
 </div>
 <div class="sect3">
-<h4 id="_mixed_version_support">3.4.1. Mixed Version Support</h4>
+<h4 id="_mixed_version_support"><a class="anchor" href="#_mixed_version_support"></a>3.4.1. Mixed Version Support</h4>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -5190,7 +5155,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="_backwards_compatibility">3.4.2. Backwards Compatibility</h4>
+<h4 id="_backwards_compatibility"><a class="anchor" href="#_backwards_compatibility"></a>3.4.2. Backwards Compatibility</h4>
 <div class="paragraph">
 <p>Backwards compatibility is an important goal for the OpenCL standard.
 Backwards compatibility is expected such that a device will consume earlier
@@ -5236,9 +5201,22 @@
 </li>
 </ul>
 </div>
+<div class="paragraph">
+<p>In order to allow future versions of OpenCL to support new types of
+devices, minor releases of OpenCL may add new profiles where some
+features that are currently required for all OpenCL devices become
+optional.
+All features that are required for an OpenCL profile will also be
+required for that profile in subsequent minor releases of OpenCL,
+thereby guaranteeing backwards compatibility for applications
+targeting specific profiles.
+It is therefore strongly recommended that applications
+<a href="#CL_DEVICE_PROFILE">query the profile</a> supported by the OpenCL device
+they are running on in order to remain robust to future changes.</p>
+</div>
 </div>
 <div class="sect3">
-<h4 id="_versioning">3.4.3. Versioning</h4>
+<h4 id="_versioning"><a class="anchor" href="#_versioning"></a>3.4.3. Versioning</h4>
 <div class="paragraph">
 <p>The OpenCL specification is regularly updated with bug fixes and clarifications.
 Occasionally new functionality is added to the core and extensions. In order to
@@ -5248,7 +5226,7 @@
 are also versioned.</p>
 </div>
 <div class="sect4">
-<h5 id="_versions">Versions</h5>
+<h5 id="_versions"><a class="anchor" href="#_versions"></a>3.4.3.1. Versions</h5>
 <div class="paragraph">
 <p>A version number comprises three logical fields:</p>
 </div>
@@ -5260,7 +5238,7 @@
 </li>
 <li>
 <p>The <em>minor</em> version indicates the addition of new functionality with backwards
-compatibility.</p>
+compatibility for any existing profiles.</p>
 </li>
 <li>
 <p>The <em>patch</em> version indicates bug fixes, clarifications and general improvements.</p>
@@ -5314,34 +5292,34 @@
 <span class="preprocessor">#define</span> CL_VERSION_PATCH_MASK ((<span class="integer">1</span> &lt;&lt; CL_VERSION_PATCH_BITS) - <span class="integer">1</span>)
 
 <span class="preprocessor">#define</span> CL_VERSION_MAJOR(version) \
-        ((version) &gt;&gt; (CL_VERSION_MINOR_BITS + CL_VERSION_PATCH_BITS))
+  ((version) &gt;&gt; (CL_VERSION_MINOR_BITS + CL_VERSION_PATCH_BITS))
 
 <span class="preprocessor">#define</span> CL_VERSION_MINOR(version) \
-        (((version) &gt;&gt; CL_VERSION_PATCH_BITS) &amp; CL_VERSION_MINOR_MASK)
+  (((version) &gt;&gt; CL_VERSION_PATCH_BITS) &amp; CL_VERSION_MINOR_MASK)
 
 <span class="preprocessor">#define</span> CL_VERSION_PATCH(version) ((version) &amp; CL_VERSION_PATCH_MASK)
 
 <span class="preprocessor">#define</span> CL_MAKE_VERSION(major, minor, patch) \
-    ((((major) &amp; CL_VERSION_MAJOR_MASK) &lt;&lt; (CL_VERSION_MINOR_BITS + CL_VERSION_PATCH_BITS)) | \
-     (((minor) &amp; CL_VERSION_MINOR_MASK) &lt;&lt; CL_VERSION_PATCH_BITS) | \
-     ((patch) &amp; CL_VERSION_PATCH_MASK))</code></pre>
+  ((((major)&amp; CL_VERSION_MAJOR_MASK) &lt;&lt; \
+        (CL_VERSION_MINOR_BITS + CL_VERSION_PATCH_BITS)) | \
+   (((minor)&amp; CL_VERSION_MINOR_MASK) &lt;&lt; \
+         CL_VERSION_PATCH_BITS) | \
+    ((patch) &amp; CL_VERSION_PATCH_MASK))</code></pre>
 </div>
 </div>
 </div>
 <div class="sect4">
-<h5 id="_version_name_pairing">Version name pairing</h5>
+<h5 id="_version_name_pairing"><a class="anchor" href="#_version_name_pairing"></a>3.4.3.2. Version name pairing</h5>
 <div class="paragraph">
 <p>It is sometimes necessary to associate a version to an entity it applies to
 (e.g. extension or built-in kernel). This is done using a dedicated
-<code>cl_name_version</code> structure, defined as follows:</p>
+<a href="#cl_name_version"><code>cl_name_<wbr>version</code></a> structure, defined as follows:</p>
 </div>
-<div class="listingblock">
+<div id="cl_name_version" class="listingblock">
 <div class="content">
-<pre class="CodeRay highlight"><code data-lang="c"><span class="preprocessor">#define</span> CL_NAME_VERSION_MAX_NAME_SIZE <span class="integer">64</span>
-
-<span class="keyword">typedef</span> <span class="keyword">struct</span> _cl_name_version {
-    cl_version version;
-    <span class="predefined-type">char</span> name[CL_NAME_VERSION_MAX_NAME_SIZE];
+<pre class="CodeRay highlight"><code data-lang="c++"><span class="keyword">typedef</span> <span class="keyword">struct</span> cl_name_version {
+    cl_version    version;
+    <span class="predefined-type">char</span>          name[CL_NAME_VERSION_MAX_NAME_SIZE];
 } cl_name_version;</code></pre>
 </div>
 </div>
@@ -5356,7 +5334,7 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="opencl-platform-layer">4. The OpenCL Platform Layer</h2>
+<h2 id="opencl-platform-layer"><a class="anchor" href="#opencl-platform-layer"></a>4. The OpenCL Platform Layer</h2>
 <div class="sectionbody">
 <div class="paragraph">
 <p>This section describes the OpenCL platform layer which implements
@@ -5365,7 +5343,7 @@
 more devices.</p>
 </div>
 <div class="sect2">
-<h3 id="_querying_platform_info">4.1. Querying Platform Info</h3>
+<h3 id="_querying_platform_info"><a class="anchor" href="#_querying_platform_info"></a>4.1. Querying Platform Info</h3>
 <div class="openblock">
 <div class="content">
 <div class="paragraph">
@@ -5382,13 +5360,13 @@
 <div class="ulist">
 <ul>
 <li>
-<p><em>num_entries</em> is the number of cl_platform_id entries that can be added to
+<p><em>num_entries</em> is the number of <code>cl_platform_<wbr>id</code> entries that can be added to
 <em>platforms</em>.
 If <em>platforms</em> is not <code>NULL</code>, the <em>num_entries</em> must be greater than zero.</p>
 </li>
 <li>
 <p><em>platforms</em> returns a list of OpenCL platforms found.
-The cl_platform_id values returned in <em>platforms</em> can be used to identify a
+The <code>cl_platform_<wbr>id</code> values returned in <em>platforms</em> can be used to identify a
 specific OpenCL platform.
 If <em>platforms</em> is <code>NULL</code>, this argument is ignored.
 The number of OpenCL platforms returned is the minimum of the value
@@ -5401,18 +5379,18 @@
 </ul>
 </div>
 <div class="paragraph">
-<p><a href="#clGetPlatformIDs"><strong>clGetPlatformIDs</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clGetPlatformIDs"><strong>clGetPlatformIDs</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>num_entries</em> is equal to zero and <em>platforms</em> is
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>num_entries</em> is equal to zero and <em>platforms</em> is
 not <code>NULL</code> or if both <em>num_platforms</em> and <em>platforms</em> are <code>NULL</code>.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -5480,15 +5458,15 @@
 </colgroup>
 <thead>
 <tr>
-<th class="tableblock halign-left valign-top"><strong>cl_platform_info</strong></th>
+<th class="tableblock halign-left valign-top">Platform Info</th>
 <th class="tableblock halign-left valign-top">Return Type</th>
 <th class="tableblock halign-left valign-top">Description</th>
 </tr>
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_PROFILE"></a><a href="#CL_PLATFORM_PROFILE"><code>CL_&#8203;PLATFORM_&#8203;PROFILE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]<sup>1</sup></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_PROFILE"></a><a href="#CL_PLATFORM_PROFILE"><code>CL_PLATFORM_<wbr>PROFILE</code></a> <sup class="footnote">[<a id="_footnoteref_2" class="footnote" href="#_footnotedef_2" title="View footnote.">2</a>]</sup></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[] <sup class="footnote">[<a id="_footnoteref_3" class="footnote" href="#_footnotedef_3" title="View footnote.">3</a>]</sup></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">OpenCL profile string.
         Returns the profile name supported by the implementation.
         The profile name returned can be one of the following strings:</p>
@@ -5503,8 +5481,8 @@
         <a href="#opencl-embedded-profile">OpenCL Embedded Profile</a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_VERSION"></a><a href="#CL_PLATFORM_VERSION"><code>CL_&#8203;PLATFORM_&#8203;VERSION</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_VERSION"></a><a href="#CL_PLATFORM_VERSION"><code>CL_PLATFORM_<wbr>VERSION</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">OpenCL version string.
         Returns the OpenCL version supported by the implementation.
         This version string has the following format:</p>
@@ -5514,26 +5492,26 @@
         1.1, 1.2, 2.0, 2.1, 2.2 or 3.0.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_NUMERIC_VERSION"></a><a href="#CL_PLATFORM_NUMERIC_VERSION"><code>CL_&#8203;PLATFORM_&#8203;NUMERIC_&#8203;VERSION</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_NUMERIC_VERSION"></a><a href="#CL_PLATFORM_NUMERIC_VERSION"><code>CL_PLATFORM_<wbr>NUMERIC_<wbr>VERSION</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_version</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_version</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the detailed (major, minor, patch) version supported by the
         platform. The major and minor version numbers returned must match
-        those returned via <a href="#CL_PLATFORM_VERSION"><code>CL_&#8203;PLATFORM_&#8203;VERSION</code></a>.</p></td>
+        those returned via <a href="#CL_PLATFORM_VERSION"><code>CL_PLATFORM_<wbr>VERSION</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_NAME"></a><a href="#CL_PLATFORM_NAME"><code>CL_&#8203;PLATFORM_&#8203;NAME</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_NAME"></a><a href="#CL_PLATFORM_NAME"><code>CL_PLATFORM_<wbr>NAME</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Platform name string.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_VENDOR"></a><a href="#CL_PLATFORM_VENDOR"><code>CL_&#8203;PLATFORM_&#8203;VENDOR</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_VENDOR"></a><a href="#CL_PLATFORM_VENDOR"><code>CL_PLATFORM_<wbr>VENDOR</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Platform vendor string.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_EXTENSIONS"></a><a href="#CL_PLATFORM_EXTENSIONS"><code>CL_&#8203;PLATFORM_&#8203;EXTENSIONS</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_EXTENSIONS"></a><a href="#CL_PLATFORM_EXTENSIONS"><code>CL_PLATFORM_<wbr>EXTENSIONS</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns a space separated list of extension names (the extension
         names themselves do not contain any spaces) supported by the
         platform.
@@ -5541,60 +5519,47 @@
         platform must be reported here.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_EXTENSIONS_WITH_VERSION"></a><a href="#CL_PLATFORM_EXTENSIONS_WITH_VERSION"><code>CL_&#8203;PLATFORM_&#8203;EXTENSIONS_&#8203;WITH_&#8203;VERSION</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_EXTENSIONS_WITH_VERSION"></a><a href="#CL_PLATFORM_EXTENSIONS_WITH_VERSION"><code>CL_PLATFORM_<wbr>EXTENSIONS_<wbr>WITH_<wbr>VERSION</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_name_version[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#cl_name_version"><code>cl_name_<wbr>version</code></a>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns an array of description (name and version) structures that lists
         all the extensions supported by the platform. The same extension name
         must not be reported more than once. The list of extensions reported
-        must match the list reported via <a href="#CL_PLATFORM_EXTENSIONS"><code>CL_&#8203;PLATFORM_&#8203;EXTENSIONS</code></a>.</p></td>
+        must match the list reported via <a href="#CL_PLATFORM_EXTENSIONS"><code>CL_PLATFORM_<wbr>EXTENSIONS</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_HOST_TIMER_RESOLUTION"></a><a href="#CL_PLATFORM_HOST_TIMER_RESOLUTION"><code>CL_&#8203;PLATFORM_&#8203;HOST_&#8203;TIMER_&#8203;RESOLUTION</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_PLATFORM_HOST_TIMER_RESOLUTION"></a><a href="#CL_PLATFORM_HOST_TIMER_RESOLUTION"><code>CL_PLATFORM_<wbr>HOST_<wbr>TIMER_<wbr>RESOLUTION</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.1.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_ulong</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_ulong</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the resolution of the host timer in nanoseconds as used by
         <a href="#clGetDeviceAndHostTimer"><strong>clGetDeviceAndHostTimer</strong></a>.</p>
-<p class="tableblock">        Support for Device and Host Timer Synchronization is required for
+<p class="tableblock">        Support for device and host timer synchronization is required for
         platforms supporting OpenCL 2.1 or 2.2.
-        This value must be 0 for devices that do not support Device and
-        Host Timer Synchronization.</p></td>
+        This value must be 0 for devices that do not support device and
+        host timer synchronization.</p></td>
 </tr>
 </tbody>
 </table>
 <div class="paragraph">
-<p><a href="#clGetPlatformInfo"><strong>clGetPlatformInfo</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clGetPlatformInfo"><strong>clGetPlatformInfo</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
-Otherwise, it returns one of the following errors<sup>2</sup>.</p>
+Otherwise, it returns one of the following
+errors <sup class="footnote">[<a id="_footnoteref_4" class="footnote" href="#_footnotedef_4" title="View footnote.">4</a>]</sup>.</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_PLATFORM"><code>CL_&#8203;INVALID_&#8203;PLATFORM</code></a> if <em>platform</em> is not a valid platform.</p>
+<p><a href="#CL_INVALID_PLATFORM"><code>CL_INVALID_<wbr>PLATFORM</code></a> if <em>platform</em> is not a valid platform.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>param_name</em> is not one of the supported values or
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>param_name</em> is not one of the supported values or
 if size in bytes specified by <em>param_value_size</em> is &lt; size of return
 type as specified in the <a href="#platform-queries-table">OpenCL Platform
 Queries</a> table, and <em>param_value</em> is not a <code>NULL</code> value.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
-<div class="dlist">
-<dl>
-<dt class="hdlist1">1</dt>
-<dd>
-<p>A null terminated string is returned by OpenCL query function calls if
-the return type of the information being queried is a char[].</p>
-</dd>
-<dt class="hdlist1">2</dt>
-<dd>
-<p>The OpenCL specification does not describe the order of precedence for
-error codes returned by API calls.</p>
-</dd>
-</dl>
-</div>
 </li>
 </ul>
 </div>
@@ -5602,12 +5567,12 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="platform-querying-devices">4.2. Querying Devices</h3>
+<h3 id="platform-querying-devices"><a class="anchor" href="#platform-querying-devices"></a>4.2. Querying Devices</h3>
 <div class="openblock">
 <div class="content">
 <div class="paragraph">
 <p>The list of devices available on a platform can be obtained using the
-function<sup>3</sup>:</p>
+function <sup class="footnote">[<a id="_footnoteref_5" class="footnote" href="#_footnotedef_5" title="View footnote.">5</a>]</sup>:</p>
 </div>
 <div id="clGetDeviceIDs" class="listingblock">
 <div class="content">
@@ -5631,16 +5596,16 @@
 The <em>device_type</em> can be used to query specific OpenCL devices or all OpenCL
 devices available.
 The valid values for <em>device_type</em> are specified in the
-<a href="#device-categories-table">Device Categories</a> table.</p>
+<a href="#device-types-table">Device Types</a> table.</p>
 </li>
 <li>
-<p><em>num_entries</em> is the number of cl_device_id entries that can be added to
+<p><em>num_entries</em> is the number of <code>cl_device_<wbr>id</code> entries that can be added to
 <em>devices</em>.
 If <em>devices</em> is not <code>NULL</code>, the <em>num_entries</em> must be greater than zero.</p>
 </li>
 <li>
 <p><em>devices</em> returns a list of OpenCL devices found.
-The cl_device_id values returned in <em>devices</em> can be used to identify a
+The <code>cl_device_<wbr>id</code> values returned in <em>devices</em> can be used to identify a
 specific OpenCL device.
 If <em>devices</em> is <code>NULL</code>, this argument is ignored.
 The number of OpenCL devices returned is the minimum of the value specified
@@ -5651,19 +5616,10 @@
 <p><em>num_devices</em> returns the number of OpenCL devices available that match
 <em>device_type</em>.
 If <em>num_devices</em> is <code>NULL</code>, this argument is ignored.</p>
-<div class="dlist">
-<dl>
-<dt class="hdlist1">3</dt>
-<dd>
-<p><a href="#clGetDeviceIDs"><strong>clGetDeviceIDs</strong></a> may return all or a subset of the actual physical
-devices present in the platform and that match <em>device_type</em>.</p>
-</dd>
-</dl>
-</div>
 </li>
 </ul>
 </div>
-<table id="device-categories-table" class="tableblock frame-all grid-all stretch">
+<table id="device-types-table" class="tableblock frame-all grid-all stretch">
 <caption class="title">Table 4. List of supported device_types by <a href="#clGetDeviceIDs">clGetDeviceIDs</a></caption>
 <colgroup>
 <col style="width: 50%;">
@@ -5671,74 +5627,90 @@
 </colgroup>
 <thead>
 <tr>
-<th class="tableblock halign-left valign-top"><strong>cl_device_type</strong></th>
+<th class="tableblock halign-left valign-top">Device Type</th>
 <th class="tableblock halign-left valign-top">Description</th>
 </tr>
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE_CPU"></a><a href="#CL_DEVICE_TYPE_CPU"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CPU</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">An OpenCL device that is the host processor.
-    The host processor runs the OpenCL implementations and is a single or
-    multi-core CPU.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE_CPU"></a><a href="#CL_DEVICE_TYPE_CPU"><code>CL_DEVICE_<wbr>TYPE_<wbr>CPU</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">An OpenCL device similar to a traditional CPU (Central Processing Unit).
+    The host processor that executes OpenCL host code may also be considered
+    a CPU OpenCL device.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE_GPU"></a><a href="#CL_DEVICE_TYPE_GPU"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;GPU</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">An OpenCL device that is a GPU.
-    By this we mean that the device can also be used to accelerate a 3D API
-    such as OpenGL or DirectX.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE_GPU"></a><a href="#CL_DEVICE_TYPE_GPU"><code>CL_DEVICE_<wbr>TYPE_<wbr>GPU</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">An OpenCL device similar to a GPU (Graphics Processing Unit).
+    Many systems include a dedicated processor for graphics or rendering
+    that may be considered a GPU OpenCL device.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE_ACCELERATOR"></a><a href="#CL_DEVICE_TYPE_ACCELERATOR"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;ACCELERATOR</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Dedicated OpenCL accelerators (for example the IBM CELL Blade).
-    These devices communicate with the host processor using a peripheral
-    interconnect such as PCIe.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE_ACCELERATOR"></a><a href="#CL_DEVICE_TYPE_ACCELERATOR"><code>CL_DEVICE_<wbr>TYPE_<wbr>ACCELERATOR</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Dedicated devices that may accelerate OpenCL programs, such as FPGAs
+    (Field Programmable Gate Arrays), DSPs (Digital Signal Processors), or
+    AI (Artificial Intelligence) processors.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE_CUSTOM"></a><a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE_CUSTOM"></a><a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Dedicated accelerators that do not support programs written in an OpenCL
-    kernel language,</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Specialized devices that implement some of the OpenCL runtime APIs but
+    do not support all required OpenCL functionality.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE_DEFAULT"></a><a href="#CL_DEVICE_TYPE_DEFAULT"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;DEFAULT</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">The default OpenCL device in the system.
-    The default device cannot be a <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a> device.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE_DEFAULT"></a><a href="#CL_DEVICE_TYPE_DEFAULT"><code>CL_DEVICE_<wbr>TYPE_<wbr>DEFAULT</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The default OpenCL device in the platform.
+    The default OpenCL device must not be a <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a> device.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE_ALL"></a><a href="#CL_DEVICE_TYPE_ALL"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;ALL</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">All OpenCL devices available in the system except
-    <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a> devices..</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE_ALL"></a><a href="#CL_DEVICE_TYPE_ALL"><code>CL_DEVICE_<wbr>TYPE_<wbr>ALL</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">All OpenCL devices available in the platform, except for
+    <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a> devices.</p></td>
 </tr>
 </tbody>
 </table>
 <div class="paragraph">
-<p><a href="#clGetDeviceIDs"><strong>clGetDeviceIDs</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p>The device type is purely informational and has no semantic meaning.</p>
+</div>
+<div class="paragraph">
+<p>Some devices may be more than one type.
+For example, a <a href="#CL_DEVICE_TYPE_CPU"><code>CL_DEVICE_<wbr>TYPE_<wbr>CPU</code></a> device may also be a
+<a href="#CL_DEVICE_TYPE_GPU"><code>CL_DEVICE_<wbr>TYPE_<wbr>GPU</code></a> device, or a <a href="#CL_DEVICE_TYPE_ACCELERATOR"><code>CL_DEVICE_<wbr>TYPE_<wbr>ACCELERATOR</code></a> device
+may also be some other, more descriptive device type.
+<a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a> devices must not be combined with any other
+device types.</p>
+</div>
+<div class="paragraph">
+<p>One device in the platform should be a <a href="#CL_DEVICE_TYPE_DEFAULT"><code>CL_DEVICE_<wbr>TYPE_<wbr>DEFAULT</code></a> device.
+The default device should also be a more specific device type, such
+as <a href="#CL_DEVICE_TYPE_CPU"><code>CL_DEVICE_<wbr>TYPE_<wbr>CPU</code></a> or <a href="#CL_DEVICE_TYPE_GPU"><code>CL_DEVICE_<wbr>TYPE_<wbr>GPU</code></a>.</p>
+</div>
+<div class="paragraph">
+<p><a href="#clGetDeviceIDs"><strong>clGetDeviceIDs</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_PLATFORM"><code>CL_&#8203;INVALID_&#8203;PLATFORM</code></a> if <em>platform</em> is not a valid platform.</p>
+<p><a href="#CL_INVALID_PLATFORM"><code>CL_INVALID_<wbr>PLATFORM</code></a> if <em>platform</em> is not a valid platform.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_DEVICE_TYPE"><code>CL_&#8203;INVALID_&#8203;DEVICE_&#8203;TYPE</code></a> if <em>device_type</em> is not a valid value.</p>
+<p><a href="#CL_INVALID_DEVICE_TYPE"><code>CL_INVALID_<wbr>DEVICE_<wbr>TYPE</code></a> if <em>device_type</em> is not a valid value.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>num_entries</em> is equal to zero and <em>devices</em> is not
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>num_entries</em> is equal to zero and <em>devices</em> is not
 <code>NULL</code> or if both <em>num_devices</em> and <em>devices</em> are <code>NULL</code>.</p>
 </li>
 <li>
-<p><a href="#CL_DEVICE_NOT_FOUND"><code>CL_&#8203;DEVICE_&#8203;NOT_&#8203;FOUND</code></a> if no OpenCL devices that matched <em>device_type</em> were
+<p><a href="#CL_DEVICE_NOT_FOUND"><code>CL_DEVICE_<wbr>NOT_<wbr>FOUND</code></a> if no OpenCL devices that matched <em>device_type</em> were
 found.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -5809,19 +5781,19 @@
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_DEVICE_GLOBAL_MEM_CACHE_SIZE"><code>CL_&#8203;DEVICE_&#8203;GLOBAL_&#8203;MEM_&#8203;CACHE_&#8203;SIZE</code></a></p>
+<p><a href="#CL_DEVICE_GLOBAL_MEM_CACHE_SIZE"><code>CL_DEVICE_<wbr>GLOBAL_<wbr>MEM_<wbr>CACHE_<wbr>SIZE</code></a></p>
 </li>
 <li>
-<p><a href="#CL_DEVICE_BUILT_IN_KERNELS"><code>CL_&#8203;DEVICE_&#8203;BUILT_&#8203;IN_&#8203;KERNELS</code></a></p>
+<p><a href="#CL_DEVICE_BUILT_IN_KERNELS"><code>CL_DEVICE_<wbr>BUILT_<wbr>IN_<wbr>KERNELS</code></a></p>
 </li>
 <li>
-<p><a href="#CL_DEVICE_PARENT_DEVICE"><code>CL_&#8203;DEVICE_&#8203;PARENT_&#8203;DEVICE</code></a></p>
+<p><a href="#CL_DEVICE_PARENT_DEVICE"><code>CL_DEVICE_<wbr>PARENT_<wbr>DEVICE</code></a></p>
 </li>
 <li>
-<p><a href="#CL_DEVICE_PARTITION_TYPE"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;TYPE</code></a></p>
+<p><a href="#CL_DEVICE_PARTITION_TYPE"><code>CL_DEVICE_<wbr>PARTITION_<wbr>TYPE</code></a></p>
 </li>
 <li>
-<p><a href="#CL_DEVICE_REFERENCE_COUNT"><code>CL_&#8203;DEVICE_&#8203;REFERENCE_&#8203;COUNT</code></a></p>
+<p><a href="#CL_DEVICE_REFERENCE_COUNT"><code>CL_DEVICE_<wbr>REFERENCE_<wbr>COUNT</code></a></p>
 </li>
 </ul>
 </div>
@@ -5834,111 +5806,109 @@
 </colgroup>
 <thead>
 <tr>
-<th class="tableblock halign-left valign-top"><strong>cl_device_info</strong></th>
+<th class="tableblock halign-left valign-top">Device Info</th>
 <th class="tableblock halign-left valign-top">Return Type</th>
 <th class="tableblock halign-left valign-top">Description</th>
 </tr>
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE"></a><a href="#CL_DEVICE_TYPE"><code>CL_&#8203;DEVICE_&#8203;TYPE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_type</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">The OpenCL device type.
-        Currently supported values are:</p>
-<p class="tableblock">        <a href="#CL_DEVICE_TYPE_CPU"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CPU</code></a>, <a href="#CL_DEVICE_TYPE_GPU"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;GPU</code></a>, <a href="#CL_DEVICE_TYPE_ACCELERATOR"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;ACCELERATOR</code></a>,
-        <a href="#CL_DEVICE_TYPE_DEFAULT"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;DEFAULT</code></a>, a combination of the above types, or
-        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a>.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_TYPE"></a><a href="#CL_DEVICE_TYPE"><code>CL_DEVICE_<wbr>TYPE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>type</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The type or types of the OpenCL device.</p>
+<p class="tableblock">        Please see the <a href="#device-types-table">Device Types</a> table
+        for supported device types and device type combinations.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_VENDOR_ID"></a><a href="#CL_DEVICE_VENDOR_ID"><code>CL_&#8203;DEVICE_&#8203;VENDOR_&#8203;ID</code></a><sup>4</sup></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_VENDOR_ID"></a><a href="#CL_DEVICE_VENDOR_ID"><code>CL_DEVICE_<wbr>VENDOR_<wbr>ID</code></a> <sup class="footnote">[<a id="_footnoteref_6" class="footnote" href="#_footnotedef_6" title="View footnote.">6</a>]</sup></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">A unique device vendor identifier.</p>
 <p class="tableblock">        If the vendor has a PCI vendor ID, the low 16 bits must contain that PCI
         vendor ID, and the remaining bits must be set to zero. Otherwise, the
         value returned must be a valid Khronos vendor ID represented by type
-        <code>cl_khronos_vendor_id</code>. Khronos vendor IDs are allocated starting at
+        <code>cl_khronos_<wbr>vendor_<wbr>id</code>. Khronos vendor IDs are allocated starting at
         0x10000, to distinguish them from the PCI vendor ID namespace.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_COMPUTE_UNITS"></a><a href="#CL_DEVICE_MAX_COMPUTE_UNITS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;COMPUTE_&#8203;UNITS</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_COMPUTE_UNITS"></a><a href="#CL_DEVICE_MAX_COMPUTE_UNITS"><code>CL_DEVICE_<wbr>MAX_<wbr>COMPUTE_<wbr>UNITS</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The number of parallel compute units on the OpenCL device.
         A work-group executes on a single compute unit.
         The minimum value is 1.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS"></a><a href="#CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;WORK_&#8203;ITEM_&#8203;DIMENSIONS</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS"></a><a href="#CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS"><code>CL_DEVICE_<wbr>MAX_<wbr>WORK_<wbr>ITEM_<wbr>DIMENSIONS</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Maximum dimensions that specify the global and local work-item IDs
         used by the data parallel execution model. (Refer to
         <a href="#clEnqueueNDRangeKernel"><strong>clEnqueueNDRangeKernel</strong></a>).
         The minimum value is 3 for devices that are not of type
-        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a>.</p></td>
+        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_WORK_ITEM_SIZES"></a><a href="#CL_DEVICE_MAX_WORK_ITEM_SIZES"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;WORK_&#8203;ITEM_&#8203;SIZES</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t []</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_WORK_ITEM_SIZES"></a><a href="#CL_DEVICE_MAX_WORK_ITEM_SIZES"><code>CL_DEVICE_<wbr>MAX_<wbr>WORK_<wbr>ITEM_<wbr>SIZES</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Maximum number of work-items that can be specified in each dimension
         of the work-group to <a href="#clEnqueueNDRangeKernel"><strong>clEnqueueNDRangeKernel</strong></a>.</p>
-<p class="tableblock">        Returns <em>n</em> size_t entries, where <em>n</em> is the value returned by the
-        query for <a href="#CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;WORK_&#8203;ITEM_&#8203;DIMENSIONS</code></a>.</p>
+<p class="tableblock">        Returns <em>n</em> <code>size_t</code> entries, where <em>n</em> is the value returned by the
+        query for <a href="#CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS"><code>CL_DEVICE_<wbr>MAX_<wbr>WORK_<wbr>ITEM_<wbr>DIMENSIONS</code></a>.</p>
 <p class="tableblock">        The minimum value is (1, 1, 1) for devices that are not of type
-        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a>.</p></td>
+        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_WORK_GROUP_SIZE"></a><a href="#CL_DEVICE_MAX_WORK_GROUP_SIZE"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;WORK_&#8203;GROUP_&#8203;SIZE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_WORK_GROUP_SIZE"></a><a href="#CL_DEVICE_MAX_WORK_GROUP_SIZE"><code>CL_DEVICE_<wbr>MAX_<wbr>WORK_<wbr>GROUP_<wbr>SIZE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Maximum number of work-items in a work-group that a device is
         capable of executing on a single compute unit, for any given
         kernel-instance running on the device. (Refer also to
-        <a href="#clEnqueueNDRangeKernel"><strong>clEnqueueNDRangeKernel</strong></a> and <a href="#CL_KERNEL_WORK_GROUP_SIZE"><code>CL_&#8203;KERNEL_&#8203;WORK_&#8203;GROUP_&#8203;SIZE</code></a> ).
+        <a href="#clEnqueueNDRangeKernel"><strong>clEnqueueNDRangeKernel</strong></a> and <a href="#CL_KERNEL_WORK_GROUP_SIZE"><code>CL_KERNEL_<wbr>WORK_<wbr>GROUP_<wbr>SIZE</code></a> ).
         The minimum value is 1.
         The returned value is an upper limit and will not necessarily
         maximize performance.
         This maximum may be larger than supported by a specific kernel
-        (refer to the <a href="#CL_KERNEL_WORK_GROUP_SIZE"><code>CL_&#8203;KERNEL_&#8203;WORK_&#8203;GROUP_&#8203;SIZE</code></a> query of <a href="#clGetKernelWorkGroupInfo"><strong>clGetKernelWorkGroupInfo</strong></a>).</p></td>
+        (refer to the <a href="#CL_KERNEL_WORK_GROUP_SIZE"><code>CL_KERNEL_<wbr>WORK_<wbr>GROUP_<wbr>SIZE</code></a> query of <a href="#clGetKernelWorkGroupInfo"><strong>clGetKernelWorkGroupInfo</strong></a>).</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;VECTOR_&#8203;WIDTH_&#8203;CHAR</code></a>  <br>
-  <a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;VECTOR_&#8203;WIDTH_&#8203;SHORT</code></a> <br>
-  <a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;VECTOR_&#8203;WIDTH_&#8203;INT</code></a>   <br>
-  <a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;VECTOR_&#8203;WIDTH_&#8203;LONG</code></a>  <br>
-  <a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;VECTOR_&#8203;WIDTH_&#8203;FLOAT</code></a> <br>
-  <a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;VECTOR_&#8203;WIDTH_&#8203;DOUBLE</code></a><br>
-  <a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;VECTOR_&#8203;WIDTH_&#8203;HALF</code></a></p>
-<p class="tableblock">  <a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;VECTOR_&#8203;WIDTH_&#8203;HALF</code></a> is <a href="#unified-spec">missing before</a>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>VECTOR_<wbr>WIDTH_<wbr>CHAR</code></a>  <br>
+  <a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>VECTOR_<wbr>WIDTH_<wbr>SHORT</code></a> <br>
+  <a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>VECTOR_<wbr>WIDTH_<wbr>INT</code></a>   <br>
+  <a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>VECTOR_<wbr>WIDTH_<wbr>LONG</code></a>  <br>
+  <a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>VECTOR_<wbr>WIDTH_<wbr>FLOAT</code></a> <br>
+  <a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>VECTOR_<wbr>WIDTH_<wbr>DOUBLE</code></a><br>
+  <a id="CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF"></a><a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>VECTOR_<wbr>WIDTH_<wbr>HALF</code></a></p>
+<p class="tableblock">  <a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>VECTOR_<wbr>WIDTH_<wbr>HALF</code></a> is <a href="#unified-spec">missing before</a>
   version 1.1.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Preferred native vector width size for built-in scalar types that
         can be put into vectors.
         The vector width is defined as the number of scalar elements that
         can be stored in the vector.</p>
 <p class="tableblock">        If double precision is not supported,
-        <a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;VECTOR_&#8203;WIDTH_&#8203;DOUBLE</code></a> must return 0.</p>
+        <a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>VECTOR_<wbr>WIDTH_<wbr>DOUBLE</code></a> must return 0.</p>
 <p class="tableblock">        If the <strong>cl_khr_fp16</strong> extension is not supported,
-        <a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;VECTOR_&#8203;WIDTH_&#8203;HALF</code></a> must return 0.</p></td>
+        <a href="#CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>VECTOR_<wbr>WIDTH_<wbr>HALF</code></a> must return 0.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR"><code>CL_&#8203;DEVICE_&#8203;NATIVE_&#8203;VECTOR_&#8203;WIDTH_&#8203;CHAR</code></a>  <br>
-  <a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT"><code>CL_&#8203;DEVICE_&#8203;NATIVE_&#8203;VECTOR_&#8203;WIDTH_&#8203;SHORT</code></a> <br>
-  <a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_INT"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_INT"><code>CL_&#8203;DEVICE_&#8203;NATIVE_&#8203;VECTOR_&#8203;WIDTH_&#8203;INT</code></a>   <br>
-  <a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG"><code>CL_&#8203;DEVICE_&#8203;NATIVE_&#8203;VECTOR_&#8203;WIDTH_&#8203;LONG</code></a>  <br>
-  <a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT"><code>CL_&#8203;DEVICE_&#8203;NATIVE_&#8203;VECTOR_&#8203;WIDTH_&#8203;FLOAT</code></a> <br>
-  <a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE"><code>CL_&#8203;DEVICE_&#8203;NATIVE_&#8203;VECTOR_&#8203;WIDTH_&#8203;DOUBLE</code></a><br>
-  <a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF"><code>CL_&#8203;DEVICE_&#8203;NATIVE_&#8203;VECTOR_&#8203;WIDTH_&#8203;HALF</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR"><code>CL_DEVICE_<wbr>NATIVE_<wbr>VECTOR_<wbr>WIDTH_<wbr>CHAR</code></a>  <br>
+  <a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT"><code>CL_DEVICE_<wbr>NATIVE_<wbr>VECTOR_<wbr>WIDTH_<wbr>SHORT</code></a> <br>
+  <a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_INT"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_INT"><code>CL_DEVICE_<wbr>NATIVE_<wbr>VECTOR_<wbr>WIDTH_<wbr>INT</code></a>   <br>
+  <a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG"><code>CL_DEVICE_<wbr>NATIVE_<wbr>VECTOR_<wbr>WIDTH_<wbr>LONG</code></a>  <br>
+  <a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT"><code>CL_DEVICE_<wbr>NATIVE_<wbr>VECTOR_<wbr>WIDTH_<wbr>FLOAT</code></a> <br>
+  <a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE"><code>CL_DEVICE_<wbr>NATIVE_<wbr>VECTOR_<wbr>WIDTH_<wbr>DOUBLE</code></a><br>
+  <a id="CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF"></a><a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF"><code>CL_DEVICE_<wbr>NATIVE_<wbr>VECTOR_<wbr>WIDTH_<wbr>HALF</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.1.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the native ISA vector width.
         The vector width is defined as the number of scalar elements that
         can be stored in the vector.</p>
 <p class="tableblock">        If double precision is not supported,
-        <a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE"><code>CL_&#8203;DEVICE_&#8203;NATIVE_&#8203;VECTOR_&#8203;WIDTH_&#8203;DOUBLE</code></a> must return 0.</p>
+        <a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE"><code>CL_DEVICE_<wbr>NATIVE_<wbr>VECTOR_<wbr>WIDTH_<wbr>DOUBLE</code></a> must return 0.</p>
 <p class="tableblock">        If the <strong>cl_khr_fp16</strong> extension is not supported,
-        <a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF"><code>CL_&#8203;DEVICE_&#8203;NATIVE_&#8203;VECTOR_&#8203;WIDTH_&#8203;HALF</code></a> must return 0.</p></td>
+        <a href="#CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF"><code>CL_DEVICE_<wbr>NATIVE_<wbr>VECTOR_<wbr>WIDTH_<wbr>HALF</code></a> must return 0.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_CLOCK_FREQUENCY"></a><a href="#CL_DEVICE_MAX_CLOCK_FREQUENCY"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;CLOCK_&#8203;FREQUENCY</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_CLOCK_FREQUENCY"></a><a href="#CL_DEVICE_MAX_CLOCK_FREQUENCY"><code>CL_DEVICE_<wbr>MAX_<wbr>CLOCK_<wbr>FREQUENCY</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Clock frequency of the device in MHz.
         The meaning of this value is implementation-defined.
         For devices with multiple clock domains, the clock frequency for any
@@ -5950,323 +5920,324 @@
         Note: This definition is <a href="#unified-spec">deprecated by</a> version 2.2.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_ADDRESS_BITS"></a><a href="#CL_DEVICE_ADDRESS_BITS"><code>CL_&#8203;DEVICE_&#8203;ADDRESS_&#8203;BITS</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_ADDRESS_BITS"></a><a href="#CL_DEVICE_ADDRESS_BITS"><code>CL_DEVICE_<wbr>ADDRESS_<wbr>BITS</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The default compute device address space size of the global address
         space specified as an unsigned integer value in bits.
         Currently supported values are 32 or 64 bits.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_MEM_ALLOC_SIZE"></a><a href="#CL_DEVICE_MAX_MEM_ALLOC_SIZE"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;MEM_&#8203;ALLOC_&#8203;SIZE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_ulong</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_MEM_ALLOC_SIZE"></a><a href="#CL_DEVICE_MAX_MEM_ALLOC_SIZE"><code>CL_DEVICE_<wbr>MAX_<wbr>MEM_<wbr>ALLOC_<wbr>SIZE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_ulong</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max size of memory object allocation in bytes.
         The minimum value is max(min(1024 × 1024 × 1024, 1/4<sup>th</sup>
-        of <a href="#CL_DEVICE_GLOBAL_MEM_SIZE"><code>CL_&#8203;DEVICE_&#8203;GLOBAL_&#8203;MEM_&#8203;SIZE</code></a>), 32 × 1024 × 1024) for
-        devices that are not of type <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a>.</p></td>
+        of <a href="#CL_DEVICE_GLOBAL_MEM_SIZE"><code>CL_DEVICE_<wbr>GLOBAL_<wbr>MEM_<wbr>SIZE</code></a>), 32 × 1024 × 1024) for
+        devices that are not of type <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE_SUPPORT"></a><a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if images are supported by the OpenCL device and <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE_SUPPORT"></a><a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if images are supported by the OpenCL device and <a href="#CL_FALSE"><code>CL_FALSE</code></a>
         otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_READ_IMAGE_ARGS"></a><a href="#CL_DEVICE_MAX_READ_IMAGE_ARGS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;READ_&#8203;IMAGE_&#8203;ARGS</code></a><sup>5</sup></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_READ_IMAGE_ARGS"></a><a href="#CL_DEVICE_MAX_READ_IMAGE_ARGS"><code>CL_DEVICE_<wbr>MAX_<wbr>READ_<wbr>IMAGE_<wbr>ARGS</code></a> <sup class="footnote">[<a id="_footnoteref_7" class="footnote" href="#_footnotedef_7" title="View footnote.">7</a>]</sup></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max number of image objects arguments of a kernel declared with the
         read_only qualifier.
-        The minimum value is 128 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>, the
+        The minimum value is 128 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>, the
         value is 0 otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_WRITE_IMAGE_ARGS"></a><a href="#CL_DEVICE_MAX_WRITE_IMAGE_ARGS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;WRITE_&#8203;IMAGE_&#8203;ARGS</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_WRITE_IMAGE_ARGS"></a><a href="#CL_DEVICE_MAX_WRITE_IMAGE_ARGS"><code>CL_DEVICE_<wbr>MAX_<wbr>WRITE_<wbr>IMAGE_<wbr>ARGS</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max number of image objects arguments of a kernel declared with the
         write_only qualifier.
-        The minimum value is 64 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>, the
+        The minimum value is 64 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>, the
         value is 0 otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_READ_WRITE_IMAGE_ARGS"></a><a href="#CL_DEVICE_MAX_READ_WRITE_IMAGE_ARGS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;READ_&#8203;WRITE_&#8203;IMAGE_&#8203;ARGS</code></a><sup>6</sup></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_READ_WRITE_IMAGE_ARGS"></a><a href="#CL_DEVICE_MAX_READ_WRITE_IMAGE_ARGS"><code>CL_DEVICE_<wbr>MAX_<wbr>READ_<wbr>WRITE_<wbr>IMAGE_<wbr>ARGS</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max number of image objects arguments of a kernel declared with the
         write_only or read_write qualifier.</p>
-<p class="tableblock">        Support for Read-Write Image arguments is required for an OpenCL 2.0, 2.1,
-        or 2.2 device if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>.</p>
-<p class="tableblock">        The minimum value is 64 if the device supports Read-Write Images arguments,
-        and must be 0 for devices that do not support Read-Write Images.</p></td>
+<p class="tableblock">        Support for read-write image arguments is required for an OpenCL 2.0, 2.1,
+        or 2.2 device if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>.</p>
+<p class="tableblock">        The minimum value is 64 if the device supports read-write images arguments,
+        and must be 0 for devices that do not support read-write images.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IL_VERSION"></a><a href="#CL_DEVICE_IL_VERSION"><code>CL_&#8203;DEVICE_&#8203;IL_&#8203;VERSION</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IL_VERSION"></a><a href="#CL_DEVICE_IL_VERSION"><code>CL_DEVICE_<wbr>IL_<wbr>VERSION</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.1.
 Also see extension <strong>cl_khr_il_program</strong>.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The intermediate languages that can be supported by
         <a href="#clCreateProgramWithIL"><strong>clCreateProgramWithIL</strong></a> for this device.
         Returns a space-separated list of IL version strings of the form
         &lt;IL_Prefix&gt;_&lt;Major_Version&gt;.&lt;Minor_Version&gt;.</p>
 <p class="tableblock">        For an OpenCL 2.1 or 2.2 device, SPIR-V is a required IL prefix.</p>
-<p class="tableblock">        If the device does not support Intermediate Language Programs, the
+<p class="tableblock">        If the device does not support intermediate language programs, the
         value must be <code>""</code> (an empty string).</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_ILS_WITH_VERSION"></a><a href="#CL_DEVICE_ILS_WITH_VERSION"><code>CL_&#8203;DEVICE_&#8203;ILS_&#8203;WITH_&#8203;VERSION</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_ILS_WITH_VERSION"></a><a href="#CL_DEVICE_ILS_WITH_VERSION"><code>CL_DEVICE_<wbr>ILS_<wbr>WITH_<wbr>VERSION</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.
 Also see extension <strong>cl_khr_il_program</strong>.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_name_version[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#cl_name_version"><code>cl_name_<wbr>version</code></a>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns an array of descriptions (name and version) for all supported
-        Intermediate Languages. Intermediate Languages with the same name may be
+        intermediate languages. Intermediate languages with the same name may be
         reported more than once but each name and major/minor version
         combination may only be reported once. The list of intermediate
         languages reported must match the list reported via
-        <a href="#CL_DEVICE_IL_VERSION"><code>CL_&#8203;DEVICE_&#8203;IL_&#8203;VERSION</code></a>.</p>
+        <a href="#CL_DEVICE_IL_VERSION"><code>CL_DEVICE_<wbr>IL_<wbr>VERSION</code></a>.</p>
 <p class="tableblock">        For an OpenCL 2.1 or 2.2 device, at least one version of SPIR-V must
         be reported.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE2D_MAX_WIDTH"></a><a href="#CL_DEVICE_IMAGE2D_MAX_WIDTH"><code>CL_&#8203;DEVICE_&#8203;IMAGE2D_&#8203;MAX_&#8203;WIDTH</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE2D_MAX_WIDTH"></a><a href="#CL_DEVICE_IMAGE2D_MAX_WIDTH"><code>CL_DEVICE_<wbr>IMAGE2D_<wbr>MAX_<wbr>WIDTH</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max width of 2D image or 1D image not created from a buffer object
         in pixels.</p>
-<p class="tableblock">        The minimum value is 16384 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>,
+<p class="tableblock">        The minimum value is 16384 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>,
         the value is 0 otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE2D_MAX_HEIGHT"></a><a href="#CL_DEVICE_IMAGE2D_MAX_HEIGHT"><code>CL_&#8203;DEVICE_&#8203;IMAGE2D_&#8203;MAX_&#8203;HEIGHT</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE2D_MAX_HEIGHT"></a><a href="#CL_DEVICE_IMAGE2D_MAX_HEIGHT"><code>CL_DEVICE_<wbr>IMAGE2D_<wbr>MAX_<wbr>HEIGHT</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max height of 2D image in pixels.</p>
-<p class="tableblock">        The minimum value is 16384 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>,
+<p class="tableblock">        The minimum value is 16384 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>,
         the value is 0 otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE3D_MAX_WIDTH"></a><a href="#CL_DEVICE_IMAGE3D_MAX_WIDTH"><code>CL_&#8203;DEVICE_&#8203;IMAGE3D_&#8203;MAX_&#8203;WIDTH</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE3D_MAX_WIDTH"></a><a href="#CL_DEVICE_IMAGE3D_MAX_WIDTH"><code>CL_DEVICE_<wbr>IMAGE3D_<wbr>MAX_<wbr>WIDTH</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max width of 3D image in pixels.</p>
-<p class="tableblock">        The minimum value is 2048 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>,
+<p class="tableblock">        The minimum value is 2048 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>,
         the value is 0 otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE3D_MAX_HEIGHT"></a><a href="#CL_DEVICE_IMAGE3D_MAX_HEIGHT"><code>CL_&#8203;DEVICE_&#8203;IMAGE3D_&#8203;MAX_&#8203;HEIGHT</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE3D_MAX_HEIGHT"></a><a href="#CL_DEVICE_IMAGE3D_MAX_HEIGHT"><code>CL_DEVICE_<wbr>IMAGE3D_<wbr>MAX_<wbr>HEIGHT</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max height of 3D image in pixels.</p>
-<p class="tableblock">        The minimum value is 2048 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>,
+<p class="tableblock">        The minimum value is 2048 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>,
         the value is 0 otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE3D_MAX_DEPTH"></a><a href="#CL_DEVICE_IMAGE3D_MAX_DEPTH"><code>CL_&#8203;DEVICE_&#8203;IMAGE3D_&#8203;MAX_&#8203;DEPTH</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE3D_MAX_DEPTH"></a><a href="#CL_DEVICE_IMAGE3D_MAX_DEPTH"><code>CL_DEVICE_<wbr>IMAGE3D_<wbr>MAX_<wbr>DEPTH</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max depth of 3D image in pixels.</p>
-<p class="tableblock">        The minimum value is 2048 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>,
+<p class="tableblock">        The minimum value is 2048 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>,
         the value is 0 otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE_MAX_BUFFER_SIZE"></a><a href="#CL_DEVICE_IMAGE_MAX_BUFFER_SIZE"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;MAX_&#8203;BUFFER_&#8203;SIZE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE_MAX_BUFFER_SIZE"></a><a href="#CL_DEVICE_IMAGE_MAX_BUFFER_SIZE"><code>CL_DEVICE_<wbr>IMAGE_<wbr>MAX_<wbr>BUFFER_<wbr>SIZE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max number of pixels for a 1D image created from a buffer object.</p>
-<p class="tableblock">        The minimum value is 65536 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>,
+<p class="tableblock">        The minimum value is 65536 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>,
         the value is 0 otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE_MAX_ARRAY_SIZE"></a><a href="#CL_DEVICE_IMAGE_MAX_ARRAY_SIZE"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;MAX_&#8203;ARRAY_&#8203;SIZE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE_MAX_ARRAY_SIZE"></a><a href="#CL_DEVICE_IMAGE_MAX_ARRAY_SIZE"><code>CL_DEVICE_<wbr>IMAGE_<wbr>MAX_<wbr>ARRAY_<wbr>SIZE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max number of images in a 1D or 2D image array.</p>
-<p class="tableblock">        The minimum value is 2048 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>,
+<p class="tableblock">        The minimum value is 2048 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>,
         the value is 0 otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_SAMPLERS"></a><a href="#CL_DEVICE_MAX_SAMPLERS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;SAMPLERS</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_SAMPLERS"></a><a href="#CL_DEVICE_MAX_SAMPLERS"><code>CL_DEVICE_<wbr>MAX_<wbr>SAMPLERS</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Maximum number of samplers that can be used in a kernel.</p>
-<p class="tableblock">        The minimum value is 16 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>,
+<p class="tableblock">        The minimum value is 16 if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>,
         the value is 0 otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE_PITCH_ALIGNMENT"></a><a href="#CL_DEVICE_IMAGE_PITCH_ALIGNMENT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;PITCH_&#8203;ALIGNMENT</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE_PITCH_ALIGNMENT"></a><a href="#CL_DEVICE_IMAGE_PITCH_ALIGNMENT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>PITCH_<wbr>ALIGNMENT</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">The row pitch alignment size in pixels for 2D Images Created From a
-        Buffer.
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The row pitch alignment size in pixels for 2D images created from a
+        buffer.
         The value returned must be a power of 2.</p>
-<p class="tableblock">        Support for 2D Images Created From a Buffer is required for an OpenCL 2.0, 2.1,
-        or 2.2 device if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>.</p>
-<p class="tableblock">        This value must be 0 for devices that do not support 2D Images Created from a Buffer.</p></td>
+<p class="tableblock">        Support for 2D images created from a buffer is required for an OpenCL 2.0, 2.1,
+        or 2.2 device if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>.</p>
+<p class="tableblock">        This value must be 0 for devices that do not support 2D images created from a buffer.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE_BASE_ADDRESS_ALIGNMENT"></a><a href="#CL_DEVICE_IMAGE_BASE_ADDRESS_ALIGNMENT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;BASE_&#8203;ADDRESS_&#8203;ALIGNMENT</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_IMAGE_BASE_ADDRESS_ALIGNMENT"></a><a href="#CL_DEVICE_IMAGE_BASE_ADDRESS_ALIGNMENT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>BASE_<wbr>ADDRESS_<wbr>ALIGNMENT</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This query specifies the minimum alignment in pixels of the host_ptr
-        specified to <a href="#clCreateBuffer"><strong>clCreateBuffer</strong></a> or <a href="#clCreateBufferWithProperties"><strong>clCreateBufferWithProperties</strong></a> when a 2D Image
-        is Created From a Buffer which was created using <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a>.
+        specified to <a href="#clCreateBuffer"><strong>clCreateBuffer</strong></a> or <a href="#clCreateBufferWithProperties"><strong>clCreateBufferWithProperties</strong></a> when a 2D image
+        is created from a buffer which was created using <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a>.
         The value returned must be a power of 2.</p>
-<p class="tableblock">        Support for 2D Images Created From a Buffer is required for an OpenCL 2.0, 2.1,
-        or 2.2 device if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>.</p>
-<p class="tableblock">        This value must be 0 for devices that do not support 2D Images Created from a Buffer.</p></td>
+<p class="tableblock">        Support for 2D images created from a buffer is required for an OpenCL 2.0, 2.1,
+        or 2.2 device if <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>.</p>
+<p class="tableblock">        This value must be 0 for devices that do not support 2D images created from a buffer.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_PIPE_ARGS"></a><a href="#CL_DEVICE_MAX_PIPE_ARGS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;PIPE_&#8203;ARGS</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_PIPE_ARGS"></a><a href="#CL_DEVICE_MAX_PIPE_ARGS"><code>CL_DEVICE_<wbr>MAX_<wbr>PIPE_<wbr>ARGS</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The maximum number of pipe objects that can be passed as arguments
         to a kernel.
-        The minimum value is 16 for devices supporting Pipes, and must be
-        0 for devices that do not support Pipes.</p></td>
+        The minimum value is 16 for devices supporting pipes, and must be
+        0 for devices that do not support pipes.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PIPE_MAX_ACTIVE_RESERVATIONS"></a><a href="#CL_DEVICE_PIPE_MAX_ACTIVE_RESERVATIONS"><code>CL_&#8203;DEVICE_&#8203;PIPE_&#8203;MAX_&#8203;ACTIVE_&#8203;RESERVATIONS</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PIPE_MAX_ACTIVE_RESERVATIONS"></a><a href="#CL_DEVICE_PIPE_MAX_ACTIVE_RESERVATIONS"><code>CL_DEVICE_<wbr>PIPE_<wbr>MAX_<wbr>ACTIVE_<wbr>RESERVATIONS</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The maximum number of reservations that can be active for a pipe per
         work-item in a kernel.
         A work-group reservation is counted as one reservation per
         work-item.
-        The minimum value is 1 for devices supporting Pipes, and must be
-        0 for devices that do not support Pipes.</p></td>
+        The minimum value is 1 for devices supporting pipes, and must be
+        0 for devices that do not support pipes.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PIPE_MAX_PACKET_SIZE"></a><a href="#CL_DEVICE_PIPE_MAX_PACKET_SIZE"><code>CL_&#8203;DEVICE_&#8203;PIPE_&#8203;MAX_&#8203;PACKET_&#8203;SIZE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PIPE_MAX_PACKET_SIZE"></a><a href="#CL_DEVICE_PIPE_MAX_PACKET_SIZE"><code>CL_DEVICE_<wbr>PIPE_<wbr>MAX_<wbr>PACKET_<wbr>SIZE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The maximum size of pipe packet in bytes.</p>
-<p class="tableblock">        Support for Pipes is required for an OpenCL 2.0, 2.1, or 2.2 device.
-        The minimum value is 1024 bytes if the device supports Pipes, and must be
-        0 for devices that do not support Pipes.</p></td>
+<p class="tableblock">        Support for pipes is required for an OpenCL 2.0, 2.1, or 2.2 device.
+        The minimum value is 1024 bytes if the device supports pipes, and must be
+        0 for devices that do not support pipes.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_PARAMETER_SIZE"></a><a href="#CL_DEVICE_MAX_PARAMETER_SIZE"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;PARAMETER_&#8203;SIZE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_PARAMETER_SIZE"></a><a href="#CL_DEVICE_MAX_PARAMETER_SIZE"><code>CL_DEVICE_<wbr>MAX_<wbr>PARAMETER_<wbr>SIZE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max size in bytes of all arguments that can be passed to a kernel.</p>
 <p class="tableblock">        The minimum value is 1024 for devices that are not of type
-        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a>.
+        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a>.
         For this minimum value, only a maximum of 128 arguments can be
         passed to a kernel</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MEM_BASE_ADDR_ALIGN"></a><a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_&#8203;DEVICE_&#8203;MEM_&#8203;BASE_&#8203;ADDR_&#8203;ALIGN</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MEM_BASE_ADDR_ALIGN"></a><a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_DEVICE_<wbr>MEM_<wbr>BASE_<wbr>ADDR_<wbr>ALIGN</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Alignment requirement (in bits) for sub-buffer offsets.
         The minimum value is the size (in bits) of the largest OpenCL
         built-in data type supported by the device (long16 in FULL profile,
         long16 or int16 in EMBEDDED profile) for devices that are not of
-        type <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a>.</p></td>
+        type <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MIN_DATA_TYPE_ALIGN_SIZE"></a><a href="#CL_DEVICE_MIN_DATA_TYPE_ALIGN_SIZE"><code>CL_&#8203;DEVICE_&#8203;MIN_&#8203;DATA_&#8203;TYPE_&#8203;ALIGN_&#8203;SIZE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MIN_DATA_TYPE_ALIGN_SIZE"></a><a href="#CL_DEVICE_MIN_DATA_TYPE_ALIGN_SIZE"><code>CL_DEVICE_<wbr>MIN_<wbr>DATA_<wbr>TYPE_<wbr>ALIGN_<wbr>SIZE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Deprecated by</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The minimum value is the size (in bytes) of the largest OpenCL data
         type supported by the device (<code>long16</code> in FULL profile, <code>long16</code> or
         <code>int16</code> in EMBEDDED profile).</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_SINGLE_FP_CONFIG"></a><a href="#CL_DEVICE_SINGLE_FP_CONFIG"><code>CL_&#8203;DEVICE_&#8203;SINGLE_&#8203;FP_&#8203;CONFIG</code></a><sup>7</sup></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_fp_config</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_SINGLE_FP_CONFIG"></a><a href="#CL_DEVICE_SINGLE_FP_CONFIG"><code>CL_DEVICE_<wbr>SINGLE_<wbr>FP_<wbr>CONFIG</code></a> <sup class="footnote" id="_footnote_native-rounding-modes">[<a id="_footnoteref_8" class="footnote" href="#_footnotedef_8" title="View footnote.">8</a>]</sup></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>fp_<wbr>config</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Describes single precision floating-point capability of the device.
         This is a bit-field that describes one or more of the following
         values:</p>
-<p class="tableblock">        <a id="CL_FP_DENORM"></a><a href="#CL_FP_DENORM"><code>CL_&#8203;FP_&#8203;DENORM</code></a> - denorms are supported</p>
-<p class="tableblock">        <a id="CL_FP_INF_NAN"></a><a href="#CL_FP_INF_NAN"><code>CL_&#8203;FP_&#8203;INF_&#8203;NAN</code></a> - INF and quiet NaNs are supported.</p>
-<p class="tableblock">        <a id="CL_FP_ROUND_TO_NEAREST"></a><a href="#CL_FP_ROUND_TO_NEAREST"><code>CL_&#8203;FP_&#8203;ROUND_&#8203;TO_&#8203;NEAREST</code></a>-- round to nearest even rounding mode
-        supported</p>
-<p class="tableblock">        <a id="CL_FP_ROUND_TO_ZERO"></a><a href="#CL_FP_ROUND_TO_ZERO"><code>CL_&#8203;FP_&#8203;ROUND_&#8203;TO_&#8203;ZERO</code></a> - round to zero rounding mode supported</p>
-<p class="tableblock">        <a id="CL_FP_ROUND_TO_INF"></a><a href="#CL_FP_ROUND_TO_INF"><code>CL_&#8203;FP_&#8203;ROUND_&#8203;TO_&#8203;INF</code></a> - round to positive and negative infinity
-        rounding modes supported</p>
-<p class="tableblock">        <a id="CL_FP_FMA"></a><a href="#CL_FP_FMA"><code>CL_&#8203;FP_&#8203;FMA</code></a> - IEEE754-2008 fused multiply-add is supported.</p>
-<p class="tableblock">        <a id="CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT"></a><a href="#CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT"><code>CL_&#8203;FP_&#8203;CORRECTLY_&#8203;ROUNDED_&#8203;DIVIDE_&#8203;SQRT</code></a> - divide and sqrt are correctly
-        rounded as defined by the IEEE754 specification.</p>
-<p class="tableblock">        <a id="CL_FP_SOFT_FLOAT"></a><a href="#CL_FP_SOFT_FLOAT"><code>CL_&#8203;FP_&#8203;SOFT_&#8203;FLOAT</code></a> - Basic floating-point operations (such as
-        addition, subtraction, multiplication) are implemented in software.</p>
+<p class="tableblock">        <a id="CL_FP_DENORM"></a><a href="#CL_FP_DENORM"><code>CL_FP_<wbr>DENORM</code></a> - denorms are supported<br>
+        <a id="CL_FP_INF_NAN"></a><a href="#CL_FP_INF_NAN"><code>CL_FP_<wbr>INF_<wbr>NAN</code></a> - INF and quiet NaNs are supported<br>
+        <a id="CL_FP_ROUND_TO_NEAREST"></a><a href="#CL_FP_ROUND_TO_NEAREST"><code>CL_FP_<wbr>ROUND_<wbr>TO_<wbr>NEAREST</code></a>-- round to nearest even rounding mode
+        supported<br>
+        <a id="CL_FP_ROUND_TO_ZERO"></a><a href="#CL_FP_ROUND_TO_ZERO"><code>CL_FP_<wbr>ROUND_<wbr>TO_<wbr>ZERO</code></a> - round to zero rounding mode supported<br>
+        <a id="CL_FP_ROUND_TO_INF"></a><a href="#CL_FP_ROUND_TO_INF"><code>CL_FP_<wbr>ROUND_<wbr>TO_<wbr>INF</code></a> - round to positive and negative infinity
+        rounding modes supported<br>
+        <a id="CL_FP_FMA"></a><a href="#CL_FP_FMA"><code>CL_FP_<wbr>FMA</code></a> - IEEE754-2008 fused multiply-add is supported<br>
+        <a id="CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT"></a><a href="#CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT"><code>CL_FP_<wbr>CORRECTLY_<wbr>ROUNDED_<wbr>DIVIDE_<wbr>SQRT</code></a> - divide and sqrt are correctly
+        rounded as defined by the IEEE754 specification<br>
+        <a id="CL_FP_SOFT_FLOAT"></a><a href="#CL_FP_SOFT_FLOAT"><code>CL_FP_<wbr>SOFT_<wbr>FLOAT</code></a> - Basic floating-point operations (such as
+        addition, subtraction, multiplication) are implemented in software</p>
 <p class="tableblock">        For the full profile, the mandated minimum floating-point capability
-        for devices that are not of type <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a> is:
-        <a href="#CL_FP_ROUND_TO_NEAREST"><code>CL_&#8203;FP_&#8203;ROUND_&#8203;TO_&#8203;NEAREST</code></a> | <a href="#CL_FP_INF_NAN"><code>CL_&#8203;FP_&#8203;INF_&#8203;NAN</code></a>.</p>
+        for devices that are not of type <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a> is:</p>
+<p class="tableblock">        <a href="#CL_FP_ROUND_TO_NEAREST"><code>CL_FP_<wbr>ROUND_<wbr>TO_<wbr>NEAREST</code></a> |<br>
+        <a href="#CL_FP_INF_NAN"><code>CL_FP_<wbr>INF_<wbr>NAN</code></a>.</p>
 <p class="tableblock">        For the embedded profile, see the
         <a href="#embedded-profile-single-fp-config-requirements">dedicated table</a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_DOUBLE_FP_CONFIG"></a><a href="#CL_DEVICE_DOUBLE_FP_CONFIG"><code>CL_&#8203;DEVICE_&#8203;DOUBLE_&#8203;FP_&#8203;CONFIG</code></a><sup>8</sup></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_DOUBLE_FP_CONFIG"></a><a href="#CL_DEVICE_DOUBLE_FP_CONFIG"><code>CL_DEVICE_<wbr>DOUBLE_<wbr>FP_<wbr>CONFIG</code></a> <sup class="footnoteref">[<a class="footnote" href="#_footnotedef_8" title="View footnote.">8</a>]</sup></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.
 Also see extension <strong>cl_khr_fp64</strong>.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_fp_config</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>fp_<wbr>config</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Describes double precision floating-point capability of the OpenCL
         device.
         This is a bit-field that describes one or more of the following
         values:</p>
-<p class="tableblock">        <a href="#CL_FP_DENORM"><code>CL_&#8203;FP_&#8203;DENORM</code></a> - denorms are supported</p>
-<p class="tableblock">        <a href="#CL_FP_INF_NAN"><code>CL_&#8203;FP_&#8203;INF_&#8203;NAN</code></a> - INF and NaNs are supported.</p>
-<p class="tableblock">        <a href="#CL_FP_ROUND_TO_NEAREST"><code>CL_&#8203;FP_&#8203;ROUND_&#8203;TO_&#8203;NEAREST</code></a> - round to nearest even rounding mode
-        supported.</p>
-<p class="tableblock">        <a href="#CL_FP_ROUND_TO_ZERO"><code>CL_&#8203;FP_&#8203;ROUND_&#8203;TO_&#8203;ZERO</code></a> - round to zero rounding mode supported.</p>
-<p class="tableblock">        <a href="#CL_FP_ROUND_TO_INF"><code>CL_&#8203;FP_&#8203;ROUND_&#8203;TO_&#8203;INF</code></a> - round to positive and negative infinity
-        rounding modes supported.</p>
-<p class="tableblock">        <a href="#CL_FP_FMA"><code>CL_&#8203;FP_&#8203;FMA</code></a> - IEEE754-2008 fused multiply-add is supported.</p>
-<p class="tableblock">        <a href="#CL_FP_SOFT_FLOAT"><code>CL_&#8203;FP_&#8203;SOFT_&#8203;FLOAT</code></a> - Basic floating-point operations (such as
-        addition, subtraction, multiplication) are implemented in software.</p>
+<p class="tableblock">        <a href="#CL_FP_DENORM"><code>CL_FP_<wbr>DENORM</code></a> - denorms are supported<br>
+        <a href="#CL_FP_INF_NAN"><code>CL_FP_<wbr>INF_<wbr>NAN</code></a> - INF and NaNs are supported<br>
+        <a href="#CL_FP_ROUND_TO_NEAREST"><code>CL_FP_<wbr>ROUND_<wbr>TO_<wbr>NEAREST</code></a> - round to nearest even rounding mode
+        supported<br>
+        <a href="#CL_FP_ROUND_TO_ZERO"><code>CL_FP_<wbr>ROUND_<wbr>TO_<wbr>ZERO</code></a> - round to zero rounding mode supported<br>
+        <a href="#CL_FP_ROUND_TO_INF"><code>CL_FP_<wbr>ROUND_<wbr>TO_<wbr>INF</code></a> - round to positive and negative infinity
+        rounding modes supported<br>
+        <a href="#CL_FP_FMA"><code>CL_FP_<wbr>FMA</code></a> - IEEE754-2008 fused multiply-add is supported<br>
+        <a href="#CL_FP_SOFT_FLOAT"><code>CL_FP_<wbr>SOFT_<wbr>FLOAT</code></a> - Basic floating-point operations (such as
+        addition, subtraction, multiplication) are implemented in software</p>
 <p class="tableblock">        Double precision is an optional feature so the mandated minimum
         double precision floating-point capability is 0.</p>
 <p class="tableblock">        If double precision is supported by the device, then the minimum
-        double precision floating-point capability must be:<br>
-        <a href="#CL_FP_FMA"><code>CL_&#8203;FP_&#8203;FMA</code></a> |<br>
-        <a href="#CL_FP_ROUND_TO_NEAREST"><code>CL_&#8203;FP_&#8203;ROUND_&#8203;TO_&#8203;NEAREST</code></a> |<br>
-        <a href="#CL_FP_INF_NAN"><code>CL_&#8203;FP_&#8203;INF_&#8203;NAN</code></a> |<br>
-        <a href="#CL_FP_DENORM"><code>CL_&#8203;FP_&#8203;DENORM</code></a>.</p></td>
+        double precision floating-point capability is:</p>
+<p class="tableblock">        <a href="#CL_FP_FMA"><code>CL_FP_<wbr>FMA</code></a> |<br>
+        <a href="#CL_FP_ROUND_TO_NEAREST"><code>CL_FP_<wbr>ROUND_<wbr>TO_<wbr>NEAREST</code></a> |<br>
+        <a href="#CL_FP_INF_NAN"><code>CL_FP_<wbr>INF_<wbr>NAN</code></a> |<br>
+        <a href="#CL_FP_DENORM"><code>CL_FP_<wbr>DENORM</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_GLOBAL_MEM_CACHE_TYPE"></a><a href="#CL_DEVICE_GLOBAL_MEM_CACHE_TYPE"><code>CL_&#8203;DEVICE_&#8203;GLOBAL_&#8203;MEM_&#8203;CACHE_&#8203;TYPE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_mem_cache_type</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_GLOBAL_MEM_CACHE_TYPE"></a><a href="#CL_DEVICE_GLOBAL_MEM_CACHE_TYPE"><code>CL_DEVICE_<wbr>GLOBAL_<wbr>MEM_<wbr>CACHE_<wbr>TYPE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>mem_<wbr>cache_<wbr>type</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Type of global memory cache supported.
-        Valid values are: <a href="#CL_NONE"><code>CL_&#8203;NONE</code></a>, <a id="CL_READ_ONLY_CACHE"></a><a href="#CL_READ_ONLY_CACHE"><code>CL_&#8203;READ_&#8203;ONLY_&#8203;CACHE</code></a>, and
-        <a id="CL_READ_WRITE_CACHE"></a><a href="#CL_READ_WRITE_CACHE"><code>CL_&#8203;READ_&#8203;WRITE_&#8203;CACHE</code></a>.</p></td>
+        Valid values are: <a href="#CL_NONE"><code>CL_NONE</code></a>, <a id="CL_READ_ONLY_CACHE"></a><a href="#CL_READ_ONLY_CACHE"><code>CL_READ_<wbr>ONLY_<wbr>CACHE</code></a>, and
+        <a id="CL_READ_WRITE_CACHE"></a><a href="#CL_READ_WRITE_CACHE"><code>CL_READ_<wbr>WRITE_<wbr>CACHE</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_GLOBAL_MEM_CACHELINE_SIZE"></a><a href="#CL_DEVICE_GLOBAL_MEM_CACHELINE_SIZE"><code>CL_&#8203;DEVICE_&#8203;GLOBAL_&#8203;MEM_&#8203;CACHELINE_&#8203;SIZE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_GLOBAL_MEM_CACHELINE_SIZE"></a><a href="#CL_DEVICE_GLOBAL_MEM_CACHELINE_SIZE"><code>CL_DEVICE_<wbr>GLOBAL_<wbr>MEM_<wbr>CACHELINE_<wbr>SIZE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Size of global memory cache line in bytes.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_GLOBAL_MEM_CACHE_SIZE"></a><a href="#CL_DEVICE_GLOBAL_MEM_CACHE_SIZE"><code>CL_&#8203;DEVICE_&#8203;GLOBAL_&#8203;MEM_&#8203;CACHE_&#8203;SIZE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_ulong</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_GLOBAL_MEM_CACHE_SIZE"></a><a href="#CL_DEVICE_GLOBAL_MEM_CACHE_SIZE"><code>CL_DEVICE_<wbr>GLOBAL_<wbr>MEM_<wbr>CACHE_<wbr>SIZE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_ulong</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Size of global memory cache in bytes.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_GLOBAL_MEM_SIZE"></a><a href="#CL_DEVICE_GLOBAL_MEM_SIZE"><code>CL_&#8203;DEVICE_&#8203;GLOBAL_&#8203;MEM_&#8203;SIZE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_ulong</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_GLOBAL_MEM_SIZE"></a><a href="#CL_DEVICE_GLOBAL_MEM_SIZE"><code>CL_DEVICE_<wbr>GLOBAL_<wbr>MEM_<wbr>SIZE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_ulong</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Size of global device memory in bytes.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE"></a><a href="#CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;CONSTANT_&#8203;BUFFER_&#8203;SIZE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_ulong</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE"></a><a href="#CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE"><code>CL_DEVICE_<wbr>MAX_<wbr>CONSTANT_<wbr>BUFFER_<wbr>SIZE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_ulong</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max size in bytes of a constant buffer allocation.
         The minimum value is 64 KB for devices that are not of type
-        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a>.</p></td>
+        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_CONSTANT_ARGS"></a><a href="#CL_DEVICE_MAX_CONSTANT_ARGS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;CONSTANT_&#8203;ARGS</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_CONSTANT_ARGS"></a><a href="#CL_DEVICE_MAX_CONSTANT_ARGS"><code>CL_DEVICE_<wbr>MAX_<wbr>CONSTANT_<wbr>ARGS</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Max number of arguments declared with the <code>__constant</code> qualifier
         in a kernel.
         The minimum value is 8 for devices that are not of type
-        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a>.</p></td>
+        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_GLOBAL_VARIABLE_SIZE"></a><a href="#CL_DEVICE_MAX_GLOBAL_VARIABLE_SIZE"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;GLOBAL_&#8203;VARIABLE_&#8203;SIZE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_GLOBAL_VARIABLE_SIZE"></a><a href="#CL_DEVICE_MAX_GLOBAL_VARIABLE_SIZE"><code>CL_DEVICE_<wbr>MAX_<wbr>GLOBAL_<wbr>VARIABLE_<wbr>SIZE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The maximum number of bytes of storage that may be allocated for any
         single variable in program scope or inside a function in an OpenCL
         kernel language declared in the global address space.</p>
-<p class="tableblock">        Support for Program Scope Global Variables is required for an OpenCL 2.0,
+<p class="tableblock">        Support for program scope global variables is required for an OpenCL 2.0,
         2.1, or 2.2 device.
-        The minimum value is 64 KB if the device supports Program Scope Global
-        Variables, and must be 0 for devices that do not support Program Scope
-        Global Variables.</p></td>
+        The minimum value is 64 KB if the device supports program scope global
+        variables, and must be 0 for devices that do not support program scope
+        global variables.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_GLOBAL_VARIABLE_PREFERRED_TOTAL_SIZE"></a><a href="#CL_DEVICE_GLOBAL_VARIABLE_PREFERRED_TOTAL_SIZE"><code>CL_&#8203;DEVICE_&#8203;GLOBAL_&#8203;VARIABLE_&#8203;PREFERRED_&#8203;TOTAL_&#8203;SIZE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_GLOBAL_VARIABLE_PREFERRED_TOTAL_SIZE"></a><a href="#CL_DEVICE_GLOBAL_VARIABLE_PREFERRED_TOTAL_SIZE"><code>CL_DEVICE_<wbr>GLOBAL_<wbr>VARIABLE_<wbr>PREFERRED_<wbr>TOTAL_<wbr>SIZE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Maximum preferred total size, in bytes, of all program variables in
         the global address space.
         This is a performance hint.
@@ -6276,200 +6247,200 @@
         The minimum value is 0.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_LOCAL_MEM_TYPE"></a><a href="#CL_DEVICE_LOCAL_MEM_TYPE"><code>CL_&#8203;DEVICE_&#8203;LOCAL_&#8203;MEM_&#8203;TYPE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_local_mem_type</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_LOCAL_MEM_TYPE"></a><a href="#CL_DEVICE_LOCAL_MEM_TYPE"><code>CL_DEVICE_<wbr>LOCAL_<wbr>MEM_<wbr>TYPE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>local_<wbr>mem_<wbr>type</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Type of local memory supported.
-        This can be set to <a id="CL_LOCAL"></a><a href="#CL_LOCAL"><code>CL_&#8203;LOCAL</code></a> implying dedicated local memory storage
-        such as SRAM , or <a id="CL_GLOBAL"></a><a href="#CL_GLOBAL"><code>CL_&#8203;GLOBAL</code></a>.</p>
-<p class="tableblock">        For custom devices, <a href="#CL_NONE"><code>CL_&#8203;NONE</code></a> can also be returned indicating no local
+        This can be set to <a id="CL_LOCAL"></a><a href="#CL_LOCAL"><code>CL_LOCAL</code></a> implying dedicated local memory storage
+        such as SRAM , or <a id="CL_GLOBAL"></a><a href="#CL_GLOBAL"><code>CL_GLOBAL</code></a>.</p>
+<p class="tableblock">        For custom devices, <a href="#CL_NONE"><code>CL_NONE</code></a> can also be returned indicating no local
         memory support.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_LOCAL_MEM_SIZE"></a><a href="#CL_DEVICE_LOCAL_MEM_SIZE"><code>CL_&#8203;DEVICE_&#8203;LOCAL_&#8203;MEM_&#8203;SIZE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_ulong</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_LOCAL_MEM_SIZE"></a><a href="#CL_DEVICE_LOCAL_MEM_SIZE"><code>CL_DEVICE_<wbr>LOCAL_<wbr>MEM_<wbr>SIZE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_ulong</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Size of local memory region in bytes.
         The minimum value is 32 KB for devices that are not of type
-        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_&#8203;DEVICE_&#8203;TYPE_&#8203;CUSTOM</code></a>.</p></td>
+        <a href="#CL_DEVICE_TYPE_CUSTOM"><code>CL_DEVICE_<wbr>TYPE_<wbr>CUSTOM</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_ERROR_CORRECTION_SUPPORT"></a><a href="#CL_DEVICE_ERROR_CORRECTION_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;ERROR_&#8203;CORRECTION_&#8203;SUPPORT</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if the device implements error correction for all
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_ERROR_CORRECTION_SUPPORT"></a><a href="#CL_DEVICE_ERROR_CORRECTION_SUPPORT"><code>CL_DEVICE_<wbr>ERROR_<wbr>CORRECTION_<wbr>SUPPORT</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if the device implements error correction for all
         accesses to compute device memory (global and constant).
-        Is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> if the device does not implement such error correction.</p></td>
+        Is <a href="#CL_FALSE"><code>CL_FALSE</code></a> if the device does not implement such error correction.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_HOST_UNIFIED_MEMORY"></a><a href="#CL_DEVICE_HOST_UNIFIED_MEMORY"><code>CL_&#8203;DEVICE_&#8203;HOST_&#8203;UNIFIED_&#8203;MEMORY</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_HOST_UNIFIED_MEMORY"></a><a href="#CL_DEVICE_HOST_UNIFIED_MEMORY"><code>CL_DEVICE_<wbr>HOST_<wbr>UNIFIED_<wbr>MEMORY</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.1 and <a href="#unified-spec">deprecated by</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if the device and the host have a unified memory subsystem
-        and is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> otherwise.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if the device and the host have a unified memory subsystem
+        and is <a href="#CL_FALSE"><code>CL_FALSE</code></a> otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PROFILING_TIMER_RESOLUTION"></a><a href="#CL_DEVICE_PROFILING_TIMER_RESOLUTION"><code>CL_&#8203;DEVICE_&#8203;PROFILING_&#8203;TIMER_&#8203;RESOLUTION</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PROFILING_TIMER_RESOLUTION"></a><a href="#CL_DEVICE_PROFILING_TIMER_RESOLUTION"><code>CL_DEVICE_<wbr>PROFILING_<wbr>TIMER_<wbr>RESOLUTION</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Describes the resolution of device timer.
         This is measured in nanoseconds.
         Refer to <a href="#profiling-operations">Profiling Operations</a> for details.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_ENDIAN_LITTLE"></a><a href="#CL_DEVICE_ENDIAN_LITTLE"><code>CL_&#8203;DEVICE_&#8203;ENDIAN_&#8203;LITTLE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if the OpenCL device is a little endian device and
-        <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> otherwise</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_ENDIAN_LITTLE"></a><a href="#CL_DEVICE_ENDIAN_LITTLE"><code>CL_DEVICE_<wbr>ENDIAN_<wbr>LITTLE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if the OpenCL device is a little endian device and
+        <a href="#CL_FALSE"><code>CL_FALSE</code></a> otherwise</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_AVAILABLE"></a><a href="#CL_DEVICE_AVAILABLE"><code>CL_&#8203;DEVICE_&#8203;AVAILABLE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if the device is available and <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> otherwise.
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_AVAILABLE"></a><a href="#CL_DEVICE_AVAILABLE"><code>CL_DEVICE_<wbr>AVAILABLE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if the device is available and <a href="#CL_FALSE"><code>CL_FALSE</code></a> otherwise.
         A device is considered to be available if the device can be expected
         to successfully execute commands enqueued to the device.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_COMPILER_AVAILABLE"></a><a href="#CL_DEVICE_COMPILER_AVAILABLE"><code>CL_&#8203;DEVICE_&#8203;COMPILER_&#8203;AVAILABLE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> if the implementation does not have a compiler available
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_COMPILER_AVAILABLE"></a><a href="#CL_DEVICE_COMPILER_AVAILABLE"><code>CL_DEVICE_<wbr>COMPILER_<wbr>AVAILABLE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_FALSE"><code>CL_FALSE</code></a> if the implementation does not have a compiler available
         to compile the program source.</p>
-<p class="tableblock">        Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if the compiler is available.
-        This can be <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> for the embedded platform profile only.</p></td>
+<p class="tableblock">        Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if the compiler is available.
+        This can be <a href="#CL_FALSE"><code>CL_FALSE</code></a> for the embedded platform profile only.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_LINKER_AVAILABLE"></a><a href="#CL_DEVICE_LINKER_AVAILABLE"><code>CL_&#8203;DEVICE_&#8203;LINKER_&#8203;AVAILABLE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_LINKER_AVAILABLE"></a><a href="#CL_DEVICE_LINKER_AVAILABLE"><code>CL_DEVICE_<wbr>LINKER_<wbr>AVAILABLE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> if the implementation does not have a linker available.
-        Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if the linker is available.</p>
-<p class="tableblock">        This can be <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> for the embedded platform profile only.</p>
-<p class="tableblock">        This must be <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if <a href="#CL_DEVICE_COMPILER_AVAILABLE"><code>CL_&#8203;DEVICE_&#8203;COMPILER_&#8203;AVAILABLE</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_FALSE"><code>CL_FALSE</code></a> if the implementation does not have a linker available.
+        Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if the linker is available.</p>
+<p class="tableblock">        This can be <a href="#CL_FALSE"><code>CL_FALSE</code></a> for the embedded platform profile only.</p>
+<p class="tableblock">        This must be <a href="#CL_TRUE"><code>CL_TRUE</code></a> if <a href="#CL_DEVICE_COMPILER_AVAILABLE"><code>CL_DEVICE_<wbr>COMPILER_<wbr>AVAILABLE</code></a> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_EXECUTION_CAPABILITIES"></a><a href="#CL_DEVICE_EXECUTION_CAPABILITIES"><code>CL_&#8203;DEVICE_&#8203;EXECUTION_&#8203;CAPABILITIES</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_exec_capabilities</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_EXECUTION_CAPABILITIES"></a><a href="#CL_DEVICE_EXECUTION_CAPABILITIES"><code>CL_DEVICE_<wbr>EXECUTION_<wbr>CAPABILITIES</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>exec_<wbr>capabilities</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Describes the execution capabilities of the device.
         This is a bit-field that describes one or more of the following
         values:</p>
-<p class="tableblock">        <a id="CL_EXEC_KERNEL"></a><a href="#CL_EXEC_KERNEL"><code>CL_&#8203;EXEC_&#8203;KERNEL</code></a> - The OpenCL device can execute OpenCL kernels.</p>
-<p class="tableblock">        <a id="CL_EXEC_NATIVE_KERNEL"></a><a href="#CL_EXEC_NATIVE_KERNEL"><code>CL_&#8203;EXEC_&#8203;NATIVE_&#8203;KERNEL</code></a> - The OpenCL device can execute native
+<p class="tableblock">        <a id="CL_EXEC_KERNEL"></a><a href="#CL_EXEC_KERNEL"><code>CL_EXEC_<wbr>KERNEL</code></a> - The OpenCL device can execute OpenCL kernels.<br>
+        <a id="CL_EXEC_NATIVE_KERNEL"></a><a href="#CL_EXEC_NATIVE_KERNEL"><code>CL_EXEC_<wbr>NATIVE_<wbr>KERNEL</code></a> - The OpenCL device can execute native
         kernels.</p>
-<p class="tableblock">        The mandated minimum capability is: <a href="#CL_EXEC_KERNEL"><code>CL_&#8203;EXEC_&#8203;KERNEL</code></a>.</p></td>
+<p class="tableblock">        The mandated minimum capability is: <a href="#CL_EXEC_KERNEL"><code>CL_EXEC_<wbr>KERNEL</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_QUEUE_PROPERTIES"></a><a href="#CL_DEVICE_QUEUE_PROPERTIES"><code>CL_&#8203;DEVICE_&#8203;QUEUE_&#8203;PROPERTIES</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_QUEUE_PROPERTIES"></a><a href="#CL_DEVICE_QUEUE_PROPERTIES"><code>CL_DEVICE_<wbr>QUEUE_<wbr>PROPERTIES</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Deprecated by</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_command_queue_properties</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">See description of <a href="#CL_DEVICE_QUEUE_ON_HOST_PROPERTIES"><code>CL_&#8203;DEVICE_&#8203;QUEUE_&#8203;ON_&#8203;HOST_&#8203;PROPERTIES</code></a>.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_command_<wbr>queue_<wbr>properties</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">See description of <a href="#CL_DEVICE_QUEUE_ON_HOST_PROPERTIES"><code>CL_DEVICE_<wbr>QUEUE_<wbr>ON_<wbr>HOST_<wbr>PROPERTIES</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_QUEUE_ON_HOST_PROPERTIES"></a><a href="#CL_DEVICE_QUEUE_ON_HOST_PROPERTIES"><code>CL_&#8203;DEVICE_&#8203;QUEUE_&#8203;ON_&#8203;HOST_&#8203;PROPERTIES</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_QUEUE_ON_HOST_PROPERTIES"></a><a href="#CL_DEVICE_QUEUE_ON_HOST_PROPERTIES"><code>CL_DEVICE_<wbr>QUEUE_<wbr>ON_<wbr>HOST_<wbr>PROPERTIES</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_command_queue_properties</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_command_<wbr>queue_<wbr>properties</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Describes the on host command-queue properties supported by the
         device.
         This is a bit-field that describes one or more of the following
         values:</p>
-<p class="tableblock">        <a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_&#8203;QUEUE_&#8203;OUT_&#8203;OF_&#8203;ORDER_&#8203;EXEC_&#8203;MODE_&#8203;ENABLE</code></a><br>
-        <a href="#CL_QUEUE_PROFILING_ENABLE"><code>CL_&#8203;QUEUE_&#8203;PROFILING_&#8203;ENABLE</code></a></p>
+<p class="tableblock">        <a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_QUEUE_<wbr>OUT_<wbr>OF_<wbr>ORDER_<wbr>EXEC_<wbr>MODE_<wbr>ENABLE</code></a><br>
+        <a href="#CL_QUEUE_PROFILING_ENABLE"><code>CL_QUEUE_<wbr>PROFILING_<wbr>ENABLE</code></a></p>
 <p class="tableblock">        These properties are described in the <a href="#queue-properties-table">Queue Properties</a> table.</p>
-<p class="tableblock">        The mandated minimum capability is: <a href="#CL_QUEUE_PROFILING_ENABLE"><code>CL_&#8203;QUEUE_&#8203;PROFILING_&#8203;ENABLE</code></a>.</p></td>
+<p class="tableblock">        The mandated minimum capability is: <a href="#CL_QUEUE_PROFILING_ENABLE"><code>CL_QUEUE_<wbr>PROFILING_<wbr>ENABLE</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_QUEUE_ON_DEVICE_PROPERTIES"></a><a href="#CL_DEVICE_QUEUE_ON_DEVICE_PROPERTIES"><code>CL_&#8203;DEVICE_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE_&#8203;PROPERTIES</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_QUEUE_ON_DEVICE_PROPERTIES"></a><a href="#CL_DEVICE_QUEUE_ON_DEVICE_PROPERTIES"><code>CL_DEVICE_<wbr>QUEUE_<wbr>ON_<wbr>DEVICE_<wbr>PROPERTIES</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_command_queue_properties</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_command_<wbr>queue_<wbr>properties</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Describes the on device command-queue properties supported by the
         device.
         This is a bit-field that describes one or more of the following
         values:</p>
-<p class="tableblock">        <a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_&#8203;QUEUE_&#8203;OUT_&#8203;OF_&#8203;ORDER_&#8203;EXEC_&#8203;MODE_&#8203;ENABLE</code></a><br>
-        <a href="#CL_QUEUE_PROFILING_ENABLE"><code>CL_&#8203;QUEUE_&#8203;PROFILING_&#8203;ENABLE</code></a></p>
+<p class="tableblock">        <a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_QUEUE_<wbr>OUT_<wbr>OF_<wbr>ORDER_<wbr>EXEC_<wbr>MODE_<wbr>ENABLE</code></a><br>
+        <a href="#CL_QUEUE_PROFILING_ENABLE"><code>CL_QUEUE_<wbr>PROFILING_<wbr>ENABLE</code></a></p>
 <p class="tableblock">        These properties are described in the <a href="#queue-properties-table">Queue Properties</a> table.</p>
-<p class="tableblock">        Support for On-Device Queues is required for an OpenCL 2.0, 2.1, or 2.2 device.
-        When On-Device Queues are supported, the mandated minimum capability is:</p>
-<p class="tableblock">        <a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_&#8203;QUEUE_&#8203;OUT_&#8203;OF_&#8203;ORDER_&#8203;EXEC_&#8203;MODE_&#8203;ENABLE</code></a> |<br>
-        <a href="#CL_QUEUE_PROFILING_ENABLE"><code>CL_&#8203;QUEUE_&#8203;PROFILING_&#8203;ENABLE</code></a>.</p>
-<p class="tableblock">        Must be 0 for devices that do not support On-Device Queues.</p></td>
+<p class="tableblock">        Support for on-device queues is required for an OpenCL 2.0, 2.1, or 2.2 device.
+        When on-device queues are supported, the mandated minimum capability is:</p>
+<p class="tableblock">        <a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_QUEUE_<wbr>OUT_<wbr>OF_<wbr>ORDER_<wbr>EXEC_<wbr>MODE_<wbr>ENABLE</code></a> |<br>
+        <a href="#CL_QUEUE_PROFILING_ENABLE"><code>CL_QUEUE_<wbr>PROFILING_<wbr>ENABLE</code></a>.</p>
+<p class="tableblock">        Must be 0 for devices that do not support on-device queues.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE"></a><a href="#CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE"><code>CL_&#8203;DEVICE_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE_&#8203;PREFERRED_&#8203;SIZE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE"></a><a href="#CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE"><code>CL_DEVICE_<wbr>QUEUE_<wbr>ON_<wbr>DEVICE_<wbr>PREFERRED_<wbr>SIZE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The preferred size of the device queue, in bytes.
         Applications should use this size for the device queue to ensure
         good performance.</p>
-<p class="tableblock">        The minimum value is 16 KB for devices supporting On-Device Queues,
-        and must be 0 for devices that do not support On-Device Queues.</p></td>
+<p class="tableblock">        The minimum value is 16 KB for devices supporting on-device queues,
+        and must be 0 for devices that do not support on-device queues.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_QUEUE_ON_DEVICE_MAX_SIZE"></a><a href="#CL_DEVICE_QUEUE_ON_DEVICE_MAX_SIZE"><code>CL_&#8203;DEVICE_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE_&#8203;MAX_&#8203;SIZE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_QUEUE_ON_DEVICE_MAX_SIZE"></a><a href="#CL_DEVICE_QUEUE_ON_DEVICE_MAX_SIZE"><code>CL_DEVICE_<wbr>QUEUE_<wbr>ON_<wbr>DEVICE_<wbr>MAX_<wbr>SIZE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The maximum size of the device queue in bytes.</p>
 <p class="tableblock">        The minimum value is 256 KB for the full profile and 64 KB for the
-        embedded profile for devices supporting On-Device Queues,
-        and must be 0 for devices that do not support On-Device Queues.</p></td>
+        embedded profile for devices supporting on-device queues,
+        and must be 0 for devices that do not support on-device queues.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_ON_DEVICE_QUEUES"></a><a href="#CL_DEVICE_MAX_ON_DEVICE_QUEUES"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;ON_&#8203;DEVICE_&#8203;QUEUES</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_ON_DEVICE_QUEUES"></a><a href="#CL_DEVICE_MAX_ON_DEVICE_QUEUES"><code>CL_DEVICE_<wbr>MAX_<wbr>ON_<wbr>DEVICE_<wbr>QUEUES</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The maximum number of device queues that can be created for this
         device in a single context.</p>
-<p class="tableblock">        The minimum value is 1 for devices supporting On-Device Queues,
-        and must be 0 for devices that do not support On-Device Queues.</p></td>
+<p class="tableblock">        The minimum value is 1 for devices supporting on-device queues,
+        and must be 0 for devices that do not support on-device queues.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_ON_DEVICE_EVENTS"></a><a href="#CL_DEVICE_MAX_ON_DEVICE_EVENTS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;ON_&#8203;DEVICE_&#8203;EVENTS</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_ON_DEVICE_EVENTS"></a><a href="#CL_DEVICE_MAX_ON_DEVICE_EVENTS"><code>CL_DEVICE_<wbr>MAX_<wbr>ON_<wbr>DEVICE_<wbr>EVENTS</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The maximum number of events in use by a device queue.
         These refer to events returned by the <code>enqueue_</code> built-in functions
         to a device queue or user events returned by the <code>create_user_event</code>
         built-in function that have not been released.</p>
-<p class="tableblock">        The minimum value is 1024 for devices supporting On-Device Queues,
-        and must be 0 for devices that do not support On-Device Queues.</p></td>
+<p class="tableblock">        The minimum value is 1024 for devices supporting on-device queues,
+        and must be 0 for devices that do not support on-device queues.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_BUILT_IN_KERNELS"></a><a href="#CL_DEVICE_BUILT_IN_KERNELS"><code>CL_&#8203;DEVICE_&#8203;BUILT_&#8203;IN_&#8203;KERNELS</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_BUILT_IN_KERNELS"></a><a href="#CL_DEVICE_BUILT_IN_KERNELS"><code>CL_DEVICE_<wbr>BUILT_<wbr>IN_<wbr>KERNELS</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">A semi-colon separated list of built-in kernels supported by the
         device.
         An empty string is returned if no built-in kernels are supported by
         the device.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_BUILT_IN_KERNELS_WITH_VERSION"></a><a href="#CL_DEVICE_BUILT_IN_KERNELS_WITH_VERSION"><code>CL_&#8203;DEVICE_&#8203;BUILT_&#8203;IN_&#8203;KERNELS_&#8203;WITH_&#8203;VERSION</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_BUILT_IN_KERNELS_WITH_VERSION"></a><a href="#CL_DEVICE_BUILT_IN_KERNELS_WITH_VERSION"><code>CL_DEVICE_<wbr>BUILT_<wbr>IN_<wbr>KERNELS_<wbr>WITH_<wbr>VERSION</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_name_version[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#cl_name_version"><code>cl_name_<wbr>version</code></a>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns an array of descriptions for the built-in kernels supported by
         the device. Each built-in kernel may only be reported once. The list of
         reported kernels must match the list returned via
-        <a href="#CL_DEVICE_BUILT_IN_KERNELS"><code>CL_&#8203;DEVICE_&#8203;BUILT_&#8203;IN_&#8203;KERNELS</code></a>.</p></td>
+        <a href="#CL_DEVICE_BUILT_IN_KERNELS"><code>CL_DEVICE_<wbr>BUILT_<wbr>IN_<wbr>KERNELS</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PLATFORM"></a><a href="#CL_DEVICE_PLATFORM"><code>CL_&#8203;DEVICE_&#8203;PLATFORM</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_platform_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PLATFORM"></a><a href="#CL_DEVICE_PLATFORM"><code>CL_DEVICE_<wbr>PLATFORM</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_platform_<wbr>id</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">The platform associated with this device.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_NAME"></a><a href="#CL_DEVICE_NAME"><code>CL_&#8203;DEVICE_&#8203;NAME</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_NAME"></a><a href="#CL_DEVICE_NAME"><code>CL_DEVICE_<wbr>NAME</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Device name string.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_VENDOR"></a><a href="#CL_DEVICE_VENDOR"><code>CL_&#8203;DEVICE_&#8203;VENDOR</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_VENDOR"></a><a href="#CL_DEVICE_VENDOR"><code>CL_DEVICE_<wbr>VENDOR</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Vendor name string.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DRIVER_VERSION"></a><a href="#CL_DRIVER_VERSION"><code>CL_&#8203;DRIVER_&#8203;VERSION</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DRIVER_VERSION"></a><a href="#CL_DRIVER_VERSION"><code>CL_DRIVER_<wbr>VERSION</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">OpenCL software driver version string.
         Follows a vendor-specific format.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PROFILE"></a><a href="#CL_DEVICE_PROFILE"><code>CL_&#8203;DEVICE_&#8203;PROFILE</code></a><sup>9</sup></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PROFILE"></a><a href="#CL_DEVICE_PROFILE"><code>CL_DEVICE_<wbr>PROFILE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">OpenCL profile string.
         Returns the profile name supported by the device.
         The profile name returned can be one of the following strings:</p>
@@ -6480,8 +6451,8 @@
         profile.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_VERSION"></a><a href="#CL_DEVICE_VERSION"><code>CL_&#8203;DEVICE_&#8203;VERSION</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_VERSION"></a><a href="#CL_DEVICE_VERSION"><code>CL_DEVICE_<wbr>VERSION</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">OpenCL version string.
         Returns the OpenCL version supported by the device. This version
         string has the following format:</p>
@@ -6491,17 +6462,17 @@
         1.1, 1.2, 2.0, 2.1, 2.2, or 3.0.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_NUMERIC_VERSION"></a><a href="#CL_DEVICE_NUMERIC_VERSION"><code>CL_&#8203;DEVICE_&#8203;NUMERIC_&#8203;VERSION</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_NUMERIC_VERSION"></a><a href="#CL_DEVICE_NUMERIC_VERSION"><code>CL_DEVICE_<wbr>NUMERIC_<wbr>VERSION</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_version</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_version</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the detailed (major, minor, patch) version supported by the
         device. The major and minor version numbers returned must match
-        those returned via <a href="#CL_DEVICE_VERSION"><code>CL_&#8203;DEVICE_&#8203;VERSION</code></a>.</p></td>
+        those returned via <a href="#CL_DEVICE_VERSION"><code>CL_DEVICE_<wbr>VERSION</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_OPENCL_C_VERSION"></a><a href="#CL_DEVICE_OPENCL_C_VERSION"><code>CL_&#8203;DEVICE_&#8203;OPENCL_&#8203;C_&#8203;VERSION</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_OPENCL_C_VERSION"></a><a href="#CL_DEVICE_OPENCL_C_VERSION"><code>CL_DEVICE_<wbr>OPENCL_<wbr>C_<wbr>VERSION</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.1 and <a href="#unified-spec">deprecated by</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the highest fully backwards compatible OpenCL C version
         supported by the compiler for the device.
         For devices supporting compilation from OpenCL C source, this will
@@ -6521,23 +6492,23 @@
 <p class="tableblock">        Support for either OpenCL C 1.0 or OpenCL C 1.1 is required for
         an OpenCL 1.0 device.</p>
 <p class="tableblock">        For devices that do not support compilation from OpenCL C source,
-        such as when <a href="#CL_DEVICE_COMPILER_AVAILABLE"><code>CL_&#8203;DEVICE_&#8203;COMPILER_&#8203;AVAILABLE</code></a> is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a>, this
+        such as when <a href="#CL_DEVICE_COMPILER_AVAILABLE"><code>CL_DEVICE_<wbr>COMPILER_<wbr>AVAILABLE</code></a> is <a href="#CL_FALSE"><code>CL_FALSE</code></a>, this
         query may return an empty string.</p>
-<p class="tableblock">        This query has been superseded by the <a href="#CL_DEVICE_OPENCL_C_ALL_VERSIONS"><code>CL_&#8203;DEVICE_&#8203;OPENCL_&#8203;C_&#8203;ALL_&#8203;VERSIONS</code></a>
+<p class="tableblock">        This query has been superseded by the <a href="#CL_DEVICE_OPENCL_C_ALL_VERSIONS"><code>CL_DEVICE_<wbr>OPENCL_<wbr>C_<wbr>ALL_<wbr>VERSIONS</code></a>
         query, which returns a set of OpenCL C versions supported by a
         device.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_OPENCL_C_ALL_VERSIONS"></a><a href="#CL_DEVICE_OPENCL_C_ALL_VERSIONS"><code>CL_&#8203;DEVICE_&#8203;OPENCL_&#8203;C_&#8203;ALL_&#8203;VERSIONS</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_OPENCL_C_ALL_VERSIONS"></a><a href="#CL_DEVICE_OPENCL_C_ALL_VERSIONS"><code>CL_DEVICE_<wbr>OPENCL_<wbr>C_<wbr>ALL_<wbr>VERSIONS</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_name_version[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#cl_name_version"><code>cl_name_<wbr>version</code></a>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns an array of name, version descriptions listing all the versions
         of OpenCL C supported by the compiler for the device.
         In each returned description structure, the name field is required to be
         "OpenCL C". The list may include both newer non-backwards compatible
         OpenCL C versions, such as OpenCL C 3.0, and older OpenCL C versions
         with mandatory backwards compatibility.
-        The version returned by <a href="#CL_DEVICE_OPENCL_C_VERSION"><code>CL_&#8203;DEVICE_&#8203;OPENCL_&#8203;C_&#8203;VERSION</code></a> is required to be
+        The version returned by <a href="#CL_DEVICE_OPENCL_C_VERSION"><code>CL_DEVICE_<wbr>OPENCL_<wbr>C_<wbr>VERSION</code></a> is required to be
         present in the list.</p>
 <p class="tableblock">        For devices that support compilation from OpenCL C source:</p>
 <p class="tableblock">        Because OpenCL 3.0 is backwards compatible with OpenCL C 1.2,
@@ -6555,18 +6526,21 @@
         this query may return an empty array.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_OPENCL_C_FEATURES"></a><a href="#CL_DEVICE_OPENCL_C_FEATURES"><code>CL_&#8203;DEVICE_&#8203;OPENCL_&#8203;C_&#8203;FEATURES</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_OPENCL_C_FEATURES"></a><a href="#CL_DEVICE_OPENCL_C_FEATURES"><code>CL_DEVICE_<wbr>OPENCL_<wbr>C_<wbr>FEATURES</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_name_version[]</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Returns an array of optional OpenCL C features supported by the compiler
-        for the device alongside the OpenCL C version for which they are
-        supported.</p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#cl_name_version"><code>cl_name_<wbr>version</code></a>[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Returns an array of optional OpenCL C features supported by the
+        compiler for the device alongside the OpenCL C version that introduced
+        the feature macro.
+        For example, if a compiler supports an OpenCL C 3.0 feature, the
+        returned name will be the full name of the OpenCL C feature macro, and
+        the returned version will be 3.0.0.</p>
 <p class="tableblock">        For devices that do not support compilation from OpenCL C source,
         this query may return an empty array.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_EXTENSIONS"></a><a href="#CL_DEVICE_EXTENSIONS"><code>CL_&#8203;DEVICE_&#8203;EXTENSIONS</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">char[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_EXTENSIONS"></a><a href="#CL_DEVICE_EXTENSIONS"><code>CL_DEVICE_<wbr>EXTENSIONS</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns a space separated list of extension names (the extension
         names themselves do not contain any spaces) supported by the device.
         The list of extension names may include Khronos approved extension
@@ -6579,12 +6553,13 @@
         <strong>cl_khr_local_int32_base_atomics</strong><br>
         <strong>cl_khr_local_int32_extended_atomics</strong></p>
 <p class="tableblock">        Additionally, the following Khronos extension names must be returned
-        by all devices that support OpenCL 1.2:</p>
-<p class="tableblock">        <strong>cl_khr_fp64</strong> (if double precision is supported)</p>
+        by all devices that support OpenCL 1.2 when and only when the optional
+        feature is supported:</p>
+<p class="tableblock">        <strong>cl_khr_fp64</strong></p>
 <p class="tableblock">        Additionally, the following Khronos extension names must be returned
         by all devices that support OpenCL 2.0, OpenCL 2.1, or OpenCL 2.2.
-        Note that these Khronos extension names are <strong>not</strong> required for
-        devices supporting OpenCL 3.0:</p>
+        For devices that support OpenCL 3.0, these extension names must only
+        be returned when and only when the optional feature is supported:</p>
 <p class="tableblock">        <strong>cl_khr_3d_image_writes</strong><br>
         <strong>cl_khr_depth_images</strong><br>
         <strong>cl_khr_image2d_from_buffer</strong></p>
@@ -6592,98 +6567,98 @@
         provided documentation for a detailed description of these extensions.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_EXTENSIONS_WITH_VERSION"></a><a href="#CL_DEVICE_EXTENSIONS_WITH_VERSION"><code>CL_&#8203;DEVICE_&#8203;EXTENSIONS_&#8203;WITH_&#8203;VERSION</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_EXTENSIONS_WITH_VERSION"></a><a href="#CL_DEVICE_EXTENSIONS_WITH_VERSION"><code>CL_DEVICE_<wbr>EXTENSIONS_<wbr>WITH_<wbr>VERSION</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_name_version[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#cl_name_version"><code>cl_name_<wbr>version</code></a>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns an array of description (name and version) structures. The same
         extension name must not be reported more than once. The list of
         extensions reported must match the list reported via
-        <a href="#CL_DEVICE_EXTENSIONS"><code>CL_&#8203;DEVICE_&#8203;EXTENSIONS</code></a>.</p>
-<p class="tableblock">        See <a id="CL_DEVICE_EXTENSIONS"></a><a href="#CL_DEVICE_EXTENSIONS"><code>CL_&#8203;DEVICE_&#8203;EXTENSIONS</code></a> for a list of extensions that are
+        <a href="#CL_DEVICE_EXTENSIONS"><code>CL_DEVICE_<wbr>EXTENSIONS</code></a>.</p>
+<p class="tableblock">        See <a id="CL_DEVICE_EXTENSIONS"></a><a href="#CL_DEVICE_EXTENSIONS"><code>CL_DEVICE_<wbr>EXTENSIONS</code></a> for a list of extensions that are
         required to be reported for a given OpenCL version.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PRINTF_BUFFER_SIZE"></a><a href="#CL_DEVICE_PRINTF_BUFFER_SIZE"><code>CL_&#8203;DEVICE_&#8203;PRINTF_&#8203;BUFFER_&#8203;SIZE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PRINTF_BUFFER_SIZE"></a><a href="#CL_DEVICE_PRINTF_BUFFER_SIZE"><code>CL_DEVICE_<wbr>PRINTF_<wbr>BUFFER_<wbr>SIZE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Maximum size in bytes of the internal buffer that holds the output
         of printf calls from a kernel.
         The minimum value for the FULL profile is 1 MB.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PREFERRED_INTEROP_USER_SYNC"></a><a href="#CL_DEVICE_PREFERRED_INTEROP_USER_SYNC"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;INTEROP_&#8203;USER_&#8203;SYNC</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PREFERRED_INTEROP_USER_SYNC"></a><a href="#CL_DEVICE_PREFERRED_INTEROP_USER_SYNC"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>INTEROP_<wbr>USER_<wbr>SYNC</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if the devices preference is for the user to be
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if the devices preference is for the user to be
         responsible for synchronization, when sharing memory objects between
-        OpenCL and other APIs such as DirectX, <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> if the device /
+        OpenCL and other APIs such as DirectX, <a href="#CL_FALSE"><code>CL_FALSE</code></a> if the device /
         implementation has a performant path for performing synchronization
         of memory object shared between OpenCL and other APIs such as
         DirectX.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARENT_DEVICE"></a><a href="#CL_DEVICE_PARENT_DEVICE"><code>CL_&#8203;DEVICE_&#8203;PARENT_&#8203;DEVICE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARENT_DEVICE"></a><a href="#CL_DEVICE_PARENT_DEVICE"><code>CL_DEVICE_<wbr>PARENT_<wbr>DEVICE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_id</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Returns the cl_device_id of the parent device to which this
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>id</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Returns the <code>cl_device_<wbr>id</code> of the parent device to which this
         sub-device belongs.
         If <em>device</em> is a root-level device, a <code>NULL</code> value is returned.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_MAX_SUB_DEVICES"></a><a href="#CL_DEVICE_PARTITION_MAX_SUB_DEVICES"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;MAX_&#8203;SUB_&#8203;DEVICES</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_MAX_SUB_DEVICES"></a><a href="#CL_DEVICE_PARTITION_MAX_SUB_DEVICES"><code>CL_DEVICE_<wbr>PARTITION_<wbr>MAX_<wbr>SUB_<wbr>DEVICES</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the maximum number of sub-devices that can be created when a
         device is partitioned.</p>
-<p class="tableblock">        The value returned cannot exceed <a href="#CL_DEVICE_MAX_COMPUTE_UNITS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;COMPUTE_&#8203;UNITS</code></a>.</p></td>
+<p class="tableblock">        The value returned cannot exceed <a href="#CL_DEVICE_MAX_COMPUTE_UNITS"><code>CL_DEVICE_<wbr>MAX_<wbr>COMPUTE_<wbr>UNITS</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_PROPERTIES"></a><a href="#CL_DEVICE_PARTITION_PROPERTIES"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;PROPERTIES</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_PROPERTIES"></a><a href="#CL_DEVICE_PARTITION_PROPERTIES"><code>CL_DEVICE_<wbr>PARTITION_<wbr>PROPERTIES</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_partition_ property[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>partition_<wbr>property</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the list of partition types supported by <em>device</em>.
-        This is an array of cl_device_partition_property values drawn from
+        This is an array of <code>cl_device_<wbr>partition_<wbr>property</code> values drawn from
         the following list:</p>
-<p class="tableblock">        <a href="#CL_DEVICE_PARTITION_EQUALLY"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;EQUALLY</code></a><br>
-        <a href="#CL_DEVICE_PARTITION_BY_COUNTS"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;BY_&#8203;COUNTS</code></a><br>
-        <a href="#CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;BY_&#8203;AFFINITY_&#8203;DOMAIN</code></a></p>
+<p class="tableblock">        <a href="#CL_DEVICE_PARTITION_EQUALLY"><code>CL_DEVICE_<wbr>PARTITION_<wbr>EQUALLY</code></a><br>
+        <a href="#CL_DEVICE_PARTITION_BY_COUNTS"><code>CL_DEVICE_<wbr>PARTITION_<wbr>BY_<wbr>COUNTS</code></a><br>
+        <a href="#CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN"><code>CL_DEVICE_<wbr>PARTITION_<wbr>BY_<wbr>AFFINITY_<wbr>DOMAIN</code></a></p>
 <p class="tableblock">        If the device cannot be partitioned (i.e. there is no partitioning
         scheme supported by the device that will return at least two
         subdevices), a value of 0 will be returned.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_AFFINITY_DOMAIN"></a><a href="#CL_DEVICE_PARTITION_AFFINITY_DOMAIN"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;AFFINITY_&#8203;DOMAIN</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_AFFINITY_DOMAIN"></a><a href="#CL_DEVICE_PARTITION_AFFINITY_DOMAIN"><code>CL_DEVICE_<wbr>PARTITION_<wbr>AFFINITY_<wbr>DOMAIN</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_affinity_ domain</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>affinity_<wbr>domain</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the list of supported affinity domains for partitioning the
-        device using <a href="#CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;BY_&#8203;AFFINITY_&#8203;DOMAIN</code></a>.
+        device using <a href="#CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN"><code>CL_DEVICE_<wbr>PARTITION_<wbr>BY_<wbr>AFFINITY_<wbr>DOMAIN</code></a>.
         This is a bit-field that describes one or more of the following
         values:</p>
-<p class="tableblock">        <a id="CL_DEVICE_AFFINITY_DOMAIN_NUMA"></a><a href="#CL_DEVICE_AFFINITY_DOMAIN_NUMA"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;NUMA</code></a><br>
-        <a id="CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE"></a><a href="#CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;L4_&#8203;CACHE</code></a><br>
-        <a id="CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE"></a><a href="#CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;L3_&#8203;CACHE</code></a><br>
-        <a id="CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE"></a><a href="#CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;L2_&#8203;CACHE</code></a><br>
-        <a id="CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE"></a><a href="#CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;L1_&#8203;CACHE</code></a><br>
-        <a id="CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE"></a><a href="#CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;NEXT_&#8203;PARTITIONABLE</code></a></p>
+<p class="tableblock">        <a id="CL_DEVICE_AFFINITY_DOMAIN_NUMA"></a><a href="#CL_DEVICE_AFFINITY_DOMAIN_NUMA"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>NUMA</code></a><br>
+        <a id="CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE"></a><a href="#CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>L4_<wbr>CACHE</code></a><br>
+        <a id="CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE"></a><a href="#CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>L3_<wbr>CACHE</code></a><br>
+        <a id="CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE"></a><a href="#CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>L2_<wbr>CACHE</code></a><br>
+        <a id="CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE"></a><a href="#CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>L1_<wbr>CACHE</code></a><br>
+        <a id="CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE"></a><a href="#CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>NEXT_<wbr>PARTITIONABLE</code></a></p>
 <p class="tableblock">        If the device does not support any affinity domains, a value of 0
         will be returned.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_TYPE"></a><a href="#CL_DEVICE_PARTITION_TYPE"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;TYPE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_TYPE"></a><a href="#CL_DEVICE_PARTITION_TYPE"><code>CL_DEVICE_<wbr>PARTITION_<wbr>TYPE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_partition_property[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>partition_<wbr>property</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the properties argument specified in <a href="#clCreateSubDevices"><strong>clCreateSubDevices</strong></a> if
         device is a sub-device.
         In the case where the properties argument to <a href="#clCreateSubDevices"><strong>clCreateSubDevices</strong></a> is
-        <a href="#CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;BY_&#8203;AFFINITY_&#8203;DOMAIN</code></a>,
-        <a href="#CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;NEXT_&#8203;PARTITIONABLE</code></a>, the affinity domain
+        <a href="#CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN"><code>CL_DEVICE_<wbr>PARTITION_<wbr>BY_<wbr>AFFINITY_<wbr>DOMAIN</code></a>,
+        <a href="#CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>NEXT_<wbr>PARTITIONABLE</code></a>, the affinity domain
         used to perform the partition will be returned.
         This can be one of the following values:</p>
-<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_NUMA"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;NUMA</code></a><br>
-        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;L4_&#8203;CACHE</code></a><br>
-        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;L3_&#8203;CACHE</code></a><br>
-        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;L2_&#8203;CACHE</code></a><br>
-        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;L1_&#8203;CACHE</code></a></p>
+<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_NUMA"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>NUMA</code></a><br>
+        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>L4_<wbr>CACHE</code></a><br>
+        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>L3_<wbr>CACHE</code></a><br>
+        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>L2_<wbr>CACHE</code></a><br>
+        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>L1_<wbr>CACHE</code></a></p>
 <p class="tableblock">        Otherwise the implementation may either return a
         <em>param_value_size_ret</em> of 0 i.e. there is no partition type
         associated with device or can return a property value of 0 (where 0
@@ -6691,244 +6666,187 @@
         <em>param_value</em> points to.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_REFERENCE_COUNT"></a><a href="#CL_DEVICE_REFERENCE_COUNT"><code>CL_&#8203;DEVICE_&#8203;REFERENCE_&#8203;COUNT</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_REFERENCE_COUNT"></a><a href="#CL_DEVICE_REFERENCE_COUNT"><code>CL_DEVICE_<wbr>REFERENCE_<wbr>COUNT</code></a> <sup class="footnote">[<a id="_footnoteref_9" class="footnote" href="#_footnotedef_9" title="View footnote.">9</a>]</sup></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the <em>device</em> reference count.
         If the device is a root-level device, a reference count of one is
         returned.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_SVM_CAPABILITIES"></a><a href="#CL_DEVICE_SVM_CAPABILITIES"><code>CL_&#8203;DEVICE_&#8203;SVM_&#8203;CAPABILITIES</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_SVM_CAPABILITIES"></a><a href="#CL_DEVICE_SVM_CAPABILITIES"><code>CL_DEVICE_<wbr>SVM_<wbr>CAPABILITIES</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_svm_capabilities</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>svm_<wbr>capabilities</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Describes the various shared virtual memory (SVM) memory
         allocation types the device supports.
         This is a bit-field that describes a combination of the following
         values:</p>
-<p class="tableblock">        <a id="CL_DEVICE_SVM_COARSE_GRAIN_BUFFER"></a><a href="#CL_DEVICE_SVM_COARSE_GRAIN_BUFFER"><code>CL_&#8203;DEVICE_&#8203;SVM_&#8203;COARSE_&#8203;GRAIN_&#8203;BUFFER</code></a> - Support for coarse-grain buffer
+<p class="tableblock">        <a id="CL_DEVICE_SVM_COARSE_GRAIN_BUFFER"></a><a href="#CL_DEVICE_SVM_COARSE_GRAIN_BUFFER"><code>CL_DEVICE_<wbr>SVM_<wbr>COARSE_<wbr>GRAIN_<wbr>BUFFER</code></a> - Support for coarse-grain buffer
         sharing using <a href="#clSVMAlloc"><strong>clSVMAlloc</strong></a>.
         Memory consistency is guaranteed at synchronization points and the
         host must use calls to <a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a> and
-        <a href="#clEnqueueUnmapMemObject"><strong>clEnqueueUnmapMemObject</strong></a>.</p>
-<p class="tableblock">        <a id="CL_DEVICE_SVM_FINE_GRAIN_BUFFER"></a><a href="#CL_DEVICE_SVM_FINE_GRAIN_BUFFER"><code>CL_&#8203;DEVICE_&#8203;SVM_&#8203;FINE_&#8203;GRAIN_&#8203;BUFFER</code></a> - Support for fine-grain buffer
+        <a href="#clEnqueueUnmapMemObject"><strong>clEnqueueUnmapMemObject</strong></a>.<br>
+        <a id="CL_DEVICE_SVM_FINE_GRAIN_BUFFER"></a><a href="#CL_DEVICE_SVM_FINE_GRAIN_BUFFER"><code>CL_DEVICE_<wbr>SVM_<wbr>FINE_<wbr>GRAIN_<wbr>BUFFER</code></a> - Support for fine-grain buffer
         sharing using <a href="#clSVMAlloc"><strong>clSVMAlloc</strong></a>.
         Memory consistency is guaranteed at synchronization points without
-        need for <a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a> and <a href="#clEnqueueUnmapMemObject"><strong>clEnqueueUnmapMemObject</strong></a>.</p>
-<p class="tableblock">        <a id="CL_DEVICE_SVM_FINE_GRAIN_SYSTEM"></a><a href="#CL_DEVICE_SVM_FINE_GRAIN_SYSTEM"><code>CL_&#8203;DEVICE_&#8203;SVM_&#8203;FINE_&#8203;GRAIN_&#8203;SYSTEM</code></a> - Support for sharing the host&#8217;s
+        need for <a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a> and <a href="#clEnqueueUnmapMemObject"><strong>clEnqueueUnmapMemObject</strong></a>.<br>
+        <a id="CL_DEVICE_SVM_FINE_GRAIN_SYSTEM"></a><a href="#CL_DEVICE_SVM_FINE_GRAIN_SYSTEM"><code>CL_DEVICE_<wbr>SVM_<wbr>FINE_<wbr>GRAIN_<wbr>SYSTEM</code></a> - Support for sharing the host&#8217;s
         entire virtual memory including memory allocated using <strong>malloc</strong>.
-        Memory consistency is guaranteed at synchronization points.</p>
-<p class="tableblock">        <a id="CL_DEVICE_SVM_ATOMICS"></a><a href="#CL_DEVICE_SVM_ATOMICS"><code>CL_&#8203;DEVICE_&#8203;SVM_&#8203;ATOMICS</code></a> - Support for the OpenCL 2.0 atomic
+        Memory consistency is guaranteed at synchronization points.<br>
+        <a id="CL_DEVICE_SVM_ATOMICS"></a><a href="#CL_DEVICE_SVM_ATOMICS"><code>CL_DEVICE_<wbr>SVM_<wbr>ATOMICS</code></a> - Support for the OpenCL 2.0 atomic
         operations that provide memory consistency across the host and all
         OpenCL devices supporting fine-grain SVM allocations.</p>
 <p class="tableblock">        The mandated minimum capability for an OpenCL 2.0, 2.1, or 2.2 device is
-        <a href="#CL_DEVICE_SVM_COARSE_GRAIN_BUFFER"><code>CL_&#8203;DEVICE_&#8203;SVM_&#8203;COARSE_&#8203;GRAIN_&#8203;BUFFER</code></a>.</p>
+        <a href="#CL_DEVICE_SVM_COARSE_GRAIN_BUFFER"><code>CL_DEVICE_<wbr>SVM_<wbr>COARSE_<wbr>GRAIN_<wbr>BUFFER</code></a>.</p>
 <p class="tableblock">        For other device versions there is no mandated minimum capability.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PREFERRED_PLATFORM_ATOMIC_ALIGNMENT"></a><a href="#CL_DEVICE_PREFERRED_PLATFORM_ATOMIC_ALIGNMENT"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;PLATFORM_&#8203;ATOMIC_&#8203;ALIGNMENT</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PREFERRED_PLATFORM_ATOMIC_ALIGNMENT"></a><a href="#CL_DEVICE_PREFERRED_PLATFORM_ATOMIC_ALIGNMENT"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>PLATFORM_<wbr>ATOMIC_<wbr>ALIGNMENT</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the value representing the preferred alignment in bytes for
         OpenCL 2.0 fine-grained SVM atomic types.
         This query can return 0 which indicates that the preferred alignment
         is aligned to the natural size of the type.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PREFERRED_GLOBAL_ATOMIC_ALIGNMENT"></a><a href="#CL_DEVICE_PREFERRED_GLOBAL_ATOMIC_ALIGNMENT"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;GLOBAL_&#8203;ATOMIC_&#8203;ALIGNMENT</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PREFERRED_GLOBAL_ATOMIC_ALIGNMENT"></a><a href="#CL_DEVICE_PREFERRED_GLOBAL_ATOMIC_ALIGNMENT"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>GLOBAL_<wbr>ATOMIC_<wbr>ALIGNMENT</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the value representing the preferred alignment in bytes for
         OpenCL 2.0 atomic types to global memory.
         This query can return 0 which indicates that the preferred alignment
         is aligned to the natural size of the type.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PREFERRED_LOCAL_ATOMIC_ALIGNMENT"></a><a href="#CL_DEVICE_PREFERRED_LOCAL_ATOMIC_ALIGNMENT"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;LOCAL_&#8203;ATOMIC_&#8203;ALIGNMENT</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PREFERRED_LOCAL_ATOMIC_ALIGNMENT"></a><a href="#CL_DEVICE_PREFERRED_LOCAL_ATOMIC_ALIGNMENT"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>LOCAL_<wbr>ATOMIC_<wbr>ALIGNMENT</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the value representing the preferred alignment in bytes for
         OpenCL 2.0 atomic types to local memory.
         This query can return 0 which indicates that the preferred alignment
         is aligned to the natural size of the type.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_NUM_SUB_GROUPS"></a><a href="#CL_DEVICE_MAX_NUM_SUB_GROUPS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;NUM_&#8203;SUB_&#8203;GROUPS</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_MAX_NUM_SUB_GROUPS"></a><a href="#CL_DEVICE_MAX_NUM_SUB_GROUPS"><code>CL_DEVICE_<wbr>MAX_<wbr>NUM_<wbr>SUB_<wbr>GROUPS</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.1.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Maximum number of sub-groups in a work-group that a device is
         capable of executing on a single compute unit, for any given
         kernel-instance running on the device.</p>
-<p class="tableblock">        The minimum value is 1 if the device supports Subgroups, and must be
-        0 for devices that do not support Subgroups.
-        Support for Subgroups is required for an OpenCL 2.1 or 2.2 device.</p>
+<p class="tableblock">        The minimum value is 1 if the device supports subgroups, and must be
+        0 for devices that do not support subgroups.
+        Support for subgroups is required for an OpenCL 2.1 or 2.2 device.</p>
 <p class="tableblock">        (Refer also to <a href="#clGetKernelSubGroupInfo"><strong>clGetKernelSubGroupInfo</strong></a>.)</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS"></a><a href="#CL_DEVICE_SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS"><code>CL_&#8203;DEVICE_&#8203;SUB_&#8203;GROUP_&#8203;INDEPENDENT_&#8203;FORWARD_&#8203;PROGRESS</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS"></a><a href="#CL_DEVICE_SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS"><code>CL_DEVICE_<wbr>SUB_<wbr>GROUP_<wbr>INDEPENDENT_<wbr>FORWARD_<wbr>PROGRESS</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.1.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if this device supports independent forward progress of
-        sub-groups, <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> otherwise.</p>
-<p class="tableblock">        This query must return <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> for devices that support the
-        <strong>cl_khr_subgroups</strong> extension, and must return <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> for
-        devices that do not support Subgroups.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if this device supports independent forward progress of
+        sub-groups, <a href="#CL_FALSE"><code>CL_FALSE</code></a> otherwise.</p>
+<p class="tableblock">        This query must return <a href="#CL_TRUE"><code>CL_TRUE</code></a> for devices that support the
+        <strong>cl_khr_subgroups</strong> extension, and must return <a href="#CL_FALSE"><code>CL_FALSE</code></a> for
+        devices that do not support subgroups.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_ATOMIC_MEMORY_CAPABILITIES"></a><a href="#CL_DEVICE_ATOMIC_MEMORY_CAPABILITIES"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;MEMORY_&#8203;CAPABILITIES</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_ATOMIC_MEMORY_CAPABILITIES"></a><a href="#CL_DEVICE_ATOMIC_MEMORY_CAPABILITIES"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>MEMORY_<wbr>CAPABILITIES</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_atomic_capabilities</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>atomic_<wbr>capabilities</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Describes the various memory orders and scopes that the device supports for atomic memory operations.
         This is a bit-field that describes a combination of the following
         values:</p>
-<p class="tableblock">        <a id="CL_DEVICE_ATOMIC_ORDER_RELAXED"></a><a href="#CL_DEVICE_ATOMIC_ORDER_RELAXED"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;ORDER_&#8203;RELAXED</code></a> - Support for relaxed memory ordering.
-        E.g the use of <code>memory_order_relaxed</code> in OpenCL C.</p>
-<p class="tableblock">        <a id="CL_DEVICE_ATOMIC_ORDER_ACQ_REL"></a><a href="#CL_DEVICE_ATOMIC_ORDER_ACQ_REL"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;ORDER_&#8203;ACQ_&#8203;REL</code></a> - Support for acquire and release memory orderings.
-        E.g the use of <code>memory_order_acquire</code>, <code>memory_order_release</code>, or <code>memory_order_acq_rel</code> in OpenCL C.</p>
-<p class="tableblock">        <a id="CL_DEVICE_ATOMIC_ORDER_SEQ_CST"></a><a href="#CL_DEVICE_ATOMIC_ORDER_SEQ_CST"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;ORDER_&#8203;SEQ_&#8203;CST</code></a> - Support for sequentially consistent memory ordering.
-        E.g the use of <code>memory_order_seq_cst</code> in OpenCL C.</p>
-<p class="tableblock">        <a id="CL_DEVICE_ATOMIC_SCOPE_WORK_ITEM"></a><a href="#CL_DEVICE_ATOMIC_SCOPE_WORK_ITEM"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;SCOPE_&#8203;WORK_&#8203;ITEM</code></a> - Support for memory ordering constraints that apply to a single work item.
-        E.g the use of <code>memory_scope_work_item</code> in OpenCL C.
-        Note that this flag does not provide meaning for atomic memory operations, but only for atomic fence operations in certain circumstances, refer to the Memory Scope section of the OpenCL C specification.</p>
-<p class="tableblock">        <a id="CL_DEVICE_ATOMIC_SCOPE_WORK_GROUP"></a><a href="#CL_DEVICE_ATOMIC_SCOPE_WORK_GROUP"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;SCOPE_&#8203;WORK_&#8203;GROUP</code></a> - Support for memory ordering constraints that apply to all work items in a work-group.
-        E.g the use of <code>memory_scope_work_group</code> in OpenCL C.</p>
-<p class="tableblock">        <a id="CL_DEVICE_ATOMIC_SCOPE_DEVICE"></a><a href="#CL_DEVICE_ATOMIC_SCOPE_DEVICE"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;SCOPE_&#8203;DEVICE</code></a> - Support for memory ordering constraints that apply to all work-items of a kernel(s) simultaneously executing on a device.
-        E.g the use of <code>memory_scope_device</code> in OpenCL C.</p>
-<p class="tableblock">        <a id="CL_DEVICE_ATOMIC_SCOPE_ALL_DEVICES"></a><a href="#CL_DEVICE_ATOMIC_SCOPE_ALL_DEVICES"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;SCOPE_&#8203;ALL_&#8203;DEVICES</code></a> - Support for memory ordering constraints that apply to all work-items of a kernel(s) executing across all devices that can share SVM memory with each other and the host process.
-        E.g the use of <code>memory_scope_all_svm_devices</code> in OpenCL C.</p>
+<p class="tableblock">        <a id="CL_DEVICE_ATOMIC_ORDER_RELAXED"></a><a href="#CL_DEVICE_ATOMIC_ORDER_RELAXED"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>ORDER_<wbr>RELAXED</code></a> - Support for the <strong>relaxed</strong> memory order.<br>
+        <a id="CL_DEVICE_ATOMIC_ORDER_ACQ_REL"></a><a href="#CL_DEVICE_ATOMIC_ORDER_ACQ_REL"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>ORDER_<wbr>ACQ_<wbr>REL</code></a> - Support for the <strong>acquire</strong>, <strong>release</strong>, and <strong>acquire-release</strong> memory orders.<br>
+        <a id="CL_DEVICE_ATOMIC_ORDER_SEQ_CST"></a><a href="#CL_DEVICE_ATOMIC_ORDER_SEQ_CST"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>ORDER_<wbr>SEQ_<wbr>CST</code></a> - Support for the <strong>sequentially consistent</strong> memory order.</p>
+<p class="tableblock">        Because atomic memory orders are hierarchical, a device that supports a strong memory order must also support all weaker memory orders.</p>
+<p class="tableblock">        <a id="CL_DEVICE_ATOMIC_SCOPE_WORK_ITEM"></a><a href="#CL_DEVICE_ATOMIC_SCOPE_WORK_ITEM"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>SCOPE_<wbr>WORK_<wbr>ITEM</code></a> <sup class="footnote">[<a id="_footnoteref_10" class="footnote" href="#_footnotedef_10" title="View footnote.">10</a>]</sup> - Support for memory ordering constraints that apply to a single work item.<br>
+        <a id="CL_DEVICE_ATOMIC_SCOPE_WORK_GROUP"></a><a href="#CL_DEVICE_ATOMIC_SCOPE_WORK_GROUP"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>SCOPE_<wbr>WORK_<wbr>GROUP</code></a> - Support for memory ordering constraints that apply to all work-items in a work-group.<br>
+        <a id="CL_DEVICE_ATOMIC_SCOPE_DEVICE"></a><a href="#CL_DEVICE_ATOMIC_SCOPE_DEVICE"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>SCOPE_<wbr>DEVICE</code></a> - Support for memory ordering constraints that apply to all work-items executing on the device.<br>
+        <a id="CL_DEVICE_ATOMIC_SCOPE_ALL_DEVICES"></a><a href="#CL_DEVICE_ATOMIC_SCOPE_ALL_DEVICES"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>SCOPE_<wbr>ALL_<wbr>DEVICES</code></a> - Support for memory ordering constraints that apply to all work-items executing across all devices that can share SVM memory with each other and the host process.</p>
+<p class="tableblock">        Because atomic scopes are hierarchical, a device that supports a wide scope must also support all narrower scopes, except for the work-item scope, which is a special case.</p>
 <p class="tableblock">        The mandated minimum capability is:</p>
-<p class="tableblock">        <a href="#CL_DEVICE_ATOMIC_ORDER_RELAXED"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;ORDER_&#8203;RELAXED</code></a> |<br>
-        <a href="#CL_DEVICE_ATOMIC_SCOPE_WORK_GROUP"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;SCOPE_&#8203;WORK_&#8203;GROUP</code></a></p></td>
+<p class="tableblock">        <a href="#CL_DEVICE_ATOMIC_ORDER_RELAXED"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>ORDER_<wbr>RELAXED</code></a> |<br>
+        <a href="#CL_DEVICE_ATOMIC_SCOPE_WORK_GROUP"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>SCOPE_<wbr>WORK_<wbr>GROUP</code></a></p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_ATOMIC_FENCE_CAPABILITIES"></a><a href="#CL_DEVICE_ATOMIC_FENCE_CAPABILITIES"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;FENCE_&#8203;CAPABILITIES</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_ATOMIC_FENCE_CAPABILITIES"></a><a href="#CL_DEVICE_ATOMIC_FENCE_CAPABILITIES"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>FENCE_<wbr>CAPABILITIES</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_atomic_capabilities</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>atomic_<wbr>capabilities</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Describes the various memory orders and scopes that the device supports for atomic fence operations.
-        This is a bit-field that has the same set of possible values as described for <a href="#CL_DEVICE_ATOMIC_MEMORY_CAPABILITIES"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;MEMORY_&#8203;CAPABILITIES</code></a>.</p>
+        This is a bit-field that has the same set of possible values as described for <a href="#CL_DEVICE_ATOMIC_MEMORY_CAPABILITIES"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>MEMORY_<wbr>CAPABILITIES</code></a>.</p>
 <p class="tableblock">        The mandated minimum capability is:</p>
-<p class="tableblock">        <a href="#CL_DEVICE_ATOMIC_ORDER_RELAXED"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;ORDER_&#8203;RELAXED</code></a> |<br>
-        <a href="#CL_DEVICE_ATOMIC_ORDER_ACQ_REL"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;ORDER_&#8203;ACQ_&#8203;REL</code></a> |<br>
-        <a href="#CL_DEVICE_ATOMIC_SCOPE_WORK_GROUP"><code>CL_&#8203;DEVICE_&#8203;ATOMIC_&#8203;SCOPE_&#8203;WORK_&#8203;GROUP</code></a></p></td>
+<p class="tableblock">        <a href="#CL_DEVICE_ATOMIC_ORDER_RELAXED"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>ORDER_<wbr>RELAXED</code></a> |<br>
+        <a href="#CL_DEVICE_ATOMIC_ORDER_ACQ_REL"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>ORDER_<wbr>ACQ_<wbr>REL</code></a> |<br>
+        <a href="#CL_DEVICE_ATOMIC_SCOPE_WORK_GROUP"><code>CL_DEVICE_<wbr>ATOMIC_<wbr>SCOPE_<wbr>WORK_<wbr>GROUP</code></a></p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_NON_UNIFORM_WORK_GROUP_SUPPORT"></a><a href="#CL_DEVICE_NON_UNIFORM_WORK_GROUP_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;NON_&#8203;UNIFORM_&#8203;WORK_&#8203;GROUP_&#8203;SUPPORT</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_NON_UNIFORM_WORK_GROUP_SUPPORT"></a><a href="#CL_DEVICE_NON_UNIFORM_WORK_GROUP_SUPPORT"><code>CL_DEVICE_<wbr>NON_<wbr>UNIFORM_<wbr>WORK_<wbr>GROUP_<wbr>SUPPORT</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if the device supports non-uniform work groups, and <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> otherwise.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if the device supports non-uniform work groups, and <a href="#CL_FALSE"><code>CL_FALSE</code></a> otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_WORK_GROUP_COLLECTIVE_FUNCTIONS_SUPPORT"></a><a href="#CL_DEVICE_WORK_GROUP_COLLECTIVE_FUNCTIONS_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;WORK_&#8203;GROUP_&#8203;COLLECTIVE_&#8203;FUNCTIONS_&#8203;SUPPORT</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_WORK_GROUP_COLLECTIVE_FUNCTIONS_SUPPORT"></a><a href="#CL_DEVICE_WORK_GROUP_COLLECTIVE_FUNCTIONS_SUPPORT"><code>CL_DEVICE_<wbr>WORK_<wbr>GROUP_<wbr>COLLECTIVE_<wbr>FUNCTIONS_<wbr>SUPPORT</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if the device supports work group collective functions e.g. <code>work_group_broadcast</code>, <code>work_group_reduce</code>, and <code>work_group_scan</code>, and <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> otherwise.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if the device supports work group collective functions e.g. <code>work_group_broadcast</code>, <code>work_group_reduce</code>, and <code>work_group_scan</code>, and <a href="#CL_FALSE"><code>CL_FALSE</code></a> otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_GENERIC_ADDRESS_SPACE_SUPPORT"></a><a href="#CL_DEVICE_GENERIC_ADDRESS_SPACE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;GENERIC_&#8203;ADDRESS_&#8203;SPACE_&#8203;SUPPORT</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_GENERIC_ADDRESS_SPACE_SUPPORT"></a><a href="#CL_DEVICE_GENERIC_ADDRESS_SPACE_SUPPORT"><code>CL_DEVICE_<wbr>GENERIC_<wbr>ADDRESS_<wbr>SPACE_<wbr>SUPPORT</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if the device supports the generic address space and its associated built-in functions, and <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> otherwise.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if the device supports the generic address space and its associated built-in functions, and <a href="#CL_FALSE"><code>CL_FALSE</code></a> otherwise.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_DEVICE_ENQUEUE_SUPPORT"></a><a href="#CL_DEVICE_DEVICE_ENQUEUE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;DEVICE_&#8203;ENQUEUE_&#8203;SUPPORT</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_DEVICE_ENQUEUE_CAPABILITIES"></a><a href="#CL_DEVICE_DEVICE_ENQUEUE_CAPABILITIES"><code>CL_DEVICE_<wbr>DEVICE_<wbr>ENQUEUE_<wbr>CAPABILITIES</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if the device supports device-side enqueue and on-device queues, and <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> otherwise.</p>
-<p class="tableblock">      Devices that return <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> for <a href="#CL_DEVICE_DEVICE_ENQUEUE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;DEVICE_&#8203;ENQUEUE_&#8203;SUPPORT</code></a> must also return <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> for <a href="#CL_DEVICE_GENERIC_ADDRESS_SPACE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;GENERIC_&#8203;ADDRESS_&#8203;SPACE_&#8203;SUPPORT</code></a>.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>device_<wbr>enqueue_<wbr>capabilities</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Describes device-side enqueue capabilities of the device.
+        This is a bit-field that describes one or more of the following
+        values:</p>
+<p class="tableblock">        <a id="CL_DEVICE_QUEUE_SUPPORTED"></a><a href="#CL_DEVICE_QUEUE_SUPPORTED"><code>CL_DEVICE_<wbr>QUEUE_<wbr>SUPPORTED</code></a> - Device supports device-side enqueue and on-device queues.<br>
+        <a id="CL_DEVICE_QUEUE_REPLACEABLE_DEFAULT"></a><a href="#CL_DEVICE_QUEUE_REPLACEABLE_DEFAULT"><code>CL_DEVICE_<wbr>QUEUE_<wbr>REPLACEABLE_<wbr>DEFAULT</code></a> - Device supports a replaceable default on-device queue.</p>
+<p class="tableblock">        If <a href="#CL_DEVICE_QUEUE_REPLACEABLE_DEFAULT"><code>CL_DEVICE_<wbr>QUEUE_<wbr>REPLACEABLE_<wbr>DEFAULT</code></a> is set, <a href="#CL_DEVICE_QUEUE_SUPPORTED"><code>CL_DEVICE_<wbr>QUEUE_<wbr>SUPPORTED</code></a> must also be set.</p>
+<p class="tableblock">        Devices that set <a href="#CL_DEVICE_QUEUE_SUPPORTED"><code>CL_DEVICE_<wbr>QUEUE_<wbr>SUPPORTED</code></a> for <a href="#CL_DEVICE_DEVICE_ENQUEUE_CAPABILITIES"><code>CL_DEVICE_<wbr>DEVICE_<wbr>ENQUEUE_<wbr>CAPABILITIES</code></a> must also return <a href="#CL_TRUE"><code>CL_TRUE</code></a> for <a href="#CL_DEVICE_GENERIC_ADDRESS_SPACE_SUPPORT"><code>CL_DEVICE_<wbr>GENERIC_<wbr>ADDRESS_<wbr>SPACE_<wbr>SUPPORT</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PIPE_SUPPORT"></a><a href="#CL_DEVICE_PIPE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;PIPE_&#8203;SUPPORT</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PIPE_SUPPORT"></a><a href="#CL_DEVICE_PIPE_SUPPORT"><code>CL_DEVICE_<wbr>PIPE_<wbr>SUPPORT</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> if the device supports Pipes, and <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> otherwise.</p>
-<p class="tableblock">      Devices that return <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> for <a href="#CL_DEVICE_PIPE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;PIPE_&#8203;SUPPORT</code></a> must also return <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> for <a href="#CL_DEVICE_GENERIC_ADDRESS_SPACE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;GENERIC_&#8203;ADDRESS_&#8203;SPACE_&#8203;SUPPORT</code></a>.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Is <a href="#CL_TRUE"><code>CL_TRUE</code></a> if the device supports pipes, and <a href="#CL_FALSE"><code>CL_FALSE</code></a> otherwise.</p>
+<p class="tableblock">      Devices that return <a href="#CL_TRUE"><code>CL_TRUE</code></a> for <a href="#CL_DEVICE_PIPE_SUPPORT"><code>CL_DEVICE_<wbr>PIPE_<wbr>SUPPORT</code></a> must also return <a href="#CL_TRUE"><code>CL_TRUE</code></a> for <a href="#CL_DEVICE_GENERIC_ADDRESS_SPACE_SUPPORT"><code>CL_DEVICE_<wbr>GENERIC_<wbr>ADDRESS_<wbr>SPACE_<wbr>SUPPORT</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE"></a><a href="#CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;WORK_&#8203;GROUP_&#8203;SIZE_&#8203;MULTIPLE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE"></a><a href="#CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>WORK_<wbr>GROUP_<wbr>SIZE_<wbr>MULTIPLE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">size_t</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>size_t</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Returns the preferred multiple of work-group size for the given device.
         This is a performance hint intended as a guide when specifying the local work size argument to <a href="#clEnqueueNDRangeKernel"><strong>clEnqueueNDRangeKernel</strong></a>.</p>
-<p class="tableblock">        (Refer also to <a href="#clGetKernelWorkGroupInfo"><strong>clGetKernelWorkGroupInfo</strong></a> where <a href="#CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE"><code>CL_&#8203;KERNEL_&#8203;PREFERRED_&#8203;WORK_&#8203;GROUP_&#8203;SIZE_&#8203;MULTIPLE</code></a>
-        can return a different value to <a href="#CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE"><code>CL_&#8203;DEVICE_&#8203;PREFERRED_&#8203;WORK_&#8203;GROUP_&#8203;SIZE_&#8203;MULTIPLE</code></a> which may be more optimal.)</p></td>
+<p class="tableblock">        (Refer also to <a href="#clGetKernelWorkGroupInfo"><strong>clGetKernelWorkGroupInfo</strong></a> where <a href="#CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE"><code>CL_KERNEL_<wbr>PREFERRED_<wbr>WORK_<wbr>GROUP_<wbr>SIZE_<wbr>MULTIPLE</code></a>
+        can return a different value to <a href="#CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE"><code>CL_DEVICE_<wbr>PREFERRED_<wbr>WORK_<wbr>GROUP_<wbr>SIZE_<wbr>MULTIPLE</code></a> which may be more optimal.)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_LATEST_CONFORMANCE_VERSION_PASSED"></a><a href="#CL_DEVICE_LATEST_CONFORMANCE_VERSION_PASSED"><code>CL_DEVICE_<wbr>LATEST_<wbr>CONFORMANCE_<wbr>VERSION_<wbr>PASSED</code></a></p>
+<p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>char</code>[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Returns the latest version of the conformance test suite that this device
+        has fully passed in accordance with the official conformance process.</p></td>
 </tr>
 </tbody>
 </table>
-<div class="dlist">
-<dl>
-<dt class="hdlist1">4</dt>
-<dd>
-<p>OpenCL adopters must report a valid vendor ID for their implementation.
-If there is no valid PCI vendor ID defined for the physical device,
-implementations must obtain a Khronos vendor ID. This is a unique
-identifier greater than the largest PCI vendor ID(0x10000) and is
-representable by a <code>cl_uint</code>. Khronos vendor IDs are synchronized across
-APIs by utilizing Vulkan&#8217;s vk.xml as the central Khronos vendor ID registry.
-An ID must be reserved here prior to use in OpenCL, regardless of whether a
-vendor implements Vulkan. Only once the ID has been allotted may it be
-exposed to OpenCL by proposing a merge request against cl.xml, in the master
-branch of the OpenCL-Docs project. The merge must define a new enumerant by
-adding an <code>&lt;enum&gt;</code> tag to the <code>cl_khronos_vendor_id</code> <code>&lt;enums&gt;</code> tag, with the
-<code>&lt;value&gt;</code> attribute set as the acquired Khronos vendor ID. The <code>&lt;name&gt;</code>
-attribute must identify the vendor/adopter, and be of the form
-<code>CL_KHRONOS_VENDOR_ID_&lt;vendor&gt;</code>.</p>
-</dd>
-<dt class="hdlist1">5</dt>
-<dd>
-<p>A kernel that uses an image argument with the write_only or read_write
-image qualifier may result in additional read_only images resources being
-created internally by an implementation.
-The internally created read_only image resources will count against the max
-supported read image arguments given by <a href="#CL_DEVICE_MAX_READ_IMAGE_ARGS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;READ_&#8203;IMAGE_&#8203;ARGS</code></a>.
-Enqueuing a kernel that requires more images than the implementation can
-support will result in a <a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> error being returned.</p>
-</dd>
-<dt class="hdlist1">6</dt>
-<dd>
-<p>NOTE: <a href="#CL_DEVICE_MAX_WRITE_IMAGE_ARGS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;WRITE_&#8203;IMAGE_&#8203;ARGS</code></a> is only there for backward
-compatibility.
-<a href="#CL_DEVICE_MAX_READ_WRITE_IMAGE_ARGS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;READ_&#8203;WRITE_&#8203;IMAGE_&#8203;ARGS</code></a> should be used instead.</p>
-</dd>
-<dt class="hdlist1">7</dt>
-<dd>
-<p>The optional rounding modes should be included as a device capability
-only if it is supported natively.
-All explicit conversion functions with specific rounding modes must
-still operate correctly.</p>
-</dd>
-<dt class="hdlist1">8</dt>
-<dd>
-<p>The optional rounding modes should be included as a device capability
-only if it is supported natively.
-All explicit conversion functions with specific rounding modes must
-still operate correctly.</p>
-</dd>
-<dt class="hdlist1">9</dt>
-<dd>
-<p>The platform profile returns the profile that is implemented by the
-OpenCL framework.
-If the platform profile returned is FULL_PROFILE, the OpenCL framework
-will support devices that are FULL_PROFILE and may also support devices
-that are EMBEDDED_PROFILE.
-The compiler must be available for all devices i.e.
-<a href="#CL_DEVICE_COMPILER_AVAILABLE"><code>CL_&#8203;DEVICE_&#8203;COMPILER_&#8203;AVAILABLE</code></a> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>.
-If the platform profile returned is EMBEDDED_PROFILE, then devices that
-are only EMBEDDED_PROFILE are supported.</p>
-</dd>
-</dl>
-</div>
 <div class="paragraph">
-<p><a href="#clGetDeviceInfo"><strong>clGetDeviceInfo</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clGetDeviceInfo"><strong>clGetDeviceInfo</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_DEVICE"><code>CL_&#8203;INVALID_&#8203;DEVICE</code></a> if <em>device</em> is not a valid device.</p>
+<p><a href="#CL_INVALID_DEVICE"><code>CL_INVALID_<wbr>DEVICE</code></a> if <em>device</em> is not a valid device.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>param_name</em> is not one of the supported values or
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>param_name</em> is not one of the supported values or
 if size in bytes specified by <em>param_value_size</em> is &lt; size of return
 type as specified in the <a href="#device-queries-table">Device Queries</a> table
 and <em>param_value</em> is not a <code>NULL</code> value or if <em>param_name</em> is a value
@@ -6936,11 +6854,11 @@
 supported by the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -6981,7 +6899,7 @@
 <p><em>device_timestamp</em> will be updated with the value of the device timer in
 nanoseconds.
 The resolution of the timer is the same as the device profiling timer
-returned by <a href="#clGetDeviceInfo"><strong>clGetDeviceInfo</strong></a> and the <a href="#CL_DEVICE_PROFILING_TIMER_RESOLUTION"><code>CL_&#8203;DEVICE_&#8203;PROFILING_&#8203;TIMER_&#8203;RESOLUTION</code></a>
+returned by <a href="#clGetDeviceInfo"><strong>clGetDeviceInfo</strong></a> and the <a href="#CL_DEVICE_PROFILING_TIMER_RESOLUTION"><code>CL_DEVICE_<wbr>PROFILING_<wbr>TIMER_<wbr>RESOLUTION</code></a>
 query.</p>
 </li>
 <li>
@@ -6989,7 +6907,7 @@
 nanoseconds at the closest possible point in time to that at which
 <em>device_timer</em> was returned.
 The resolution of the timer may be queried via <a href="#clGetPlatformInfo"><strong>clGetPlatformInfo</strong></a> and the
-flag <a href="#CL_PLATFORM_HOST_TIMER_RESOLUTION"><code>CL_&#8203;PLATFORM_&#8203;HOST_&#8203;TIMER_&#8203;RESOLUTION</code></a>.</p>
+flag <a href="#CL_PLATFORM_HOST_TIMER_RESOLUTION"><code>CL_PLATFORM_<wbr>HOST_<wbr>TIMER_<wbr>RESOLUTION</code></a>.</p>
 </li>
 </ul>
 </div>
@@ -7007,27 +6925,28 @@
 the same timebase.</p>
 </div>
 <div class="paragraph">
-<p><a href="#clGetDeviceAndHostTimer"><strong>clGetDeviceAndHostTimer</strong></a> will return <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> with a time value in
+<p><a href="#clGetDeviceAndHostTimer"><strong>clGetDeviceAndHostTimer</strong></a> will return <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> with a time value in
 <em>host_timestamp</em> if provided.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_DEVICE"><code>CL_&#8203;INVALID_&#8203;DEVICE</code></a> if <em>device</em> is not a valid device.</p>
+<p><a href="#CL_INVALID_DEVICE"><code>CL_INVALID_<wbr>DEVICE</code></a> if <em>device</em> is not a valid device.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_OPERATION"><code>CL_&#8203;INVALID_&#8203;OPERATION</code></a> if the platform associated with <em>device</em> does not support Device and Host Timer Synchronization.</p>
+<p><a href="#CL_INVALID_OPERATION"><code>CL_INVALID_<wbr>OPERATION</code></a> if the platform associated with <em>device</em> does not
+support device and host timer synchronization.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>host_timestamp</em> or <em>device_timestamp</em> is <code>NULL</code>.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>host_timestamp</em> or <em>device_timestamp</em> is <code>NULL</code>.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -7067,7 +6986,7 @@
 <p><em>host_timestamp</em> will be updated with the value of the current timer in
 nanoseconds.
 The resolution of the timer may be queried via <a href="#clGetPlatformInfo"><strong>clGetPlatformInfo</strong></a> and the
-flag <a href="#CL_PLATFORM_HOST_TIMER_RESOLUTION"><code>CL_&#8203;PLATFORM_&#8203;HOST_&#8203;TIMER_&#8203;RESOLUTION</code></a>.</p>
+flag <a href="#CL_PLATFORM_HOST_TIMER_RESOLUTION"><code>CL_PLATFORM_<wbr>HOST_<wbr>TIMER_<wbr>RESOLUTION</code></a>.</p>
 </li>
 </ul>
 </div>
@@ -7087,27 +7006,28 @@
 the same timebase.</p>
 </div>
 <div class="paragraph">
-<p><a href="#clGetHostTimer"><strong>clGetHostTimer</strong></a> will return <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> with a time value in
+<p><a href="#clGetHostTimer"><strong>clGetHostTimer</strong></a> will return <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> with a time value in
 <em>host_timestamp</em> if provided.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_DEVICE"><code>CL_&#8203;INVALID_&#8203;DEVICE</code></a> if <em>device</em> is not a valid device.</p>
+<p><a href="#CL_INVALID_DEVICE"><code>CL_INVALID_<wbr>DEVICE</code></a> if <em>device</em> is not a valid device.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_OPERATION"><code>CL_&#8203;INVALID_&#8203;OPERATION</code></a> if the platform associated with <em>device</em> does not support Device and Host Timer Synchronization.</p>
+<p><a href="#CL_INVALID_OPERATION"><code>CL_INVALID_<wbr>OPERATION</code></a> if the platform associated with <em>device</em> does not
+support device and host timer synchronization.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>host_timestamp</em> is <code>NULL</code>.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>host_timestamp</em> is <code>NULL</code>.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -7116,7 +7036,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_partitioning_a_device">4.3. Partitioning a Device</h3>
+<h3 id="_partitioning_a_device"><a class="anchor" href="#_partitioning_a_device"></a>4.3. Partitioning a Device</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -7174,7 +7094,7 @@
 </li>
 <li>
 <p><em>num_devices</em> is the size of memory pointed to by <em>out_devices</em> specified as
-the number of cl_device_id entries.</p>
+the number of <code>cl_device_<wbr>id</code> entries.</p>
 </li>
 <li>
 <p><em>out_devices</em> is the buffer where the OpenCL sub-devices will be returned.
@@ -7210,71 +7130,71 @@
 </colgroup>
 <thead>
 <tr>
-<th class="tableblock halign-left valign-top"><strong>cl_device_partition_property enum</strong></th>
-<th class="tableblock halign-left valign-top">Partition value</th>
+<th class="tableblock halign-left valign-top">Partition Property</th>
+<th class="tableblock halign-left valign-top">Partition Value</th>
 <th class="tableblock halign-left valign-top">Description</th>
 </tr>
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_EQUALLY"></a><a href="#CL_DEVICE_PARTITION_EQUALLY"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;EQUALLY</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_EQUALLY"></a><a href="#CL_DEVICE_PARTITION_EQUALLY"><code>CL_DEVICE_<wbr>PARTITION_<wbr>EQUALLY</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Split the aggregate device into as many smaller aggregate devices as
         can be created, each containing <em>n</em> compute units.
         The value <em>n</em> is passed as the value accompanying this property.
         If <em>n</em> does not divide evenly into
-        <a href="#CL_DEVICE_MAX_COMPUTE_UNITS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;COMPUTE_&#8203;UNITS</code></a>, then the remaining compute
+        <a href="#CL_DEVICE_MAX_COMPUTE_UNITS"><code>CL_DEVICE_<wbr>MAX_<wbr>COMPUTE_<wbr>UNITS</code></a>, then the remaining compute
         units are not used.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_BY_COUNTS"></a><a href="#CL_DEVICE_PARTITION_BY_COUNTS"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;BY_&#8203;COUNTS</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_BY_COUNTS"></a><a href="#CL_DEVICE_PARTITION_BY_COUNTS"><code>CL_DEVICE_<wbr>PARTITION_<wbr>BY_<wbr>COUNTS</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This property is followed by a list of compute unit counts
-        terminated with 0 or <a id="CL_DEVICE_PARTITION_BY_COUNTS_LIST_END"></a><a href="#CL_DEVICE_PARTITION_BY_COUNTS_LIST_END"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;BY_&#8203;COUNTS_&#8203;LIST_&#8203;END</code></a>.
+        terminated with 0 or <a id="CL_DEVICE_PARTITION_BY_COUNTS_LIST_END"></a><a href="#CL_DEVICE_PARTITION_BY_COUNTS_LIST_END"><code>CL_DEVICE_<wbr>PARTITION_<wbr>BY_<wbr>COUNTS_<wbr>LIST_<wbr>END</code></a>.
         For each non-zero count <em>m</em> in the list, a sub-device is created
         with <em>m</em> compute units in it.</p>
 <p class="tableblock">        The number of non-zero count entries in the list may not exceed
-        <a href="#CL_DEVICE_PARTITION_MAX_SUB_DEVICES"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;MAX_&#8203;SUB_&#8203;DEVICES</code></a>.</p>
+        <a href="#CL_DEVICE_PARTITION_MAX_SUB_DEVICES"><code>CL_DEVICE_<wbr>PARTITION_<wbr>MAX_<wbr>SUB_<wbr>DEVICES</code></a>.</p>
 <p class="tableblock">        The total number of compute units specified may not exceed
-        <a href="#CL_DEVICE_MAX_COMPUTE_UNITS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;COMPUTE_&#8203;UNITS</code></a>.</p></td>
+        <a href="#CL_DEVICE_MAX_COMPUTE_UNITS"><code>CL_DEVICE_<wbr>MAX_<wbr>COMPUTE_<wbr>UNITS</code></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN"></a><a href="#CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;BY_&#8203;AFFINITY_&#8203;DOMAIN</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN"></a><a href="#CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN"><code>CL_DEVICE_<wbr>PARTITION_<wbr>BY_<wbr>AFFINITY_<wbr>DOMAIN</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_affinity_ domain</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>affinity_<wbr>domain</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Split the device into smaller aggregate devices containing one or
         more compute units that all share part of a cache hierarchy.
         The value accompanying this property may be drawn from the following
         list:</p>
-<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_NUMA"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;NUMA</code></a> - Split the device into sub-devices
+<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_NUMA"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>NUMA</code></a> - Split the device into sub-devices
         comprised of compute units that share a NUMA node.</p>
-<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;L4_&#8203;CACHE</code></a> - Split the device into
+<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>L4_<wbr>CACHE</code></a> - Split the device into
         sub-devices comprised of compute units that share a level 4 data
         cache.</p>
-<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;L3_&#8203;CACHE</code></a> - Split the device into
+<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>L3_<wbr>CACHE</code></a> - Split the device into
         sub-devices comprised of compute units that share a level 3 data
         cache.</p>
-<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;L2_&#8203;CACHE</code></a> - Split the device into
+<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>L2_<wbr>CACHE</code></a> - Split the device into
         sub-devices comprised of compute units that share a level 2 data
         cache.</p>
-<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;L1_&#8203;CACHE</code></a> - Split the device into
+<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>L1_<wbr>CACHE</code></a> - Split the device into
         sub-devices comprised of compute units that share a level 1 data
         cache.</p>
-<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE"><code>CL_&#8203;DEVICE_&#8203;AFFINITY_&#8203;DOMAIN_&#8203;NEXT_&#8203;PARTITIONABLE</code></a> - Split the device
+<p class="tableblock">        <a href="#CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE"><code>CL_DEVICE_<wbr>AFFINITY_<wbr>DOMAIN_<wbr>NEXT_<wbr>PARTITIONABLE</code></a> - Split the device
         along the next partitionable affinity domain.
         The implementation shall find the first level along which the device
         or sub-device may be further subdivided in the order NUMA, L4, L3,
         L2, L1, and partition the device into sub-devices comprised of
         compute units that share memory subsystems at this level.</p>
 <p class="tableblock">        The user may determine what happened by calling
-        <a href="#clGetDeviceInfo"><strong>clGetDeviceInfo</strong></a>(<a href="#CL_DEVICE_PARTITION_TYPE"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;TYPE</code></a>) on the sub-devices.</p></td>
+        <a href="#clGetDeviceInfo"><strong>clGetDeviceInfo</strong></a>(<a href="#CL_DEVICE_PARTITION_TYPE"><code>CL_DEVICE_<wbr>PARTITION_<wbr>TYPE</code></a>) on the sub-devices.</p></td>
 </tr>
 </tbody>
 </table>
 <div class="paragraph">
-<p><a href="#clCreateSubDevices"><strong>clCreateSubDevices</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the partition is created
+<p><a href="#clCreateSubDevices"><strong>clCreateSubDevices</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the partition is created
 successfully.
 Otherwise, it returns a <code>NULL</code> value with the following error values
 returned in <em>errcode_ret</em>:</p>
@@ -7282,37 +7202,37 @@
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_DEVICE"><code>CL_&#8203;INVALID_&#8203;DEVICE</code></a> if <em>in_device</em> is not a valid device.</p>
+<p><a href="#CL_INVALID_DEVICE"><code>CL_INVALID_<wbr>DEVICE</code></a> if <em>in_device</em> is not a valid device.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if values specified in <em>properties</em> are not valid or if
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if values specified in <em>properties</em> are not valid or if
 values specified in <em>properties</em> are valid but not supported by the
 device.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>out_devices</em> is not <code>NULL</code> and <em>num_devices</em> is
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>out_devices</em> is not <code>NULL</code> and <em>num_devices</em> is
 less than the number of sub-devices created by the partition scheme.</p>
 </li>
 <li>
-<p><a href="#CL_DEVICE_PARTITION_FAILED"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;FAILED</code></a> if the partition name is supported by the
+<p><a href="#CL_DEVICE_PARTITION_FAILED"><code>CL_DEVICE_<wbr>PARTITION_<wbr>FAILED</code></a> if the partition name is supported by the
 implementation but in_device could not be further partitioned.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_DEVICE_PARTITION_COUNT"><code>CL_&#8203;INVALID_&#8203;DEVICE_&#8203;PARTITION_&#8203;COUNT</code></a> if the partition name specified in
-<em>properties</em> is <a href="#CL_DEVICE_PARTITION_BY_COUNTS"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;BY_&#8203;COUNTS</code></a> and the number of
-sub-devices requested exceeds <a href="#CL_DEVICE_PARTITION_MAX_SUB_DEVICES"><code>CL_&#8203;DEVICE_&#8203;PARTITION_&#8203;MAX_&#8203;SUB_&#8203;DEVICES</code></a> or the
+<p><a href="#CL_INVALID_DEVICE_PARTITION_COUNT"><code>CL_INVALID_<wbr>DEVICE_<wbr>PARTITION_<wbr>COUNT</code></a> if the partition name specified in
+<em>properties</em> is <a href="#CL_DEVICE_PARTITION_BY_COUNTS"><code>CL_DEVICE_<wbr>PARTITION_<wbr>BY_<wbr>COUNTS</code></a> and the number of
+sub-devices requested exceeds <a href="#CL_DEVICE_PARTITION_MAX_SUB_DEVICES"><code>CL_DEVICE_<wbr>PARTITION_<wbr>MAX_<wbr>SUB_<wbr>DEVICES</code></a> or the
 total number of compute units requested exceeds
-<a href="#CL_DEVICE_MAX_COMPUTE_UNITS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;COMPUTE_&#8203;UNITS</code></a> for <em>in_device</em>, or the number of
+<a href="#CL_DEVICE_MAX_COMPUTE_UNITS"><code>CL_DEVICE_<wbr>MAX_<wbr>COMPUTE_<wbr>UNITS</code></a> for <em>in_device</em>, or the number of
 compute units requested for one or more sub-devices is less than zero or
 the number of sub-devices requested exceeds
-<a href="#CL_DEVICE_MAX_COMPUTE_UNITS"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;COMPUTE_&#8203;UNITS</code></a> for <em>in_device</em>.</p>
+<a href="#CL_DEVICE_MAX_COMPUTE_UNITS"><code>CL_DEVICE_<wbr>MAX_<wbr>COMPUTE_<wbr>UNITS</code></a> for <em>in_device</em>.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -7387,25 +7307,25 @@
 <div class="paragraph">
 <p><a href="#clRetainDevice"><strong>clRetainDevice</strong></a> increments the <em>device</em> reference count if <em>device</em> is a
 valid sub-device created by a call to <a href="#clCreateSubDevices"><strong>clCreateSubDevices</strong></a>.
-If <em>device</em> is a root level device i.e. a cl_device_id returned by
+If <em>device</em> is a root level device i.e. a <code>cl_device_<wbr>id</code> returned by
 <a href="#clGetDeviceIDs"><strong>clGetDeviceIDs</strong></a>, the <em>device</em> reference count remains unchanged.</p>
 </div>
 <div class="paragraph">
-<p><a href="#clRetainDevice"><strong>clRetainDevice</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed successfully
+<p><a href="#clRetainDevice"><strong>clRetainDevice</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed successfully
 or the device is a root-level device.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_DEVICE"><code>CL_&#8203;INVALID_&#8203;DEVICE</code></a> if <em>device</em> is not a valid device.</p>
+<p><a href="#CL_INVALID_DEVICE"><code>CL_INVALID_<wbr>DEVICE</code></a> if <em>device</em> is not a valid device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -7445,25 +7365,25 @@
 <div class="paragraph">
 <p><a href="#clReleaseDevice"><strong>clReleaseDevice</strong></a> decrements the <em>device</em> reference count if device is a
 valid sub-device created by a call to <a href="#clCreateSubDevices"><strong>clCreateSubDevices</strong></a>.
-If <em>device</em> is a root level device i.e. a cl_device_id returned by
+If <em>device</em> is a root level device i.e. a <code>cl_device_<wbr>id</code> returned by
 <a href="#clGetDeviceIDs"><strong>clGetDeviceIDs</strong></a>, the <em>device</em> reference count remains unchanged.</p>
 </div>
 <div class="paragraph">
-<p><a href="#clReleaseDevice"><strong>clReleaseDevice</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clReleaseDevice"><strong>clReleaseDevice</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_DEVICE"><code>CL_&#8203;INVALID_&#8203;DEVICE</code></a> if <em>device</em> is not a valid device.</p>
+<p><a href="#CL_INVALID_DEVICE"><code>CL_INVALID_<wbr>DEVICE</code></a> if <em>device</em> is not a valid device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -7479,7 +7399,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_contexts">4.4. Contexts</h3>
+<h3 id="_contexts"><a class="anchor" href="#_contexts"></a>4.4. Contexts</h3>
 <div class="openblock">
 <div class="content">
 <div class="paragraph">
@@ -7513,17 +7433,9 @@
 <p><em>num_devices</em> is the number of devices specified in the <em>devices</em> argument.</p>
 </li>
 <li>
-<p><em>devices</em> is a pointer to a list of unique devices<sup>9</sup> returned by
+<p><em>devices</em> is a pointer to a list of unique devices returned by
 <a href="#clGetDeviceIDs"><strong>clGetDeviceIDs</strong></a> or sub-devices created by <a href="#clCreateSubDevices"><strong>clCreateSubDevices</strong></a> for a
-platform.</p>
-<div class="dlist">
-<dl>
-<dt class="hdlist1">9</dt>
-<dd>
-<p>Duplicate devices specified in <em>devices</em> are ignored.</p>
-</dd>
-</dl>
-</div>
+platform. <sup class="footnote">[<a id="_footnoteref_11" class="footnote" href="#_footnotedef_11" title="View footnote.">11</a>]</sup></p>
 </li>
 <li>
 <p><em>pfn_notify</em> is a callback function that can be registered by the
@@ -7580,28 +7492,28 @@
 </colgroup>
 <thead>
 <tr>
-<th class="tableblock halign-left valign-top"><strong>cl_context_properties enum</strong></th>
-<th class="tableblock halign-left valign-top">Property value</th>
+<th class="tableblock halign-left valign-top">Context Property</th>
+<th class="tableblock halign-left valign-top">Property Value</th>
 <th class="tableblock halign-left valign-top">Description</th>
 </tr>
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_CONTEXT_PLATFORM"></a><a href="#CL_CONTEXT_PLATFORM"><code>CL_&#8203;CONTEXT_&#8203;PLATFORM</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_platform_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_CONTEXT_PLATFORM"></a><a href="#CL_CONTEXT_PLATFORM"><code>CL_CONTEXT_<wbr>PLATFORM</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_platform_<wbr>id</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Specifies the platform to use.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_CONTEXT_INTEROP_USER_SYNC"></a><a href="#CL_CONTEXT_INTEROP_USER_SYNC"><code>CL_&#8203;CONTEXT_&#8203;INTEROP_&#8203;USER_&#8203;SYNC</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_CONTEXT_INTEROP_USER_SYNC"></a><a href="#CL_CONTEXT_INTEROP_USER_SYNC"><code>CL_CONTEXT_<wbr>INTEROP_<wbr>USER_<wbr>SYNC</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_bool</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Specifies whether the user is responsible for synchronization
         between OpenCL and other APIs.
         Please refer to the specific sections in the OpenCL Extension
         Specification that describe sharing with other APIs for restrictions
         on using this flag.</p>
-<p class="tableblock">        If <a href="#CL_CONTEXT_INTEROP_USER_SYNC"><code>CL_&#8203;CONTEXT_&#8203;INTEROP_&#8203;USER_&#8203;SYNC</code></a> is not specified, a default of
-        <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> is assumed.</p></td>
+<p class="tableblock">        If <a href="#CL_CONTEXT_INTEROP_USER_SYNC"><code>CL_CONTEXT_<wbr>INTEROP_<wbr>USER_<wbr>SYNC</code></a> is not specified, a default of
+        <a href="#CL_FALSE"><code>CL_FALSE</code></a> is assumed.</p></td>
 </tr>
 </tbody>
 </table>
@@ -7622,47 +7534,47 @@
 </div>
 <div class="paragraph">
 <p><a href="#clCreateContext"><strong>clCreateContext</strong></a> returns a valid non-zero context and <em>errcode_ret</em> is set
-to <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the context is created successfully.
+to <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the context is created successfully.
 Otherwise, it returns a <code>NULL</code> value with the following error values
 returned in <em>errcode_ret</em>:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_PLATFORM"><code>CL_&#8203;INVALID_&#8203;PLATFORM</code></a> if <em>properties</em> is <code>NULL</code> and no platform could be
+<p><a href="#CL_INVALID_PLATFORM"><code>CL_INVALID_<wbr>PLATFORM</code></a> if <em>properties</em> is <code>NULL</code> and no platform could be
 selected or if platform value specified in <em>properties</em> is not a valid
 platform.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_PROPERTY"><code>CL_&#8203;INVALID_&#8203;PROPERTY</code></a> if context property name in <em>properties</em> is not a
+<p><a href="#CL_INVALID_PROPERTY"><code>CL_INVALID_<wbr>PROPERTY</code></a> if context property name in <em>properties</em> is not a
 supported property name, if the value specified for a supported property
 name is not valid, or if the same property name is specified more than
 once.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>devices</em> is <code>NULL</code>.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>devices</em> is <code>NULL</code>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>num_devices</em> is equal to zero.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>num_devices</em> is equal to zero.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>pfn_notify</em> is <code>NULL</code> but <em>user_data</em> is not
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>pfn_notify</em> is <code>NULL</code> but <em>user_data</em> is not
 <code>NULL</code>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_DEVICE"><code>CL_&#8203;INVALID_&#8203;DEVICE</code></a> if any device in <em>devices</em> is not a valid device.</p>
+<p><a href="#CL_INVALID_DEVICE"><code>CL_INVALID_<wbr>DEVICE</code></a> if any device in <em>devices</em> is not a valid device.</p>
 </li>
 <li>
-<p><a href="#CL_DEVICE_NOT_AVAILABLE"><code>CL_&#8203;DEVICE_&#8203;NOT_&#8203;AVAILABLE</code></a> if a device in <em>devices</em> is currently not
+<p><a href="#CL_DEVICE_NOT_AVAILABLE"><code>CL_DEVICE_<wbr>NOT_<wbr>AVAILABLE</code></a> if a device in <em>devices</em> is currently not
 available even though the device was returned by <a href="#clGetDeviceIDs"><strong>clGetDeviceIDs</strong></a>.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -7694,8 +7606,8 @@
 <div class="openblock">
 <div class="content">
 <div class="paragraph">
-<p>To create an OpenCL context from a specific device type<sup>10</sup>, call the
-function:</p>
+<p>To create an OpenCL context from a specific device
+type <sup class="footnote">[<a id="_footnoteref_12" class="footnote" href="#_footnotedef_12" title="View footnote.">12</a>]</sup>, call the function:</p>
 </div>
 <div id="clCreateContextFromType" class="listingblock">
 <div class="content">
@@ -7721,7 +7633,7 @@
 </li>
 <li>
 <p><em>device_type</em> is a bit-field that identifies the type of device and is
-described in the <a href="#device-categories-table">Device Categories</a> table.</p>
+described in the <a href="#device-types-table">Device Types</a> table.</p>
 </li>
 <li>
 <p><em>pfn_notify</em> and <em>user_data</em> are described in <a href="#clCreateContext"><strong>clCreateContext</strong></a>.</p>
@@ -7738,56 +7650,47 @@
 The context does not reference any sub-devices that may have been created
 from these devices.</p>
 </div>
-<div class="dlist">
-<dl>
-<dt class="hdlist1">10</dt>
-<dd>
-<p><a href="#clCreateContextFromType"><strong>clCreateContextFromType</strong></a> may return all or a subset of the actual
-physical devices present in the platform and that match device_type.</p>
-</dd>
-</dl>
-</div>
 <div class="paragraph">
 <p><a href="#clCreateContextFromType"><strong>clCreateContextFromType</strong></a> returns a valid non-zero context and <em>errcode_ret</em>
-is set to <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the context is created successfully.
+is set to <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the context is created successfully.
 Otherwise, it returns a <code>NULL</code> value with the following error values
 returned in <em>errcode_ret</em>:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_PLATFORM"><code>CL_&#8203;INVALID_&#8203;PLATFORM</code></a> if <em>properties</em> is <code>NULL</code> and no platform could be
+<p><a href="#CL_INVALID_PLATFORM"><code>CL_INVALID_<wbr>PLATFORM</code></a> if <em>properties</em> is <code>NULL</code> and no platform could be
 selected or if platform value specified in <em>properties</em> is not a valid
 platform.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_PROPERTY"><code>CL_&#8203;INVALID_&#8203;PROPERTY</code></a> if context property name in <em>properties</em> is not a
+<p><a href="#CL_INVALID_PROPERTY"><code>CL_INVALID_<wbr>PROPERTY</code></a> if context property name in <em>properties</em> is not a
 supported property name, if the value specified for a supported property
 name is not valid, or if the same property name is specified more than
 once.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>pfn_notify</em> is <code>NULL</code> but <em>user_data</em> is not
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>pfn_notify</em> is <code>NULL</code> but <em>user_data</em> is not
 <code>NULL</code>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_DEVICE_TYPE"><code>CL_&#8203;INVALID_&#8203;DEVICE_&#8203;TYPE</code></a> if <em>device_type</em> is not a valid value.</p>
+<p><a href="#CL_INVALID_DEVICE_TYPE"><code>CL_INVALID_<wbr>DEVICE_<wbr>TYPE</code></a> if <em>device_type</em> is not a valid value.</p>
 </li>
 <li>
-<p><a href="#CL_DEVICE_NOT_AVAILABLE"><code>CL_&#8203;DEVICE_&#8203;NOT_&#8203;AVAILABLE</code></a> if no devices that match <em>device_type</em> and
+<p><a href="#CL_DEVICE_NOT_AVAILABLE"><code>CL_DEVICE_<wbr>NOT_<wbr>AVAILABLE</code></a> if no devices that match <em>device_type</em> and
 property values specified in <em>properties</em> are currently available.</p>
 </li>
 <li>
-<p><a href="#CL_DEVICE_NOT_FOUND"><code>CL_&#8203;DEVICE_&#8203;NOT_&#8203;FOUND</code></a> if no devices that match <em>device_type</em> and property
+<p><a href="#CL_DEVICE_NOT_FOUND"><code>CL_DEVICE_<wbr>NOT_<wbr>FOUND</code></a> if no devices that match <em>device_type</em> and property
 values specified in <em>properties</em> were found.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -7825,21 +7728,21 @@
 the problem of a context being used by a library no longer being valid.</p>
 </div>
 <div class="paragraph">
-<p><a href="#clRetainContext"><strong>clRetainContext</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clRetainContext"><strong>clRetainContext</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if <em>context</em> is not a valid OpenCL context.</p>
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if <em>context</em> is not a valid OpenCL context.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -7873,21 +7776,21 @@
 the object or by calling <a href="#clRetainContext"><strong>clRetainContext</strong></a> causes undefined behavior.</p>
 </div>
 <div class="paragraph">
-<p><a href="#clReleaseContext"><strong>clReleaseContext</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clReleaseContext"><strong>clReleaseContext</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if <em>context</em> is not a valid OpenCL context.</p>
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if <em>context</em> is not a valid OpenCL context.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -7950,79 +7853,162 @@
 </colgroup>
 <thead>
 <tr>
-<th class="tableblock halign-left valign-top"><strong>cl_context_info</strong></th>
+<th class="tableblock halign-left valign-top">Context Info</th>
 <th class="tableblock halign-left valign-top">Return Type</th>
 <th class="tableblock halign-left valign-top">Information returned in param_value</th>
 </tr>
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_CONTEXT_REFERENCE_COUNT"></a><a href="#CL_CONTEXT_REFERENCE_COUNT"><code>CL_&#8203;CONTEXT_&#8203;REFERENCE_&#8203;COUNT</code></a><sup>11</sup></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_CONTEXT_REFERENCE_COUNT"></a><a href="#CL_CONTEXT_REFERENCE_COUNT"><code>CL_CONTEXT_<wbr>REFERENCE_<wbr>COUNT</code></a> <sup class="footnote">[<a id="_footnoteref_13" class="footnote" href="#_footnotedef_13" title="View footnote.">13</a>]</sup></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Return the <em>context</em> reference count.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_CONTEXT_NUM_DEVICES"></a><a href="#CL_CONTEXT_NUM_DEVICES"><code>CL_&#8203;CONTEXT_&#8203;NUM_&#8203;DEVICES</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_CONTEXT_NUM_DEVICES"></a><a href="#CL_CONTEXT_NUM_DEVICES"><code>CL_CONTEXT_<wbr>NUM_<wbr>DEVICES</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.1.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Return the number of devices in <em>context</em>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_CONTEXT_DEVICES"></a><a href="#CL_CONTEXT_DEVICES"><code>CL_&#8203;CONTEXT_&#8203;DEVICES</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_id[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_CONTEXT_DEVICES"></a><a href="#CL_CONTEXT_DEVICES"><code>CL_CONTEXT_<wbr>DEVICES</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>id</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Return the list of devices and sub-devices in <em>context</em>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_CONTEXT_PROPERTIES"></a><a href="#CL_CONTEXT_PROPERTIES"><code>CL_&#8203;CONTEXT_&#8203;PROPERTIES</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_context_properties[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_CONTEXT_PROPERTIES"></a><a href="#CL_CONTEXT_PROPERTIES"><code>CL_CONTEXT_<wbr>PROPERTIES</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_context_<wbr>properties</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Return the properties argument specified in <a href="#clCreateContext"><strong>clCreateContext</strong></a> or
         <a href="#clCreateContextFromType"><strong>clCreateContextFromType</strong></a>.</p>
 <p class="tableblock">        If the <em>properties</em> argument specified in <a href="#clCreateContext"><strong>clCreateContext</strong></a> or
-        <a href="#clCreateContextFromType"><strong>clCreateContextFromType</strong></a> used to create <em>context</em> is not <code>NULL</code>, the
-        implementation must return the values specified in the properties
-        argument.</p>
+        <a href="#clCreateContextFromType"><strong>clCreateContextFromType</strong></a> used to create <em>context</em> was not <code>NULL</code>,
+        the implementation must return the values specified in the
+        properties argument in the same order and without including
+        additional properties.</p>
 <p class="tableblock">        If the <em>properties</em> argument specified in <a href="#clCreateContext"><strong>clCreateContext</strong></a> or
-        <a href="#clCreateContextFromType"><strong>clCreateContextFromType</strong></a> used to create <em>context</em> is <code>NULL</code>, the
-        implementation may return either a <em>param_value_size_ret</em> of 0
-        i.e. there is no context property value to be returned or can return
-        a context property value of 0 (where 0 is used to terminate the
-        context properties list) in the memory that <em>param_value</em> points
-        to.</p></td>
+        <a href="#clCreateContextFromType"><strong>clCreateContextFromType</strong></a> used to create <em>context</em> was <code>NULL</code>, the
+        implementation must return <em>param_value_size_ret</em> equal to 0,
+        indicating that there are no properties to be returned.</p></td>
 </tr>
 </tbody>
 </table>
-<div class="dlist">
-<dl>
-<dt class="hdlist1">11</dt>
-<dd>
-<p>The reference count returned should be considered immediately stale.
-It is unsuitable for general use in applications.
-This feature is provided for identifying memory leaks.</p>
-</dd>
-</dl>
-</div>
 <div class="paragraph">
-<p><a href="#clGetContextInfo"><strong>clGetContextInfo</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clGetContextInfo"><strong>clGetContextInfo</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>param_name</em> is not one of the supported values or
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>param_name</em> is not one of the supported values or
 if size in bytes specified by <em>param_value_size</em> is &lt; size of return
 type as specified in the <a href="#context-info-table">Context Attributes</a>
 table and <em>param_value</em> is not a <code>NULL</code> value.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
+required by the OpenCL implementation on the host.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="openblock">
+<div class="content">
+<div class="paragraph">
+<p>To register a callback function with a context that is called when
+the context is destroyed, call the function</p>
+</div>
+<div id="clSetContextDestructorCallback" class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="c++">cl_int clSetContextDestructorCallback(
+    cl_context context,
+    <span class="directive">void</span> (CL_CALLBACK* pfn_notify)(cl_context context, <span class="directive">void</span>* user_data),
+    <span class="directive">void</span>* user_data);</code></pre>
+</div>
+</div>
+<div class="admonitionblock important">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-important" title="Important"></i>
+</td>
+<td class="content">
+<a href="#clSetContextDestructorCallback"><strong>clSetContextDestructorCallback</strong></a> is <a href="#unified-spec">missing before</a> version 3.0.
+</td>
+</tr>
+</table>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><em>context</em> specifies the OpenCL context to register the callback to.</p>
+</li>
+<li>
+<p><em>pfn_notify</em> is the callback function to register.
+This callback function may be called asynchronously by the OpenCL
+implementation.
+It is the application&#8217;s responsibility to ensure that the callback function
+is thread-safe.
+The parameters to this callback function are:</p>
+<div class="ulist">
+<ul>
+<li>
+<p><em>context</em> is the OpenCL context being deleted.
+When the callback function is called by the implementation, this context
+is no longer valid.
+<em>context</em> is only provided for reference purposes.</p>
+</li>
+<li>
+<p><em>user_data</em> is a pointer to user-supplied data.</p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><em>user_data</em> will be passed as the <em>user_data</em> argument when <em>pfn_notify</em> is
+called.
+<em>user_data</em> can be <code>NULL</code>.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>Each call to <a href="#clSetContextDestructorCallback"><strong>clSetContextDestructorCallback</strong></a> registers the specified
+callback function on a destructor callback stack associated with <em>context</em>.
+The registered callback functions are called in the reverse order in
+which they were registered.
+If a context callback function was specified when <em>context</em> was created,
+it will not be called after any context destructor callback is called.
+Therefore, the context destructor callback provides a mechanism for an
+application to safely re-use or free any <em>user_data</em> specified for the
+context callback function when <em>context</em> was created.</p>
+</div>
+<div class="paragraph">
+<p><a href="#clSetContextDestructorCallback"><strong>clSetContextDestructorCallback</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is
+executed successfully.
+Otherwise, it returns one of the following errors:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
+</li>
+<li>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>pfn_notify</em> is <code>NULL</code>.</p>
+</li>
+<li>
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
+by the OpenCL implementation on the device.</p>
+</li>
+<li>
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -8033,7 +8019,7 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="opencl-runtime">5. The OpenCL Runtime</h2>
+<h2 id="opencl-runtime"><a class="anchor" href="#opencl-runtime"></a>5. The OpenCL Runtime</h2>
 <div class="sectionbody">
 <div class="paragraph">
 <p>In this section we describe the API calls that manage OpenCL objects such as
@@ -8043,7 +8029,7 @@
 object.</p>
 </div>
 <div class="sect2">
-<h3 id="_command_queues">5.1. Command Queues</h3>
+<h3 id="_command_queues"><a class="anchor" href="#_command_queues"></a>5.1. Command Queues</h3>
 <div class="paragraph">
 <p>OpenCL objects such as memory, program and kernel objects are created using
 a context.
@@ -8110,6 +8096,10 @@
 <em>properties</em> can be <code>NULL</code> in which case the default values for supported
 command-queue properties will be used.</p>
 </li>
+<li>
+<p><em>errcode_ret</em> will return an appropriate error code.
+If <em>errcode_ret</em> is <code>NULL</code>, no error code is returned.</p>
+</li>
 </ul>
 </div>
 <table id="queue-properties-table" class="tableblock frame-all grid-all stretch">
@@ -8121,82 +8111,58 @@
 </colgroup>
 <thead>
 <tr>
-<th class="tableblock halign-left valign-top"><strong>Queue Properties</strong></th>
+<th class="tableblock halign-left valign-top">Queue Property</th>
 <th class="tableblock halign-left valign-top">Property Value</th>
 <th class="tableblock halign-left valign-top">Description</th>
 </tr>
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_PROPERTIES"></a><a href="#CL_QUEUE_PROPERTIES"><code>CL_&#8203;QUEUE_&#8203;PROPERTIES</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_bitfield</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_PROPERTIES"></a><a href="#CL_QUEUE_PROPERTIES"><code>CL_QUEUE_<wbr>PROPERTIES</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_command_<wbr>queue_<wbr>properties</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This is a bitfield and can be set to a combination of the following
         values:</p>
-<p class="tableblock">        <a id="CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"></a><a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_&#8203;QUEUE_&#8203;OUT_&#8203;OF_&#8203;ORDER_&#8203;EXEC_&#8203;MODE_&#8203;ENABLE</code></a> - Determines whether the
+<p class="tableblock">        <a id="CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"></a><a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_QUEUE_<wbr>OUT_<wbr>OF_<wbr>ORDER_<wbr>EXEC_<wbr>MODE_<wbr>ENABLE</code></a> - Determines whether the
         commands queued in the command-queue are executed in-order or
         out-of-order.
         If set, the commands in the command-queue are executed out-of-order.
         Otherwise, commands are executed in-order.</p>
-<p class="tableblock">        <a id="CL_QUEUE_PROFILING_ENABLE"></a><a href="#CL_QUEUE_PROFILING_ENABLE"><code>CL_&#8203;QUEUE_&#8203;PROFILING_&#8203;ENABLE</code></a> - Enable or disable profiling of commands
+<p class="tableblock">        <a id="CL_QUEUE_PROFILING_ENABLE"></a><a href="#CL_QUEUE_PROFILING_ENABLE"><code>CL_QUEUE_<wbr>PROFILING_<wbr>ENABLE</code></a> - Enable or disable profiling of commands
         in the command-queue.
         If set, the profiling of commands is enabled.
         Otherwise profiling of commands is disabled.</p>
-<p class="tableblock">        <a id="CL_QUEUE_ON_DEVICE"></a><a href="#CL_QUEUE_ON_DEVICE"><code>CL_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE</code></a> - Indicates that this is a device queue.
-        If <a href="#CL_QUEUE_ON_DEVICE"><code>CL_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE</code></a> is set,
-        <a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_&#8203;QUEUE_&#8203;OUT_&#8203;OF_&#8203;ORDER_&#8203;EXEC_&#8203;MODE_&#8203;ENABLE</code></a><sup>1</sup> must also be set.
+<p class="tableblock">        <a id="CL_QUEUE_ON_DEVICE"></a><a href="#CL_QUEUE_ON_DEVICE"><code>CL_QUEUE_<wbr>ON_<wbr>DEVICE</code></a> - Indicates that this is a device queue.
+        If <a href="#CL_QUEUE_ON_DEVICE"><code>CL_QUEUE_<wbr>ON_<wbr>DEVICE</code></a> is set,
+        <a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_QUEUE_<wbr>OUT_<wbr>OF_<wbr>ORDER_<wbr>EXEC_<wbr>MODE_<wbr>ENABLE</code></a>
+        <sup class="footnote">[<a id="_footnoteref_14" class="footnote" href="#_footnotedef_14" title="View footnote.">14</a>]</sup>
+        must also be set.
 <a href="#unified-spec">Missing before</a> version 2.0.</p>
-<p class="tableblock">        <a id="CL_QUEUE_ON_DEVICE_DEFAULT"></a><a href="#CL_QUEUE_ON_DEVICE_DEFAULT"><code>CL_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE_&#8203;DEFAULT</code></a><sup>2</sup> - indicates that this is the default
-        device queue.
-        This can only be used with <a href="#CL_QUEUE_ON_DEVICE"><code>CL_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE</code></a>.
+<p class="tableblock">        <a id="CL_QUEUE_ON_DEVICE_DEFAULT"></a><a href="#CL_QUEUE_ON_DEVICE_DEFAULT"><code>CL_QUEUE_<wbr>ON_<wbr>DEVICE_<wbr>DEFAULT</code></a>
+        <sup class="footnote">[<a id="_footnoteref_15" class="footnote" href="#_footnotedef_15" title="View footnote.">15</a>]</sup> -
+        indicates that this is the default device queue.
+        This can only be used with <a href="#CL_QUEUE_ON_DEVICE"><code>CL_QUEUE_<wbr>ON_<wbr>DEVICE</code></a>.
 <a href="#unified-spec">Missing before</a> version 2.0.</p>
-<p class="tableblock">        If <a href="#CL_QUEUE_PROPERTIES"><code>CL_&#8203;QUEUE_&#8203;PROPERTIES</code></a> is not specified an in-order host command
+<p class="tableblock">        If <a href="#CL_QUEUE_PROPERTIES"><code>CL_QUEUE_<wbr>PROPERTIES</code></a> is not specified an in-order host command
         queue is created for the specified device</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_SIZE"></a><a href="#CL_QUEUE_SIZE"><code>CL_&#8203;QUEUE_&#8203;SIZE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_SIZE"></a><a href="#CL_QUEUE_SIZE"><code>CL_QUEUE_<wbr>SIZE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Specifies the size of the device queue in bytes.</p>
-<p class="tableblock">        This can only be specified if <a href="#CL_QUEUE_ON_DEVICE"><code>CL_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE</code></a> is set in
-        <a href="#CL_QUEUE_PROPERTIES"><code>CL_&#8203;QUEUE_&#8203;PROPERTIES</code></a>.
-        This must be a value ≤ <a href="#CL_DEVICE_QUEUE_ON_DEVICE_MAX_SIZE"><code>CL_&#8203;DEVICE_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE_&#8203;MAX_&#8203;SIZE</code></a>.</p>
+<p class="tableblock">        This can only be specified if <a href="#CL_QUEUE_ON_DEVICE"><code>CL_QUEUE_<wbr>ON_<wbr>DEVICE</code></a> is set in
+        <a href="#CL_QUEUE_PROPERTIES"><code>CL_QUEUE_<wbr>PROPERTIES</code></a>.
+        This must be a value ≤ <a href="#CL_DEVICE_QUEUE_ON_DEVICE_MAX_SIZE"><code>CL_DEVICE_<wbr>QUEUE_<wbr>ON_<wbr>DEVICE_<wbr>MAX_<wbr>SIZE</code></a>.</p>
 <p class="tableblock">        For best performance, this should be ≤
-        <a href="#CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE"><code>CL_&#8203;DEVICE_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE_&#8203;PREFERRED_&#8203;SIZE</code></a>.</p>
-<p class="tableblock">        If <a href="#CL_QUEUE_SIZE"><code>CL_&#8203;QUEUE_&#8203;SIZE</code></a> is not specified, the device queue is created with
-        <a href="#CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE"><code>CL_&#8203;DEVICE_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE_&#8203;PREFERRED_&#8203;SIZE</code></a> as the size of the queue.</p></td>
+        <a href="#CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE"><code>CL_DEVICE_<wbr>QUEUE_<wbr>ON_<wbr>DEVICE_<wbr>PREFERRED_<wbr>SIZE</code></a>.</p>
+<p class="tableblock">        If <a href="#CL_QUEUE_SIZE"><code>CL_QUEUE_<wbr>SIZE</code></a> is not specified, the device queue is created with
+        <a href="#CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE"><code>CL_DEVICE_<wbr>QUEUE_<wbr>ON_<wbr>DEVICE_<wbr>PREFERRED_<wbr>SIZE</code></a> as the size of the queue.</p></td>
 </tr>
 </tbody>
 </table>
-<div class="dlist">
-<dl>
-<dt class="hdlist1">1</dt>
-<dd>
-<p>Only out-of-order device queues are supported.</p>
-</dd>
-<dt class="hdlist1">2</dt>
-<dd>
-<p>The application must create the default device queue if any kernels
-containing calls to get_default_queue are enqueued.
-There can only be one default device queue for each device within a
-context.
-<a href="#clCreateCommandQueueWithProperties"><strong>clCreateCommandQueueWithProperties</strong></a> with <a href="#CL_QUEUE_PROPERTIES"><code>CL_&#8203;QUEUE_&#8203;PROPERTIES</code></a> set to
-<a href="#CL_QUEUE_ON_DEVICE"><code>CL_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE</code></a> or <a href="#CL_QUEUE_ON_DEVICE_DEFAULT"><code>CL_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE_&#8203;DEFAULT</code></a> will return the default
-device queue that has already been created and increment its retain
-count by 1.</p>
-<div class="ulist">
-<ul>
-<li>
-<p><em>errcode_ret</em> will return an appropriate error code.
-If <em>errcode_ret</em> is <code>NULL</code>, no error code is returned.</p>
-</li>
-</ul>
-</div>
-</dd>
-</dl>
-</div>
 <div class="paragraph">
 <p><a href="#clCreateCommandQueueWithProperties"><strong>clCreateCommandQueueWithProperties</strong></a> returns a valid non-zero command-queue
-and <em>errcode_ret</em> is set to <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the command-queue is created
+and <em>errcode_ret</em> is set to <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the command-queue is created
 successfully.
 Otherwise, it returns a <code>NULL</code> value with one of the following error values
 returned in <em>errcode_ret</em>:</p>
@@ -8204,25 +8170,25 @@
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_DEVICE"><code>CL_&#8203;INVALID_&#8203;DEVICE</code></a> if <em>device</em> is not a valid device or is not associated
+<p><a href="#CL_INVALID_DEVICE"><code>CL_INVALID_<wbr>DEVICE</code></a> if <em>device</em> is not a valid device or is not associated
 with <em>context</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if values specified in <em>properties</em> are not valid.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if values specified in <em>properties</em> are not valid.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_QUEUE_PROPERTIES"><code>CL_&#8203;INVALID_&#8203;QUEUE_&#8203;PROPERTIES</code></a> if values specified in <em>properties</em> are
+<p><a href="#CL_INVALID_QUEUE_PROPERTIES"><code>CL_INVALID_<wbr>QUEUE_<wbr>PROPERTIES</code></a> if values specified in <em>properties</em> are
 valid but are not supported by the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -8293,14 +8259,14 @@
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_&#8203;QUEUE_&#8203;OUT_&#8203;OF_&#8203;ORDER_&#8203;EXEC_&#8203;MODE_&#8203;ENABLE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_QUEUE_<wbr>OUT_<wbr>OF_<wbr>ORDER_<wbr>EXEC_<wbr>MODE_<wbr>ENABLE</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Determines whether the commands queued in the command-queue are executed
     in-order or out-of-order.
     If set, the commands in the command-queue are executed out-of-order.
     Otherwise, commands are executed in-order.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#CL_QUEUE_PROFILING_ENABLE"><code>CL_&#8203;QUEUE_&#8203;PROFILING_&#8203;ENABLE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#CL_QUEUE_PROFILING_ENABLE"><code>CL_QUEUE_<wbr>PROFILING_<wbr>ENABLE</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Enable or disable profiling of commands in the command-queue.
     If set, the profiling of commands is enabled.
     Otherwise profiling of commands is disabled.</p></td>
@@ -8317,32 +8283,32 @@
 </div>
 <div class="paragraph">
 <p><a href="#clCreateCommandQueue"><strong>clCreateCommandQueue</strong></a> returns a valid non-zero command-queue and <em>errcode_ret</em>
-is set to <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the command-queue is created successfully.
+is set to <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the command-queue is created successfully.
 Otherwise, it returns a <code>NULL</code> value with one of the following error values
 returned in <em>errcode_ret</em>:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_DEVICE"><code>CL_&#8203;INVALID_&#8203;DEVICE</code></a> if <em>device</em> is not a valid device or is not associated
+<p><a href="#CL_INVALID_DEVICE"><code>CL_INVALID_<wbr>DEVICE</code></a> if <em>device</em> is not a valid device or is not associated
 with <em>context</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if values specified in <em>properties</em> are not valid.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if values specified in <em>properties</em> are not valid.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_QUEUE_PROPERTIES"><code>CL_&#8203;INVALID_&#8203;QUEUE_&#8203;PROPERTIES</code></a> if values specified in <em>properties</em> are
+<p><a href="#CL_INVALID_QUEUE_PROPERTIES"><code>CL_INVALID_<wbr>QUEUE_<wbr>PROPERTIES</code></a> if values specified in <em>properties</em> are
 valid but are not supported by the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -8391,35 +8357,35 @@
 <div class="paragraph">
 <p><a href="#clSetDefaultDeviceCommandQueue"><strong>clSetDefaultDeviceCommandQueue</strong></a> may be used to replace a default device
 command queue created with <a href="#clCreateCommandQueueWithProperties"><strong>clCreateCommandQueueWithProperties</strong></a> and the
-<a href="#CL_QUEUE_ON_DEVICE_DEFAULT"><code>CL_&#8203;QUEUE_&#8203;ON_&#8203;DEVICE_&#8203;DEFAULT</code></a> flag.</p>
+<a href="#CL_QUEUE_ON_DEVICE_DEFAULT"><code>CL_QUEUE_<wbr>ON_<wbr>DEVICE_<wbr>DEFAULT</code></a> flag.</p>
 </div>
 <div class="paragraph">
-<p><a href="#clSetDefaultDeviceCommandQueue"><strong>clSetDefaultDeviceCommandQueue</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is
+<p><a href="#clSetDefaultDeviceCommandQueue"><strong>clSetDefaultDeviceCommandQueue</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is
 executed successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_DEVICE"><code>CL_&#8203;INVALID_&#8203;DEVICE</code></a> if <em>device</em> is not a valid device or is not associated
+<p><a href="#CL_INVALID_DEVICE"><code>CL_INVALID_<wbr>DEVICE</code></a> if <em>device</em> is not a valid device or is not associated
 with <em>context</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_OPERATION"><code>CL_&#8203;INVALID_&#8203;OPERATION</code></a> if <em>device</em> does not support On-Device Queues.</p>
+<p><a href="#CL_INVALID_OPERATION"><code>CL_INVALID_<wbr>OPERATION</code></a> if <em>device</em> does not support a replaceable default on-device queue.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_&#8203;INVALID_&#8203;COMMAND_&#8203;QUEUE</code></a> if <em>command_queue</em> is not a valid command-queue
+<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_INVALID_<wbr>COMMAND_<wbr>QUEUE</code></a> if <em>command_queue</em> is not a valid command-queue
 for <em>device</em>.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -8459,22 +8425,22 @@
 being valid.</p>
 </div>
 <div class="paragraph">
-<p><a href="#clRetainCommandQueue"><strong>clRetainCommandQueue</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clRetainCommandQueue"><strong>clRetainCommandQueue</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_&#8203;INVALID_&#8203;COMMAND_&#8203;QUEUE</code></a> if <em>command_queue</em> is not a valid
+<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_INVALID_<wbr>COMMAND_<wbr>QUEUE</code></a> if <em>command_queue</em> is not a valid
 command-queue.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -8514,22 +8480,22 @@
 the object or by calling <a href="#clRetainCommandQueue"><strong>clRetainCommandQueue</strong></a> causes undefined behavior.</p>
 </div>
 <div class="paragraph">
-<p><a href="#clReleaseCommandQueue"><strong>clReleaseCommandQueue</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clReleaseCommandQueue"><strong>clReleaseCommandQueue</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_&#8203;INVALID_&#8203;COMMAND_&#8203;QUEUE</code></a> if <em>command_queue</em> is not a valid
+<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_INVALID_<wbr>COMMAND_<wbr>QUEUE</code></a> if <em>command_queue</em> is not a valid
 command-queue.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -8592,101 +8558,92 @@
 </colgroup>
 <thead>
 <tr>
-<th class="tableblock halign-left valign-top"><strong>cl_command_queue_info</strong></th>
+<th class="tableblock halign-left valign-top">Queue Info</th>
 <th class="tableblock halign-left valign-top">Return Type</th>
 <th class="tableblock halign-left valign-top">Information returned in param_value</th>
 </tr>
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_CONTEXT"></a><a href="#CL_QUEUE_CONTEXT"><code>CL_&#8203;QUEUE_&#8203;CONTEXT</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_context</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_CONTEXT"></a><a href="#CL_QUEUE_CONTEXT"><code>CL_QUEUE_<wbr>CONTEXT</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_context</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Return the context specified when the command-queue is created.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_DEVICE"></a><a href="#CL_QUEUE_DEVICE"><code>CL_&#8203;QUEUE_&#8203;DEVICE</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_device_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_DEVICE"></a><a href="#CL_QUEUE_DEVICE"><code>CL_QUEUE_<wbr>DEVICE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_device_<wbr>id</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Return the device specified when the command-queue is created.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_REFERENCE_COUNT"></a><a href="#CL_QUEUE_REFERENCE_COUNT"><code>CL_&#8203;QUEUE_&#8203;REFERENCE_&#8203;COUNT</code></a><sup>3</sup></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_REFERENCE_COUNT"></a><a href="#CL_QUEUE_REFERENCE_COUNT"><code>CL_QUEUE_<wbr>REFERENCE_<wbr>COUNT</code></a> <sup class="footnote">[<a id="_footnoteref_16" class="footnote" href="#_footnotedef_16" title="View footnote.">16</a>]</sup></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Return the command-queue reference count.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_PROPERTIES"></a><a href="#CL_QUEUE_PROPERTIES"><code>CL_&#8203;QUEUE_&#8203;PROPERTIES</code></a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_command_queue_properties</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_PROPERTIES"></a><a href="#CL_QUEUE_PROPERTIES"><code>CL_QUEUE_<wbr>PROPERTIES</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_command_<wbr>queue_<wbr>properties</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Return the currently specified properties for the command-queue.
         These properties are specified by the value associated with the
-        <a href="#CL_QUEUE_PROPERTIES"><code>CL_&#8203;QUEUE_&#8203;PROPERTIES</code></a> passed in <em>properties</em> argument in
+        <a href="#CL_QUEUE_PROPERTIES"><code>CL_QUEUE_<wbr>PROPERTIES</code></a> passed in <em>properties</em> argument in
         <a href="#clCreateCommandQueueWithProperties"><strong>clCreateCommandQueueWithProperties</strong></a>, or the value of the <em>properties</em>
         argument in <a href="#clCreateCommandQueue"><strong>clCreateCommandQueue</strong></a>.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_PROPERTIES_ARRAY"></a><a href="#CL_QUEUE_PROPERTIES_ARRAY"><code>CL_&#8203;QUEUE_&#8203;PROPERTIES_&#8203;ARRAY</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_PROPERTIES_ARRAY"></a><a href="#CL_QUEUE_PROPERTIES_ARRAY"><code>CL_QUEUE_<wbr>PROPERTIES_<wbr>ARRAY</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 3.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_queue_properties[]</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_queue_<wbr>properties</code>[]</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Return the properties argument specified in
         <a href="#clCreateCommandQueueWithProperties"><strong>clCreateCommandQueueWithProperties</strong></a>.</p>
 <p class="tableblock">        If the <em>properties</em> argument specified in
-        <a href="#clCreateCommandQueueWithProperties"><strong>clCreateCommandQueueWithProperties</strong></a> used to create <em>command_queue</em> was
-        not <code>NULL</code>, the implementation must return the values specified in the
-        properties argument.</p>
+        <a href="#clCreateCommandQueueWithProperties"><strong>clCreateCommandQueueWithProperties</strong></a> used to create <em>command_queue</em>
+        was not <code>NULL</code>, the implementation must return the values specified in
+        the properties argument in the same order and without including
+        additional properties.</p>
 <p class="tableblock">        If <em>command_queue</em> was created using <a href="#clCreateCommandQueue"><strong>clCreateCommandQueue</strong></a>, or if the
         <em>properties</em> argument specified in clCreateCommandQueueWithProperties}
-        was <code>NULL</code>, the implementation may return either a
-        <em>param_value_size_ret</em> of 0 (i.e. there is are no properties to be
-        returned), or the implementation may return a property value of 0
-        (where 0 is used to terminate the properties list).</p></td>
+        was <code>NULL</code>, the implementation must return <em>param_value_size_ret</em>
+        equal to 0, indicating that there are no properties to be returned.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_SIZE"></a><a href="#CL_QUEUE_SIZE"><code>CL_&#8203;QUEUE_&#8203;SIZE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_SIZE"></a><a href="#CL_QUEUE_SIZE"><code>CL_QUEUE_<wbr>SIZE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_uint</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Return the currently specified size for the device command-queue.
-        This query is only supported for device command queues.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_uint</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Return the size of the device command-queue.
+        To be considered valid for this query, <em>command_queue</em> must be a
+        device command-queue.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_DEVICE_DEFAULT"></a><a href="#CL_QUEUE_DEVICE_DEFAULT"><code>CL_&#8203;QUEUE_&#8203;DEVICE_&#8203;DEFAULT</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_QUEUE_DEVICE_DEFAULT"></a><a href="#CL_QUEUE_DEVICE_DEFAULT"><code>CL_QUEUE_<wbr>DEVICE_<wbr>DEFAULT</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.1.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">cl_command_queue</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>cl_command_<wbr>queue</code></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Return the current default command queue for the underlying device.</p></td>
 </tr>
 </tbody>
 </table>
-<div class="dlist">
-<dl>
-<dt class="hdlist1">3</dt>
-<dd>
-<p>The reference count returned should be considered immediately stale.
-It is unsuitable for general use in applications.
-This feature is provided for identifying memory leaks.</p>
-</dd>
-</dl>
-</div>
 <div class="paragraph">
-<p><a href="#clGetCommandQueueInfo"><strong>clGetCommandQueueInfo</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clGetCommandQueueInfo"><strong>clGetCommandQueueInfo</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_&#8203;INVALID_&#8203;COMMAND_&#8203;QUEUE</code></a> if <em>command_queue</em> is not a valid
-command-queue.</p>
+<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_INVALID_<wbr>COMMAND_<wbr>QUEUE</code></a> if <em>command_queue</em> is not a valid
+command-queue, or if <em>command_queue</em> is not a valid command-queue
+for <em>param_name</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>param_name</em> is not one of the supported values or
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>param_name</em> is not one of the supported values or
 if size in bytes specified by <em>param_value_size</em> is &lt; size of return
 type as specified in the <a href="#command-queue-param-table">Command Queue
 Parameter</a> table, and <em>param_value</em> is not a <code>NULL</code> value.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -8735,7 +8692,7 @@
 </li>
 <li>
 <p><em>enable</em> determines whether the values specified by <em>properties</em> are
-enabled (if <em>enable</em> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>) or disabled (if <em>enable</em> is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a>)
+enabled (if <em>enable</em> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>) or disabled (if <em>enable</em> is <a href="#CL_FALSE"><code>CL_FALSE</code></a>)
 for the command-queue.</p>
 </li>
 <li>
@@ -8753,7 +8710,7 @@
 </td>
 <td class="content">
 <div class="paragraph">
-<p>Changing the <a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_&#8203;QUEUE_&#8203;OUT_&#8203;OF_&#8203;ORDER_&#8203;EXEC_&#8203;MODE_&#8203;ENABLE</code></a> command-queue property
+<p>Changing the <a href="#CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"><code>CL_QUEUE_<wbr>OUT_<wbr>OF_<wbr>ORDER_<wbr>EXEC_<wbr>MODE_<wbr>ENABLE</code></a> command-queue property
 will cause the OpenCL implementation to block until all previously queued
 commands in <em>command_queue</em> have completed.  This can be an expensive operation
 and therefore changes to this property should only be done when absolutely
@@ -8764,20 +8721,20 @@
 </table>
 </div>
 <div class="paragraph">
-<p><a href="#clSetCommandQueueProperty"><strong>clSetCommandQueueProperty</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clSetCommandQueueProperty"><strong>clSetCommandQueueProperty</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_&#8203;INVALID_&#8203;COMMAND_&#8203;QUEUE</code></a> if <em>command_queue</em> is not a valid command-queue.</p>
+<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_INVALID_<wbr>COMMAND_<wbr>QUEUE</code></a> if <em>command_queue</em> is not a valid command-queue.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if values specified in <em>properties</em> are not valid.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if values specified in <em>properties</em> are not valid.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_QUEUE_PROPERTIES"><code>CL_&#8203;INVALID_&#8203;QUEUE_&#8203;PROPERTIES</code></a> if values specified in <em>properties</em> are
+<p><a href="#CL_INVALID_QUEUE_PROPERTIES"><code>CL_INVALID_<wbr>QUEUE_<wbr>PROPERTIES</code></a> if values specified in <em>properties</em> are
 valid but are not supported by the device.</p>
 </li>
 </ul>
@@ -8786,14 +8743,14 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_buffer_objects">5.2. Buffer Objects</h3>
+<h3 id="_buffer_objects"><a class="anchor" href="#_buffer_objects"></a>5.2. Buffer Objects</h3>
 <div class="paragraph">
 <p>A <em>buffer</em> object stores a one-dimensional collection of elements.
 Elements of a <em>buffer</em> object can be a scalar data type (such as an int,
 float), vector data type, or a user-defined structure.</p>
 </div>
 <div class="sect3">
-<h4 id="_creating_buffer_objects">5.2.1. Creating Buffer Objects</h4>
+<h4 id="_creating_buffer_objects"><a class="anchor" href="#_creating_buffer_objects"></a>5.2.1. Creating Buffer Objects</h4>
 <div class="openblock">
 <div class="content">
 <div class="paragraph">
@@ -8872,14 +8829,14 @@
 </div>
 <div class="paragraph">
 <p>If <a href="#clCreateBuffer"><strong>clCreateBuffer</strong></a> or <a href="#clCreateBufferWithProperties"><strong>clCreateBufferWithProperties</strong></a> is called with
-<a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> set in its <em>flags</em> argument, the contents of the
+<a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> set in its <em>flags</em> argument, the contents of the
 memory pointed to by <em>host_ptr</em> at the time of the <a href="#clCreateBuffer"><strong>clCreateBuffer</strong></a> call
 define the initial contents of the buffer object.</p>
 </div>
 <div class="paragraph">
 <p>If <a href="#clCreateBuffer"><strong>clCreateBuffer</strong></a> or <a href="#clCreateBufferWithProperties"><strong>clCreateBufferWithProperties</strong></a> is called with a
 pointer returned by <a href="#clSVMAlloc"><strong>clSVMAlloc</strong></a> as its <em>host_ptr</em> argument, and
-<a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> is set in its <em>flags</em> argument, <a href="#clCreateBuffer"><strong>clCreateBuffer</strong></a> or
+<a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> is set in its <em>flags</em> argument, <a href="#clCreateBuffer"><strong>clCreateBuffer</strong></a> or
 <a href="#clCreateBufferWithProperties"><strong>clCreateBufferWithProperties</strong></a> will succeed and return a valid non-zero
 buffer object as long as the <em>size</em> argument is no larger than the
 <em>size</em> argument passed in the original <a href="#clSVMAlloc"><strong>clSVMAlloc</strong></a> call.
@@ -8891,7 +8848,7 @@
 </div>
 <div class="paragraph">
 <p><a href="#clCreateBuffer"><strong>clCreateBuffer</strong></a> and <a href="#clCreateBufferWithProperties"><strong>clCreateBufferWithProperties</strong></a> returns a valid non-zero
-buffer object and <em>errcode_ret</em> is set to <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the buffer object
+buffer object and <em>errcode_ret</em> is set to <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the buffer object
 is created successfully.
 Otherwise, they return a <code>NULL</code> value with one of the following error values
 returned in <em>errcode_ret</em>:</p>
@@ -8899,48 +8856,38 @@
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_PROPERTY"><code>CL_&#8203;INVALID_&#8203;PROPERTY</code></a> if a property name in <em>properties</em> is not a
+<p><a href="#CL_INVALID_PROPERTY"><code>CL_INVALID_<wbr>PROPERTY</code></a> if a property name in <em>properties</em> is not a
 supported property name, if the value specified for a supported property
 name is not valid, or if the same property name is specified more than
 once.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if values specified in <em>flags</em> are not valid as defined
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if values specified in <em>flags</em> are not valid as defined
 in the <a href="#memory-flags-table">Memory Flags</a> table.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_BUFFER_SIZE"><code>CL_&#8203;INVALID_&#8203;BUFFER_&#8203;SIZE</code></a> if <em>size</em> is 0<sup>4</sup>.</p>
+<p><a href="#CL_INVALID_BUFFER_SIZE"><code>CL_INVALID_<wbr>BUFFER_<wbr>SIZE</code></a> if <em>size</em> is 0 or if <em>size</em> is greater than
+<a href="#CL_DEVICE_MAX_MEM_ALLOC_SIZE"><code>CL_DEVICE_<wbr>MAX_<wbr>MEM_<wbr>ALLOC_<wbr>SIZE</code></a> for all devices in <em>context</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_HOST_PTR"><code>CL_&#8203;INVALID_&#8203;HOST_&#8203;PTR</code></a> if <em>host_ptr</em> is <code>NULL</code> and <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> or
-<a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a> are set in <em>flags</em> or if <em>host_ptr</em> is not <code>NULL</code>
-but <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a> or <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> are not set in <em>flags</em>.</p>
+<p><a href="#CL_INVALID_HOST_PTR"><code>CL_INVALID_<wbr>HOST_<wbr>PTR</code></a> if <em>host_ptr</em> is <code>NULL</code> and <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> or
+<a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a> are set in <em>flags</em> or if <em>host_ptr</em> is not <code>NULL</code>
+but <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a> or <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> are not set in <em>flags</em>.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;ALLOCATION_&#8203;FAILURE</code></a> if there is a failure to allocate
+<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_MEM_<wbr>OBJECT_<wbr>ALLOCATION_<wbr>FAILURE</code></a> if there is a failure to allocate
 memory for buffer object.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
-<div class="dlist">
-<dl>
-<dt class="hdlist1">4</dt>
-<dd>
-<p>Implementations may return <a href="#CL_INVALID_BUFFER_SIZE"><code>CL_&#8203;INVALID_&#8203;BUFFER_&#8203;SIZE</code></a> if size is greater
-than <a href="#CL_DEVICE_MAX_MEM_ALLOC_SIZE"><code>CL_&#8203;DEVICE_&#8203;MAX_&#8203;MEM_&#8203;ALLOC_&#8203;SIZE</code></a> value specified in the
-<a href="#device-queries-table">Device Queries</a> table for all devices in
-context.</p>
-</dd>
-</dl>
-</div>
 </li>
 </ul>
 </div>
@@ -8952,36 +8899,36 @@
 </colgroup>
 <thead>
 <tr>
-<th class="tableblock halign-left valign-top"><strong>cl_mem_flags</strong></th>
+<th class="tableblock halign-left valign-top">Memory Flags</th>
 <th class="tableblock halign-left valign-top">Description</th>
 </tr>
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_READ_WRITE"></a><a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_READ_WRITE"></a><a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag specifies that the memory object will be read
     and written by a kernel.
     This is the default.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_WRITE_ONLY"></a><a href="#CL_MEM_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;WRITE_&#8203;ONLY</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_WRITE_ONLY"></a><a href="#CL_MEM_WRITE_ONLY"><code>CL_MEM_<wbr>WRITE_<wbr>ONLY</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag specifies that the memory object will be
     written but not read by a kernel.</p>
-<p class="tableblock">    Reading from a buffer or image object created with <a href="#CL_MEM_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;WRITE_&#8203;ONLY</code></a>
+<p class="tableblock">    Reading from a buffer or image object created with <a href="#CL_MEM_WRITE_ONLY"><code>CL_MEM_<wbr>WRITE_<wbr>ONLY</code></a>
     inside a kernel is undefined.</p>
-<p class="tableblock">    <a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a> and <a href="#CL_MEM_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;WRITE_&#8203;ONLY</code></a> are mutually exclusive.</p></td>
+<p class="tableblock">    <a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a> and <a href="#CL_MEM_WRITE_ONLY"><code>CL_MEM_<wbr>WRITE_<wbr>ONLY</code></a> are mutually exclusive.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_READ_ONLY"></a><a href="#CL_MEM_READ_ONLY"><code>CL_&#8203;MEM_&#8203;READ_&#8203;ONLY</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_READ_ONLY"></a><a href="#CL_MEM_READ_ONLY"><code>CL_MEM_<wbr>READ_<wbr>ONLY</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag specifies that the memory object is a
     readonly memory object when used inside a kernel.</p>
-<p class="tableblock">    Writing to a buffer or image object created with <a href="#CL_MEM_READ_ONLY"><code>CL_&#8203;MEM_&#8203;READ_&#8203;ONLY</code></a> inside
+<p class="tableblock">    Writing to a buffer or image object created with <a href="#CL_MEM_READ_ONLY"><code>CL_MEM_<wbr>READ_<wbr>ONLY</code></a> inside
     a kernel is undefined.</p>
-<p class="tableblock">    <a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a> or <a href="#CL_MEM_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;WRITE_&#8203;ONLY</code></a> and <a href="#CL_MEM_READ_ONLY"><code>CL_&#8203;MEM_&#8203;READ_&#8203;ONLY</code></a> are mutually
+<p class="tableblock">    <a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a> or <a href="#CL_MEM_WRITE_ONLY"><code>CL_MEM_<wbr>WRITE_<wbr>ONLY</code></a> and <a href="#CL_MEM_READ_ONLY"><code>CL_MEM_<wbr>READ_<wbr>ONLY</code></a> are mutually
     exclusive.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_USE_HOST_PTR"></a><a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_USE_HOST_PTR"></a><a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag is valid only if host_ptr is not <code>NULL</code>.
     If specified, it indicates that the application wants the OpenCL
     implementation to use memory referenced by host_ptr as the storage bits
@@ -8998,13 +8945,13 @@
     is considered to be undefined.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_ALLOC_HOST_PTR"></a><a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_&#8203;MEM_&#8203;ALLOC_&#8203;HOST_&#8203;PTR</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_ALLOC_HOST_PTR"></a><a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_MEM_<wbr>ALLOC_<wbr>HOST_<wbr>PTR</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag specifies that the application wants the OpenCL implementation
     to allocate memory from host accessible memory.</p>
-<p class="tableblock">    <a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_&#8203;MEM_&#8203;ALLOC_&#8203;HOST_&#8203;PTR</code></a> and <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> are mutually exclusive.</p></td>
+<p class="tableblock">    <a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_MEM_<wbr>ALLOC_<wbr>HOST_<wbr>PTR</code></a> and <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> are mutually exclusive.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_COPY_HOST_PTR"></a><a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_COPY_HOST_PTR"></a><a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag is valid only if host_ptr is not <code>NULL</code>.
     If specified, it indicates that the application wants the OpenCL
     implementation to allocate memory for the memory object and copy the
@@ -9013,13 +8960,13 @@
     available for reuse by the application when the <a href="#clCreateBuffer"><strong>clCreateBuffer</strong></a>,
     <a href="#clCreateBufferWithProperties"><strong>clCreateBufferWithProperties</strong></a>, <a href="#clCreateImage"><strong>clCreateImage</strong></a>, <a href="#clCreateImageWithProperties"><strong>clCreateImageWithProperties</strong></a>,
     <a href="#clCreateImage2D"><strong>clCreateImage2D</strong></a>, or <a href="#clCreateImage3D"><strong>clCreateImage3D</strong></a> operation returns.</p>
-<p class="tableblock">    <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a> and <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> are mutually exclusive.</p>
-<p class="tableblock">    <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a> can be used with <a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_&#8203;MEM_&#8203;ALLOC_&#8203;HOST_&#8203;PTR</code></a> to
-    initialize the contents of the cl_mem object allocated using
+<p class="tableblock">    <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a> and <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> are mutually exclusive.</p>
+<p class="tableblock">    <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a> can be used with <a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_MEM_<wbr>ALLOC_<wbr>HOST_<wbr>PTR</code></a> to
+    initialize the contents of the <code>cl_mem</code> object allocated using
     host-accessible (e.g. PCIe) memory.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_HOST_WRITE_ONLY"></a><a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_HOST_WRITE_ONLY"></a><a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag specifies that the host will only write to the memory object
     (using OpenCL APIs that enqueue a write or a map for write).
@@ -9028,29 +8975,29 @@
     communicate with the host over a system bus such as PCIe).</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_HOST_READ_ONLY"></a><a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_HOST_READ_ONLY"></a><a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag specifies that the host will only read
     the memory object (using OpenCL APIs that enqueue a read or a map for
     read).</p>
-<p class="tableblock">    <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a> and <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a> are mutually exclusive.</p></td>
+<p class="tableblock">    <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a> and <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a> are mutually exclusive.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_HOST_NO_ACCESS"></a><a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;NO_&#8203;ACCESS</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_HOST_NO_ACCESS"></a><a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_MEM_<wbr>HOST_<wbr>NO_<wbr>ACCESS</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag specifies that the host will not read or
     write the memory object.</p>
-<p class="tableblock">    <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a> or <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a> and
-    <a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;NO_&#8203;ACCESS</code></a> are mutually exclusive.</p></td>
+<p class="tableblock">    <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a> or <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a> and
+    <a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_MEM_<wbr>HOST_<wbr>NO_<wbr>ACCESS</code></a> are mutually exclusive.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_KERNEL_READ_AND_WRITE"></a><a href="#CL_MEM_KERNEL_READ_AND_WRITE"><code>CL_&#8203;MEM_&#8203;KERNEL_&#8203;READ_&#8203;AND_&#8203;WRITE</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_KERNEL_READ_AND_WRITE"></a><a href="#CL_MEM_KERNEL_READ_AND_WRITE"><code>CL_MEM_<wbr>KERNEL_<wbr>READ_<wbr>AND_<wbr>WRITE</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag is only used by <a href="#clGetSupportedImageFormats"><strong>clGetSupportedImageFormats</strong></a> to query image
     formats that may be both read from and written to by the same kernel
     instance.
     To create a memory object that may be read from and written to use
-    <a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a>.</p></td>
+    <a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a>.</p></td>
 </tr>
 </tbody>
 </table>
@@ -9093,17 +9040,17 @@
 <p><em>flags</em> is a bit-field that is used to specify allocation and usage
 information about the sub-buffer memory object being created and is
 described in the <a href="#memory-flags-table">Memory Flags</a> table.
-If the <a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a>, <a href="#CL_MEM_READ_ONLY"><code>CL_&#8203;MEM_&#8203;READ_&#8203;ONLY</code></a>, or <a href="#CL_MEM_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;WRITE_&#8203;ONLY</code></a> values are
+If the <a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a>, <a href="#CL_MEM_READ_ONLY"><code>CL_MEM_<wbr>READ_<wbr>ONLY</code></a>, or <a href="#CL_MEM_WRITE_ONLY"><code>CL_MEM_<wbr>WRITE_<wbr>ONLY</code></a> values are
 not specified in <em>flags</em>, they are inherited from the corresponding memory
 access qualifiers associated with <em>buffer</em>.
-The <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a>, <a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_&#8203;MEM_&#8203;ALLOC_&#8203;HOST_&#8203;PTR</code></a>, and <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a>
+The <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a>, <a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_MEM_<wbr>ALLOC_<wbr>HOST_<wbr>PTR</code></a>, and <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a>
 values cannot be specified in <em>flags</em> but are inherited from the
 corresponding memory access qualifiers associated with <em>buffer</em>.
-If <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a> is specified in the memory access qualifier values
+If <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a> is specified in the memory access qualifier values
 associated with <em>buffer</em> it does not imply any additional copies when the
 sub-buffer is created from <em>buffer</em>.
-If the <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a>, <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a>, or
-<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;NO_&#8203;ACCESS</code></a> values are not specified in <em>flags</em>, they are
+If the <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a>, <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a>, or
+<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_MEM_<wbr>HOST_<wbr>NO_<wbr>ACCESS</code></a> values are not specified in <em>flags</em>, they are
 inherited from the corresponding memory access qualifiers associated with
 <em>buffer</em>.</p>
 </li>
@@ -9124,18 +9071,18 @@
 </colgroup>
 <thead>
 <tr>
-<th class="tableblock halign-left valign-top"><strong>cl_buffer_create_type</strong></th>
+<th class="tableblock halign-left valign-top">Buffer Creation Type</th>
 <th class="tableblock halign-left valign-top">Description</th>
 </tr>
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_BUFFER_CREATE_TYPE_REGION"></a><a href="#CL_BUFFER_CREATE_TYPE_REGION"><code>CL_&#8203;BUFFER_&#8203;CREATE_&#8203;TYPE_&#8203;REGION</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_BUFFER_CREATE_TYPE_REGION"></a><a href="#CL_BUFFER_CREATE_TYPE_REGION"><code>CL_BUFFER_<wbr>CREATE_<wbr>TYPE_<wbr>REGION</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.1.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Create a buffer object that represents a specific region in <em>buffer</em>.</p>
-<p class="tableblock">    <em>buffer_create_info</em> is a pointer to a <strong><a href="#cl_buffer_region">cl_buffer_region</a></strong> structure
+<p class="tableblock">    <em>buffer_create_info</em> is a pointer to a <a href="#cl_buffer_region"><code>cl_buffer_<wbr>region</code></a> structure
     specifying a region of the buffer.</p>
-<p class="tableblock">    If <em>buffer</em> is created with <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a>, the <em>host_ptr</em>
+<p class="tableblock">    If <em>buffer</em> is created with <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a>, the <em>host_ptr</em>
     associated with the buffer object returned is <em>host_ptr + origin</em>.</p>
 <p class="tableblock">    The buffer object returned references the data store allocated for
     buffer and points to the region specified by <em>buffer_create_info</em> in
@@ -9144,64 +9091,64 @@
 </tbody>
 </table>
 <div class="paragraph">
-<p><a href="#clCreateSubBuffer"><strong>clCreateSubBuffer</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clCreateSubBuffer"><strong>clCreateSubBuffer</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors in <em>errcode_ret</em>:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_&#8203;INVALID_&#8203;MEM_&#8203;OBJECT</code></a> if <em>buffer</em> is not a valid buffer object or is a
+<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_INVALID_<wbr>MEM_<wbr>OBJECT</code></a> if <em>buffer</em> is not a valid buffer object or is a
 sub-buffer object.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>buffer</em> was created with <a href="#CL_MEM_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;WRITE_&#8203;ONLY</code></a> and
-<em>flags</em> specifies <a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a> or <a href="#CL_MEM_READ_ONLY"><code>CL_&#8203;MEM_&#8203;READ_&#8203;ONLY</code></a>, or if <em>buffer</em>
-was created with <a href="#CL_MEM_READ_ONLY"><code>CL_&#8203;MEM_&#8203;READ_&#8203;ONLY</code></a> and <em>flags</em> specifies
-<a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a> or <a href="#CL_MEM_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;WRITE_&#8203;ONLY</code></a>, or if <em>flags</em> specifies
-<a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> or <a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_&#8203;MEM_&#8203;ALLOC_&#8203;HOST_&#8203;PTR</code></a> or <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a>.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>buffer</em> was created with <a href="#CL_MEM_WRITE_ONLY"><code>CL_MEM_<wbr>WRITE_<wbr>ONLY</code></a> and
+<em>flags</em> specifies <a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a> or <a href="#CL_MEM_READ_ONLY"><code>CL_MEM_<wbr>READ_<wbr>ONLY</code></a>, or if <em>buffer</em>
+was created with <a href="#CL_MEM_READ_ONLY"><code>CL_MEM_<wbr>READ_<wbr>ONLY</code></a> and <em>flags</em> specifies
+<a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a> or <a href="#CL_MEM_WRITE_ONLY"><code>CL_MEM_<wbr>WRITE_<wbr>ONLY</code></a>, or if <em>flags</em> specifies
+<a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> or <a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_MEM_<wbr>ALLOC_<wbr>HOST_<wbr>PTR</code></a> or <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>buffer</em> was created with <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a> and
-<em>flags</em> specify <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a>, or if <em>buffer</em> was created with
-<a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a> and <em>flags</em> specify <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a>, or if
-<em>buffer</em> was created with <a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;NO_&#8203;ACCESS</code></a> and <em>flags</em> specify
-<a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a> or <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a>.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>buffer</em> was created with <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a> and
+<em>flags</em> specify <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a>, or if <em>buffer</em> was created with
+<a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a> and <em>flags</em> specify <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a>, or if
+<em>buffer</em> was created with <a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_MEM_<wbr>HOST_<wbr>NO_<wbr>ACCESS</code></a> and <em>flags</em> specify
+<a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a> or <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if the value specified in <em>buffer_create_type</em> is not
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if the value specified in <em>buffer_create_type</em> is not
 valid.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if value(s) specified in <em>buffer_create_info</em> (for a
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if value(s) specified in <em>buffer_create_info</em> (for a
 given <em>buffer_create_type</em>) is not valid or if <em>buffer_create_info</em> is
 <code>NULL</code>.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;ALLOCATION_&#8203;FAILURE</code></a> if there is a failure to allocate
+<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_MEM_<wbr>OBJECT_<wbr>ALLOCATION_<wbr>FAILURE</code></a> if there is a failure to allocate
 memory for sub-buffer object.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if the region specified by the <strong><a href="#cl_buffer_region">cl_buffer_region</a></strong>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if the region specified by the <a href="#cl_buffer_region"><code>cl_buffer_<wbr>region</code></a>
 structure passed in <em>buffer_create_info</em> is out of bounds in <em>buffer</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_BUFFER_SIZE"><code>CL_&#8203;INVALID_&#8203;BUFFER_&#8203;SIZE</code></a> if the <em>size</em> field of the <strong><a href="#cl_buffer_region">cl_buffer_region</a></strong>
+<p><a href="#CL_INVALID_BUFFER_SIZE"><code>CL_INVALID_<wbr>BUFFER_<wbr>SIZE</code></a> if the <em>size</em> field of the <a href="#cl_buffer_region"><code>cl_buffer_<wbr>region</code></a>
 structure passed in <em>buffer_create_info</em> is 0.</p>
 </li>
 <li>
-<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_&#8203;MISALIGNED_&#8203;SUB_&#8203;BUFFER_&#8203;OFFSET</code></a> if there are no devices in <em>context</em>
+<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_MISALIGNED_<wbr>SUB_<wbr>BUFFER_<wbr>OFFSET</code></a> if there are no devices in <em>context</em>
 associated with <em>buffer</em> for which the <em>origin</em> field of the
-<strong><a href="#cl_buffer_region">cl_buffer_region</a></strong> structure passed in <em>buffer_create_info</em> is
-aligned to the <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_&#8203;DEVICE_&#8203;MEM_&#8203;BASE_&#8203;ADDR_&#8203;ALIGN</code></a> value.</p>
+<a href="#cl_buffer_region"><code>cl_buffer_<wbr>region</code></a> structure passed in <em>buffer_create_info</em> is
+aligned to the <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_DEVICE_<wbr>MEM_<wbr>BASE_<wbr>ADDR_<wbr>ALIGN</code></a> value.</p>
 </li>
 </ul>
 </div>
@@ -9229,7 +9176,7 @@
 <div class="openblock">
 <div class="content">
 <div class="paragraph">
-<p>The <strong>cl_buffer_region</strong> structure specifies a region of a buffer object:</p>
+<p>The <a href="#cl_buffer_region"><code>cl_buffer_<wbr>region</code></a> structure specifies a region of a buffer object:</p>
 </div>
 <div id="cl_buffer_region" class="listingblock">
 <div class="content">
@@ -9257,7 +9204,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="_reading_writing_and_copying_buffer_objects">5.2.2. Reading, Writing and Copying Buffer Objects</h4>
+<h4 id="_reading_writing_and_copying_buffer_objects"><a class="anchor" href="#_reading_writing_and_copying_buffer_objects"></a>5.2.2. Reading, Writing and Copying Buffer Objects</h4>
 <div class="paragraph">
 <p>The following functions enqueue commands to read from a buffer object to
 host memory or write to a buffer object from host memory.</p>
@@ -9337,25 +9284,23 @@
 the function returns.</p>
 </li>
 <li>
-<p><em>event</em> returns an event object that identifies this particular read / write
-command and can be used to query or queue a wait for this particular command
-to complete.
-<em>event</em> can be <code>NULL</code> in which case it will not be possible for the
-application to query the status of this command or queue a wait for this
-command to complete.
-If the <em>event_wait_list</em> and the <em>event</em> arguments are not <code>NULL</code>, the
-<em>event</em> argument should not refer to an element of the <em>event_wait_list</em>
-array.</p>
+<p><em>event</em> returns an event object that identifies this read / write command
+and can be used to query or queue a wait for this command to complete.
+If <em>event</em> is <code>NULL</code> or the enqueue is unsuccessful, no event will be
+created and therefore it will not be possible to query the status of this
+command or to wait for this command to complete.
+If <em>event_wait_list</em> and <em>event</em> are not <code>NULL</code>, <em>event</em> must not refer
+to an element of the <em>event_wait_list</em> array.</p>
 </li>
 </ul>
 </div>
 <div class="paragraph">
-<p>If <em>blocking_read</em> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> i.e. the read command is blocking,
+<p>If <em>blocking_read</em> is <a href="#CL_TRUE"><code>CL_TRUE</code></a> i.e. the read command is blocking,
 <a href="#clEnqueueReadBuffer"><strong>clEnqueueReadBuffer</strong></a> does not return until the buffer data has been read
 and copied into memory pointed to by <em>ptr</em>.</p>
 </div>
 <div class="paragraph">
-<p>If <em>blocking_read</em> is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> i.e. the read command is non-blocking,
+<p>If <em>blocking_read</em> is <a href="#CL_FALSE"><code>CL_FALSE</code></a> i.e. the read command is non-blocking,
 <a href="#clEnqueueReadBuffer"><strong>clEnqueueReadBuffer</strong></a> queues a non-blocking read command and returns.
 The contents of the buffer that <em>ptr</em> points to cannot be used until the
 read command has completed.
@@ -9365,13 +9310,13 @@
 points to can be used by the application.</p>
 </div>
 <div class="paragraph">
-<p>If <em>blocking_write</em> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>, the write command is blocking and does not
+<p>If <em>blocking_write</em> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>, the write command is blocking and does not
 return until the command is complete, including transfer of the data.
 The memory pointed to by <em>ptr</em> can be reused by the application after the
 <a href="#clEnqueueWriteBuffer"><strong>clEnqueueWriteBuffer</strong></a> call returns.</p>
 </div>
 <div class="paragraph">
-<p>If <em>blocking_write</em> is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a>, the OpenCL implementation will use <em>ptr</em> to
+<p>If <em>blocking_write</em> is <a href="#CL_FALSE"><code>CL_FALSE</code></a>, the OpenCL implementation will use <em>ptr</em> to
 perform a non-blocking write.
 As the write is non-blocking the implementation can return immediately.
 The memory pointed to by <em>ptr</em> cannot be reused by the application after the
@@ -9382,67 +9327,67 @@
 then be reused by the application.</p>
 </div>
 <div class="paragraph">
-<p><a href="#clEnqueueReadBuffer"><strong>clEnqueueReadBuffer</strong></a> and <a href="#clEnqueueWriteBuffer"><strong>clEnqueueWriteBuffer</strong></a> return <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the
+<p><a href="#clEnqueueReadBuffer"><strong>clEnqueueReadBuffer</strong></a> and <a href="#clEnqueueWriteBuffer"><strong>clEnqueueWriteBuffer</strong></a> return <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the
 function is executed successfully.
 Otherwise, they return one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_&#8203;INVALID_&#8203;COMMAND_&#8203;QUEUE</code></a> if <em>command_queue</em> is not a valid host
+<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_INVALID_<wbr>COMMAND_<wbr>QUEUE</code></a> if <em>command_queue</em> is not a valid host
 command-queue.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if the context associated with <em>command_queue</em> and
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if the context associated with <em>command_queue</em> and
 <em>buffer</em> are not the same or if the context associated with
 <em>command_queue</em> and events in <em>event_wait_list</em> are not the same.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_&#8203;INVALID_&#8203;MEM_&#8203;OBJECT</code></a> if <em>buffer</em> is not a valid buffer object.</p>
+<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_INVALID_<wbr>MEM_<wbr>OBJECT</code></a> if <em>buffer</em> is not a valid buffer object.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if the region being read or written specified by
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if the region being read or written specified by
 (<em>offset</em>, <em>size</em>) is out of bounds or if <em>ptr</em> is a <code>NULL</code> value.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_EVENT_WAIT_LIST"><code>CL_&#8203;INVALID_&#8203;EVENT_&#8203;WAIT_&#8203;LIST</code></a> if <em>event_wait_list</em> is <code>NULL</code> and
+<p><a href="#CL_INVALID_EVENT_WAIT_LIST"><code>CL_INVALID_<wbr>EVENT_<wbr>WAIT_<wbr>LIST</code></a> if <em>event_wait_list</em> is <code>NULL</code> and
 <em>num_events_in_wait_list</em> &gt; 0, or <em>event_wait_list</em> is not <code>NULL</code> and
 <em>num_events_in_wait_list</em> is 0, or if event objects in <em>event_wait_list</em>
 are not valid events.</p>
 </li>
 <li>
-<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_&#8203;MISALIGNED_&#8203;SUB_&#8203;BUFFER_&#8203;OFFSET</code></a> if <em>buffer</em> is a sub-buffer object and
+<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_MISALIGNED_<wbr>SUB_<wbr>BUFFER_<wbr>OFFSET</code></a> if <em>buffer</em> is a sub-buffer object and
 <em>offset</em> specified when the sub-buffer object is created is not aligned
-to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_&#8203;DEVICE_&#8203;MEM_&#8203;BASE_&#8203;ADDR_&#8203;ALIGN</code></a> value for device associated with
+to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_DEVICE_<wbr>MEM_<wbr>BASE_<wbr>ADDR_<wbr>ALIGN</code></a> value for device associated with
 <em>queue</em>.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST"><code>CL_&#8203;EXEC_&#8203;STATUS_&#8203;ERROR_&#8203;FOR_&#8203;EVENTS_&#8203;IN_&#8203;WAIT_&#8203;LIST</code></a> if the read and write
+<p><a href="#CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST"><code>CL_EXEC_<wbr>STATUS_<wbr>ERROR_<wbr>FOR_<wbr>EVENTS_<wbr>IN_<wbr>WAIT_<wbr>LIST</code></a> if the read and write
 operations are blocking and the execution status of any of the events in
 <em>event_wait_list</em> is a negative integer value.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;ALLOCATION_&#8203;FAILURE</code></a> if there is a failure to allocate
+<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_MEM_<wbr>OBJECT_<wbr>ALLOCATION_<wbr>FAILURE</code></a> if there is a failure to allocate
 memory for data store associated with <em>buffer</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_OPERATION"><code>CL_&#8203;INVALID_&#8203;OPERATION</code></a> if <a href="#clEnqueueReadBuffer"><strong>clEnqueueReadBuffer</strong></a> is called on <em>buffer</em>
-which has been created with <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a> or
-<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;NO_&#8203;ACCESS</code></a>.</p>
+<p><a href="#CL_INVALID_OPERATION"><code>CL_INVALID_<wbr>OPERATION</code></a> if <a href="#clEnqueueReadBuffer"><strong>clEnqueueReadBuffer</strong></a> is called on <em>buffer</em>
+which has been created with <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a> or
+<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_MEM_<wbr>HOST_<wbr>NO_<wbr>ACCESS</code></a>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_OPERATION"><code>CL_&#8203;INVALID_&#8203;OPERATION</code></a> if <a href="#clEnqueueWriteBuffer"><strong>clEnqueueWriteBuffer</strong></a> is called on <em>buffer</em>
-which has been created with <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a> or
-<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;NO_&#8203;ACCESS</code></a>.</p>
+<p><a href="#CL_INVALID_OPERATION"><code>CL_INVALID_<wbr>OPERATION</code></a> if <a href="#clEnqueueWriteBuffer"><strong>clEnqueueWriteBuffer</strong></a> is called on <em>buffer</em>
+which has been created with <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a> or
+<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_MEM_<wbr>HOST_<wbr>NO_<wbr>ACCESS</code></a>.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -9598,25 +9543,23 @@
 the function returns.</p>
 </li>
 <li>
-<p><em>event</em> returns an event object that identifies this particular read / write
-command and can be used to query or queue a wait for this particular command
-to complete.
-<em>event</em> can be <code>NULL</code> in which case it will not be possible for the
-application to query the status of this command or queue a wait for this
-command to complete.
-If the <em>event_wait_list</em> and the <em>event</em> arguments are not <code>NULL</code>, the
-<em>event</em> argument should not refer to an element of the <em>event_wait_list</em>
-array.</p>
+<p><em>event</em> returns an event object that identifies this read / write command
+and can be used to query or queue a wait for this command to complete.
+If <em>event</em> is <code>NULL</code> or the enqueue is unsuccessful, no event will be
+created and therefore it will not be possible to query the status of this
+command or to wait for this command to complete.
+If <em>event_wait_list</em> and <em>event</em> are not <code>NULL</code>, <em>event</em> must not refer
+to an element of the <em>event_wait_list</em> array.</p>
 </li>
 </ul>
 </div>
 <div class="paragraph">
-<p>If <em>blocking_read</em> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a> i.e. the read command is blocking,
+<p>If <em>blocking_read</em> is <a href="#CL_TRUE"><code>CL_TRUE</code></a> i.e. the read command is blocking,
 <a href="#clEnqueueReadBufferRect"><strong>clEnqueueReadBufferRect</strong></a> does not return until the buffer data has been
 read and copied into memory pointed to by <em>ptr</em>.</p>
 </div>
 <div class="paragraph">
-<p>If <em>blocking_read</em> is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> i.e. the read command is non-blocking,
+<p>If <em>blocking_read</em> is <a href="#CL_FALSE"><code>CL_FALSE</code></a> i.e. the read command is non-blocking,
 <a href="#clEnqueueReadBufferRect"><strong>clEnqueueReadBufferRect</strong></a> queues a non-blocking read command and returns.
 The contents of the buffer that <em>ptr</em> points to cannot be used until the
 read command has completed.
@@ -9626,13 +9569,13 @@
 points to can be used by the application.</p>
 </div>
 <div class="paragraph">
-<p>If <em>blocking_write</em> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>, the write command is blocking and does not
+<p>If <em>blocking_write</em> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>, the write command is blocking and does not
 return until the command is complete, including transfer of the data.
 The memory pointed to by <em>ptr</em> can be reused by the application after the
 <a href="#clEnqueueWriteBufferRect"><strong>clEnqueueWriteBufferRect</strong></a> call returns.</p>
 </div>
 <div class="paragraph">
-<p>If <em>blocking_write</em> is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a>, the OpenCL implementation will use <em>ptr</em> to
+<p>If <em>blocking_write</em> is <a href="#CL_FALSE"><code>CL_FALSE</code></a>, the OpenCL implementation will use <em>ptr</em> to
 perform a non-blocking write.
 As the write is non-blocking the implementation can return immediately.
 The memory pointed to by <em>ptr</em> cannot be reused by the application after the
@@ -9643,92 +9586,92 @@
 then be reused by the application.</p>
 </div>
 <div class="paragraph">
-<p><a href="#clEnqueueReadBufferRect"><strong>clEnqueueReadBufferRect</strong></a> and <a href="#clEnqueueWriteBufferRect"><strong>clEnqueueWriteBufferRect</strong></a> return <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a>
+<p><a href="#clEnqueueReadBufferRect"><strong>clEnqueueReadBufferRect</strong></a> and <a href="#clEnqueueWriteBufferRect"><strong>clEnqueueWriteBufferRect</strong></a> return <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a>
 if the function is executed successfully.
 Otherwise, they return one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_&#8203;INVALID_&#8203;COMMAND_&#8203;QUEUE</code></a> if <em>command_queue</em> is not a valid host
+<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_INVALID_<wbr>COMMAND_<wbr>QUEUE</code></a> if <em>command_queue</em> is not a valid host
 command-queue.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if the context associated with <em>command_queue</em> and
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if the context associated with <em>command_queue</em> and
 <em>buffer</em> are not the same or if the context associated with
 <em>command_queue</em> and events in <em>event_wait_list</em> are not the same.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_&#8203;INVALID_&#8203;MEM_&#8203;OBJECT</code></a> if <em>buffer</em> is not a valid buffer object.</p>
+<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_INVALID_<wbr>MEM_<wbr>OBJECT</code></a> if <em>buffer</em> is not a valid buffer object.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if the region being read or written specified by
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if the region being read or written specified by
 (<em>buffer_origin</em>, <em>region</em>, <em>buffer_row_pitch</em>, <em>buffer_slice_pitch</em>) is
 out of bounds.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>ptr</em> is a <code>NULL</code> value.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>ptr</em> is a <code>NULL</code> value.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if any <em>region</em> array element is 0.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if any <em>region</em> array element is 0.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>buffer_row_pitch</em> is not 0 and is less than
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>buffer_row_pitch</em> is not 0 and is less than
 <em>region</em>[0].</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>host_row_pitch</em> is not 0 and is less than
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>host_row_pitch</em> is not 0 and is less than
 <em>region</em>[0].</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>buffer_slice_pitch</em> is not 0 and is less than
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>buffer_slice_pitch</em> is not 0 and is less than
 <em>region</em>[1] × <em>buffer_row_pitch</em> and not a multiple of
 <em>buffer_row_pitch</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>host_slice_pitch</em> is not 0 and is less than
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>host_slice_pitch</em> is not 0 and is less than
 <em>region</em>[1] × <em>host_row_pitch</em> and not a multiple of
 <em>host_row_pitch</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_EVENT_WAIT_LIST"><code>CL_&#8203;INVALID_&#8203;EVENT_&#8203;WAIT_&#8203;LIST</code></a> if <em>event_wait_list</em> is <code>NULL</code> and
+<p><a href="#CL_INVALID_EVENT_WAIT_LIST"><code>CL_INVALID_<wbr>EVENT_<wbr>WAIT_<wbr>LIST</code></a> if <em>event_wait_list</em> is <code>NULL</code> and
 <em>num_events_in_wait_list</em> &gt; 0, or <em>event_wait_list</em> is not <code>NULL</code> and
 <em>num_events_in_wait_list</em> is 0, or if event objects in <em>event_wait_list</em>
 are not valid events.</p>
 </li>
 <li>
-<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_&#8203;MISALIGNED_&#8203;SUB_&#8203;BUFFER_&#8203;OFFSET</code></a> if <em>buffer</em> is a sub-buffer object and
+<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_MISALIGNED_<wbr>SUB_<wbr>BUFFER_<wbr>OFFSET</code></a> if <em>buffer</em> is a sub-buffer object and
 <em>offset</em> specified when the sub-buffer object is created is not aligned
-to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_&#8203;DEVICE_&#8203;MEM_&#8203;BASE_&#8203;ADDR_&#8203;ALIGN</code></a> value for device associated with
+to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_DEVICE_<wbr>MEM_<wbr>BASE_<wbr>ADDR_<wbr>ALIGN</code></a> value for device associated with
 <em>queue</em>.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST"><code>CL_&#8203;EXEC_&#8203;STATUS_&#8203;ERROR_&#8203;FOR_&#8203;EVENTS_&#8203;IN_&#8203;WAIT_&#8203;LIST</code></a> if the read and write
+<p><a href="#CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST"><code>CL_EXEC_<wbr>STATUS_<wbr>ERROR_<wbr>FOR_<wbr>EVENTS_<wbr>IN_<wbr>WAIT_<wbr>LIST</code></a> if the read and write
 operations are blocking and the execution status of any of the events in
 <em>event_wait_list</em> is a negative integer value.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;ALLOCATION_&#8203;FAILURE</code></a> if there is a failure to allocate
+<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_MEM_<wbr>OBJECT_<wbr>ALLOCATION_<wbr>FAILURE</code></a> if there is a failure to allocate
 memory for data store associated with <em>buffer</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_OPERATION"><code>CL_&#8203;INVALID_&#8203;OPERATION</code></a> if <a href="#clEnqueueReadBufferRect"><strong>clEnqueueReadBufferRect</strong></a> is called on <em>buffer</em>
-which has been created with <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a> or
-<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;NO_&#8203;ACCESS</code></a>.</p>
+<p><a href="#CL_INVALID_OPERATION"><code>CL_INVALID_<wbr>OPERATION</code></a> if <a href="#clEnqueueReadBufferRect"><strong>clEnqueueReadBufferRect</strong></a> is called on <em>buffer</em>
+which has been created with <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a> or
+<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_MEM_<wbr>HOST_<wbr>NO_<wbr>ACCESS</code></a>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_OPERATION"><code>CL_&#8203;INVALID_&#8203;OPERATION</code></a> if <a href="#clEnqueueWriteBufferRect"><strong>clEnqueueWriteBufferRect</strong></a> is called on <em>buffer</em>
-which has been created with <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a> or
-<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;NO_&#8203;ACCESS</code></a>.</p>
+<p><a href="#CL_INVALID_OPERATION"><code>CL_INVALID_<wbr>OPERATION</code></a> if <a href="#clEnqueueWriteBufferRect"><strong>clEnqueueWriteBufferRect</strong></a> is called on <em>buffer</em>
+which has been created with <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a> or
+<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_MEM_<wbr>HOST_<wbr>NO_<wbr>ACCESS</code></a>.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -9744,7 +9687,7 @@
 <p>Calling <a href="#clEnqueueReadBuffer"><strong>clEnqueueReadBuffer</strong></a> to read a region of the buffer object with the
 <em>ptr</em> argument value set to <em>host_ptr</em> + <em>offset</em>, where <em>host_ptr</em> is a
 pointer to the memory region specified when the buffer object being read is
-created with <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a>, must meet the following requirements in
+created with <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a>, must meet the following requirements in
 order to avoid undefined behavior:</p>
 </div>
 <div class="ulist">
@@ -9770,14 +9713,14 @@
 the <em>ptr</em> argument value set to <em>host_ptr</em> and <em>host_origin</em>,
 <em>buffer_origin</em> values are the same, where <em>host_ptr</em> is a pointer to the
 memory region specified when the buffer object being read is created with
-<a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a>, must meet the same requirements given above for
+<a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a>, must meet the same requirements given above for
 <a href="#clEnqueueReadBuffer"><strong>clEnqueueReadBuffer</strong></a>.</p>
 </div>
 <div class="paragraph">
 <p>Calling <a href="#clEnqueueWriteBuffer"><strong>clEnqueueWriteBuffer</strong></a> to update the latest bits in a region of the
 buffer object with the <em>ptr</em> argument value set to <em>host_ptr</em> + <em>offset</em>,
 where <em>host_ptr</em> is a pointer to the memory region specified when the buffer
-object being written is created with <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a>, must meet the
+object being written is created with <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a>, must meet the
 following requirements in order to avoid undefined behavior:</p>
 </div>
 <div class="ulist">
@@ -9802,7 +9745,7 @@
 the buffer object with the <em>ptr</em> argument value set to <em>host_ptr</em> and
 <em>host_origin</em>, <em>buffer_origin</em> values are the same, where <em>host_ptr</em> is a
 pointer to the memory region specified when the buffer object being written
-is created with <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a>, must meet the following requirements in
+is created with <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a>, must meet the following requirements in
 order to avoid undefined behavior:</p>
 </div>
 <div class="ulist">
@@ -9883,67 +9826,64 @@
 the function returns.</p>
 </li>
 <li>
-<p><em>event</em> returns an event object that identifies this particular copy command
-and can be used to query or queue a wait for this particular command to
-complete.
-<em>event</em> can be <code>NULL</code> in which case it will not be possible for the
-application to query the status of this command or queue a wait for this
-command to complete.
-<a href="#clEnqueueBarrierWithWaitList"><strong>clEnqueueBarrierWithWaitList</strong></a> can be used instead.
-If the <em>event_wait_list</em> and the <em>event</em> arguments are not <code>NULL</code>, the
-<em>event</em> argument should not refer to an element of the <em>event_wait_list</em>
-array.</p>
+<p><em>event</em> returns an event object that identifies this copy command
+and can be used to query or queue a wait for this command to complete.
+If <em>event</em> is <code>NULL</code> or the enqueue is unsuccessful, no event will be
+created and therefore it will not be possible to query the status of this
+command or to wait for this command to complete.
+If <em>event_wait_list</em> and <em>event</em> are not <code>NULL</code>, <em>event</em> must not refer
+to an element of the <em>event_wait_list</em> array.</p>
 </li>
 </ul>
 </div>
 <div class="paragraph">
-<p><a href="#clEnqueueCopyBuffer"><strong>clEnqueueCopyBuffer</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clEnqueueCopyBuffer"><strong>clEnqueueCopyBuffer</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_&#8203;INVALID_&#8203;COMMAND_&#8203;QUEUE</code></a> if <em>command_queue</em> is not a valid host
+<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_INVALID_<wbr>COMMAND_<wbr>QUEUE</code></a> if <em>command_queue</em> is not a valid host
 command-queue.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if the context associated with <em>command_queue</em>,
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if the context associated with <em>command_queue</em>,
 <em>src_buffer</em> and <em>dst_buffer</em> are not the same or if the context
 associated with <em>command_queue</em> and events in <em>event_wait_list</em> are not
 the same.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_&#8203;INVALID_&#8203;MEM_&#8203;OBJECT</code></a> if <em>src_buffer</em> and <em>dst_buffer</em> are not valid
+<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_INVALID_<wbr>MEM_<wbr>OBJECT</code></a> if <em>src_buffer</em> and <em>dst_buffer</em> are not valid
 buffer objects.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>src_offset</em>, <em>dst_offset</em>, <em>size</em>, <em>src_offset</em>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>src_offset</em>, <em>dst_offset</em>, <em>size</em>, <em>src_offset</em>
 +  <em>size</em> or <em>dst_offset</em> + <em>size</em> require accessing elements
 outside the <em>src_buffer</em> and <em>dst_buffer</em> buffer objects respectively.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_EVENT_WAIT_LIST"><code>CL_&#8203;INVALID_&#8203;EVENT_&#8203;WAIT_&#8203;LIST</code></a> if <em>event_wait_list</em> is <code>NULL</code> and
+<p><a href="#CL_INVALID_EVENT_WAIT_LIST"><code>CL_INVALID_<wbr>EVENT_<wbr>WAIT_<wbr>LIST</code></a> if <em>event_wait_list</em> is <code>NULL</code> and
 <em>num_events_in_wait_list</em> &gt; 0, or <em>event_wait_list</em> is not <code>NULL</code> and
 <em>num_events_in_wait_list</em> is 0, or if event objects in <em>event_wait_list</em>
 are not valid events.</p>
 </li>
 <li>
-<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_&#8203;MISALIGNED_&#8203;SUB_&#8203;BUFFER_&#8203;OFFSET</code></a> if <em>src_buffer</em> is a sub-buffer object
+<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_MISALIGNED_<wbr>SUB_<wbr>BUFFER_<wbr>OFFSET</code></a> if <em>src_buffer</em> is a sub-buffer object
 and <em>offset</em> specified when the sub-buffer object is created is not
-aligned to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_&#8203;DEVICE_&#8203;MEM_&#8203;BASE_&#8203;ADDR_&#8203;ALIGN</code></a> value for device associated
+aligned to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_DEVICE_<wbr>MEM_<wbr>BASE_<wbr>ADDR_<wbr>ALIGN</code></a> value for device associated
 with <em>queue</em>.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_&#8203;MISALIGNED_&#8203;SUB_&#8203;BUFFER_&#8203;OFFSET</code></a> if <em>dst_buffer</em> is a sub-buffer object
+<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_MISALIGNED_<wbr>SUB_<wbr>BUFFER_<wbr>OFFSET</code></a> if <em>dst_buffer</em> is a sub-buffer object
 and <em>offset</em> specified when the sub-buffer object is created is not
-aligned to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_&#8203;DEVICE_&#8203;MEM_&#8203;BASE_&#8203;ADDR_&#8203;ALIGN</code></a> value for device associated
+aligned to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_DEVICE_<wbr>MEM_<wbr>BASE_<wbr>ADDR_<wbr>ALIGN</code></a> value for device associated
 with <em>queue</em>.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_COPY_OVERLAP"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;OVERLAP</code></a> if <em>src_buffer</em> and <em>dst_buffer</em> are the same buffer
+<p><a href="#CL_MEM_COPY_OVERLAP"><code>CL_MEM_<wbr>COPY_<wbr>OVERLAP</code></a> if <em>src_buffer</em> and <em>dst_buffer</em> are the same buffer
 or sub-buffer object and the source and destination regions overlap or
 if <em>src_buffer</em> and <em>dst_buffer</em> are different sub-buffers of the same
 associated buffer object and they overlap.
@@ -9952,15 +9892,15 @@
 <em>dst_offset</em> + <em>size</em> 1.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;ALLOCATION_&#8203;FAILURE</code></a> if there is a failure to allocate
+<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_MEM_<wbr>OBJECT_<wbr>ALLOCATION_<wbr>FAILURE</code></a> if there is a failure to allocate
 memory for data store associated with <em>src_buffer</em> or <em>dst_buffer</em>.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -10072,16 +10012,13 @@
 the function returns.</p>
 </li>
 <li>
-<p><em>event</em> returns an event object that identifies this particular copy command
-and can be used to query or queue a wait for this particular command to
-complete.
-<em>event</em> can be <code>NULL</code> in which case it will not be possible for the
-application to query the status of this command or queue a wait for this
-command to complete.
-<a href="#clEnqueueBarrierWithWaitList"><strong>clEnqueueBarrierWithWaitList</strong></a> can be used instead.
-If the <em>event_wait_list</em> and the <em>event</em> arguments are not <code>NULL</code>, the
-<em>event</em> argument should not refer to an element of the <em>event_wait_list</em>
-array.</p>
+<p><em>event</em> returns an event object that identifies this copy command
+and can be used to query or queue a wait for this command to complete.
+If <em>event</em> is <code>NULL</code> or the enqueue is unsuccessful, no event will be
+created and therefore it will not be possible to query the status of this
+command or to wait for this command to complete.
+If <em>event_wait_list</em> and <em>event</em> are not <code>NULL</code>, <em>event</em> must not refer
+to an element of the <em>event_wait_list</em> array.</p>
 </li>
 </ul>
 </div>
@@ -10113,66 +10050,66 @@
 </table>
 </div>
 <div class="paragraph">
-<p><a href="#clEnqueueCopyBufferRect"><strong>clEnqueueCopyBufferRect</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clEnqueueCopyBufferRect"><strong>clEnqueueCopyBufferRect</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_&#8203;INVALID_&#8203;COMMAND_&#8203;QUEUE</code></a> if <em>command_queue</em> is not a valid host
+<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_INVALID_<wbr>COMMAND_<wbr>QUEUE</code></a> if <em>command_queue</em> is not a valid host
 command-queue.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if the context associated with <em>command_queue</em>,
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if the context associated with <em>command_queue</em>,
 <em>src_buffer</em> and <em>dst_buffer</em> are not the same or if the context
 associated with <em>command_queue</em> and events in <em>event_wait_list</em> are not
 the same.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_&#8203;INVALID_&#8203;MEM_&#8203;OBJECT</code></a> if <em>src_buffer</em> and <em>dst_buffer</em> are not valid
+<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_INVALID_<wbr>MEM_<wbr>OBJECT</code></a> if <em>src_buffer</em> and <em>dst_buffer</em> are not valid
 buffer objects.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if (<em>src_origin, region, src_row_pitch,
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if (<em>src_origin, region, src_row_pitch,
 src_slice_pitch</em>) or (<em>dst_origin, region, dst_row_pitch,
 dst_slice_pitch</em>) require accessing elements outside the <em>src_buffer</em>
 and <em>dst_buffer</em> buffer objects respectively.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if any <em>region</em> array element is 0.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if any <em>region</em> array element is 0.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>src_row_pitch</em> is not 0 and is less than
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>src_row_pitch</em> is not 0 and is less than
 <em>region</em>[0].</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>dst_row_pitch</em> is not 0 and is less than
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>dst_row_pitch</em> is not 0 and is less than
 <em>region</em>[0].</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>src_slice_pitch</em> is not 0 and is less than
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>src_slice_pitch</em> is not 0 and is less than
 <em>region</em>[1] × <em>src_row_pitch</em> or if <em>src_slice_pitch</em> is not 0 and
 is not a multiple of <em>src_row_pitch</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>dst_slice_pitch</em> is not 0 and is less than
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>dst_slice_pitch</em> is not 0 and is less than
 <em>region</em>[1] × <em>dst_row_pitch</em> or if <em>dst_slice_pitch</em> is not 0 and
 is not a multiple of <em>dst_row_pitch</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>src_buffer</em> and <em>dst_buffer</em> are the same buffer
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>src_buffer</em> and <em>dst_buffer</em> are the same buffer
 object and <em>src_slice_pitch</em> is not equal to <em>dst_slice_pitch</em> and
 <em>src_row_pitch</em> is not equal to <em>dst_row_pitch</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_EVENT_WAIT_LIST"><code>CL_&#8203;INVALID_&#8203;EVENT_&#8203;WAIT_&#8203;LIST</code></a> if <em>event_wait_list</em> is <code>NULL</code> and
+<p><a href="#CL_INVALID_EVENT_WAIT_LIST"><code>CL_INVALID_<wbr>EVENT_<wbr>WAIT_<wbr>LIST</code></a> if <em>event_wait_list</em> is <code>NULL</code> and
 <em>num_events_in_wait_list</em> &gt; 0, or <em>event_wait_list</em> is not <code>NULL</code> and
 <em>num_events_in_wait_list</em> is 0, or if event objects in <em>event_wait_list</em>
 are not valid events.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_COPY_OVERLAP"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;OVERLAP</code></a> if <em>src_buffer</em> and <em>dst_buffer</em> are the same buffer
+<p><a href="#CL_MEM_COPY_OVERLAP"><code>CL_MEM_<wbr>COPY_<wbr>OVERLAP</code></a> if <em>src_buffer</em> and <em>dst_buffer</em> are the same buffer
 or sub-buffer object and the source and destination regions overlap or
 if <em>src_buffer</em> and <em>dst_buffer</em> are different sub-buffers of the same
 associated buffer object and they overlap.
@@ -10180,29 +10117,29 @@
 details on how to determine if source and destination regions overlap.</p>
 </li>
 <li>
-<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_&#8203;MISALIGNED_&#8203;SUB_&#8203;BUFFER_&#8203;OFFSET</code></a> if <em>src_buffer</em> is a sub-buffer object
+<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_MISALIGNED_<wbr>SUB_<wbr>BUFFER_<wbr>OFFSET</code></a> if <em>src_buffer</em> is a sub-buffer object
 and <em>offset</em> specified when the sub-buffer object is created is not
-aligned to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_&#8203;DEVICE_&#8203;MEM_&#8203;BASE_&#8203;ADDR_&#8203;ALIGN</code></a> value for device associated
+aligned to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_DEVICE_<wbr>MEM_<wbr>BASE_<wbr>ADDR_<wbr>ALIGN</code></a> value for device associated
 with <em>queue</em>.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_&#8203;MISALIGNED_&#8203;SUB_&#8203;BUFFER_&#8203;OFFSET</code></a> if <em>dst_buffer</em> is a sub-buffer object
+<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_MISALIGNED_<wbr>SUB_<wbr>BUFFER_<wbr>OFFSET</code></a> if <em>dst_buffer</em> is a sub-buffer object
 and <em>offset</em> specified when the sub-buffer object is created is not
-aligned to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_&#8203;DEVICE_&#8203;MEM_&#8203;BASE_&#8203;ADDR_&#8203;ALIGN</code></a> value for device associated
+aligned to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_DEVICE_<wbr>MEM_<wbr>BASE_<wbr>ADDR_<wbr>ALIGN</code></a> value for device associated
 with <em>queue</em>.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;ALLOCATION_&#8203;FAILURE</code></a> if there is a failure to allocate
+<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_MEM_<wbr>OBJECT_<wbr>ALLOCATION_<wbr>FAILURE</code></a> if there is a failure to allocate
 memory for data store associated with <em>src_buffer</em> or <em>dst_buffer</em>.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -10211,7 +10148,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="_filling_buffer_objects">5.2.3. Filling Buffer Objects</h4>
+<h4 id="_filling_buffer_objects"><a class="anchor" href="#_filling_buffer_objects"></a>5.2.3. Filling Buffer Objects</h4>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -10307,78 +10244,75 @@
 the function returns.</p>
 </li>
 <li>
-<p><em>event</em> returns an event object that identifies this particular command and
-can be used to query or queue a wait for this particular command to
-complete.
-<em>event</em> can be <code>NULL</code> in which case it will not be possible for the
-application to query the status of this command or queue a wait for this
-command to complete.
-<a href="#clEnqueueBarrierWithWaitList"><strong>clEnqueueBarrierWithWaitList</strong></a> can be used instead.
-If the <em>event_wait_list</em> and the <em>event</em> arguments are not <code>NULL</code>, the
-<em>event</em> argument should not refer to an element of the <em>event_wait_list</em>
-array.</p>
+<p><em>event</em> returns an event object that identifies this command
+and can be used to query or queue a wait for this command to complete.
+If <em>event</em> is <code>NULL</code> or the enqueue is unsuccessful, no event will be
+created and therefore it will not be possible to query the status of this
+command or to wait for this command to complete.
+If <em>event_wait_list</em> and <em>event</em> are not <code>NULL</code>, <em>event</em> must not refer
+to an element of the <em>event_wait_list</em> array.</p>
 </li>
 </ul>
 </div>
 <div class="paragraph">
 <p>The usage information which indicates whether the memory object can be read
-or written by a kernel and/or the host and is given by the cl_mem_flags
+or written by a kernel and/or the host and is given by the <code>cl_mem_<wbr>flags</code>
 argument value specified when <em>buffer</em> is created is ignored by
 <a href="#clEnqueueFillBuffer"><strong>clEnqueueFillBuffer</strong></a>.</p>
 </div>
 <div class="paragraph">
-<p><a href="#clEnqueueFillBuffer"><strong>clEnqueueFillBuffer</strong></a> returns <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the function is executed
+<p><a href="#clEnqueueFillBuffer"><strong>clEnqueueFillBuffer</strong></a> returns <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the function is executed
 successfully.
 Otherwise, it returns one of the following errors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_&#8203;INVALID_&#8203;COMMAND_&#8203;QUEUE</code></a> if <em>command_queue</em> is not a valid host
+<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_INVALID_<wbr>COMMAND_<wbr>QUEUE</code></a> if <em>command_queue</em> is not a valid host
 command-queue.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if the context associated with <em>command_queue</em> and
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if the context associated with <em>command_queue</em> and
 <em>buffer</em> are not the same or if the context associated with
 <em>command_queue</em> and events in <em>event_wait_list</em> are not the same.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_&#8203;INVALID_&#8203;MEM_&#8203;OBJECT</code></a> if <em>buffer</em> is not a valid buffer object.</p>
+<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_INVALID_<wbr>MEM_<wbr>OBJECT</code></a> if <em>buffer</em> is not a valid buffer object.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>offset</em> or <em>offset</em> + <em>size</em> require accessing
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>offset</em> or <em>offset</em> + <em>size</em> require accessing
 elements outside the <em>buffer</em> buffer object respectively.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>pattern</em> is <code>NULL</code> or if <em>pattern_size</em> is 0 or if
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>pattern</em> is <code>NULL</code> or if <em>pattern_size</em> is 0 or if
 <em>pattern_size</em> is not one of { 1, 2, 4, 8, 16, 32, 64, 128 }.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if <em>offset</em> and <em>size</em> are not a multiple of
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if <em>offset</em> and <em>size</em> are not a multiple of
 <em>pattern_size</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_EVENT_WAIT_LIST"><code>CL_&#8203;INVALID_&#8203;EVENT_&#8203;WAIT_&#8203;LIST</code></a> if <em>event_wait_list</em> is <code>NULL</code> and
+<p><a href="#CL_INVALID_EVENT_WAIT_LIST"><code>CL_INVALID_<wbr>EVENT_<wbr>WAIT_<wbr>LIST</code></a> if <em>event_wait_list</em> is <code>NULL</code> and
 <em>num_events_in_wait_list</em> &gt; 0, or <em>event_wait_list</em> is not <code>NULL</code> and
 <em>num_events_in_wait_list</em> is 0, or if event objects in <em>event_wait_list</em>
 are not valid events.</p>
 </li>
 <li>
-<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_&#8203;MISALIGNED_&#8203;SUB_&#8203;BUFFER_&#8203;OFFSET</code></a> if <em>buffer</em> is a sub-buffer object and
+<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_MISALIGNED_<wbr>SUB_<wbr>BUFFER_<wbr>OFFSET</code></a> if <em>buffer</em> is a sub-buffer object and
 offset specified when the sub-buffer object is created is not aligned to
-<a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_&#8203;DEVICE_&#8203;MEM_&#8203;BASE_&#8203;ADDR_&#8203;ALIGN</code></a> value for device associated with <em>queue</em>.
+<a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_DEVICE_<wbr>MEM_<wbr>BASE_<wbr>ADDR_<wbr>ALIGN</code></a> value for device associated with <em>queue</em>.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;ALLOCATION_&#8203;FAILURE</code></a> if there is a failure to allocate
+<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_MEM_<wbr>OBJECT_<wbr>ALLOCATION_<wbr>FAILURE</code></a> if there is a failure to allocate
 memory for data store associated with <em>buffer</em>.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -10387,7 +10321,7 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="_mapping_buffer_objects">5.2.4. Mapping Buffer Objects</h4>
+<h4 id="_mapping_buffer_objects"><a class="anchor" href="#_mapping_buffer_objects"></a>5.2.4. Mapping Buffer Objects</h4>
 <div class="openblock">
 <div class="content">
 <div class="paragraph">
@@ -10422,13 +10356,13 @@
 </ul>
 </div>
 <div class="paragraph">
-<p>If <em>blocking_map</em> is <a href="#CL_TRUE"><code>CL_&#8203;TRUE</code></a>, <a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a> does not return until the
+<p>If <em>blocking_map</em> is <a href="#CL_TRUE"><code>CL_TRUE</code></a>, <a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a> does not return until the
 specified region in <em>buffer</em> is mapped into the host address space and the
 application can access the contents of the mapped region using the pointer
 returned by <a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a>.</p>
 </div>
 <div class="paragraph">
-<p>If <em>blocking_map</em> is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a> i.e. map operation is non-blocking, the
+<p>If <em>blocking_map</em> is <a href="#CL_FALSE"><code>CL_FALSE</code></a> i.e. map operation is non-blocking, the
 pointer to the mapped region returned by <a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a> cannot be used
 until the map command has completed.
 The <em>event</em> argument returns an event object which can be used to query the
@@ -10467,15 +10401,13 @@
 the function returns.</p>
 </li>
 <li>
-<p><em>event</em> returns an event object that identifies this particular command and
-can be used to query or queue a wait for this particular command to
-complete.
-<em>event</em> can be <code>NULL</code> in which case it will not be possible for the
-application to query the status of this command or queue a wait for this
-command to complete.
-If the <em>event_wait_list</em> and the <em>event</em> arguments are not <code>NULL</code>, the
-<em>event</em> argument should not refer to an element of the <em>event_wait_list</em>
-array.</p>
+<p><em>event</em> returns an event object that identifies this command
+and can be used to query or queue a wait for this command to complete.
+If <em>event</em> is <code>NULL</code> or the enqueue is unsuccessful, no event will be
+created and therefore it will not be possible to query the status of this
+command or to wait for this command to complete.
+If <em>event_wait_list</em> and <em>event</em> are not <code>NULL</code>, <em>event</em> must not refer
+to an element of the <em>event_wait_list</em> array.</p>
 </li>
 <li>
 <p><em>errcode_ret</em> will return an appropriate error code.
@@ -10485,7 +10417,7 @@
 </div>
 <div class="paragraph">
 <p><a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a> will return a pointer to the mapped region.
-The <em>errcode_ret</em> is set to <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a>.</p>
+The <em>errcode_ret</em> is set to <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a>.</p>
 </div>
 <div class="paragraph">
 <p>A <code>NULL</code> pointer is returned otherwise with one of the following error
@@ -10494,68 +10426,68 @@
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_&#8203;INVALID_&#8203;COMMAND_&#8203;QUEUE</code></a> if <em>command_queue</em> is not a valid host
+<p><a href="#CL_INVALID_COMMAND_QUEUE"><code>CL_INVALID_<wbr>COMMAND_<wbr>QUEUE</code></a> if <em>command_queue</em> is not a valid host
 command-queue.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if context associated with <em>command_queue</em> and
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if context associated with <em>command_queue</em> and
 <em>buffer</em> are not the same or if the context associated with
 <em>command_queue</em> and events in <em>event_wait_list</em> are not the same.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_&#8203;INVALID_&#8203;MEM_&#8203;OBJECT</code></a> if <em>buffer</em> is not a valid buffer object.</p>
+<p><a href="#CL_INVALID_MEM_OBJECT"><code>CL_INVALID_<wbr>MEM_<wbr>OBJECT</code></a> if <em>buffer</em> is not a valid buffer object.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if region being mapped given by (<em>offset</em>, <em>size</em>) is
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if region being mapped given by (<em>offset</em>, <em>size</em>) is
 out of bounds or if <em>size</em> is 0 or if values specified in <em>map_flags</em>
 are not valid.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_EVENT_WAIT_LIST"><code>CL_&#8203;INVALID_&#8203;EVENT_&#8203;WAIT_&#8203;LIST</code></a> if <em>event_wait_list</em> is <code>NULL</code> and
+<p><a href="#CL_INVALID_EVENT_WAIT_LIST"><code>CL_INVALID_<wbr>EVENT_<wbr>WAIT_<wbr>LIST</code></a> if <em>event_wait_list</em> is <code>NULL</code> and
 <em>num_events_in_wait_list</em> &gt; 0, or <em>event_wait_list</em> is not <code>NULL</code> and
 <em>num_events_in_wait_list</em> is 0, or if event objects in <em>event_wait_list</em>
 are not valid events.</p>
 </li>
 <li>
-<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_&#8203;MISALIGNED_&#8203;SUB_&#8203;BUFFER_&#8203;OFFSET</code></a> if <em>buffer</em> is a sub-buffer object and
+<p><a href="#CL_MISALIGNED_SUB_BUFFER_OFFSET"><code>CL_MISALIGNED_<wbr>SUB_<wbr>BUFFER_<wbr>OFFSET</code></a> if <em>buffer</em> is a sub-buffer object and
 <em>offset</em> specified when the sub-buffer object is created is not aligned
-to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_&#8203;DEVICE_&#8203;MEM_&#8203;BASE_&#8203;ADDR_&#8203;ALIGN</code></a> value for the device associated with
+to <a href="#CL_DEVICE_MEM_BASE_ADDR_ALIGN"><code>CL_DEVICE_<wbr>MEM_<wbr>BASE_<wbr>ADDR_<wbr>ALIGN</code></a> value for the device associated with
 <em>queue</em>.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_MAP_FAILURE"><code>CL_&#8203;MAP_&#8203;FAILURE</code></a> if there is a failure to map the requested region into
+<p><a href="#CL_MAP_FAILURE"><code>CL_MAP_<wbr>FAILURE</code></a> if there is a failure to map the requested region into
 the host address space.
 This error cannot occur for buffer objects created with
-<a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> or <a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_&#8203;MEM_&#8203;ALLOC_&#8203;HOST_&#8203;PTR</code></a>.</p>
+<a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> or <a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_MEM_<wbr>ALLOC_<wbr>HOST_<wbr>PTR</code></a>.</p>
 </li>
 <li>
-<p><a href="#CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST"><code>CL_&#8203;EXEC_&#8203;STATUS_&#8203;ERROR_&#8203;FOR_&#8203;EVENTS_&#8203;IN_&#8203;WAIT_&#8203;LIST</code></a> if the map operation is
+<p><a href="#CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST"><code>CL_EXEC_<wbr>STATUS_<wbr>ERROR_<wbr>FOR_<wbr>EVENTS_<wbr>IN_<wbr>WAIT_<wbr>LIST</code></a> if the map operation is
 blocking and the execution status of any of the events in
 <em>event_wait_list</em> is a negative integer value.
 This error code is <a href="#unified-spec">missing before</a> version 1.1.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;ALLOCATION_&#8203;FAILURE</code></a> if there is a failure to allocate
+<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_MEM_<wbr>OBJECT_<wbr>ALLOCATION_<wbr>FAILURE</code></a> if there is a failure to allocate
 memory for data store associated with <em>buffer</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_OPERATION"><code>CL_&#8203;INVALID_&#8203;OPERATION</code></a> if <em>buffer</em> has been created with
-<a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a> or <a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;NO_&#8203;ACCESS</code></a> and <a href="#CL_MAP_READ"><code>CL_&#8203;MAP_&#8203;READ</code></a> is set
+<p><a href="#CL_INVALID_OPERATION"><code>CL_INVALID_<wbr>OPERATION</code></a> if <em>buffer</em> has been created with
+<a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a> or <a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_MEM_<wbr>HOST_<wbr>NO_<wbr>ACCESS</code></a> and <a href="#CL_MAP_READ"><code>CL_MAP_<wbr>READ</code></a> is set
 in <em>map_flags</em> or if <em>buffer</em> has been created with
-<a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a> or <a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;NO_&#8203;ACCESS</code></a> and <a href="#CL_MAP_WRITE"><code>CL_&#8203;MAP_&#8203;WRITE</code></a> or
-<a href="#CL_MAP_WRITE_INVALIDATE_REGION"><code>CL_&#8203;MAP_&#8203;WRITE_&#8203;INVALIDATE_&#8203;REGION</code></a> is set in <em>map_flags</em>.</p>
+<a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a> or <a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_MEM_<wbr>HOST_<wbr>NO_<wbr>ACCESS</code></a> and <a href="#CL_MAP_WRITE"><code>CL_MAP_<wbr>WRITE</code></a> or
+<a href="#CL_MAP_WRITE_INVALIDATE_REGION"><code>CL_MAP_<wbr>WRITE_<wbr>INVALIDATE_<wbr>REGION</code></a> is set in <em>map_flags</em>.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_OPERATION"><code>CL_&#8203;INVALID_&#8203;OPERATION</code></a> if mapping would lead to overlapping regions being
+<p><a href="#CL_INVALID_OPERATION"><code>CL_INVALID_<wbr>OPERATION</code></a> if mapping would lead to overlapping regions being
 mapped for writing.</p>
 </li>
 </ul>
@@ -10566,7 +10498,7 @@
 The result of a memory access outside this region is undefined.</p>
 </div>
 <div class="paragraph">
-<p>If the buffer object is created with <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> set in <em>mem_flags</em>,
+<p>If the buffer object is created with <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> set in <em>mem_flags</em>,
 the following will be true:</p>
 </div>
 <div class="ulist">
@@ -10595,13 +10527,13 @@
 </colgroup>
 <thead>
 <tr>
-<th class="tableblock halign-left valign-top"><strong>cl_map_flags</strong></th>
+<th class="tableblock halign-left valign-top">Map Flags</th>
 <th class="tableblock halign-left valign-top">Description</th>
 </tr>
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MAP_READ"></a><a href="#CL_MAP_READ"><code>CL_&#8203;MAP_&#8203;READ</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MAP_READ"></a><a href="#CL_MAP_READ"><code>CL_MAP_<wbr>READ</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag specifies that the region being mapped in the memory object is
     being mapped for reading.</p>
 <p class="tableblock">    The pointer returned by <a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a> (<a href="#clEnqueueMapImage"><strong>clEnqueueMapImage</strong></a>) is
@@ -10609,7 +10541,7 @@
     the <a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a> (<a href="#clEnqueueMapImage"><strong>clEnqueueMapImage</strong></a>) command has completed.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MAP_WRITE"></a><a href="#CL_MAP_WRITE"><code>CL_&#8203;MAP_&#8203;WRITE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MAP_WRITE"></a><a href="#CL_MAP_WRITE"><code>CL_MAP_<wbr>WRITE</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag specifies that the region being mapped in the memory object is
     being mapped for writing.</p>
 <p class="tableblock">    The pointer returned by <a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a> (<a href="#clEnqueueMapImage"><strong>clEnqueueMapImage</strong></a>) is
@@ -10617,7 +10549,7 @@
     the <a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a> (<a href="#clEnqueueMapImage"><strong>clEnqueueMapImage</strong></a>) command has completed</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MAP_WRITE_INVALIDATE_REGION"></a><a href="#CL_MAP_WRITE_INVALIDATE_REGION"><code>CL_&#8203;MAP_&#8203;WRITE_&#8203;INVALIDATE_&#8203;REGION</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MAP_WRITE_INVALIDATE_REGION"></a><a href="#CL_MAP_WRITE_INVALIDATE_REGION"><code>CL_MAP_<wbr>WRITE_<wbr>INVALIDATE_<wbr>REGION</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">This flag specifies that the region being mapped in the memory object is
     being mapped for writing.</p>
@@ -10628,7 +10560,7 @@
     pointer returned by <a href="#clEnqueueMapBuffer"><strong>clEnqueueMapBuffer</strong></a> (<a href="#clEnqueueMapImage"><strong>clEnqueueMapImage</strong></a>) contains
     the latest bits in the region being mapped which can be a significant
     performance enhancement.</p>
-<p class="tableblock">    <a href="#CL_MAP_READ"><code>CL_&#8203;MAP_&#8203;READ</code></a> or <a href="#CL_MAP_WRITE"><code>CL_&#8203;MAP_&#8203;WRITE</code></a> and <a href="#CL_MAP_WRITE_INVALIDATE_REGION"><code>CL_&#8203;MAP_&#8203;WRITE_&#8203;INVALIDATE_&#8203;REGION</code></a> are
+<p class="tableblock">    <a href="#CL_MAP_READ"><code>CL_MAP_<wbr>READ</code></a> or <a href="#CL_MAP_WRITE"><code>CL_MAP_<wbr>WRITE</code></a> and <a href="#CL_MAP_WRITE_INVALIDATE_REGION"><code>CL_MAP_<wbr>WRITE_<wbr>INVALIDATE_<wbr>REGION</code></a> are
     mutually exclusive.</p></td>
 </tr>
 </tbody>
@@ -10638,7 +10570,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_image_objects">5.3. Image Objects</h3>
+<h3 id="_image_objects"><a class="anchor" href="#_image_objects"></a>5.3. Image Objects</h3>
 <div class="paragraph">
 <p>An <em>image</em> object is used to store a one-, two- or three-dimensional
 texture, frame-buffer or image.
@@ -10647,7 +10579,7 @@
 The minimum number of elements in a memory object is one.</p>
 </div>
 <div class="sect3">
-<h4 id="_creating_image_objects">5.3.1. Creating Image Objects</h4>
+<h4 id="_creating_image_objects"><a class="anchor" href="#_creating_image_objects"></a>5.3.1. Creating Image Objects</h4>
 <div class="openblock">
 <div class="content">
 <div class="paragraph">
@@ -10738,8 +10670,6 @@
 <li>
 <p><em>host_ptr</em> is a pointer to the image data that may already be allocated by
 the application.
-It is only used to initialize the image, and can be freed after the call to
-<a href="#clCreateImage"><strong>clCreateImage</strong></a> or <a href="#clCreateImageWithProperties"><strong>clCreateImageWithProperties</strong></a>.
 Refer to the <a href="#host-ptr-buffer-size-table">table below</a> for a description
 of how large the buffer that <em>host_ptr</em> points to must be.</p>
 </li>
@@ -10754,23 +10684,23 @@
 in <a href="#alignment-app-data-types">Alignment of Application Data Types</a>.</p>
 </div>
 <div class="paragraph">
-<p>For all image types except <a href="#CL_MEM_OBJECT_IMAGE1D_BUFFER"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;IMAGE1D_&#8203;BUFFER</code></a>, if the value
-specified for <em>flags</em> is 0, the default is used which is <a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a>.</p>
+<p>For all image types except <a href="#CL_MEM_OBJECT_IMAGE1D_BUFFER"><code>CL_MEM_<wbr>OBJECT_<wbr>IMAGE1D_<wbr>BUFFER</code></a>, if the value
+specified for <em>flags</em> is 0, the default is used which is <a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a>.</p>
 </div>
 <div class="paragraph">
-<p>For <a href="#CL_MEM_OBJECT_IMAGE1D_BUFFER"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;IMAGE1D_&#8203;BUFFER</code></a> image type, or an image created from
-another memory object (image or buffer), if the <a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a>,
-<a href="#CL_MEM_READ_ONLY"><code>CL_&#8203;MEM_&#8203;READ_&#8203;ONLY</code></a> or <a href="#CL_MEM_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;WRITE_&#8203;ONLY</code></a> values are not specified in <em>flags</em>,
+<p>For <a href="#CL_MEM_OBJECT_IMAGE1D_BUFFER"><code>CL_MEM_<wbr>OBJECT_<wbr>IMAGE1D_<wbr>BUFFER</code></a> image type, or an image created from
+another memory object (image or buffer), if the <a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a>,
+<a href="#CL_MEM_READ_ONLY"><code>CL_MEM_<wbr>READ_<wbr>ONLY</code></a> or <a href="#CL_MEM_WRITE_ONLY"><code>CL_MEM_<wbr>WRITE_<wbr>ONLY</code></a> values are not specified in <em>flags</em>,
 they are inherited from the corresponding memory access qualifiers associated
 with <em>mem_object</em>.
-The <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a>, <a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_&#8203;MEM_&#8203;ALLOC_&#8203;HOST_&#8203;PTR</code></a> and <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a>
+The <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a>, <a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_MEM_<wbr>ALLOC_<wbr>HOST_<wbr>PTR</code></a> and <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a>
 values cannot be specified in <em>flags</em> but are inherited from the
 corresponding memory access qualifiers associated with <em>mem_object</em>.
-If <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a> is specified in the memory access qualifier values
+If <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a> is specified in the memory access qualifier values
 associated with <em>mem_object</em> it does not imply any additional copies when
 the image is created from <em>mem_object</em>.
-If the <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a>, <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a> or
-<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;NO_&#8203;ACCESS</code></a> values are not specified in <em>flags</em>, they are
+If the <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a>, <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a> or
+<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_MEM_<wbr>HOST_<wbr>NO_<wbr>ACCESS</code></a> values are not specified in <em>flags</em>, they are
 inherited from the corresponding memory access qualifiers associated with
 <em>mem_object</em>.</p>
 </div>
@@ -10802,7 +10732,7 @@
 </div>
 <div class="paragraph">
 <p><a href="#clCreateImage"><strong>clCreateImage</strong></a> and <a href="#clCreateImageWithProperties"><strong>clCreateImageWithProperties</strong></a> returns a valid non-zero
-image object and <em>errcode_ret</em> is set to <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the image object
+image object and <em>errcode_ret</em> is set to <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the image object
 is created successfully.
 Otherwise, they return a <code>NULL</code> value with one of the following error values
 returned in <em>errcode_ret</em>:</p>
@@ -10810,81 +10740,82 @@
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_PROPERTY"><code>CL_&#8203;INVALID_&#8203;PROPERTY</code></a> if a property name in <em>properties</em> is not a
+<p><a href="#CL_INVALID_PROPERTY"><code>CL_INVALID_<wbr>PROPERTY</code></a> if a property name in <em>properties</em> is not a
 supported property name, if the value specified for a supported property
 name is not valid, or if the same property name is specified more than
 once.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if values specified in <em>flags</em> are not valid.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if values specified in <em>flags</em> are not valid.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"><code>CL_&#8203;INVALID_&#8203;IMAGE_&#8203;FORMAT_&#8203;DESCRIPTOR</code></a> if values specified in <em>image_format</em>
+<p><a href="#CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"><code>CL_INVALID_<wbr>IMAGE_<wbr>FORMAT_<wbr>DESCRIPTOR</code></a> if values specified in <em>image_format</em>
 are not valid or if <em>image_format</em> is <code>NULL</code>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"><code>CL_&#8203;INVALID_&#8203;IMAGE_&#8203;FORMAT_&#8203;DESCRIPTOR</code></a> if a 2D image is created from a
+<p><a href="#CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"><code>CL_INVALID_<wbr>IMAGE_<wbr>FORMAT_<wbr>DESCRIPTOR</code></a> if a 2D image is created from a
 buffer and the row pitch and base address alignment does not follow the
 rules described for creating a 2D image from a buffer.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"><code>CL_&#8203;INVALID_&#8203;IMAGE_&#8203;FORMAT_&#8203;DESCRIPTOR</code></a> if a 2D image is created from a 2D
+<p><a href="#CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"><code>CL_INVALID_<wbr>IMAGE_<wbr>FORMAT_<wbr>DESCRIPTOR</code></a> if a 2D image is created from a 2D
 image object and the rules described above are not followed.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_IMAGE_DESCRIPTOR"><code>CL_&#8203;INVALID_&#8203;IMAGE_&#8203;DESCRIPTOR</code></a> if values specified in <em>image_desc</em> are not
+<p><a href="#CL_INVALID_IMAGE_DESCRIPTOR"><code>CL_INVALID_<wbr>IMAGE_<wbr>DESCRIPTOR</code></a> if values specified in <em>image_desc</em> are not
 valid or if <em>image_desc</em> is <code>NULL</code>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_IMAGE_SIZE"><code>CL_&#8203;INVALID_&#8203;IMAGE_&#8203;SIZE</code></a> if image dimensions specified in <em>image_desc</em>
+<p><a href="#CL_INVALID_IMAGE_SIZE"><code>CL_INVALID_<wbr>IMAGE_<wbr>SIZE</code></a> if image dimensions specified in <em>image_desc</em>
 exceed the maximum image dimensions described in the
 <a href="#device-queries-table">Device Queries</a> table for all devices
 in <em>context</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_HOST_PTR"><code>CL_&#8203;INVALID_&#8203;HOST_&#8203;PTR</code></a> if <em>host_ptr</em> is <code>NULL</code> and <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> or
-<a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a> are set in <em>flags</em> or if <em>host_ptr</em> is not <code>NULL</code>
-but <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a> or <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> are not set in <em>flags</em>.</p>
+<p><a href="#CL_INVALID_HOST_PTR"><code>CL_INVALID_<wbr>HOST_<wbr>PTR</code></a> if <em>host_ptr</em> is <code>NULL</code> and <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> or
+<a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a> are set in <em>flags</em> or if <em>host_ptr</em> is not <code>NULL</code>
+but <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a> or <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> are not set in <em>flags</em>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if an image is being created from another memory object
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if an image is being created from another memory object
 (buffer or image) under one of the following circumstances: 1)
-<em>mem_object</em> was created with <a href="#CL_MEM_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;WRITE_&#8203;ONLY</code></a> and <em>flags</em> specifies
-<a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a> or <a href="#CL_MEM_READ_ONLY"><code>CL_&#8203;MEM_&#8203;READ_&#8203;ONLY</code></a>, 2) <em>mem_object</em> was created with
-<a href="#CL_MEM_READ_ONLY"><code>CL_&#8203;MEM_&#8203;READ_&#8203;ONLY</code></a> and <em>flags</em> specifies <a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a> or
-<a href="#CL_MEM_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;WRITE_&#8203;ONLY</code></a>, 3) <em>flags</em> specifies <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> or
-<a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_&#8203;MEM_&#8203;ALLOC_&#8203;HOST_&#8203;PTR</code></a> or <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a>.</p>
+<em>mem_object</em> was created with <a href="#CL_MEM_WRITE_ONLY"><code>CL_MEM_<wbr>WRITE_<wbr>ONLY</code></a> and <em>flags</em> specifies
+<a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a> or <a href="#CL_MEM_READ_ONLY"><code>CL_MEM_<wbr>READ_<wbr>ONLY</code></a>, 2) <em>mem_object</em> was created with
+<a href="#CL_MEM_READ_ONLY"><code>CL_MEM_<wbr>READ_<wbr>ONLY</code></a> and <em>flags</em> specifies <a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a> or
+<a href="#CL_MEM_WRITE_ONLY"><code>CL_MEM_<wbr>WRITE_<wbr>ONLY</code></a>, 3) <em>flags</em> specifies <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> or
+<a href="#CL_MEM_ALLOC_HOST_PTR"><code>CL_MEM_<wbr>ALLOC_<wbr>HOST_<wbr>PTR</code></a> or <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if an image is being created from another memory object
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if an image is being created from another memory object
 (buffer or image) and <em>mem_object</em> was created with
-<a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a> and <em>flags</em> specifies <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a>, or
-if <em>mem_object</em> was created with <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a> and <em>flags</em>
-specifies <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a>, or if <em>mem_object</em> was created with
-<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;NO_&#8203;ACCESS</code></a> and_flags_ specifies <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;READ_&#8203;ONLY</code></a> or
-<a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_&#8203;MEM_&#8203;HOST_&#8203;WRITE_&#8203;ONLY</code></a>.</p>
+<a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a> and <em>flags</em> specifies <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a>, or
+if <em>mem_object</em> was created with <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a> and <em>flags</em>
+specifies <a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a>, or if <em>mem_object</em> was created with
+<a href="#CL_MEM_HOST_NO_ACCESS"><code>CL_MEM_<wbr>HOST_<wbr>NO_<wbr>ACCESS</code></a> and_flags_ specifies <a href="#CL_MEM_HOST_READ_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>READ_<wbr>ONLY</code></a> or
+<a href="#CL_MEM_HOST_WRITE_ONLY"><code>CL_MEM_<wbr>HOST_<wbr>WRITE_<wbr>ONLY</code></a>.</p>
 </li>
 <li>
-<p><a href="#CL_IMAGE_FORMAT_NOT_SUPPORTED"><code>CL_&#8203;IMAGE_&#8203;FORMAT_&#8203;NOT_&#8203;SUPPORTED</code></a> if the <em>image_format</em> is not supported.</p>
+<p><a href="#CL_IMAGE_FORMAT_NOT_SUPPORTED"><code>CL_IMAGE_<wbr>FORMAT_<wbr>NOT_<wbr>SUPPORTED</code></a> if there are no devices in <em>context</em> that
+support <em>image_format</em>.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;ALLOCATION_&#8203;FAILURE</code></a> if there is a failure to allocate
+<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_MEM_<wbr>OBJECT_<wbr>ALLOCATION_<wbr>FAILURE</code></a> if there is a failure to allocate
 memory for image object.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_OPERATION"><code>CL_&#8203;INVALID_&#8203;OPERATION</code></a> if there are no devices in <em>context</em> that support
-images (i.e. <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> specified in the
-<a href="#device-queries-table">Device Queries</a> table is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a>).</p>
+<p><a href="#CL_INVALID_OPERATION"><code>CL_INVALID_<wbr>OPERATION</code></a> if there are no devices in <em>context</em> that support
+images (i.e. <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> specified in the
+<a href="#device-queries-table">Device Queries</a> table is <a href="#CL_FALSE"><code>CL_FALSE</code></a>).</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -10903,30 +10834,30 @@
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_OBJECT_IMAGE1D"></a><a href="#CL_MEM_OBJECT_IMAGE1D"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;IMAGE1D</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_OBJECT_IMAGE1D"></a><a href="#CL_MEM_OBJECT_IMAGE1D"><code>CL_MEM_<wbr>OBJECT_<wbr>IMAGE1D</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">≥ image_row_pitch</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_OBJECT_IMAGE1D_BUFFER"></a><a href="#CL_MEM_OBJECT_IMAGE1D_BUFFER"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;IMAGE1D_&#8203;BUFFER</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_OBJECT_IMAGE1D_BUFFER"></a><a href="#CL_MEM_OBJECT_IMAGE1D_BUFFER"><code>CL_MEM_<wbr>OBJECT_<wbr>IMAGE1D_<wbr>BUFFER</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">≥ image_row_pitch</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_OBJECT_IMAGE2D"></a><a href="#CL_MEM_OBJECT_IMAGE2D"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;IMAGE2D</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_OBJECT_IMAGE2D"></a><a href="#CL_MEM_OBJECT_IMAGE2D"><code>CL_MEM_<wbr>OBJECT_<wbr>IMAGE2D</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">≥ image_row_pitch × image_height</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_OBJECT_IMAGE3D"></a><a href="#CL_MEM_OBJECT_IMAGE3D"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;IMAGE3D</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_OBJECT_IMAGE3D"></a><a href="#CL_MEM_OBJECT_IMAGE3D"><code>CL_MEM_<wbr>OBJECT_<wbr>IMAGE3D</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">≥ image_slice_pitch × image_depth</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_OBJECT_IMAGE1D_ARRAY"></a><a href="#CL_MEM_OBJECT_IMAGE1D_ARRAY"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;IMAGE1D_&#8203;ARRAY</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_OBJECT_IMAGE1D_ARRAY"></a><a href="#CL_MEM_OBJECT_IMAGE1D_ARRAY"><code>CL_MEM_<wbr>OBJECT_<wbr>IMAGE1D_<wbr>ARRAY</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">≥ image_slice_pitch × image_array_size</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_OBJECT_IMAGE2D_ARRAY"></a><a href="#CL_MEM_OBJECT_IMAGE2D_ARRAY"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;IMAGE2D_&#8203;ARRAY</code></a></p>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_MEM_OBJECT_IMAGE2D_ARRAY"></a><a href="#CL_MEM_OBJECT_IMAGE2D_ARRAY"><code>CL_MEM_<wbr>OBJECT_<wbr>IMAGE2D_<wbr>ARRAY</code></a></p>
 <p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">≥ image_slice_pitch × image_array_size</p></td>
 </tr>
@@ -10975,7 +10906,7 @@
 information about the image memory object being created and is described in
 the <a href="#memory-flags-table">supported memory flag values</a> table.
 If the value specified for <em>flags</em> is 0, the default is used which is
-<a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a>.</p>
+<a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a>.</p>
 </li>
 <li>
 <p><em>image_format</em> is a pointer to a structure that describes format properties
@@ -11000,9 +10931,7 @@
 <li>
 <p><em>host_ptr</em> is a pointer to the image data that may already be allocated by
 the application.
-It is only used to initialize the image, and can be freed after the call to
-<a href="#clCreateImage2D"><strong>clCreateImage2D</strong></a>.
-Refer to the <a href="#CL_MEM_OBJECT_IMAGE2D"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;IMAGE2D</code></a> entry in the
+Refer to the <a href="#CL_MEM_OBJECT_IMAGE2D"><code>CL_MEM_<wbr>OBJECT_<wbr>IMAGE2D</code></a> entry in the
 <a href="#host-ptr-buffer-size-table">required <em>host_ptr</em> buffer size table</a> for a
 description of how large the buffer that <em>host_ptr</em> points to must be.
 The image data specified by <em>host_ptr</em> is stored as a linear sequence of
@@ -11019,7 +10948,7 @@
 </div>
 <div class="paragraph">
 <p><a href="#clCreateImage2D"><strong>clCreateImage2D</strong></a> returns a valid non-zero image object created and the
-<em>errcode_ret</em> is set to <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the image object is created
+<em>errcode_ret</em> is set to <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the image object is created
 successfully.
 Otherwise, it returns a <code>NULL</code> value with one of the following error values
 returned in <em>errcode_ret</em>:</p>
@@ -11027,45 +10956,46 @@
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if values specified in <em>flags</em> are not valid.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if values specified in <em>flags</em> are not valid.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"><code>CL_&#8203;INVALID_&#8203;IMAGE_&#8203;FORMAT_&#8203;DESCRIPTOR</code></a> if values specified in <em>image_format</em>
+<p><a href="#CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"><code>CL_INVALID_<wbr>IMAGE_<wbr>FORMAT_<wbr>DESCRIPTOR</code></a> if values specified in <em>image_format</em>
 are not valid or if <em>image_format</em> is <code>NULL</code>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_IMAGE_SIZE"><code>CL_&#8203;INVALID_&#8203;IMAGE_&#8203;SIZE</code></a> if <em>image_width</em> or <em>image_height</em> are 0 or if they
-exceed the maximum values specified in <a href="#CL_DEVICE_IMAGE2D_MAX_WIDTH"><code>CL_&#8203;DEVICE_&#8203;IMAGE2D_&#8203;MAX_&#8203;WIDTH</code></a> or
-<a href="#CL_DEVICE_IMAGE2D_MAX_HEIGHT"><code>CL_&#8203;DEVICE_&#8203;IMAGE2D_&#8203;MAX_&#8203;HEIGHT</code></a> respectively for all devices in <em>context</em> or
+<p><a href="#CL_INVALID_IMAGE_SIZE"><code>CL_INVALID_<wbr>IMAGE_<wbr>SIZE</code></a> if <em>image_width</em> or <em>image_height</em> are 0 or if they
+exceed the maximum values specified in <a href="#CL_DEVICE_IMAGE2D_MAX_WIDTH"><code>CL_DEVICE_<wbr>IMAGE2D_<wbr>MAX_<wbr>WIDTH</code></a> or
+<a href="#CL_DEVICE_IMAGE2D_MAX_HEIGHT"><code>CL_DEVICE_<wbr>IMAGE2D_<wbr>MAX_<wbr>HEIGHT</code></a> respectively for all devices in <em>context</em> or
 if values specified by <em>image_row_pitch</em> do not follow rules described in the
 argument description above.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_HOST_PTR"><code>CL_&#8203;INVALID_&#8203;HOST_&#8203;PTR</code></a> if <em>host_ptr</em> is <code>NULL</code> and <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> or
-<a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a> are set in <em>flags</em> or if <em>host_ptr</em> is not <code>NULL</code>
-but <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a> or <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> are not set in <em>flags</em>.</p>
+<p><a href="#CL_INVALID_HOST_PTR"><code>CL_INVALID_<wbr>HOST_<wbr>PTR</code></a> if <em>host_ptr</em> is <code>NULL</code> and <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> or
+<a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a> are set in <em>flags</em> or if <em>host_ptr</em> is not <code>NULL</code>
+but <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a> or <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> are not set in <em>flags</em>.</p>
 </li>
 <li>
-<p><a href="#CL_IMAGE_FORMAT_NOT_SUPPORTED"><code>CL_&#8203;IMAGE_&#8203;FORMAT_&#8203;NOT_&#8203;SUPPORTED</code></a> if the <em>image_format</em> is not supported.</p>
+<p><a href="#CL_IMAGE_FORMAT_NOT_SUPPORTED"><code>CL_IMAGE_<wbr>FORMAT_<wbr>NOT_<wbr>SUPPORTED</code></a> if there are no devices in <em>context</em> that
+support <em>image_format</em>.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;ALLOCATION_&#8203;FAILURE</code></a> if there is a failure to allocate
+<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_MEM_<wbr>OBJECT_<wbr>ALLOCATION_<wbr>FAILURE</code></a> if there is a failure to allocate
 memory for image object.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_OPERATION"><code>CL_&#8203;INVALID_&#8203;OPERATION</code></a> if there are no devices in <em>context</em> that support
-images (i.e. <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> specified in the
-<a href="#device-queries-table">Device Queries</a> table is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a>).</p>
+<p><a href="#CL_INVALID_OPERATION"><code>CL_INVALID_<wbr>OPERATION</code></a> if there are no devices in <em>context</em> that support
+images (i.e. <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> specified in the
+<a href="#device-queries-table">Device Queries</a> table is <a href="#CL_FALSE"><code>CL_FALSE</code></a>).</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -11115,7 +11045,7 @@
 information about the image memory object being created and is described in
 the <a href="#memory-flags-table">supported memory flag values</a> table.
 If the value specified for <em>flags</em> is 0, the default is used which is
-<a href="#CL_MEM_READ_WRITE"><code>CL_&#8203;MEM_&#8203;READ_&#8203;WRITE</code></a>.</p>
+<a href="#CL_MEM_READ_WRITE"><code>CL_MEM_<wbr>READ_<wbr>WRITE</code></a>.</p>
 </li>
 <li>
 <p><em>image_format</em> is a pointer to a structure that describes format properties
@@ -11129,8 +11059,8 @@
 These must be values greater than or equal to 1.</p>
 </li>
 <li>
-<p><em>image_depth</em> is the depth of the image in pixels.  This must be a value
-> 1.</p>
+<p><em>image_depth</em> is the depth of the image in pixels.  For <a href="#clCreateImage3D"><strong>clCreateImage3D</strong></a>,
+this must be a value > 1.</p>
 </li>
 <li>
 <p><em>image_row_pitch</em> is the  scan-line pitch in bytes.
@@ -11154,9 +11084,7 @@
 <li>
 <p><em>host_ptr</em> is a pointer to the image data that may already be allocated by
 the application.
-It is only used to initialize the image, and can be freed after the call to
-<a href="#clCreateImage3D"><strong>clCreateImage3D</strong></a>.
-Refer to the <a href="#CL_MEM_OBJECT_IMAGE3D"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;IMAGE3D</code></a> entry in the
+Refer to the <a href="#CL_MEM_OBJECT_IMAGE3D"><code>CL_MEM_<wbr>OBJECT_<wbr>IMAGE3D</code></a> entry in the
 <a href="#host-ptr-buffer-size-table">required <em>host_ptr</em> buffer size table</a> for a
 description of how large the buffer that <em>host_ptr</em> points to must be.
 The image data specified by <em>host_ptr</em> is stored as a linear sequence of
@@ -11173,7 +11101,7 @@
 </div>
 <div class="paragraph">
 <p><a href="#clCreateImage3D"><strong>clCreateImage3D</strong></a> returns a valid non-zero image object created and the
-<em>errcode_ret</em> is set to <a href="#CL_SUCCESS"><code>CL_&#8203;SUCCESS</code></a> if the image object is created
+<em>errcode_ret</em> is set to <a href="#CL_SUCCESS"><code>CL_SUCCESS</code></a> if the image object is created
 successfully.
 Otherwise, it returns a <code>NULL</code> value with one of the following error values
 returned in <em>errcode_ret</em>:</p>
@@ -11181,46 +11109,47 @@
 <div class="ulist">
 <ul>
 <li>
-<p><a href="#CL_INVALID_CONTEXT"><code>CL_&#8203;INVALID_&#8203;CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
+<p><a href="#CL_INVALID_CONTEXT"><code>CL_INVALID_<wbr>CONTEXT</code></a> if <em>context</em> is not a valid context.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_VALUE"><code>CL_&#8203;INVALID_&#8203;VALUE</code></a> if values specified in <em>flags</em> are not valid.</p>
+<p><a href="#CL_INVALID_VALUE"><code>CL_INVALID_<wbr>VALUE</code></a> if values specified in <em>flags</em> are not valid.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"><code>CL_&#8203;INVALID_&#8203;IMAGE_&#8203;FORMAT_&#8203;DESCRIPTOR</code></a> if values specified in <em>image_format</em>
+<p><a href="#CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"><code>CL_INVALID_<wbr>IMAGE_<wbr>FORMAT_<wbr>DESCRIPTOR</code></a> if values specified in <em>image_format</em>
 are not valid or if <em>image_format</em> is <code>NULL</code>.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_IMAGE_SIZE"><code>CL_&#8203;INVALID_&#8203;IMAGE_&#8203;SIZE</code></a> if <em>image_width</em> or <em>image_height</em> are 0 or if
-<em>image_depth</em> ≤ 1 or if they exceed the maximum values specified in
-<a href="#CL_DEVICE_IMAGE3D_MAX_WIDTH"><code>CL_&#8203;DEVICE_&#8203;IMAGE3D_&#8203;MAX_&#8203;WIDTH</code></a>, <a href="#CL_DEVICE_IMAGE3D_MAX_HEIGHT"><code>CL_&#8203;DEVICE_&#8203;IMAGE3D_&#8203;MAX_&#8203;HEIGHT</code></a> or
-<a href="#CL_DEVICE_IMAGE3D_MAX_DEPTH"><code>CL_&#8203;DEVICE_&#8203;IMAGE3D_&#8203;MAX_&#8203;DEPTH</code></a> respectively for all devices in <em>context</em> or
+<p><a href="#CL_INVALID_IMAGE_SIZE"><code>CL_INVALID_<wbr>IMAGE_<wbr>SIZE</code></a> if <em>image_width</em> or <em>image_height</em> are 0 or if
+<em>image_depth</em> ≤ 1, or if they exceed the maximum values specified in
+<a href="#CL_DEVICE_IMAGE3D_MAX_WIDTH"><code>CL_DEVICE_<wbr>IMAGE3D_<wbr>MAX_<wbr>WIDTH</code></a>, <a href="#CL_DEVICE_IMAGE3D_MAX_HEIGHT"><code>CL_DEVICE_<wbr>IMAGE3D_<wbr>MAX_<wbr>HEIGHT</code></a> or
+<a href="#CL_DEVICE_IMAGE3D_MAX_DEPTH"><code>CL_DEVICE_<wbr>IMAGE3D_<wbr>MAX_<wbr>DEPTH</code></a> respectively for all devices in <em>context</em>, or
 if values specified by <em>image_row_pitch</em> and <em>image_slice_pitch</em> do not
 follow rules described in the argument description above.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_HOST_PTR"><code>CL_&#8203;INVALID_&#8203;HOST_&#8203;PTR</code></a> if <em>host_ptr</em> is <code>NULL</code> and <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> or
-<a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a> are set in <em>flags</em> or if <em>host_ptr</em> is not <code>NULL</code>
-but <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_&#8203;MEM_&#8203;COPY_&#8203;HOST_&#8203;PTR</code></a> or <a href="#CL_MEM_USE_HOST_PTR"><code>CL_&#8203;MEM_&#8203;USE_&#8203;HOST_&#8203;PTR</code></a> are not set in <em>flags</em>.</p>
+<p><a href="#CL_INVALID_HOST_PTR"><code>CL_INVALID_<wbr>HOST_<wbr>PTR</code></a> if <em>host_ptr</em> is <code>NULL</code> and <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> or
+<a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a> are set in <em>flags</em> or if <em>host_ptr</em> is not <code>NULL</code>
+but <a href="#CL_MEM_COPY_HOST_PTR"><code>CL_MEM_<wbr>COPY_<wbr>HOST_<wbr>PTR</code></a> or <a href="#CL_MEM_USE_HOST_PTR"><code>CL_MEM_<wbr>USE_<wbr>HOST_<wbr>PTR</code></a> are not set in <em>flags</em>.</p>
 </li>
 <li>
-<p><a href="#CL_IMAGE_FORMAT_NOT_SUPPORTED"><code>CL_&#8203;IMAGE_&#8203;FORMAT_&#8203;NOT_&#8203;SUPPORTED</code></a> if the <em>image_format</em> is not supported.</p>
+<p><a href="#CL_IMAGE_FORMAT_NOT_SUPPORTED"><code>CL_IMAGE_<wbr>FORMAT_<wbr>NOT_<wbr>SUPPORTED</code></a> if there are no devices in <em>context</em> that
+support <em>image_format</em>.</p>
 </li>
 <li>
-<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_&#8203;MEM_&#8203;OBJECT_&#8203;ALLOCATION_&#8203;FAILURE</code></a> if there is a failure to allocate
+<p><a href="#CL_MEM_OBJECT_ALLOCATION_FAILURE"><code>CL_MEM_<wbr>OBJECT_<wbr>ALLOCATION_<wbr>FAILURE</code></a> if there is a failure to allocate
 memory for image object.</p>
 </li>
 <li>
-<p><a href="#CL_INVALID_OPERATION"><code>CL_&#8203;INVALID_&#8203;OPERATION</code></a> if there are no devices in <em>context</em> that support
-images (i.e. <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_&#8203;DEVICE_&#8203;IMAGE_&#8203;SUPPORT</code></a> specified in the
-<a href="#device-queries-table">Device Queries</a> table is <a href="#CL_FALSE"><code>CL_&#8203;FALSE</code></a>).</p>
+<p><a href="#CL_INVALID_OPERATION"><code>CL_INVALID_<wbr>OPERATION</code></a> if there are no devices in <em>context</em> that support
+images (i.e. <a href="#CL_DEVICE_IMAGE_SUPPORT"><code>CL_DEVICE_<wbr>IMAGE_<wbr>SUPPORT</code></a> specified in the
+<a href="#device-queries-table">Device Queries</a> table is <a href="#CL_FALSE"><code>CL_FALSE</code></a>).</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_&#8203;OUT_&#8203;OF_&#8203;RESOURCES</code></a> if there is a failure to allocate resources required
+<p><a href="#CL_OUT_OF_RESOURCES"><code>CL_OUT_<wbr>OF_<wbr>RESOURCES</code></a> if there is a failure to allocate resources required
 by the OpenCL implementation on the device.</p>
 </li>
 <li>
-<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_&#8203;OUT_&#8203;OF_&#8203;HOST_&#8203;MEMORY</code></a> if there is a failure to allocate resources
+<p><a href="#CL_OUT_OF_HOST_MEMORY"><code>CL_OUT_<wbr>OF_<wbr>HOST_<wbr>MEMORY</code></a> if there is a failure to allocate resources
 required by the OpenCL implementation on the host.</p>
 </li>
 </ul>
@@ -11228,11 +11157,11 @@
 </div>
 </div>
 <div class="sect4">
-<h5 id="image-format-descriptor">Image Format Descriptor</h5>
+<h5 id="image-format-descriptor"><a class="anchor" href="#image-format-descriptor"></a>5.3.1.1. Image Format Descriptor</h5>
 <div class="openblock">
 <div class="content">
 <div class="paragraph">
-<p>The <strong>cl_image_format</strong> image format descriptor structure describes an image
+<p>The <a href="#cl_image_format"><code>cl_image_<wbr>format</code></a> image format descriptor structure describes an image
 format, and is defined as:</p>
 </div>
 <div id="cl_image_format" class="listingblock">
@@ -11274,67 +11203,67 @@
 </thead>
 <tbody>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_R"></a><a href="#CL_R"><code>CL_&#8203;R</code></a>, <a id="CL_A"></a><a href="#CL_A"><code>CL_&#8203;A</code></a>,</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_R"></a><a href="#CL_R"><code>CL_R</code></a>, <a id="CL_A"></a><a href="#CL_A"><code>CL_A</code></a>,</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Single channel image formats where the single channel represents a <code>RED</code> or <code>ALPHA</code> component.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEPTH"></a><a href="#CL_DEPTH"><code>CL_&#8203;DEPTH</code></a></p>
-<p class="tableblock"><a href="#unified-spec">Missing before</a> version 1.2.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_DEPTH"></a><a href="#CL_DEPTH"><code>CL_DEPTH</code></a></p>
+<p class="tableblock"><a href="#unified-spec">Missing before</a> version 2.0.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">A single channel image format where the single channel represents a <code>DEPTH</code> component.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_LUMINANCE"></a><a href="#CL_LUMINANCE"><code>CL_&#8203;LUMINANCE</code></a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_LUMINANCE"></a><a href="#CL_LUMINANCE"><code>CL_LUMINANCE</code></a></p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">A single channel image format where the single channel represents a <code>LUMINANCE</code> value.
     The <code>LUMINANCE</code> value is replicated into the <code>RED</code>, <code>GREEN</code>, and <code>BLUE</code> components.</p></td>
 </tr>
 <tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="CL_INTENSITY"></a><a href="#CL_INTENSITY"><code>CL_&#8203;INTENSITY</code></a>,</p></td>
+<td class=