diff --git a/wax-prosemirror-components/src/components/trackChanges/AcceptTrackChange.js b/wax-prosemirror-components/src/components/trackChanges/AcceptTrackChange.js
index c65ed4a1eadb99deb65cf5901a5a6facf133ad28..044d12b414ad6507e9427489e629e352d629b323 100644
--- a/wax-prosemirror-components/src/components/trackChanges/AcceptTrackChange.js
+++ b/wax-prosemirror-components/src/components/trackChanges/AcceptTrackChange.js
@@ -123,7 +123,11 @@ const acceptTrackChange = (
         tr.setNodeMarkup(
           map.map(pos),
           null,
-          Object.assign(node.attrs.track, { track }),
+          {
+            class: node.attrs.class,
+            track: [],
+          },
+          // Object.assign(node.attrs.track, { track }),
           node.marks,
         );
       }
diff --git a/wax-prosemirror-schema/src/nodes/bulletListNode.js b/wax-prosemirror-schema/src/nodes/bulletListNode.js
index ed09e842d8ca4cdc30369bd79f96a20a9d85d7de..314efd305fe4500bd76e17e50fadd57f47bf9bac 100644
--- a/wax-prosemirror-schema/src/nodes/bulletListNode.js
+++ b/wax-prosemirror-schema/src/nodes/bulletListNode.js
@@ -1,30 +1,30 @@
-import { SchemaHelpers } from "wax-prosemirror-utilities";
+import { SchemaHelpers } from 'wax-prosemirror-utilities';
 
 const bulletlist = {
-  group: "block",
-  content: "list_item+",
+  group: 'block',
+  content: 'list_item+',
   attrs: {
-    track: { default: [] }
+    track: { default: [] },
   },
   parseDOM: [
     {
-      tag: "ul",
+      tag: 'ul',
       getAttrs(hook, next) {
         Object.assign(hook, {
-          track: SchemaHelpers.parseTracks(hook.dom.dataset.track)
+          track: SchemaHelpers.parseTracks(hook.dom.dataset.track),
         });
         next();
-      }
-    }
+      },
+    },
   ],
   toDOM(hook, next) {
     const attrs = {};
-    if (hook.node.attrs.track.length) {
-      attrs["data-track"] = JSON.stringify(hook.node.attrs.track);
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
+      attrs['data-track'] = JSON.stringify(hook.node.attrs.track);
     }
-    hook.value = ["ul", attrs, 0];
+    hook.value = ['ul', attrs, 0];
     next();
-  }
+  },
 };
 
 export default bulletlist;
