  grouping ports:
    +-- (source-port)?
    |  +--:(source-port-range-or-operator)
    |     +-- source-port-range-or-operator
    |        +-- (port-range-or-operator)?
    |           +--:(range)
    |           |  +-- lower-port    inet:port-number
    |           |  +-- upper-port    inet:port-number
    |           +--:(operator)
    |              +-- operator?     operator
    |              +-- port          inet:port-number
    +-- (destination-port)?
       +--:(destination-port-range-or-operator)
          +-- destination-port-range-or-operator
             +-- (port-range-or-operator)?
                +--:(range)
                |  +-- lower-port    inet:port-number
                |  +-- upper-port    inet:port-number
                +--:(operator)
                   +-- operator?     operator
                   +-- port          inet:port-number
