docs: protected void appendChild(final Node child, boolean checkForType) {
          if (checkForType && child instanceof KeyValueNode) {
              appendKeyValueNode((KeyValueNode<?>) child);
          } else if (checkForType && child instanceof Level) {
              getBaseLevel().appendChild(child);
          } else if (checkForType && child instanceof SpecTopic) {
              getBaseLevel().appendChild(child);
          } else {
              nodes.add(child);
              if (child.getParent() != null) {
                  child.removeParent();
              }
              child.setParent(this);
          }
      }