diff --git a/wax-prosemirror-schema/src/nodes/imageNode.js b/wax-prosemirror-schema/src/nodes/imageNode.js
index d74314f435910d44cd2981a972cc0703794e417f..40e38f316a572f8d2bf5318449ccb56045564103 100644
--- a/wax-prosemirror-schema/src/nodes/imageNode.js
+++ b/wax-prosemirror-schema/src/nodes/imageNode.js
@@ -27,7 +27,7 @@ const image = {
   toDOM(hook, next) {
     const attrs = {};
     let temp = '';
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       attrs['data-track'] = JSON.stringify(hook.node.attrs.track);
       attrs['data-id'] = hook.node.attrs.id;
     }
diff --git a/wax-prosemirror-schema/src/nodes/listItemNode.js b/wax-prosemirror-schema/src/nodes/listItemNode.js
index ffc88e827530007c3fbd6ac5965026dc2815f012..5c16de775b7527fc1a84e8d53b08839ab5ae0d58 100644
--- a/wax-prosemirror-schema/src/nodes/listItemNode.js
+++ b/wax-prosemirror-schema/src/nodes/listItemNode.js
@@ -19,7 +19,7 @@ const list_item = {
   ],
   toDOM(hook, next) {
     const attrs = {};
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       attrs['data-track'] = JSON.stringify(hook.node.attrs.track);
     }
     hook.value = ['li', attrs, 0];
diff --git a/wax-prosemirror-schema/src/nodes/orderedListNode.js b/wax-prosemirror-schema/src/nodes/orderedListNode.js
index eb9761519d6929d7568a2301f554821bfc7f4c42..014d6e02d35faf34303579aa3b8ef20e71b6b248 100644
--- a/wax-prosemirror-schema/src/nodes/orderedListNode.js
+++ b/wax-prosemirror-schema/src/nodes/orderedListNode.js
@@ -26,7 +26,7 @@ const orderedlist = {
     if (hook.node.attrs.order !== 1) {
       attrs.start = hook.node.attrs.order;
     }
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       attrs['data-track'] = JSON.stringify(hook.node.attrs.track);
     }
     hook.value = ['ol', attrs, 0];
diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/authorTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/authorTrackNode.js
index cf812debc0162903a2a0703a0629172136a49c20..984015c99faa1564c09dff61699de2aed14f46b7 100644
--- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/authorTrackNode.js
+++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/authorTrackNode.js
@@ -26,7 +26,7 @@ const author = {
     },
   ],
   toDOM(hook, next) {
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       Object.assign(hook.value[1], {
         'data-id': hook.node.attrs.id,
         'data-track': JSON.stringify(hook.node.attrs.track),
diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/customBlockTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/customBlockTrackNode.js
index c9413a700f7725987caabe2ad216627bee767830..2e764c4a173b1015fcfaa334cecec1afa286eab4 100644
--- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/customBlockTrackNode.js
+++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/customBlockTrackNode.js
@@ -26,7 +26,7 @@ const customBlockNode = {
     },
   ],
   toDOM(hook, next) {
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       Object.assign(hook.value[1], {
         'data-id': hook.node.attrs.id,
         'data-track': JSON.stringify(hook.node.attrs.track),
diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/epigraphPoetryTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/epigraphPoetryTrackNode.js
index c55f7a32d8bc044c6e494b344505766837cbe872..d079f03799bba3d83e0503c48340189e3bd44f6c 100644
--- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/epigraphPoetryTrackNode.js
+++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/epigraphPoetryTrackNode.js
@@ -26,7 +26,7 @@ const epigraphPoetry = {
     },
   ],
   toDOM(hook, next) {
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       Object.assign(hook.value[1], {
         'data-id': hook.node.attrs.id,
         'data-track': JSON.stringify(hook.node.attrs.track),
diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/epigraphProseTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/epigraphProseTrackNode.js
index d77610beb56e4d0b74f2a4a08c45392e9730bf49..f082da4efcb5ae629df943351f35ba5742ec9e37 100644
--- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/epigraphProseTrackNode.js
+++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/epigraphProseTrackNode.js
@@ -26,7 +26,7 @@ const epigraphProse = {
     },
   ],
   toDOM(hook, next) {
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       Object.assign(hook.value[1], {
         'data-id': hook.node.attrs.id,
         'data-track': JSON.stringify(hook.node.attrs.track),
diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/extractPoetryTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/extractPoetryTrackNode.js
index 9cff2b413f4a878b8b271abba90725c815b82f6b..42ec054a9354c96057b8dbc9263e9228d3c89952 100644
--- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/extractPoetryTrackNode.js
+++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/extractPoetryTrackNode.js
@@ -26,7 +26,7 @@ const extractPoetry = {
     },
   ],
   toDOM(hook, next) {
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       Object.assign(hook.value[1], {
         'data-id': hook.node.attrs.id,
         'data-track': JSON.stringify(hook.node.attrs.track),
diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/extractProseTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/extractProseTrackNode.js
index c6e9363fdcf6a0e231adf1a532cecee51a194b2c..2e6f4ec81ea7d1df0f3a089e5482d0e5a9cfb4d0 100644
--- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/extractProseTrackNode.js
+++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/extractProseTrackNode.js
@@ -26,7 +26,7 @@ const extractProse = {
     },
   ],
   toDOM(hook, next) {
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       Object.assign(hook.value[1], {
         'data-id': hook.node.attrs.id,
         'data-track': JSON.stringify(hook.node.attrs.track),
diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/headingTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/headingTrackNode.js
index a0af93970b0fae498d3a1ae3339b09348990ec02..db059daa9cc837ac91fd108d1ec12b78011ea3ec 100644
--- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/headingTrackNode.js
+++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/headingTrackNode.js
@@ -49,7 +49,7 @@ const heading = {
     },
   ],
   toDOM(hook, next) {
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       Object.assign(hook.value[1], {
         'data-id': hook.node.attrs.id,
         'data-track': JSON.stringify(hook.node.attrs.track),
diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/orderedListTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/orderedListTrackNode.js
index c3727ca774044bd88e8b711489a2499b78cfe958..56ac769bc49afa661dd61ab43fb431b05a64b7c0 100644
--- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/orderedListTrackNode.js
+++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/orderedListTrackNode.js
@@ -24,7 +24,7 @@ const orderedlist = {
     },
   ],
   toDOM(hook, next) {
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       Object.assign(hook.value[1], {
         'data-id': hook.node.attrs.id,
         'data-track': JSON.stringify(hook.node.attrs.track),
diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/paragraphContTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/paragraphContTrackNode.js
index 35a760346dea8732116a45af09ddcc27853f6e81..5752f8e2a5a50d50f341d3b8b9e987ced009622b 100644
--- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/paragraphContTrackNode.js
+++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/paragraphContTrackNode.js
@@ -26,7 +26,7 @@ const paragraphCont = {
     },
   ],
   toDOM(hook, next) {
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       Object.assign(hook.value[1], {
         'data-id': hook.node.attrs.id,
         'data-track': JSON.stringify(hook.node.attrs.track),
diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/sourceNoteTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/sourceNoteTrackNode.js
index 89c7debeac6d7e9002f3f6288b18904f44ab8654..d87b2d7fbd29315efe4be55b605387a73f515f5b 100644
--- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/sourceNoteTrackNode.js
+++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/sourceNoteTrackNode.js
@@ -26,7 +26,7 @@ const sourceNote = {
     },
   ],
   toDOM(hook, next) {
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       Object.assign(hook.value[1], {
         'data-id': hook.node.attrs.id,
         'data-track': JSON.stringify(hook.node.attrs.track),
diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/subTitleTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/subTitleTrackNode.js
index 16f5665673128a97b9a3586b7dfd1b00b882ff13..a9183b6deefe1cfd84e80d9adc46a21a6a364e10 100644
--- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/subTitleTrackNode.js
+++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/subTitleTrackNode.js
@@ -26,7 +26,7 @@ const subtitle = {
     },
   ],
   toDOM(hook, next) {
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       Object.assign(hook.value[1], {
         'data-id': hook.node.attrs.id,
         'data-track': JSON.stringify(hook.node.attrs.track),
diff --git a/wax-prosemirror-schema/src/nodes/trackChangesNodes/titleTrackNode.js b/wax-prosemirror-schema/src/nodes/trackChangesNodes/titleTrackNode.js
index 8276e0cf8ed73ccf135a3d933b7ae1c393d3c9ae..e9128da51ee4fdb45b38297a2869fff43f99485e 100644
--- a/wax-prosemirror-schema/src/nodes/trackChangesNodes/titleTrackNode.js
+++ b/wax-prosemirror-schema/src/nodes/trackChangesNodes/titleTrackNode.js
@@ -26,7 +26,7 @@ const title = {
     },
   ],
   toDOM(hook, next) {
-    if (hook.node.attrs.track.length) {
+    if (hook.node.attrs.track && hook.node.attrs.track.length) {
       Object.assign(hook.value[1], {
         'data-id': hook.node.attrs.id,
         'data-track': JSON.stringify(hook.node.attrs.track),
diff --git a/wax-prosemirror-services/src/TrackChangeService/AcceptTrackChangeService/AcceptTrackChange.js b/wax-prosemirror-services/src/TrackChangeService/AcceptTrackChangeService/AcceptTrackChange.js
index 2fdf8a2d1ce12b1fbeb1a873e76532c7cf7cf3cd..5c099e883e939e7ad408d435b325f4bd42c6d644 100644
--- a/wax-prosemirror-services/src/TrackChangeService/AcceptTrackChangeService/AcceptTrackChange.js
+++ b/wax-prosemirror-services/src/TrackChangeService/AcceptTrackChangeService/AcceptTrackChange.js
@@ -125,7 +125,11 @@ class AcceptTrackChange extends Tools {
           tr.setNodeMarkup(
             map.map(pos),
             null,
-            Object.assign(node.attrs.track, { track }),
+            {
+              class: node.attrs.class,
+              track: [],
+            },
+            // Object.assign(node.attrs.track, { track }),
             node.marks,
           );
         }