udefine(function() {
  'use strict';

  return function(obj) {
    return JSON.stringify(obj, function(key, value) {
      // Avoiding cyclic dependencies
      if (key === 'parent') {
        return;
      }

      // Stringify the descriptor
      if (key === 'descriptor') {
        value = value.toString();
      }

      return value;
    });
  };
});

@@ -31,16 +31,83 @@
 rict';%0A%0A
+  // Serialize function to %60JSON.stringify%60 with a custom replacer%0A
   return

Add serialize documentation