docs: function (value) {
          if (this.head === null) {
              return null;
          }
  
          var last = this.head._prev,
              node = last;
  
          if (node !== null) {
              if (value !== null) {
                  do {
                      if (runtimeEquals(node._value, value)) {
                          return node;
                      }
  
                      node = node._prev;
                  }
                  while (node !== last);
              }
              else {
                  do {
                      if (node._value === null) {
                          return node;
                      }
  
                      node = node._prev;
                  }
                  while (node !== last);
              }
          }
  
          return null;
      }