diff --git a/extensions/NV/EGL_NV_cuda_event.txt b/extensions/NV/EGL_NV_cuda_event.txt
index 08154bc..cc54749 100644
--- a/extensions/NV/EGL_NV_cuda_event.txt
+++ b/extensions/NV/EGL_NV_cuda_event.txt
@@ -11,6 +11,7 @@
     Debalina Bhattacharjee
     Michael Chock
     James Jones
+    Daniel Kartch
 
 Contact
 
@@ -22,7 +23,7 @@
 
 Version
 
-    Version 1, June 20, 2014
+    Version 2, June 28, 2018
 
 Number
 
@@ -34,11 +35,15 @@
 
 Dependencies
 
-    This extension is written against the language of EGL 1.5.
+    This extension is written against the language of EGL 1.5 and the
+    EGL_EXT_sync_reuse extension.
 
     Either EGL_KHR_fence_sync and the EGLAttrib type or EGL 1.5 are
     required.
 
+    This extension interacts with, but does not require,
+    EGL_EXT_sync_reuse.
+
     This extension interacts with EGL_NV_device_cuda.
 
 Overview
@@ -77,31 +82,31 @@
 
         EGL_SYNC_CUDA_EVENT_COMPLETE_NV 0x323D
 
-Changes to Chapter 3 of the EGL 1.5 Specification (EGL Functions and
-Errors)
+Add to section 3.8.1 (Sync Objects) of the EGL 1.5 specification, after
+the sixth paragraph:
 
-    In section 3.8.1 (Sync Objects) Replace the sixth paragraph:
+    Likewise, a <CUDA event sync object> reflects the status of a
+    corresponding CUDA object. Waiting on this type of sync object is
+    equivalent to waiting for completion of the corresponding linked
+    CUDA event object.
 
-   "A <OpenCL event sync object> reflects the status of a corresponding
-    OpenCL object to which the sync object is linked. Likewise, a <CUDA
-    event sync object> reflects the status of a corresponding CUDA
-    object. These provide another method of sharing images or compute
-    results between EGL and the CUDA and OpenCL client APIs (see
-    Chapter 9 of the OpenCL Specification and the cl_khr_egl_image
-    extension for a second method of synchronization with OpenCL).
-    Waiting on either type of sync object is equivalent to waiting for
-    completion of the corresponding linked CUDA or OpenCL event object."
+Add a new section following section 3.8.1.2 (Creating and Signaling
+OpenCL Event Sync Objects):
 
-    Add a new section following section 3.8.1.2 (Creating OpenCL Event
-    Sync Objects):
-
-   "Section 3.8.1.X Creating CUDA Event Sync Objects
+    Section 3.8.1.X Creating and Signaling CUDA Event Sync Objects
 
     If <type> is EGL_SYNC_CUDA_EVENT_NV, a CUDA event sync object is
-    created. In this case <attrib_list> must contain the attribute
+    created. The <attrib_list> may contain the attribute
     EGL_CUDA_EVENT_HANDLE_NV, set to a pointer to a cudaEvent_t object.
-    The object must be properly initialized and recorded by the CUDA API
-    (using cudaCreateEvent and cudaEventRecord), and the CUDA device
+    If it does not contain this attribute, the sync object will start in
+    the signaled state, and an event attribute must be provided the
+    first time eglUnsignalSyncEXT is called. Otherwise, a call to
+    eglUnsignalSyncEXT may replace this event attribute or leave it
+    unspecified, causing the previous object to be reused.
+
+    A cudaEvent_t object provided to eglCreateSync or eglUnsignalSyncEXT
+    must be properly initialized and recorded by the CUDA API (using
+    cudaEventCreate and cudaEventRecord), and the CUDA device
     used to create the event must correspond to <dpy>[fn1]. Note that
     EGL_CUDA_EVENT_HANDLE_NV is not a queryable property of a sync
     object.
@@ -119,47 +124,57 @@
         EGL_SYNC_STATUS         Depends on status of <event>
         EGL_SYNC_CONDITION      EGL_SYNC_CUDA_EVENT_COMPLETE_NV
 
