         r.exist = true
 
       if declaration[2] > current[2]
+        r.object = true
+        r.exist = false
+
+      if declaration[4] > current[4]
         r.writable = true
-        r.exist = false
-
-      if declaration[4] > current[4]
-        r.object = true
         r.exist = false
 
       if declaration[6] > current[6]

          r.object = false
          r.exist = false
          gpn = false
        else if not current[3]?
          r.object = true

      if declaration[7]? and current[7]?


      for d, j in descendantLoad when d
        toLoad.push(path.concat(descendantTimestamps[j][0][path.length] ? null))

    if declaration[7]? and not current[4]?
      # Need writable attribute when declaring a value
      toLoad.push(path)
      return

    for i in [0...declaration.length] by 2
      if declaration[i]? and not current[i]?
