docs: def complex_fault_node(edges):
      """
      :param edges: a list of lists of points
      :returns: a Node of kind complexFaultGeometry
      """
      node = Node('complexFaultGeometry')
      node.append(edge_node('faultTopEdge', edges[0]))
      for edge in edges[1:-1]:
          node.append(edge_node('intermediateEdge', edge))
      node.append(edge_node('faultBottomEdge', edges[-1]))
      return node