-    The status of such a sync object depends on the state of <event> at
-    the time eglCreateSync was called. If all device work preceding the
-    most recent call to cudaEventRecord on the event has not yet
-    completed, the status of the linked sync object will be
-    EGL_UNSIGNALED. If all such work has completed, the status of the
-    linked sync object will be EGL_SIGNALED. Calling cudaEventRecord has
-    no effect on a previously created sync object.
+    If an <event> is linked to the sync object, the status of this type
+    of sync object depends on the state of <event> evaluated at the time
+    of the most recent call to eglCreateSync or eglUnsignalSyncEXT. If
+    all device work preceding the most recent call to cudaEventRecord on
+    the event has not yet completed, the status of the linked sync
+    object will be EGL_UNSIGNALED. If all such work has completed, the
+    status of the linked sync object will be EGL_SIGNALED. Calling
+    cudaEventRecord to modify an event has no effect on the sync object
+    while its status is EGL_UNSIGNALED, but will have an effect if the
+    event is reevaluated at a subsequent eglUnsignalSyncEXT call.
 
     The only condition supported for CUDA event sync objects is
     EGL_SYNC_CUDA_EVENT_COMPLETE_NV. It is satisfied when all device
     work prior to the most recent call to cudaEventRecord at sync
-    creation time has completed."
+    unsignaling time has completed.
 
-    Add to the list of errors following 3.8.1.X:
+If EGL_EXT_sync_reuse is not present, then change the second sentence of
+3.8.1.X above to "The <attrib_list> must contain ..." and omit the
+remaining sentences in the paragraph. Omit all references to
+eglUnsignalSyncEXT.
 
-   "If <type> is EGL_SYNC_CUDA_EVENT_NV and EGL_CUDA_EVENT_HANDLE_NV is
-    not specified in <attrib_list>, then an EGL_BAD_ATTRIBUTE error is
+In 3.8.1 (Sync Objects), if EGL_EXT_sync_reuse is present, then add the
+following to the error list for eglUnsignalSyncEXT. Otherwise add it to
+the error list for eglCreateSync:
+
+    If <type> is EGL_SYNC_CUDA_EVENT_NV and a EGL_CUDA_EVENT_HANDLE_NV
+    is not linked to the sync object, then an EGL_BAD_ATTRIBUTE error is
     generated. If its attribute value is not a valid CUDA event pointer
     or has not been initialized as described above, then
     EGL_BAD_ATTRIBUTE may be generated, but the results are undefined
-    and may include program termination."
+    and may include program termination.
 
-    Modify the third paragraph of section 3.8.1.4 (Querying Sync Object
-    Attributes):
+Modify the third paragraph of section 3.8.1.4 (Querying Sync Object
+Attributes):
 
-   "If any eglClientWaitSync or eglWaitSync commands are blocking on
+    If any eglClientWaitSync or eglWaitSync commands are blocking on
     <sync> when eglDestroySync is called, <sync> is flagged for deletion
     and will be deleted when the associated fence command, OpenCL event
     object, or CUDA event object has completed, and <sync> is no longer
     blocking any such egl*WaitSync command. Otherwise, the sync object
     is destroyed immediately.
 
-    Replace the EGL_SYNC_CONDITION row of table 3.9 with:
+Replace the EGL_SYNC_CONDITION row of table 3.9 with:
 
-   "Attribute              Description                Supported Sync Objects
-    -----------------      -----------------------    ----------------------
-    EGL_SYNC_CONDITION     Signaling condition        EGL_SYNC_FENCE,
-                                                      EGL_SYNC_CL_EVENT, or
-                                                      EGL_SYNC_CUDA_EVENT_NV
+    Attribute           Description              Supported Sync Objects
+    ------------------  -----------------------  ----------------------
+    EGL_SYNC_CONDITION  Signaling condition      EGL_SYNC_FENCE,
+                                                 EGL_SYNC_CL_EVENT, or
+                                                 EGL_SYNC_CUDA_EVENT_NV
 
-    Table 3.9  Attributes Accepted by eglGetSyncAttrib"
+    Table 3.9  Attributes Accepted by eglGetSyncAttrib
 
 
 Interactions with EGL versions prior to 1.5
@@ -181,5 +196,11 @@
 
 Revision History
 
+    Version 2, 2018/06/28 (Daniel Kartch)
+        - Rewritten to clearly define interactions with
+          EGL_EXT_sync_reuse, without requiring it
+        - Fixed incorrect CUDA function name
+        - Fixed table spacing
+
     Version 1, 2014/06/20 (Michael Chock)
         - initial version.
