| Index: client/html/src/NodeWrappingImplementation.dart
 | 
| diff --git a/client/html/src/NodeWrappingImplementation.dart b/client/html/src/NodeWrappingImplementation.dart
 | 
| index 81c4a4a4d809caf2a1a217aedfeda046936785ea..e44f063d90561367ea38532a67d75f848a251d21 100644
 | 
| --- a/client/html/src/NodeWrappingImplementation.dart
 | 
| +++ b/client/html/src/NodeWrappingImplementation.dart
 | 
| @@ -57,8 +57,9 @@ class _ChildrenNodeList implements NodeList {
 | 
|      return false;
 | 
|    }
 | 
|  
 | 
| +  /** @domName Node.hasChildNodes */
 | 
|    bool isEmpty() {
 | 
| -    return _node.hasChildNodes();
 | 
| +    return !_node.hasChildNodes();
 | 
|    }
 | 
|  
 | 
|    int get length() {
 | 
| @@ -77,6 +78,7 @@ class _ChildrenNodeList implements NodeList {
 | 
|       throw new UnsupportedOperationException('');
 | 
|     }
 | 
|  
 | 
| +  /** @domName Node.appendChild */
 | 
|    Node add(Node value) {
 | 
|      _node.appendChild(LevelDom.unwrap(value));
 | 
|      return value;
 | 
| @@ -196,6 +198,7 @@ class NodeWrappingImplementation extends EventTargetWrappingImplementation imple
 | 
|      return this;
 | 
|    }
 | 
|  
 | 
| +  /** @domName contains */
 | 
|    bool contains(Node otherNode) {
 | 
|      // TODO: Feature detect and use built in.
 | 
|      while (otherNode != null && otherNode != this) {
 | 
| 
 |