get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/29767/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 29767,
    "url": "https://patches.dpdk.org/api/patches/29767/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/1507218244-29568-7-git-send-email-mark.b.kavanagh@intel.com/",
    "project": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<1507218244-29568-7-git-send-email-mark.b.kavanagh@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1507218244-29568-7-git-send-email-mark.b.kavanagh@intel.com",
    "date": "2017-10-05T15:44:04",
    "name": "[dpdk-dev,v8,6/6] doc: add GSO programmer's guide",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "9e6f9651c907ed1d429a93aec6a56303e8dae03a",
    "submitter": {
        "id": 133,
        "url": "https://patches.dpdk.org/api/people/133/?format=api",
        "name": "Mark Kavanagh",
        "email": "mark.b.kavanagh@intel.com"
    },
    "delegate": null,
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/1507218244-29568-7-git-send-email-mark.b.kavanagh@intel.com/mbox/",
    "series": [],
    "comments": "https://patches.dpdk.org/api/patches/29767/comments/",
    "check": "fail",
    "checks": "https://patches.dpdk.org/api/patches/29767/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@dpdk.org",
        "Delivered-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 88BA61B28F;\n\tThu,  5 Oct 2017 17:44:21 +0200 (CEST)",
            "from mga05.intel.com (mga05.intel.com [192.55.52.43])\n\tby dpdk.org (Postfix) with ESMTP id 769A91B25C\n\tfor <dev@dpdk.org>; Thu,  5 Oct 2017 17:44:11 +0200 (CEST)",
            "from fmsmga001.fm.intel.com ([10.253.24.23])\n\tby fmsmga105.fm.intel.com with ESMTP; 05 Oct 2017 08:44:10 -0700",
            "from irvmail001.ir.intel.com ([163.33.26.43])\n\tby fmsmga001.fm.intel.com with ESMTP; 05 Oct 2017 08:44:07 -0700",
            "from sivswdev01.ir.intel.com (sivswdev01.ir.intel.com\n\t[10.237.217.45])\n\tby irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id\n\tv95Fi6sZ001771; Thu, 5 Oct 2017 16:44:06 +0100",
            "from sivswdev01.ir.intel.com (localhost [127.0.0.1])\n\tby sivswdev01.ir.intel.com with ESMTP id v95Fi6Ev029731;\n\tThu, 5 Oct 2017 16:44:06 +0100",
            "(from mbkavana@localhost)\n\tby sivswdev01.ir.intel.com with LOCAL id v95Fi60q029726;\n\tThu, 5 Oct 2017 16:44:06 +0100"
        ],
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos; i=\"5.42,481,1500966000\"; d=\"scan'208\";\n\ta=\"1202622069\"",
        "From": "Mark Kavanagh <mark.b.kavanagh@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "jiayu.hu@intel.com, jianfeng.tan@intel.com, konstantin.ananyev@intel.com,\n\tferruh.yigit@intel.com, thomas@monjalon.net,\n\tMark Kavanagh <mark.b.kavanagh@intel.com>",
        "Date": "Thu,  5 Oct 2017 16:44:04 +0100",
        "Message-Id": "<1507218244-29568-7-git-send-email-mark.b.kavanagh@intel.com>",
        "X-Mailer": "git-send-email 1.7.0.7",
        "In-Reply-To": "<1507201331-228465-1-git-send-email-mark.b.kavanagh@intel.com>",
        "References": "<1507201331-228465-1-git-send-email-mark.b.kavanagh@intel.com>",
        "Subject": "[dpdk-dev] [PATCH v8 6/6] doc: add GSO programmer's guide",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "Add programmer's guide doc to explain the design and use of the\nGSO library.\n\nSigned-off-by: Mark Kavanagh <mark.b.kavanagh@intel.com>\nSigned-off-by: Jiayu Hu <jiayu.hu@intel.com>\n---\n MAINTAINERS                                        |   6 +\n .../generic_segmentation_offload_lib.rst           | 256 +++++++++++\n .../prog_guide/img/gso-output-segment-format.svg   | 313 ++++++++++++++\n doc/guides/prog_guide/img/gso-three-seg-mbuf.svg   | 477 +++++++++++++++++++++\n doc/guides/prog_guide/index.rst                    |   1 +\n 5 files changed, 1053 insertions(+)\n create mode 100644 doc/guides/prog_guide/generic_segmentation_offload_lib.rst\n create mode 100644 doc/guides/prog_guide/img/gso-output-segment-format.svg\n create mode 100644 doc/guides/prog_guide/img/gso-three-seg-mbuf.svg",
    "diff": "diff --git a/MAINTAINERS b/MAINTAINERS\nindex 8df2a7f..8f0a4bd 100644\n--- a/MAINTAINERS\n+++ b/MAINTAINERS\n@@ -644,6 +644,12 @@ M: Jiayu Hu <jiayu.hu@intel.com>\n F: lib/librte_gro/\n F: doc/guides/prog_guide/generic_receive_offload_lib.rst\n \n+Generic Segmentation Offload\n+M: Jiayu Hu <jiayu.hu@intel.com>\n+M: Mark Kavanagh <mark.b.kavanagh@intel.com>\n+F: lib/librte_gso/\n+F: doc/guides/prog_guide/generic_segmentation_offload_lib.rst\n+\n Distributor\n M: Bruce Richardson <bruce.richardson@intel.com>\n M: David Hunt <david.hunt@intel.com>\ndiff --git a/doc/guides/prog_guide/generic_segmentation_offload_lib.rst b/doc/guides/prog_guide/generic_segmentation_offload_lib.rst\nnew file mode 100644\nindex 0000000..5e78f16\n--- /dev/null\n+++ b/doc/guides/prog_guide/generic_segmentation_offload_lib.rst\n@@ -0,0 +1,256 @@\n+..  BSD LICENSE\n+    Copyright(c) 2017 Intel Corporation. All rights reserved.\n+    All rights reserved.\n+\n+    Redistribution and use in source and binary forms, with or without\n+    modification, are permitted provided that the following conditions\n+    are met:\n+\n+    * Redistributions of source code must retain the above copyright\n+    notice, this list of conditions and the following disclaimer.\n+    * Redistributions in binary form must reproduce the above copyright\n+    notice, this list of conditions and the following disclaimer in\n+    the documentation and/or other materials provided with the\n+    distribution.\n+    * Neither the name of Intel Corporation nor the names of its\n+    contributors may be used to endorse or promote products derived\n+    from this software without specific prior written permission.\n+\n+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n+    \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n+\n+Generic Segmentation Offload Library\n+====================================\n+\n+Overview\n+--------\n+Generic Segmentation Offload (GSO) is a widely used software implementation of\n+TCP Segmentation Offload (TSO), which reduces per-packet processing overhead.\n+Much like TSO, GSO gains performance by enabling upper layer applications to\n+process a smaller number of large packets (e.g. MTU size of 64KB), instead of\n+processing higher numbers of small packets (e.g. MTU size of 1500B), thus\n+reducing per-packet overhead.\n+\n+For example, GSO allows guest kernel stacks to transmit over-sized TCP segments\n+that far exceed the kernel interface's MTU; this eliminates the need to segment\n+packets within the guest, and improves the data-to-overhead ratio of both the\n+guest-host link, and PCI bus. The expectation of the guest network stack in this\n+scenario is that segmentation of egress frames will take place either in the NIC\n+HW, or where that hardware capability is unavailable, either in the host\n+application, or network stack.\n+\n+Bearing that in mind, the GSO library enables DPDK applications to segment\n+packets in software. Note however, that GSO is implemented as a standalone\n+library, and not via a 'fallback' mechanism (i.e. for when TSO is unsupported\n+in the underlying hardware); that is, applications must explicitly invoke the\n+GSO library to segment packets. The size of GSO segments ``(segsz)`` is\n+configurable by the application.\n+\n+Limitations\n+-----------\n+\n+#. The GSO library doesn't check if input packets have correct checksums.\n+\n+#. In addition, the GSO library doesn't re-calculate checksums for segmented\n+   packets (that task is left to the application).\n+\n+#. IP fragments are unsupported by the GSO library.\n+\n+#. The egress interface's driver must support multi-segment packets.\n+\n+#. Currently, the GSO library supports the following IPv4 packet types:\n+\n+ - TCP\n+ - VxLAN\n+ - GRE\n+\n+  See `Supported GSO Packet Types`_ for further details.\n+\n+Packet Segmentation\n+-------------------\n+\n+The ``rte_gso_segment()`` function is the GSO library's primary\n+segmentation API.\n+\n+Before performing segmentation, an application must create a GSO context object\n+``(struct rte_gso_ctx)``, which provides the library with some of the\n+information required to understand how the packet should be segmented. Refer to\n+`How to Segment a Packet`_ for additional details on same. Once the GSO context\n+has been created, and populated, the application can then use the\n+``rte_gso_segment()`` function to segment packets.\n+\n+The GSO library typically stores each segment that it creates in two parts: the\n+first part contains a copy of the original packet's headers, while the second\n+part contains a pointer to an offset within the original packet. This mechanism\n+is explained in more detail in `GSO Output Segment Format`_.\n+\n+The GSO library supports both single- and multi-segment input mbufs.\n+\n+GSO Output Segment Format\n+~~~~~~~~~~~~~~~~~~~~~~~~~\n+To reduce the number of expensive memcpy operations required when segmenting a\n+packet, the GSO library typically stores each segment that it creates as a\n+two-part mbuf (technically, this is termed a 'two-segment' mbuf; however, since\n+the elements produced by the API are also called 'segments', for clarity the\n+term 'part' is used here instead).\n+\n+The first part of each output segment is a direct mbuf and contains a copy of\n+the original packet's headers, which must be prepended to each output segment.\n+These headers are copied from the original packet into each output segment.\n+\n+The second part of each output segment, represents a section of data from the\n+original packet, i.e. a data segment. Rather than copy the data directly from\n+the original packet into the output segment (which would impact performance\n+considerably), the second part of each output segment is an indirect mbuf,\n+which contains no actual data, but simply points to an offset within the\n+original packet.\n+\n+The combination of the 'header' segment and the 'data' segment constitutes a\n+single logical output GSO segment of the original packet. This is illustrated\n+in :numref:`figure_gso-output-segment-format`.\n+\n+.. _figure_gso-output-segment-format:\n+\n+.. figure:: img/gso-output-segment-format.svg\n+   :align: center\n+\n+   Two-part GSO output segment\n+\n+In one situation, the output segment may contain additional 'data' segments.\n+This only occurs when:\n+\n+- the input packet on which GSO is to be performed is represented by a\n+  multi-segment mbuf.\n+\n+- the output segment is required to contain data that spans the boundaries\n+  between segments of the input multi-segment mbuf.\n+\n+The GSO library traverses each segment of the input packet, and produces\n+numerous output segments; for optimal performance, the number of output\n+segments is kept to a minimum. Consequently, the GSO library maximizes the\n+amount of data contained within each output segment; i.e. each output segment\n+``segsz`` bytes of data. The only exception to this is in the case of the very\n+final output segment; if ``pkt_len`` % ``segsz``, then the final segment is\n+smaller than the rest.\n+\n+In order for an output segment to meet its MSS, it may need to include data from\n+multiple input segments. Due to the nature of indirect mbufs (each indirect mbuf\n+can point to only one direct mbuf), the solution here is to add another indirect\n+mbuf to the output segment; this additional segment then points to the next\n+input segment. If necessary, this chaining process is repeated, until the sum of\n+all of the data 'contained' in the output segment reaches ``segsz``. This\n+ensures that the amount of data contained within each output segment is uniform,\n+with the possible exception of the last segment, as previously described.\n+\n+:numref:`figure_gso-three-seg-mbuf` illustrates an example of a three-part\n+output segment. In this example, the output segment needs to include data from\n+the end of one input segment, and the beginning of another. To achieve this,\n+an additional indirect mbuf is chained to the second part of the output segment,\n+and is attached to the next input segment (i.e. it points to the data in the\n+next input segment).\n+\n+.. _figure_gso-three-seg-mbuf:\n+\n+.. figure:: img/gso-three-seg-mbuf.svg\n+   :align: center\n+\n+   Three-part GSO output segment\n+\n+Supported GSO Packet Types\n+--------------------------\n+\n+TCP/IPv4 GSO\n+~~~~~~~~~~~~\n+TCP/IPv4 GSO supports segmentation of suitably large TCP/IPv4 packets, which\n+may also contain an optional VLAN tag.\n+\n+VxLAN GSO\n+~~~~~~~~~\n+VxLAN packets GSO supports segmentation of suitably large VxLAN packets,\n+which contain an outer IPv4 header, inner TCP/IPv4 headers, and optional\n+inner and/or outer VLAN tag(s).\n+\n+GRE GSO\n+~~~~~~~\n+GRE GSO supports segmentation of suitably large GRE packets, which contain\n+an outer IPv4 header, inner TCP/IPv4 headers, and an optional VLAN tag.\n+\n+How to Segment a Packet\n+-----------------------\n+\n+To segment an outgoing packet, an application must:\n+\n+#. First create a GSO context ``(struct rte_gso_ctx)``; this contains:\n+\n+   - a pointer to the mbuf pool for allocating the direct buffers, which are\n+     used to store the GSO segments' packet headers.\n+\n+   - a pointer to the mbuf pool for allocating indirect buffers, which are\n+     used to locate GSO segments' packet payloads.\n+\n+.. note::\n+\n+     An application may use the same pool for both direct and indirect\n+     buffers. However, since each indirect mbuf simply stores a pointer, the\n+     application may reduce its memory consumption by creating a separate memory\n+     pool, containing smaller elements, for the indirect pool.\n+\n+   - the size of each output segment, including packet headers and payload,\n+     measured in bytes.\n+\n+   - the bit mask of required GSO types. The GSO library uses the same macros as\n+     those that describe a physical device's TX offloading capabilities (i.e.\n+     ``DEV_TX_OFFLOAD_*_TSO``) for gso_types. For example, if an application\n+     wants to segment TCP/IPv4 packets, it should set gso_types to\n+     ``DEV_TX_OFFLOAD_TCP_TSO``. The only other supported values currently\n+     supported for gso_types are ``DEV_TX_OFFLOAD_VXLAN_TNL_TSO``, and\n+     ``DEV_TX_OFFLOAD_GRE_TNL_TSO``; a combination of these macros is also\n+     allowed.\n+\n+   - a flag, that indicates whether the IPv4 headers of output segments should\n+     contain fixed or incremental ID values.\n+\n+2. Set the appropriate ol_flags in the mbuf.\n+\n+   - The GSO library use the value of an mbuf's ``ol_flags`` attribute to\n+     to determine how a packet should be segmented. It is the application's\n+     responsibility to ensure that these flags are set.\n+\n+   - For example, in order to segment TCP/IPv4 packets, the application should\n+     add the ``PKT_TX_IPV4`` and ``PKT_TX_TCP_SEG`` flags to the mbuf's\n+     ol_flags.\n+\n+   - If checksum calculation in hardware is required, the application should\n+     also add the ``PKT_TX_TCP_CKSUM`` and ``PKT_TX_IP_CKSUM`` flags.\n+\n+#. Check if the packet should be processed. Packets with one of the\n+   following properties are not processed and are returned immediately:\n+\n+   - Packet length is less than ``segsz`` (i.e. GSO is not required).\n+\n+   - Packet type is not supported by GSO library (see\n+     `Supported GSO Packet Types`_).\n+\n+   - Application has not enabled GSO support for the packet type.\n+\n+   - Packet's ol_flags have been incorrectly set.\n+\n+#. Allocate space in which to store the output GSO segments. If the amount of\n+   space allocated by the application is insufficient, segmentation will fail.\n+\n+#. Invoke the GSO segmentation API, ``rte_gso_segment()``.\n+\n+#. If required, update the L3 and L4 checksums of the newly-created segments.\n+   For tunneled packets, the outer IPv4 headers' checksums should also be\n+   updated. Alternatively, the application may offload checksum calculation\n+   to HW.\n+\ndiff --git a/doc/guides/prog_guide/img/gso-output-segment-format.svg b/doc/guides/prog_guide/img/gso-output-segment-format.svg\nnew file mode 100644\nindex 0000000..bdb5ec3\n--- /dev/null\n+++ b/doc/guides/prog_guide/img/gso-output-segment-format.svg\n@@ -0,0 +1,313 @@\n+<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n+<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n+<!-- Generated by Microsoft Visio, SVG Export gso-output-segment-format.svg Page-1 -->\n+<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" xmlns:ev=\"http://www.w3.org/2001/xml-events\"\n+\t\txmlns:v=\"http://schemas.microsoft.com/visio/2003/SVGExtensions/\" width=\"19.3975in\" height=\"8.21796in\"\n+\t\tviewBox=\"0 0 1396.62 591.693\" xml:space=\"preserve\" color-interpolation-filters=\"sRGB\" class=\"st21\">\n+\t<v:documentProperties v:langID=\"1033\" v:metric=\"true\" v:viewMarkup=\"false\"/>\n+\n+\t<style type=\"text/css\">\n+\t<![CDATA[\n+\t\t.st1 {fill:#006fc5;stroke:#006fc5;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.0552552}\n+\t\t.st2 {fill:#ffffff;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}\n+\t\t.st3 {stroke:#c3d600;stroke-linecap:round;stroke-linejoin:round;stroke-width:3.68828}\n+\t\t.st4 {fill:#c3d600;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}\n+\t\t.st5 {stroke:#8f9d00;stroke-linecap:round;stroke-linejoin:round;stroke-width:3.75735}\n+\t\t.st6 {fill:#00aeef;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}\n+\t\t.st7 {stroke:#007fb0;stroke-linecap:round;stroke-linejoin:round;stroke-width:3.75735}\n+\t\t.st8 {stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}\n+\t\t.st9 {fill:#ffffff;font-family:Intel Clear;font-size:1.99999em;font-weight:bold}\n+\t\t.st10 {fill:#000000;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.0552552}\n+\t\t.st11 {fill:#ffffff;font-family:Intel Clear;font-size:2.44732em;font-weight:bold}\n+\t\t.st12 {fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round;stroke-width:5.52552}\n+\t\t.st13 {fill:#000000;font-family:Intel Clear;font-size:2.15291em}\n+\t\t.st14 {fill:#000000;font-family:Intel Clear;font-size:1.8401em}\n+\t\t.st15 {fill:#006fc5;stroke:#006fc5;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.0276276}\n+\t\t.st16 {fill:#c3d600;font-family:Intel Clear;font-size:2.44732em}\n+\t\t.st17 {fill:#ffc000;font-family:Intel Clear;font-size:2.44732em}\n+\t\t.st18 {fill:#ffc000;stroke:#ffc000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.0276276}\n+\t\t.st19 {fill:#0070c0;font-family:Intel Clear;font-size:1.8401em}\n+\t\t.st20 {fill:#006fc5;font-family:Intel Clear;font-size:1.61927em}\n+\t\t.st21 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}\n+\t]]>\n+\t</style>\n+\n+\t<g v:mID=\"0\" v:index=\"1\" v:groupContext=\"foregroundPage\">\n+\t\t<title>Page-1</title>\n+\t\t<v:pageProperties v:drawingScale=\"0.0393701\" v:pageScale=\"0.0393701\" v:drawingUnits=\"24\" v:shadowOffsetX=\"8.50394\"\n+\t\t\t\tv:shadowOffsetY=\"-8.50394\"/>\n+\t\t<g id=\"shape3-1\" v:mID=\"3\" v:groupContext=\"shape\" transform=\"translate(577.244,-560.42)\">\n+\t\t\t<title>Sheet.3</title>\n+\t\t\t<path d=\"M9.24 585.29 L16.32 585.29 L16.32 587.06 L9.24 587.06 L9.24 585.29 L9.24 585.29 ZM21.63 585.29 L23.4 585.29\n+\t\t\t\t\t\t L23.4 587.06 L21.63 587.06 L21.63 585.29 L21.63 585.29 ZM28.7 585.29 L35.78 585.29 L35.78 587.06 L28.7 587.06\n+\t\t\t\t\t\t L28.7 585.29 L28.7 585.29 ZM41.09 585.29 L42.86 585.29 L42.86 587.06 L41.09 587.06 L41.09 585.29 L41.09\n+\t\t\t\t\t\t 585.29 ZM48.17 585.29 L55.25 585.29 L55.25 587.06 L48.17 587.06 L48.17 585.29 L48.17 585.29 ZM60.56 585.29\n+\t\t\t\t\t\t L62.33 585.29 L62.33 587.06 L60.56 587.06 L60.56 585.29 L60.56 585.29 ZM67.64 585.29 L74.72 585.29 L74.72\n+\t\t\t\t\t\t 587.06 L67.64 587.06 L67.64 585.29 L67.64 585.29 ZM80.03 585.29 L81.8 585.29 L81.8 587.06 L80.03 587.06\n+\t\t\t\t\t\t L80.03 585.29 L80.03 585.29 ZM87.11 585.29 L94.19 585.29 L94.19 587.06 L87.11 587.06 L87.11 585.29 L87.11\n+\t\t\t\t\t\t 585.29 ZM99.5 585.29 L101.27 585.29 L101.27 587.06 L99.5 587.06 L99.5 585.29 L99.5 585.29 ZM106.58 585.29\n+\t\t\t\t\t\t L113.66 585.29 L113.66 587.06 L106.58 587.06 L106.58 585.29 L106.58 585.29 ZM118.97 585.29 L120.74 585.29\n+\t\t\t\t\t\t L120.74 587.06 L118.97 587.06 L118.97 585.29 L118.97 585.29 ZM126.05 585.29 L133.13 585.29 L133.13 587.06\n+\t\t\t\t\t\t L126.05 587.06 L126.05 585.29 L126.05 585.29 ZM138.43 585.29 L140.2 585.29 L140.2 587.06 L138.43 587.06\n+\t\t\t\t\t\t L138.43 585.29 L138.43 585.29 ZM145.51 585.29 L152.59 585.29 L152.59 587.06 L145.51 587.06 L145.51 585.29\n+\t\t\t\t\t\t L145.51 585.29 ZM157.9 585.29 L159.67 585.29 L159.67 587.06 L157.9 587.06 L157.9 585.29 L157.9 585.29 ZM164.98\n+\t\t\t\t\t\t 585.29 L172.06 585.29 L172.06 587.06 L164.98 587.06 L164.98 585.29 L164.98 585.29 ZM177.37 585.29 L179.14\n+\t\t\t\t\t\t 585.29 L179.14 587.06 L177.37 587.06 L177.37 585.29 L177.37 585.29 ZM184.45 585.29 L191.53 585.29 L191.53\n+\t\t\t\t\t\t 587.06 L184.45 587.06 L184.45 585.29 L184.45 585.29 ZM196.84 585.29 L198.61 585.29 L198.61 587.06 L196.84\n+\t\t\t\t\t\t 587.06 L196.84 585.29 L196.84 585.29 ZM203.92 585.29 L211 585.29 L211 587.06 L203.92 587.06 L203.92 585.29\n+\t\t\t\t\t\t L203.92 585.29 ZM216.31 585.29 L218.08 585.29 L218.08 587.06 L216.31 587.06 L216.31 585.29 L216.31 585.29\n+\t\t\t\t\t\t ZM223.39 585.29 L230.47 585.29 L230.47 587.06 L223.39 587.06 L223.39 585.29 L223.39 585.29 ZM235.78 585.29\n+\t\t\t\t\t\t L237.55 585.29 L237.55 587.06 L235.78 587.06 L235.78 585.29 L235.78 585.29 ZM242.86 585.29 L249.93 585.29\n+\t\t\t\t\t\t L249.93 587.06 L242.86 587.06 L242.86 585.29 L242.86 585.29 ZM255.24 585.29 L257.01 585.29 L257.01 587.06\n+\t\t\t\t\t\t L255.24 587.06 L255.24 585.29 L255.24 585.29 ZM262.32 585.29 L269.4 585.29 L269.4 587.06 L262.32 587.06\n+\t\t\t\t\t\t L262.32 585.29 L262.32 585.29 ZM274.71 585.29 L276.48 585.29 L276.48 587.06 L274.71 587.06 L274.71 585.29\n+\t\t\t\t\t\t L274.71 585.29 ZM281.79 585.29 L288.87 585.29 L288.87 587.06 L281.79 587.06 L281.79 585.29 L281.79 585.29\n+\t\t\t\t\t\t ZM294.18 585.29 L295.95 585.29 L295.95 587.06 L294.18 587.06 L294.18 585.29 L294.18 585.29 ZM301.26 585.29\n+\t\t\t\t\t\t L308.34 585.29 L308.34 587.06 L301.26 587.06 L301.26 585.29 L301.26 585.29 ZM313.65 585.29 L315.42 585.29\n+\t\t\t\t\t\t L315.42 587.06 L313.65 587.06 L313.65 585.29 L313.65 585.29 ZM320.73 585.29 L324.99 585.29 L324.99 587.06\n+\t\t\t\t\t\t L320.73 587.06 L320.73 585.29 L320.73 585.29 ZM11.06 591.69 L0 586.17 L11.06 580.65 L11.06 591.69 L11.06\n+\t\t\t\t\t\t 591.69 ZM323.16 580.65 L334.22 586.17 L323.16 591.69 L323.16 580.65 L323.16 580.65 Z\" class=\"st1\"/>\n+\t\t</g>\n+\t\t<g id=\"shape4-3\" v:mID=\"4\" v:groupContext=\"shape\" transform=\"translate(184.298,-201.906)\">\n+\t\t\t<title>Sheet.4</title>\n+\t\t\t<path d=\"M94.04 570.43 L117.87 557.26 L0 344.58 L47.68 318.26 L165.55 530.94 L189.39 517.79 L168.08 591.69 L94.04 570.43\n+\t\t\t\t\t\t Z\" class=\"st2\"/>\n+\t\t</g>\n+\t\t<g id=\"shape5-5\" v:mID=\"5\" v:groupContext=\"shape\" transform=\"translate(184.298,-201.906)\">\n+\t\t\t<title>Sheet.5</title>\n+\t\t\t<path d=\"M94.04 570.43 L117.87 557.26 L0 344.58 L47.68 318.26 L165.55 530.94 L189.39 517.79 L168.08 591.69 L94.04 570.43\"\n+\t\t\t\t\tclass=\"st3\"/>\n+\t\t</g>\n+\t\t<g id=\"shape6-8\" v:mID=\"6\" v:groupContext=\"shape\" transform=\"translate(119.408,-447.917)\">\n+\t\t\t<title>Sheet.6</title>\n+\t\t\t<path d=\"M0 510.21 L0 591.69 L129.86 591.69 L129.86 510.21 L0 510.21 L0 510.21 Z\" class=\"st4\"/>\n+\t\t</g>\n+\t\t<g id=\"shape7-10\" v:mID=\"7\" v:groupContext=\"shape\" transform=\"translate(119.408,-447.917)\">\n+\t\t\t<title>Sheet.7</title>\n+\t\t\t<path d=\"M0 510.21 L129.86 510.21 L129.86 591.69 L0 591.69 L0 510.21\" class=\"st5\"/>\n+\t\t</g>\n+\t\t<g id=\"shape10-13\" v:mID=\"10\" v:groupContext=\"shape\" transform=\"translate(250.819,-447.917)\">\n+\t\t\t<title>Sheet.10</title>\n+\t\t\t<path d=\"M0 510.21 L0 591.69 L822.53 591.69 L822.53 510.21 L0 510.21 L0 510.21 Z\" class=\"st6\"/>\n+\t\t</g>\n+\t\t<g id=\"shape11-15\" v:mID=\"11\" v:groupContext=\"shape\" transform=\"translate(250.819,-447.917)\">\n+\t\t\t<title>Sheet.11</title>\n+\t\t\t<path d=\"M0 510.21 L822.53 510.21 L822.53 591.69 L0 591.69 L0 510.21\" class=\"st7\"/>\n+\t\t</g>\n+\t\t<g id=\"shape12-18\" v:mID=\"12\" v:groupContext=\"shape\" transform=\"translate(255.478,-470.123)\">\n+\t\t\t<title>Sheet.12</title>\n+\t\t\t<desc>Payload 0</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"157.315\" cy=\"574.07\" width=\"314.63\" height=\"35.245\"/>\n+\t\t\t<path d=\"M314.63 556.45 L0 556.45 L0 591.69 L314.63 591.69 L314.63 556.45\" class=\"st8\"/>\n+\t\t\t<text x=\"102.08\" y=\"581.27\" class=\"st9\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Payload 0</text>\t\t</g>\n+\t\t<g id=\"shape13-22\" v:mID=\"13\" v:groupContext=\"shape\" transform=\"translate(577.354,-470.123)\">\n+\t\t\t<title>Sheet.13</title>\n+\t\t\t<desc>Payload 1</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"167.112\" cy=\"574.07\" width=\"334.23\" height=\"35.245\"/>\n+\t\t\t<path d=\"M334.22 556.45 L0 556.45 L0 591.69 L334.22 591.69 L334.22 556.45\" class=\"st8\"/>\n+\t\t\t<text x=\"111.88\" y=\"581.27\" class=\"st9\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Payload 1</text>\t\t</g>\n+\t\t<g id=\"shape14-26\" v:mID=\"14\" v:groupContext=\"shape\" transform=\"translate(910.635,-470.956)\">\n+\t\t\t<title>Sheet.14</title>\n+\t\t\t<desc>Payload 2</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"81.8509\" cy=\"574.07\" width=\"163.71\" height=\"35.245\"/>\n+\t\t\t<path d=\"M163.7 556.45 L0 556.45 L0 591.69 L163.7 591.69 L163.7 556.45\" class=\"st8\"/>\n+\t\t\t<text x=\"26.61\" y=\"581.27\" class=\"st9\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Payload 2</text>\t\t</g>\n+\t\t<g id=\"shape15-30\" v:mID=\"15\" v:groupContext=\"shape\" transform=\"translate(909.144,-453.824)\">\n+\t\t\t<title>Sheet.15</title>\n+\t\t\t<path d=\"M1.16 453.85 L1.05 465.33 L3.93 465.39 L4.04 453.91 L1.16 453.85 L1.16 453.85 ZM1 473.95 L0.94 476.82 L3.82\n+\t\t\t\t\t\t 476.87 L3.87 474 L1 473.95 L1 473.95 ZM0.88 485.43 L0.77 496.91 L3.65 496.96 L3.76 485.48 L0.88 485.43 L0.88\n+\t\t\t\t\t\t 485.43 ZM0.72 505.52 L0.72 508.39 L3.59 508.45 L3.59 505.58 L0.72 505.52 L0.72 505.52 ZM0.61 517 L0.55 528.49\n+\t\t\t\t\t\t L3.43 528.54 L3.48 517.06 L0.61 517 L0.61 517 ZM0.44 537.1 L0.44 539.97 L3.32 540.02 L3.32 537.15 L0.44\n+\t\t\t\t\t\t 537.1 L0.44 537.1 ZM0.39 548.58 L0.28 560.06 L3.15 560.12 L3.26 548.63 L0.39 548.58 L0.39 548.58 ZM0.22\n+\t\t\t\t\t\t 568.67 L0.17 571.54 L3.04 571.6 L3.1 568.73 L0.22 568.67 L0.22 568.67 ZM0.11 580.16 L0 591.64 L2.88 591.69\n+\t\t\t\t\t\t L2.99 580.21 L0.11 580.16 L0.11 580.16 Z\" class=\"st10\"/>\n+\t\t</g>\n+\t\t<g id=\"shape16-32\" v:mID=\"16\" v:groupContext=\"shape\" transform=\"translate(119.187,-447.917)\">\n+\t\t\t<title>Sheet.16</title>\n+\t\t\t<path d=\"M0 510.21 L0 591.69 L129.86 591.69 L129.86 510.21 L0 510.21 L0 510.21 Z\" class=\"st4\"/>\n+\t\t</g>\n+\t\t<g id=\"shape17-34\" v:mID=\"17\" v:groupContext=\"shape\" transform=\"translate(119.187,-447.917)\">\n+\t\t\t<title>Sheet.17</title>\n+\t\t\t<path d=\"M0 510.21 L129.86 510.21 L129.86 591.69 L0 591.69 L0 510.21\" class=\"st5\"/>\n+\t\t</g>\n+\t\t<g id=\"shape18-37\" v:mID=\"18\" v:groupContext=\"shape\" transform=\"translate(121.944,-471.034)\">\n+\t\t\t<title>Sheet.18</title>\n+\t\t\t<desc>Header</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"61.0973\" cy=\"574.07\" width=\"122.2\" height=\"35.245\"/>\n+\t\t\t<path d=\"M122.19 556.45 L0 556.45 L0 591.69 L122.19 591.69 L122.19 556.45\" class=\"st8\"/>\n+\t\t\t<text x=\"20.61\" y=\"581.27\" class=\"st9\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Header</text>\t\t</g>\n+\t\t<g id=\"shape19-41\" v:mID=\"19\" v:groupContext=\"shape\" transform=\"translate(329.798,-1.87868)\">\n+\t\t\t<title>Sheet.19</title>\n+\t\t\t<path d=\"M0 510.43 L0 591.69 L289.81 591.69 L289.81 510.43 L0 510.43 L0 510.43 Z\" class=\"st4\"/>\n+\t\t</g>\n+\t\t<g id=\"shape20-43\" v:mID=\"20\" v:groupContext=\"shape\" transform=\"translate(329.798,-1.87868)\">\n+\t\t\t<title>Sheet.20</title>\n+\t\t\t<path d=\"M0 510.43 L289.81 510.43 L289.81 591.69 L0 591.69 L0 510.43\" class=\"st5\"/>\n+\t\t</g>\n+\t\t<g id=\"shape21-46\" v:mID=\"21\" v:groupContext=\"shape\" transform=\"translate(424.908,-21.567)\">\n+\t\t\t<title>Sheet.21</title>\n+\t\t\t<desc>Header</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"61.0973\" cy=\"574.07\" width=\"122.2\" height=\"35.245\"/>\n+\t\t\t<path d=\"M122.19 556.45 L0 556.45 L0 591.69 L122.19 591.69 L122.19 556.45\" class=\"st8\"/>\n+\t\t\t<text x=\"11.55\" y=\"582.88\" class=\"st11\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Header</text>\t\t</g>\n+\t\t<g id=\"shape22-50\" v:mID=\"22\" v:groupContext=\"shape\" transform=\"translate(619.609,-1.87868)\">\n+\t\t\t<title>Sheet.22</title>\n+\t\t\t<path d=\"M0 510.43 L0 591.69 L453.74 591.69 L453.74 510.43 L0 510.43 L0 510.43 Z\" class=\"st6\"/>\n+\t\t</g>\n+\t\t<g id=\"shape23-52\" v:mID=\"23\" v:groupContext=\"shape\" transform=\"translate(619.609,-1.87868)\">\n+\t\t\t<title>Sheet.23</title>\n+\t\t\t<path d=\"M0 510.43 L453.74 510.43 L453.74 591.69 L0 591.69 L0 510.43\" class=\"st7\"/>\n+\t\t</g>\n+\t\t<g id=\"shape24-55\" v:mID=\"24\" v:groupContext=\"shape\" transform=\"translate(778.624,-21.5672)\">\n+\t\t\t<title>Sheet.24</title>\n+\t\t\t<desc>Payload 1</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"81.8509\" cy=\"574.07\" width=\"163.71\" height=\"35.245\"/>\n+\t\t\t<path d=\"M163.7 556.45 L0 556.45 L0 591.69 L163.7 591.69 L163.7 556.45\" class=\"st8\"/>\n+\t\t\t<text x=\"14.26\" y=\"582.88\" class=\"st11\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Payload 1</text>\t\t</g>\n+\t\t<g id=\"shape25-59\" v:mID=\"25\" v:groupContext=\"shape\" transform=\"translate(710.092,-113.83)\">\n+\t\t\t<title>Sheet.25</title>\n+\t\t\t<path d=\"M0 522.69 C0 515.07 6.19 508.89 13.83 508.89 L349.43 508.89 C357.12 508.89 363.26 515.07 363.26 522.69 L363.26\n+\t\t\t\t\t\t 577.89 C363.26 585.57 357.12 591.69 349.43 591.69 L13.83 591.69 C6.19 591.69 0 585.57 0 577.89 L0 522.69\n+\t\t\t\t\t\t Z\" class=\"st6\"/>\n+\t\t</g>\n+\t\t<g id=\"shape26-61\" v:mID=\"26\" v:groupContext=\"shape\" transform=\"translate(710.092,-113.83)\">\n+\t\t\t<title>Sheet.26</title>\n+\t\t\t<path d=\"M0 522.69 C0 515.07 6.19 508.89 13.83 508.89 L349.43 508.89 C357.12 508.89 363.26 515.07 363.26 522.69 L363.26\n+\t\t\t\t\t\t 577.89 C363.26 585.57 357.12 591.69 349.43 591.69 L13.83 591.69 C6.19 591.69 0 585.57 0 577.89 L0 522.69\n+\t\t\t\t\t\t Z\" class=\"st12\"/>\n+\t\t</g>\n+\t\t<g id=\"shape27-63\" v:mID=\"27\" v:groupContext=\"shape\" transform=\"translate(813.057,-150.108)\">\n+\t\t\t<title>Sheet.27</title>\n+\t\t\t<desc>Indirect mbuf</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"94.1386\" cy=\"576.19\" width=\"188.28\" height=\"31.0055\"/>\n+\t\t\t<path d=\"M188.28 560.69 L0 560.69 L0 591.69 L188.28 591.69 L188.28 560.69\" class=\"st8\"/>\n+\t\t\t<text x=\"15.43\" y=\"583.94\" class=\"st13\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Indirect mbuf</text>\t\t</g>\n+\t\t<g id=\"shape28-67\" v:mID=\"28\" v:groupContext=\"shape\" transform=\"translate(810.845,-123.854)\">\n+\t\t\t<title>Sheet.28</title>\n+\t\t\t<desc>(pointer to data)</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"95.5065\" cy=\"578.442\" width=\"191.02\" height=\"26.501\"/>\n+\t\t\t<path d=\"M191.01 565.19 L0 565.19 L0 591.69 L191.01 591.69 L191.01 565.19\" class=\"st8\"/>\n+\t\t\t<text x=\"15.15\" y=\"585.07\" class=\"st14\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>(pointer to data)</text>\t\t</g>\n+\t\t<g id=\"shape29-71\" v:mID=\"29\" v:groupContext=\"shape\" transform=\"translate(573.151,-149.601)\">\n+\t\t\t<title>Sheet.29</title>\n+\t\t\t<path d=\"M0 584.74 L127.76 584.74 L127.76 587.61 L0 587.61 L0 584.74 L0 584.74 ZM125.91 580.65 L136.97 586.17 L125.91\n+\t\t\t\t\t\t 591.69 L125.91 580.65 L125.91 580.65 Z\" class=\"st15\"/>\n+\t\t</g>\n+\t\t<g id=\"shape30-73\" v:mID=\"30\" v:groupContext=\"shape\" transform=\"translate(0,-309.671)\">\n+\t\t\t<title>Sheet.30</title>\n+\t\t\t<desc>Memory copy</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"108.076\" cy=\"574.07\" width=\"216.16\" height=\"35.245\"/>\n+\t\t\t<path d=\"M216.15 556.45 L0 556.45 L0 591.69 L216.15 591.69 L216.15 556.45\" class=\"st8\"/>\n+\t\t\t<text x=\"17.68\" y=\"582.88\" class=\"st16\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Memory copy</text>\t\t</g>\n+\t\t<g id=\"shape31-77\" v:mID=\"31\" v:groupContext=\"shape\" transform=\"translate(680.77,-305.707)\">\n+\t\t\t<title>Sheet.31</title>\n+\t\t\t<desc>No Memory Copy</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"136.547\" cy=\"574.07\" width=\"273.1\" height=\"35.245\"/>\n+\t\t\t<path d=\"M273.09 556.45 L0 556.45 L0 591.69 L273.09 591.69 L273.09 556.45\" class=\"st8\"/>\n+\t\t\t<text x=\"21.4\" y=\"582.88\" class=\"st17\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>No Memory Copy</text>\t\t</g>\n+\t\t<g id=\"shape32-81\" v:mID=\"32\" v:groupContext=\"shape\" transform=\"translate(1102.72,-26.7532)\">\n+\t\t\t<title>Sheet.32</title>\n+\t\t\t<desc>Logical output segment</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"138.243\" cy=\"578.442\" width=\"276.49\" height=\"26.501\"/>\n+\t\t\t<path d=\"M276.49 565.19 L0 565.19 L0 591.69 L276.49 591.69 L276.49 565.19\" class=\"st8\"/>\n+\t\t\t<text x=\"20.73\" y=\"585.07\" class=\"st14\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Logical output segment</text>\t\t</g>\n+\t\t<g id=\"shape36-85\" v:mID=\"36\" v:groupContext=\"shape\" transform=\"translate(1106.81,-138.647)\">\n+\t\t\t<title>Sheet.36</title>\n+\t\t\t<desc>Two-part output segment</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"144.906\" cy=\"578.442\" width=\"289.82\" height=\"26.501\"/>\n+\t\t\t<path d=\"M289.81 565.19 L0 565.19 L0 591.69 L289.81 591.69 L289.81 565.19\" class=\"st8\"/>\n+\t\t\t<text x=\"16.56\" y=\"585.07\" class=\"st14\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Two-part output segment</text>\t\t</g>\n+\t\t<g id=\"shape37-89\" v:mID=\"37\" v:groupContext=\"shape\" transform=\"translate(575.916,-453.879)\">\n+\t\t\t<title>Sheet.37</title>\n+\t\t\t<path d=\"M2.88 453.91 L2.9 465.39 L0.03 465.39 L0 453.91 L2.88 453.91 L2.88 453.91 ZM2.9 474 L2.9 476.87 L0.03 476.87\n+\t\t\t\t\t\t L0.03 474 L2.9 474 L2.9 474 ZM2.9 485.48 L2.9 496.96 L0.03 496.96 L0.03 485.48 L2.9 485.48 L2.9 485.48 ZM2.9\n+\t\t\t\t\t\t 505.58 L2.9 508.45 L0.03 508.45 L0.03 505.58 L2.9 505.58 L2.9 505.58 ZM2.9 517.06 L2.9 528.54 L0.03 528.54\n+\t\t\t\t\t\t L0.03 517.06 L2.9 517.06 L2.9 517.06 ZM2.9 537.15 L2.9 540.02 L0.03 540.02 L0.03 537.15 L2.9 537.15 L2.9\n+\t\t\t\t\t\t 537.15 ZM2.9 548.63 L2.9 560.12 L0.03 560.12 L0.03 548.63 L2.9 548.63 L2.9 548.63 ZM2.9 568.73 L2.9 571.6\n+\t\t\t\t\t\t L0.03 571.6 L0.03 568.73 L2.9 568.73 L2.9 568.73 ZM2.9 580.21 L2.9 591.69 L0.03 591.69 L0.03 580.21 L2.9\n+\t\t\t\t\t\t 580.21 L2.9 580.21 Z\" class=\"st18\"/>\n+\t\t</g>\n+\t\t<g id=\"shape38-91\" v:mID=\"38\" v:groupContext=\"shape\" transform=\"translate(577.354,-193.764)\">\n+\t\t\t<title>Sheet.38</title>\n+\t\t\t<path d=\"M5.59 347.01 L10.92 357.16 L8.38 358.52 L3.04 348.36 L5.59 347.01 L5.59 347.01 ZM14.96 364.78 L16.29 367.32\n+\t\t\t\t\t\t L13.74 368.67 L12.42 366.13 L14.96 364.78 L14.96 364.78 ZM20.33 374.97 L25.66 385.12 L23.12 386.45 L17.78\n+\t\t\t\t\t\t 376.29 L20.33 374.97 L20.33 374.97 ZM29.7 392.74 L31.03 395.28 L28.48 396.61 L27.16 394.07 L29.7 392.74\n+\t\t\t\t\t\t L29.7 392.74 ZM35.04 402.9 L40.4 413.06 L37.86 414.38 L32.49 404.22 L35.04 402.9 L35.04 402.9 ZM44.41 420.67\n+\t\t\t\t\t\t L45.77 423.21 L43.22 424.57 L41.87 422.03 L44.41 420.67 L44.41 420.67 ZM49.78 430.83 L55.14 440.99 L52.6\n+\t\t\t\t\t\t 442.34 L47.23 432.18 L49.78 430.83 L49.78 430.83 ZM59.15 448.61 L60.51 451.15 L57.96 452.5 L56.61 449.96\n+\t\t\t\t\t\t L59.15 448.61 L59.15 448.61 ZM64.52 458.79 L69.88 468.95 L67.34 470.27 L61.97 460.12 L64.52 458.79 L64.52\n+\t\t\t\t\t\t 458.79 ZM73.89 476.57 L75.25 479.11 L72.7 480.43 L71.35 477.89 L73.89 476.57 L73.89 476.57 ZM79.26 486.72\n+\t\t\t\t\t\t L84.62 496.88 L82.08 498.21 L76.71 488.05 L79.26 486.72 L79.26 486.72 ZM88.63 504.5 L89.96 507.04 L87.41\n+\t\t\t\t\t\t 508.39 L86.09 505.85 L88.63 504.5 L88.63 504.5 ZM94 514.66 L99.33 524.81 L96.79 526.17 L91.45 516.01 L94\n+\t\t\t\t\t\t 514.66 L94 514.66 ZM103.37 532.43 L104.7 534.97 L102.15 536.32 L100.83 533.79 L103.37 532.43 L103.37 532.43\n+\t\t\t\t\t\t ZM108.73 542.62 L114.07 552.77 L111.53 554.1 L106.19 543.94 L108.73 542.62 L108.73 542.62 ZM118.11 560.39\n+\t\t\t\t\t\t L119.44 562.93 L116.89 564.26 L115.57 561.72 L118.11 560.39 L118.11 560.39 ZM123.45 570.55 L128.81 580.71\n+\t\t\t\t\t\t L126.27 582.03 L120.9 571.87 L123.45 570.55 L123.45 570.55 ZM132.82 588.33 L133.9 590.37 L131.36 591.69\n+\t\t\t\t\t\t L130.28 589.68 L132.82 588.33 L132.82 588.33 ZM0.28 351.89 L0 339.53 L10.07 346.73 L0.28 351.89 L0.28 351.89\n+\t\t\t\t\t\t Z\" class=\"st18\"/>\n+\t\t</g>\n+\t\t<g id=\"shape39-93\" v:mID=\"39\" v:groupContext=\"shape\" transform=\"translate(329.798,-113.83)\">\n+\t\t\t<title>Sheet.39</title>\n+\t\t\t<path d=\"M0 522.69 C0 515.07 6.19 508.89 13.83 508.89 L229.53 508.89 C237.19 508.89 243.35 515.07 243.35 522.69 L243.35\n+\t\t\t\t\t\t 577.89 C243.35 585.54 237.19 591.69 229.53 591.69 L13.83 591.69 C6.19 591.69 0 585.54 0 577.89 L0 522.69\n+\t\t\t\t\t\t Z\" class=\"st4\"/>\n+\t\t</g>\n+\t\t<g id=\"shape40-95\" v:mID=\"40\" v:groupContext=\"shape\" transform=\"translate(329.798,-113.83)\">\n+\t\t\t<title>Sheet.40</title>\n+\t\t\t<path d=\"M0 522.69 C0 515.07 6.19 508.89 13.83 508.89 L229.53 508.89 C237.19 508.89 243.35 515.07 243.35 522.69 L243.35\n+\t\t\t\t\t\t 577.89 C243.35 585.54 237.19 591.69 229.53 591.69 L13.83 591.69 C6.19 591.69 0 585.54 0 577.89 L0 522.69\n+\t\t\t\t\t\t Z\" class=\"st12\"/>\n+\t\t</g>\n+\t\t<g id=\"shape41-97\" v:mID=\"41\" v:groupContext=\"shape\" transform=\"translate(368.774,-150.453)\">\n+\t\t\t<title>Sheet.41</title>\n+\t\t\t<desc>Direct mbuf</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"82.7002\" cy=\"576.19\" width=\"165.41\" height=\"31.0055\"/>\n+\t\t\t<path d=\"M165.4 560.69 L0 560.69 L0 591.69 L165.4 591.69 L165.4 560.69\" class=\"st8\"/>\n+\t\t\t<text x=\"13.94\" y=\"583.94\" class=\"st13\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Direct mbuf</text>\t\t</g>\n+\t\t<g id=\"shape42-101\" v:mID=\"42\" v:groupContext=\"shape\" transform=\"translate(351.856,-123.854)\">\n+\t\t\t<title>Sheet.42</title>\n+\t\t\t<desc>(copy of headers)</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"102.121\" cy=\"578.442\" width=\"204.25\" height=\"26.501\"/>\n+\t\t\t<path d=\"M204.24 565.19 L0 565.19 L0 591.69 L204.24 591.69 L204.24 565.19\" class=\"st8\"/>\n+\t\t\t<text x=\"16.02\" y=\"585.07\" class=\"st14\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>(copy of headers)</text>\t\t</g>\n+\t\t<g id=\"shape43-105\" v:mID=\"43\" v:groupContext=\"shape\" transform=\"translate(619.797,-155.563)\">\n+\t\t\t<title>Sheet.43</title>\n+\t\t\t<desc>next</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"28.011\" cy=\"578.442\" width=\"56.03\" height=\"26.501\"/>\n+\t\t\t<path d=\"M56.02 565.19 L0 565.19 L0 591.69 L56.02 591.69 L56.02 565.19\" class=\"st8\"/>\n+\t\t\t<text x=\"6.35\" y=\"585.07\" class=\"st19\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>next</text>\t\t</g>\n+\t\t<g id=\"shape44-109\" v:mID=\"44\" v:groupContext=\"shape\" transform=\"translate(700.911,-551.367)\">\n+\t\t\t<title>Sheet.44</title>\n+\t\t\t<path d=\"M0 559.23 L0 591.69 L84.29 591.69 L84.29 559.23 L0 559.23 L0 559.23 Z\" class=\"st2\"/>\n+\t\t</g>\n+\t\t<g id=\"shape45-111\" v:mID=\"45\" v:groupContext=\"shape\" transform=\"translate(709.883,-555.163)\">\n+\t\t\t<title>Sheet.45</title>\n+\t\t\t<desc>segsz</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"30.7501\" cy=\"580.032\" width=\"61.51\" height=\"23.3211\"/>\n+\t\t\t<path d=\"M61.5 568.37 L0 568.37 L0 591.69 L61.5 591.69 L61.5 568.37\" class=\"st8\"/>\n+\t\t\t<text x=\"6.38\" y=\"585.86\" class=\"st20\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>segsz</text>\t\t</g>\n+\t\t<g id=\"shape46-115\" v:mID=\"46\" v:groupContext=\"shape\" transform=\"translate(1111.54,-477.36)\">\n+\t\t\t<title>Sheet.46</title>\n+\t\t\t<desc>Input packet</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"74.9\" cy=\"578.442\" width=\"149.8\" height=\"26.501\"/>\n+\t\t\t<path d=\"M149.8 565.19 L0 565.19 L0 591.69 L149.8 591.69 L149.8 565.19\" class=\"st8\"/>\n+\t\t\t<text x=\"12.47\" y=\"585.07\" class=\"st14\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Input packet</text>\t\t</g>\n+\t</g>\n+</svg>\ndiff --git a/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg b/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg\nnew file mode 100644\nindex 0000000..f18a327\n--- /dev/null\n+++ b/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg\n@@ -0,0 +1,477 @@\n+<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n+<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n+<!-- Generated by Microsoft Visio, SVG Export gso-three-seg-mbuf.svg Page-1 -->\n+<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" xmlns:ev=\"http://www.w3.org/2001/xml-events\"\n+\t\txmlns:v=\"http://schemas.microsoft.com/visio/2003/SVGExtensions/\" width=\"21.8589in\" height=\"9.63966in\"\n+\t\tviewBox=\"0 0 1573.84 694.055\" xml:space=\"preserve\" color-interpolation-filters=\"sRGB\" class=\"st23\">\n+\t<title>GSO three-part output segment</title>\n+\t<v:documentProperties v:langID=\"1033\" v:metric=\"true\" v:viewMarkup=\"false\"/>\n+\n+\t<style type=\"text/css\">\n+\t<![CDATA[\n+\t\t.st1 {fill:#ffc000;stroke:#ffc000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.0329073}\n+\t\t.st2 {fill:#006fc5;stroke:#006fc5;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.0329073}\n+\t\t.st3 {fill:none;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:3.42236}\n+\t\t.st4 {fill:#c3d600;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}\n+\t\t.st5 {stroke:#8f9d00;stroke-linecap:round;stroke-linejoin:round;stroke-width:4.47539}\n+\t\t.st6 {fill:#00aeef;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}\n+\t\t.st7 {stroke:#007fb0;stroke-linecap:round;stroke-linejoin:round;stroke-width:4.47539}\n+\t\t.st8 {stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}\n+\t\t.st9 {fill:#ffffff;font-family:Calibri;font-size:2.08333em;font-weight:bold}\n+\t\t.st10 {fill:#ffffff;font-family:Intel Clear;font-size:2.91502em;font-weight:bold}\n+\t\t.st11 {fill:#000000;font-family:Intel Clear;font-size:2.19175em}\n+\t\t.st12 {fill:none;stroke:#ffffff;stroke-linecap:round;stroke-linejoin:round;stroke-width:6.58146}\n+\t\t.st13 {fill:#000000;font-family:Intel Clear;font-size:2.50001em}\n+\t\t.st14 {fill:#000000;font-family:Intel Clear;font-size:1.99999em}\n+\t\t.st15 {fill:#0070c0;font-family:Intel Clear;font-size:2.19175em}\n+\t\t.st16 {fill:#ffffff;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}\n+\t\t.st17 {fill:#006fc5;font-family:Intel Clear;font-size:1.92874em}\n+\t\t.st18 {fill:#000000;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.0329073}\n+\t\t.st19 {fill:#0070c0;font-family:Intel Clear;font-size:1.5em}\n+\t\t.st20 {fill:#000000;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.0658146}\n+\t\t.st21 {fill:#000000;font-family:Intel Clear;font-size:1.81915em}\n+\t\t.st22 {fill:#000000;font-family:Intel Clear;font-size:1.49785em}\n+\t\t.st23 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}\n+\t]]>\n+\t</style>\n+\n+\t<g v:mID=\"0\" v:index=\"1\" v:groupContext=\"foregroundPage\">\n+\t\t<title>Page-1</title>\n+\t\t<v:pageProperties v:drawingScale=\"0.0393701\" v:pageScale=\"0.0393701\" v:drawingUnits=\"24\" v:shadowOffsetX=\"8.50394\"\n+\t\t\t\tv:shadowOffsetY=\"-8.50394\"/>\n+\t\t<v:layer v:name=\"top\" v:index=\"0\"/>\n+\t\t<v:layer v:name=\"middle\" v:index=\"1\"/>\n+\t\t<g id=\"shape111-1\" v:mID=\"111\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(787.208,-220.973)\">\n+\t\t\t<title>Sheet.111</title>\n+\t\t\t<path d=\"M6.65 402.61 L13.01 414.71 L9.98 416.32 L3.62 404.22 L6.65 402.61 L6.65 402.61 ZM17.82 423.78 L19.4 426.81 L16.37\n+\t\t\t\t\t\t 428.42 L14.79 425.39 L17.82 423.78 L17.82 423.78 ZM24.21 435.91 L30.57 448.01 L27.54 449.59 L21.18 437.49\n+\t\t\t\t\t\t L24.21 435.91 L24.21 435.91 ZM35.38 457.08 L36.96 460.11 L33.93 461.69 L32.35 458.66 L35.38 457.08 L35.38\n+\t\t\t\t\t\t 457.08 ZM41.73 469.18 L48.12 481.28 L45.09 482.86 L38.7 470.76 L41.73 469.18 L41.73 469.18 ZM52.9 490.36\n+\t\t\t\t\t\t L54.51 493.38 L51.48 494.99 L49.87 491.97 L52.9 490.36 L52.9 490.36 ZM59.29 502.45 L65.68 514.55 L62.65\n+\t\t\t\t\t\t 516.16 L56.26 504.06 L59.29 502.45 L59.29 502.45 ZM70.46 523.63 L72.07 526.65 L69.04 528.26 L67.43 525.24\n+\t\t\t\t\t\t L70.46 523.63 L70.46 523.63 ZM76.85 535.76 L83.24 547.86 L80.21 549.43 L73.82 537.34 L76.85 535.76 L76.85\n+\t\t\t\t\t\t 535.76 ZM88.01 556.93 L89.63 559.95 L86.6 561.53 L84.98 558.51 L88.01 556.93 L88.01 556.93 ZM94.4 569.03\n+\t\t\t\t\t\t L100.79 581.13 L97.76 582.7 L91.37 570.61 L94.4 569.03 L94.4 569.03 ZM105.57 590.2 L107.15 593.22 L104.12\n+\t\t\t\t\t\t 594.84 L102.54 591.81 L105.57 590.2 L105.57 590.2 ZM111.96 602.3 L118.32 614.4 L115.28 616.01 L108.93 603.91\n+\t\t\t\t\t\t L111.96 602.3 L111.96 602.3 ZM123.12 623.47 L124.71 626.5 L121.67 628.11 L120.09 625.08 L123.12 623.47 L123.12\n+\t\t\t\t\t\t 623.47 ZM129.51 635.6 L135.87 647.7 L132.84 649.28 L126.48 637.18 L129.51 635.6 L129.51 635.6 ZM140.68 656.77\n+\t\t\t\t\t\t L142.26 659.8 L139.23 661.38 L137.65 658.35 L140.68 656.77 L140.68 656.77 ZM147.04 668.87 L153.43 680.97\n+\t\t\t\t\t\t L150.4 682.55 L144.01 670.45 L147.04 668.87 L147.04 668.87 ZM158.2 690.04 L159.49 692.48 L156.46 694.06\n+\t\t\t\t\t\t L155.17 691.66 L158.2 690.04 L158.2 690.04 ZM0.33 408.43 L0 393.7 L11.99 402.28 L0.33 408.43 L0.33 408.43\n+\t\t\t\t\t\t Z\" class=\"st1\"/>\n+\t\t</g>\n+\t\t<g id=\"shape110-3\" v:mID=\"110\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(685.078,-560.166)\">\n+\t\t\t<title>Sheet.110</title>\n+\t\t\t<path d=\"M0 685.77 L90.67 685.77 L90.67 689.19 L0 689.19 L0 685.77 L0 685.77 ZM89.36 680.9 L97.21 687.48 L89.36 694.06\n+\t\t\t\t\t\t L89.36 680.9 L89.36 680.9 Z\" class=\"st2\"/>\n+\t\t</g>\n+\t\t<g id=\"shape4-5\" v:mID=\"4\" v:groupContext=\"shape\" transform=\"translate(718.715,-469.955)\">\n+\t\t\t<title>Sheet.4</title>\n+\t\t\t<path d=\"M0 655.13 L0 678.22 C0 686.97 11.69 694.06 26.05 694.06 C40.45 694.06 52.11 686.97 52.11 678.22 L52.11 673.91\n+\t\t\t\t\t\t L59.55 673.91 L44.66 664.86 L29.78 673.91 L37.22 673.91 L37.22 678.22 C37.22 681.98 32.25 685 26.05 685\n+\t\t\t\t\t\t C19.89 685 14.89 681.98 14.89 678.22 L14.89 655.13 L0 655.13 Z\" class=\"st3\"/>\n+\t\t</g>\n+\t\t<g id=\"shape5-7\" v:mID=\"5\" v:groupContext=\"shape\" transform=\"translate(547.831,-656.823)\">\n+\t\t\t<title>Sheet.5</title>\n+\t\t\t<path d=\"M11 686.43 L19.43 686.43 L19.43 688.53 L11 688.53 L11 686.43 L11 686.43 ZM25.76 686.43 L27.87 686.43 L27.87\n+\t\t\t\t\t\t 688.53 L25.76 688.53 L25.76 686.43 L25.76 686.43 ZM34.19 686.43 L42.62 686.43 L42.62 688.53 L34.19 688.53\n+\t\t\t\t\t\t L34.19 686.43 L34.19 686.43 ZM48.95 686.43 L51.05 686.43 L51.05 688.53 L48.95 688.53 L48.95 686.43 L48.95\n+\t\t\t\t\t\t 686.43 ZM57.38 686.43 L65.81 686.43 L65.81 688.53 L57.38 688.53 L57.38 686.43 L57.38 686.43 ZM72.14 686.43\n+\t\t\t\t\t\t L74.24 686.43 L74.24 688.53 L72.14 688.53 L72.14 686.43 L72.14 686.43 ZM80.57 686.43 L89 686.43 L89 688.53\n+\t\t\t\t\t\t L80.57 688.53 L80.57 686.43 L80.57 686.43 ZM95.32 686.43 L97.43 686.43 L97.43 688.53 L95.32 688.53 L95.32\n+\t\t\t\t\t\t 686.43 L95.32 686.43 ZM103.76 686.43 L112.19 686.43 L112.19 688.53 L103.76 688.53 L103.76 686.43 L103.76\n+\t\t\t\t\t\t 686.43 ZM118.51 686.43 L120.62 686.43 L120.62 688.53 L118.51 688.53 L118.51 686.43 L118.51 686.43 ZM126.94\n+\t\t\t\t\t\t 686.43 L135.38 686.43 L135.38 688.53 L126.94 688.53 L126.94 686.43 L126.94 686.43 ZM141.7 686.43 L143.81\n+\t\t\t\t\t\t 686.43 L143.81 688.53 L141.7 688.53 L141.7 686.43 L141.7 686.43 ZM150.13 686.43 L158.57 686.43 L158.57 688.53\n+\t\t\t\t\t\t L150.13 688.53 L150.13 686.43 L150.13 686.43 ZM164.89 686.43 L167 686.43 L167 688.53 L164.89 688.53 L164.89\n+\t\t\t\t\t\t 686.43 L164.89 686.43 ZM173.32 686.43 L181.75 686.43 L181.75 688.53 L173.32 688.53 L173.32 686.43 L173.32\n+\t\t\t\t\t\t 686.43 ZM188.08 686.43 L190.19 686.43 L190.19 688.53 L188.08 688.53 L188.08 686.43 L188.08 686.43 ZM196.51\n+\t\t\t\t\t\t 686.43 L204.94 686.43 L204.94 688.53 L196.51 688.53 L196.51 686.43 L196.51 686.43 ZM211.27 686.43 L213.38\n+\t\t\t\t\t\t 686.43 L213.38 688.53 L211.27 688.53 L211.27 686.43 L211.27 686.43 ZM219.7 686.43 L228.13 686.43 L228.13\n+\t\t\t\t\t\t 688.53 L219.7 688.53 L219.7 686.43 L219.7 686.43 ZM234.46 686.43 L236.56 686.43 L236.56 688.53 L234.46 688.53\n+\t\t\t\t\t\t L234.46 686.43 L234.46 686.43 ZM242.89 686.43 L251.32 686.43 L251.32 688.53 L242.89 688.53 L242.89 686.43\n+\t\t\t\t\t\t L242.89 686.43 ZM257.64 686.43 L259.75 686.43 L259.75 688.53 L257.64 688.53 L257.64 686.43 L257.64 686.43\n+\t\t\t\t\t\t ZM266.08 686.43 L274.51 686.43 L274.51 688.53 L266.08 688.53 L266.08 686.43 L266.08 686.43 ZM280.83 686.43\n+\t\t\t\t\t\t L282.94 686.43 L282.94 688.53 L280.83 688.53 L280.83 686.43 L280.83 686.43 ZM289.27 686.43 L297.7 686.43\n+\t\t\t\t\t\t L297.7 688.53 L289.27 688.53 L289.27 686.43 L289.27 686.43 ZM304.02 686.43 L306.13 686.43 L306.13 688.53\n+\t\t\t\t\t\t L304.02 688.53 L304.02 686.43 L304.02 686.43 ZM312.45 686.43 L320.89 686.43 L320.89 688.53 L312.45 688.53\n+\t\t\t\t\t\t L312.45 686.43 L312.45 686.43 ZM327.21 686.43 L329.32 686.43 L329.32 688.53 L327.21 688.53 L327.21 686.43\n+\t\t\t\t\t\t L327.21 686.43 ZM335.64 686.43 L344.08 686.43 L344.08 688.53 L335.64 688.53 L335.64 686.43 L335.64 686.43\n+\t\t\t\t\t\t ZM350.4 686.43 L352.51 686.43 L352.51 688.53 L350.4 688.53 L350.4 686.43 L350.4 686.43 ZM358.83 686.43 L367.26\n+\t\t\t\t\t\t 686.43 L367.26 688.53 L358.83 688.53 L358.83 686.43 L358.83 686.43 ZM373.59 686.43 L375.7 686.43 L375.7\n+\t\t\t\t\t\t 688.53 L373.59 688.53 L373.59 686.43 L373.59 686.43 ZM382.02 686.43 L387.06 686.43 L387.06 688.53 L382.02\n+\t\t\t\t\t\t 688.53 L382.02 686.43 L382.02 686.43 ZM13.18 694.06 L0 687.48 L13.18 680.9 L13.18 694.06 L13.18 694.06 ZM384.89\n+\t\t\t\t\t\t 680.9 L398.06 687.48 L384.89 694.06 L384.89 680.9 L384.89 680.9 Z\" class=\"st2\"/>\n+\t\t</g>\n+\t\t<g id=\"shape6-9\" v:mID=\"6\" v:groupContext=\"shape\" transform=\"translate(2.5012,-522.82)\">\n+\t\t\t<title>Sheet.6</title>\n+\t\t\t<path d=\"M0 597.01 L0 694.06 L154.68 694.06 L154.68 597.01 L0 597.01 L0 597.01 Z\" class=\"st4\"/>\n+\t\t</g>\n+\t\t<g id=\"shape7-11\" v:mID=\"7\" v:groupContext=\"shape\" transform=\"translate(2.5012,-522.82)\">\n+\t\t\t<title>Sheet.7</title>\n+\t\t\t<path d=\"M0 597.01 L154.68 597.01 L154.68 694.06 L0 694.06 L0 597.01\" class=\"st5\"/>\n+\t\t</g>\n+\t\t<g id=\"shape10-14\" v:mID=\"10\" v:groupContext=\"shape\" transform=\"translate(159.025,-522.82)\">\n+\t\t\t<title>Sheet.10</title>\n+\t\t\t<path d=\"M0 597.01 L0 694.06 L563.73 694.06 L563.73 597.01 L0 597.01 L0 597.01 Z\" class=\"st6\"/>\n+\t\t</g>\n+\t\t<g id=\"shape11-16\" v:mID=\"11\" v:groupContext=\"shape\" transform=\"translate(159.025,-522.82)\">\n+\t\t\t<title>Sheet.11</title>\n+\t\t\t<path d=\"M0 597.01 L563.73 597.01 L563.73 694.06 L0 694.06 L0 597.01\" class=\"st7\"/>\n+\t\t</g>\n+\t\t<g id=\"shape12-19\" v:mID=\"12\" v:groupContext=\"shape\" transform=\"translate(262.039,-549.269)\">\n+\t\t\t<title>Sheet.12</title>\n+\t\t\t<desc>Payload 0</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"97.4929\" cy=\"673.065\" width=\"194.99\" height=\"41.9798\"/>\n+\t\t\t<path d=\"M194.99 652.08 L0 652.08 L0 694.06 L194.99 694.06 L194.99 652.08\" class=\"st8\"/>\n+\t\t\t<text x=\"46.92\" y=\"680.57\" class=\"st9\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Payload 0</text>\t\t</g>\n+\t\t<g id=\"shape13-23\" v:mID=\"13\" v:groupContext=\"shape\" transform=\"translate(547.615,-549.269)\">\n+\t\t\t<title>Sheet.13</title>\n+\t\t\t<desc>Payload 1</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"87.5716\" cy=\"673.065\" width=\"175.15\" height=\"41.9798\"/>\n+\t\t\t<path d=\"M175.14 652.08 L0 652.08 L0 694.06 L175.14 694.06 L175.14 652.08\" class=\"st8\"/>\n+\t\t\t<text x=\"37\" y=\"680.57\" class=\"st9\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Payload 1</text>\t\t</g>\n+\t\t<g id=\"shape15-27\" v:mID=\"15\" v:groupContext=\"shape\" transform=\"translate(2.2377,-522.82)\">\n+\t\t\t<title>Sheet.15</title>\n+\t\t\t<path d=\"M0 597.01 L0 694.06 L154.68 694.06 L154.68 597.01 L0 597.01 L0 597.01 Z\" class=\"st4\"/>\n+\t\t</g>\n+\t\t<g id=\"shape16-29\" v:mID=\"16\" v:groupContext=\"shape\" transform=\"translate(2.2377,-522.82)\">\n+\t\t\t<title>Sheet.16</title>\n+\t\t\t<path d=\"M0 597.01 L154.68 597.01 L154.68 694.06 L0 694.06 L0 597.01\" class=\"st5\"/>\n+\t\t</g>\n+\t\t<g id=\"shape17-32\" v:mID=\"17\" v:groupContext=\"shape\" transform=\"translate(6.52106,-546.331)\">\n+\t\t\t<title>Sheet.17</title>\n+\t\t\t<desc>Header</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"72.773\" cy=\"673.065\" width=\"145.55\" height=\"41.9798\"/>\n+\t\t\t<path d=\"M145.55 652.08 L0 652.08 L0 694.06 L145.55 694.06 L145.55 652.08\" class=\"st8\"/>\n+\t\t\t<text x=\"34.98\" y=\"680.57\" class=\"st9\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Header</text>\t\t</g>\n+\t\t<g id=\"shape23-36\" v:mID=\"23\" v:groupContext=\"shape\" transform=\"translate(286.548,-2.2377)\">\n+\t\t\t<title>Sheet.23</title>\n+\t\t\t<path d=\"M0 597.27 L0 694.06 L345.2 694.06 L345.2 597.27 L0 597.27 L0 597.27 Z\" class=\"st4\"/>\n+\t\t</g>\n+\t\t<g id=\"shape24-38\" v:mID=\"24\" v:groupContext=\"shape\" transform=\"translate(286.548,-2.2377)\">\n+\t\t\t<title>Sheet.24</title>\n+\t\t\t<path d=\"M0 597.27 L345.2 597.27 L345.2 694.06 L0 694.06 L0 597.27\" class=\"st5\"/>\n+\t\t</g>\n+\t\t<g id=\"shape25-41\" v:mID=\"25\" v:groupContext=\"shape\" transform=\"translate(399.834,-25.6887)\">\n+\t\t\t<title>Sheet.25</title>\n+\t\t\t<desc>Header</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"72.773\" cy=\"673.065\" width=\"145.55\" height=\"41.9798\"/>\n+\t\t\t<path d=\"M145.55 652.08 L0 652.08 L0 694.06 L145.55 694.06 L145.55 652.08\" class=\"st8\"/>\n+\t\t\t<text x=\"13.76\" y=\"683.56\" class=\"st10\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Header</text>\t\t</g>\n+\t\t<g id=\"shape31-45\" v:mID=\"31\" v:groupContext=\"shape\" transform=\"translate(631.744,-2.2377)\">\n+\t\t\t<title>Sheet.31</title>\n+\t\t\t<path d=\"M0 597.27 L0 694.06 L516.21 694.06 L516.21 597.27 L0 597.27 L0 597.27 Z\" class=\"st6\"/>\n+\t\t</g>\n+\t\t<g id=\"shape32-47\" v:mID=\"32\" v:groupContext=\"shape\" transform=\"translate(631.744,-2.2377)\">\n+\t\t\t<title>Sheet.32</title>\n+\t\t\t<path d=\"M0 597.27 L516.21 597.27 L516.21 694.06 L0 694.06 L0 597.27\" class=\"st7\"/>\n+\t\t</g>\n+\t\t<g id=\"shape33-50\" v:mID=\"33\" v:groupContext=\"shape\" transform=\"translate(809.035,-25.6889)\">\n+\t\t\t<title>Sheet.33</title>\n+\t\t\t<desc>Payload 1</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"97.4929\" cy=\"673.065\" width=\"194.99\" height=\"41.9798\"/>\n+\t\t\t<path d=\"M194.99 652.08 L0 652.08 L0 694.06 L194.99 694.06 L194.99 652.08\" class=\"st8\"/>\n+\t\t\t<text x=\"16.99\" y=\"683.56\" class=\"st10\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Payload 1</text>\t\t</g>\n+\t\t<g id=\"shape35-54\" v:mID=\"35\" v:groupContext=\"shape\" transform=\"translate(1199.29,-21.1708)\">\n+\t\t\t<title>Sheet.35</title>\n+\t\t\t<desc>Logical output segment</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"164.662\" cy=\"678.273\" width=\"329.33\" height=\"31.5648\"/>\n+\t\t\t<path d=\"M329.32 662.49 L0 662.49 L0 694.06 L329.32 694.06 L329.32 662.49\" class=\"st8\"/>\n+\t\t\t<text x=\"24.69\" y=\"686.16\" class=\"st11\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Logical output segment</text>\t\t</g>\n+\t\t<g id=\"shape38-58\" v:mID=\"38\" v:groupContext=\"shape\" transform=\"translate(1204.65,-254.446)\">\n+\t\t\t<title>Sheet.38</title>\n+\t\t\t<desc>Three-part output segment</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"181.707\" cy=\"678.273\" width=\"363.42\" height=\"31.5648\"/>\n+\t\t\t<path d=\"M363.41 662.49 L0 662.49 L0 694.06 L363.41 694.06 L363.41 662.49\" class=\"st8\"/>\n+\t\t\t<text x=\"19.51\" y=\"686.16\" class=\"st11\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Three-part output segment</text>\t\t</g>\n+\t\t<g id=\"shape39-62\" v:mID=\"39\" v:groupContext=\"shape\" transform=\"translate(546.25,-529.921)\">\n+\t\t\t<title>Sheet.39</title>\n+\t\t\t<path d=\"M3.43 529.94 L3.46 543.61 L0.03 543.61 L0 529.94 L3.43 529.94 L3.43 529.94 ZM3.46 553.87 L3.46 557.29 L0.03\n+\t\t\t\t\t\t 557.29 L0.03 553.87 L3.46 553.87 L3.46 553.87 ZM3.46 567.55 L3.46 581.22 L0.03 581.22 L0.03 567.55 L3.46\n+\t\t\t\t\t\t 567.55 L3.46 567.55 ZM3.46 591.48 L3.46 594.9 L0.03 594.9 L0.03 591.48 L3.46 591.48 L3.46 591.48 ZM3.46\n+\t\t\t\t\t\t 605.16 L3.46 618.83 L0.03 618.83 L0.03 605.16 L3.46 605.16 L3.46 605.16 ZM3.46 629.09 L3.46 632.51 L0.03\n+\t\t\t\t\t\t 632.51 L0.03 629.09 L3.46 629.09 L3.46 629.09 ZM3.46 642.77 L3.46 656.45 L0.03 656.45 L0.03 642.77 L3.46\n+\t\t\t\t\t\t 642.77 L3.46 642.77 ZM3.46 666.7 L3.46 670.12 L0.03 670.12 L0.03 666.7 L3.46 666.7 L3.46 666.7 ZM3.46 680.38\n+\t\t\t\t\t\t L3.46 694.06 L0.03 694.06 L0.03 680.38 L3.46 680.38 L3.46 680.38 Z\" class=\"st1\"/>\n+\t\t</g>\n+\t\t<g id=\"shape40-64\" v:mID=\"40\" v:groupContext=\"shape\" transform=\"translate(549.097,-223.749)\">\n+\t\t\t<title>Sheet.40</title>\n+\t\t\t<path d=\"M6.65 402.61 L13.01 414.71 L9.98 416.32 L3.62 404.22 L6.65 402.61 L6.65 402.61 ZM17.82 423.78 L19.4 426.81 L16.37\n+\t\t\t\t\t\t 428.42 L14.79 425.39 L17.82 423.78 L17.82 423.78 ZM24.21 435.91 L30.57 448.01 L27.54 449.59 L21.18 437.49\n+\t\t\t\t\t\t L24.21 435.91 L24.21 435.91 ZM35.38 457.08 L36.96 460.11 L33.93 461.69 L32.35 458.66 L35.38 457.08 L35.38\n+\t\t\t\t\t\t 457.08 ZM41.73 469.18 L48.12 481.28 L45.09 482.86 L38.7 470.76 L41.73 469.18 L41.73 469.18 ZM52.9 490.36\n+\t\t\t\t\t\t L54.51 493.38 L51.48 494.99 L49.87 491.97 L52.9 490.36 L52.9 490.36 ZM59.29 502.45 L65.68 514.55 L62.65\n+\t\t\t\t\t\t 516.16 L56.26 504.06 L59.29 502.45 L59.29 502.45 ZM70.46 523.63 L72.07 526.65 L69.04 528.26 L67.43 525.24\n+\t\t\t\t\t\t L70.46 523.63 L70.46 523.63 ZM76.85 535.76 L83.24 547.86 L80.21 549.43 L73.82 537.34 L76.85 535.76 L76.85\n+\t\t\t\t\t\t 535.76 ZM88.01 556.93 L89.63 559.95 L86.6 561.53 L84.98 558.51 L88.01 556.93 L88.01 556.93 ZM94.4 569.03\n+\t\t\t\t\t\t L100.79 581.13 L97.76 582.7 L91.37 570.61 L94.4 569.03 L94.4 569.03 ZM105.57 590.2 L107.15 593.22 L104.12\n+\t\t\t\t\t\t 594.84 L102.54 591.81 L105.57 590.2 L105.57 590.2 ZM111.96 602.3 L118.32 614.4 L115.28 616.01 L108.93 603.91\n+\t\t\t\t\t\t L111.96 602.3 L111.96 602.3 ZM123.12 623.47 L124.71 626.5 L121.67 628.11 L120.09 625.08 L123.12 623.47 L123.12\n+\t\t\t\t\t\t 623.47 ZM129.51 635.6 L135.87 647.7 L132.84 649.28 L126.48 637.18 L129.51 635.6 L129.51 635.6 ZM140.68 656.77\n+\t\t\t\t\t\t L142.26 659.8 L139.23 661.38 L137.65 658.35 L140.68 656.77 L140.68 656.77 ZM147.04 668.87 L153.43 680.97\n+\t\t\t\t\t\t L150.4 682.55 L144.01 670.45 L147.04 668.87 L147.04 668.87 ZM158.2 690.04 L159.49 692.48 L156.46 694.06\n+\t\t\t\t\t\t L155.17 691.66 L158.2 690.04 L158.2 690.04 ZM0.33 408.43 L0 393.7 L11.99 402.28 L0.33 408.43 L0.33 408.43\n+\t\t\t\t\t\t Z\" class=\"st1\"/>\n+\t\t</g>\n+\t\t<g id=\"shape46-66\" v:mID=\"46\" v:groupContext=\"shape\" transform=\"translate(66.8445,-221.499)\">\n+\t\t\t<title>Sheet.46</title>\n+\t\t\t<path d=\"M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L273.39 595.43 C282.51 595.43 289.86 602.79 289.86 611.87 L289.86\n+\t\t\t\t\t\t 677.62 C289.86 686.72 282.51 694.06 273.39 694.06 L16.47 694.06 C7.38 694.06 -0 686.72 0 677.62 L0 611.87\n+\t\t\t\t\t\t Z\" class=\"st4\"/>\n+\t\t</g>\n+\t\t<g id=\"shape47-68\" v:mID=\"47\" v:groupContext=\"shape\" transform=\"translate(66.8445,-221.499)\">\n+\t\t\t<title>Sheet.47</title>\n+\t\t\t<path d=\"M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L273.39 595.43 C282.51 595.43 289.86 602.79 289.86 611.87 L289.86\n+\t\t\t\t\t\t 677.62 C289.86 686.72 282.51 694.06 273.39 694.06 L16.47 694.06 C7.38 694.06 -0 686.72 0 677.62 L0 611.87\n+\t\t\t\t\t\t Z\" class=\"st12\"/>\n+\t\t</g>\n+\t\t<g id=\"shape48-70\" v:mID=\"48\" v:groupContext=\"shape\" transform=\"translate(113.27,-263.667)\">\n+\t\t\t<title>Sheet.48</title>\n+\t\t\t<desc>Direct mbuf</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"98.5041\" cy=\"675.59\" width=\"197.01\" height=\"36.9302\"/>\n+\t\t\t<path d=\"M197.01 657.13 L0 657.13 L0 694.06 L197.01 694.06 L197.01 657.13\" class=\"st8\"/>\n+\t\t\t<text x=\"18.66\" y=\"684.59\" class=\"st13\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Direct mbuf</text>\t\t</g>\n+\t\t<g id=\"shape51-74\" v:mID=\"51\" v:groupContext=\"shape\" transform=\"translate(85.817,-233.439)\">\n+\t\t\t<title>Sheet.51</title>\n+\t\t\t<desc>(copy of headers)</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"127.916\" cy=\"678.273\" width=\"255.84\" height=\"31.5648\"/>\n+\t\t\t<path d=\"M255.83 662.49 L0 662.49 L0 694.06 L255.83 694.06 L255.83 662.49\" class=\"st8\"/>\n+\t\t\t<text x=\"34.33\" y=\"685.47\" class=\"st14\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>(copy of headers)</text>\t\t</g>\n+\t\t<g id=\"shape53-78\" v:mID=\"53\" v:groupContext=\"shape\" transform=\"translate(371.944,-275.998)\">\n+\t\t\t<title>Sheet.53</title>\n+\t\t\t<desc>next</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"33.3635\" cy=\"678.273\" width=\"66.73\" height=\"31.5648\"/>\n+\t\t\t<path d=\"M66.73 662.49 L0 662.49 L0 694.06 L66.73 694.06 L66.73 662.49\" class=\"st8\"/>\n+\t\t\t<text x=\"7.56\" y=\"686.16\" class=\"st15\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>next</text>\t\t</g>\n+\t\t<g id=\"shape54-82\" v:mID=\"54\" v:groupContext=\"shape\" transform=\"translate(695.132,-646.04)\">\n+\t\t\t<title>Sheet.54</title>\n+\t\t\t<path d=\"M0 655.39 L0 694.06 L100.4 694.06 L100.4 655.39 L0 655.39 L0 655.39 Z\" class=\"st16\"/>\n+\t\t</g>\n+\t\t<g id=\"shape55-84\" v:mID=\"55\" v:groupContext=\"shape\" transform=\"translate(709.033,-648.946)\">\n+\t\t\t<title>Sheet.55</title>\n+\t\t\t<desc>segsz</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"36.6265\" cy=\"680.167\" width=\"73.26\" height=\"27.7775\"/>\n+\t\t\t<path d=\"M73.25 666.28 L0 666.28 L0 694.06 L73.25 694.06 L73.25 666.28\" class=\"st8\"/>\n+\t\t\t<text x=\"7.6\" y=\"687.11\" class=\"st17\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>segsz</text>\t\t</g>\n+\t\t<g id=\"shape56-88\" v:mID=\"56\" v:groupContext=\"shape\" transform=\"translate(785.874,-521.182)\">\n+\t\t\t<title>Sheet.56</title>\n+\t\t\t<path d=\"M0 597.27 L0 694.06 L363.41 694.06 L363.41 597.27 L0 597.27 L0 597.27 Z\" class=\"st6\"/>\n+\t\t</g>\n+\t\t<g id=\"shape57-90\" v:mID=\"57\" v:groupContext=\"shape\" transform=\"translate(785.874,-521.182)\">\n+\t\t\t<title>Sheet.57</title>\n+\t\t\t<path d=\"M0 597.27 L363.41 597.27 L363.41 694.06 L0 694.06 L0 597.27\" class=\"st7\"/>\n+\t\t</g>\n+\t\t<g id=\"shape58-93\" v:mID=\"58\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(943.158,-529.889)\">\n+\t\t\t<title>Sheet.58</title>\n+\t\t\t<path d=\"M1.35 529.91 L1.25 543.58 L4.68 543.61 L4.78 529.94 L1.35 529.91 L1.35 529.91 ZM1.15 553.84 L1.12 557.26 L4.55\n+\t\t\t\t\t\t 557.29 L4.58 553.87 L1.15 553.84 L1.15 553.84 ZM1.05 567.52 L0.92 581.19 L4.35 581.22 L4.48 567.55 L1.05\n+\t\t\t\t\t\t 567.52 L1.05 567.52 ZM0.86 591.45 L0.82 594.87 L4.25 594.9 L4.28 591.48 L0.86 591.45 L0.86 591.45 ZM0.72\n+\t\t\t\t\t\t 605.13 L0.63 618.8 L4.05 618.83 L4.15 605.16 L0.72 605.13 L0.72 605.13 ZM0.53 629.06 L0.53 632.48 L3.95\n+\t\t\t\t\t\t 632.51 L3.95 629.09 L0.53 629.06 L0.53 629.06 ZM0.43 642.74 L0.33 656.41 L3.75 656.45 L3.85 642.77 L0.43\n+\t\t\t\t\t\t 642.74 L0.43 642.74 ZM0.23 666.67 L0.2 670.09 L3.62 670.12 L3.66 666.7 L0.23 666.67 L0.23 666.67 ZM0.13\n+\t\t\t\t\t\t 680.35 L0 694.02 L3.43 694.06 L3.56 680.38 L0.13 680.35 L0.13 680.35 Z\" class=\"st18\"/>\n+\t\t</g>\n+\t\t<g id=\"shape59-95\" v:mID=\"59\" v:groupContext=\"shape\" transform=\"translate(785.874,-549.473)\">\n+\t\t\t<title>Sheet.59</title>\n+\t\t\t<desc>Payload 1</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"77.3395\" cy=\"673.065\" width=\"154.68\" height=\"41.9798\"/>\n+\t\t\t<path d=\"M154.68 652.08 L0 652.08 L0 694.06 L154.68 694.06 L154.68 652.08\" class=\"st8\"/>\n+\t\t\t<text x=\"26.77\" y=\"680.57\" class=\"st9\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Payload 1</text>\t\t</g>\n+\t\t<g id=\"shape60-99\" v:mID=\"60\" v:groupContext=\"shape\" transform=\"translate(952.97,-548.822)\">\n+\t\t\t<title>Sheet.60</title>\n+\t\t\t<desc>Payload 2</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"97.4929\" cy=\"673.065\" width=\"194.99\" height=\"41.9798\"/>\n+\t\t\t<path d=\"M194.99 652.08 L0 652.08 L0 694.06 L194.99 694.06 L194.99 652.08\" class=\"st8\"/>\n+\t\t\t<text x=\"46.92\" y=\"680.57\" class=\"st9\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Payload 2</text>\t\t</g>\n+\t\t<g id=\"shape63-103\" v:mID=\"63\" v:groupContext=\"shape\" transform=\"translate(1210.43,-551.684)\">\n+\t\t\t<title>Sheet.63</title>\n+\t\t\t<desc>Multi-segment input packet</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"181.707\" cy=\"678.273\" width=\"363.42\" height=\"31.5648\"/>\n+\t\t\t<path d=\"M363.41 662.49 L0 662.49 L0 694.06 L363.41 694.06 L363.41 662.49\" class=\"st8\"/>\n+\t\t\t<text x=\"17.75\" y=\"686.16\" class=\"st11\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Multi-segment input packet</text>\t\t</g>\n+\t\t<g id=\"shape70-107\" v:mID=\"70\" v:groupContext=\"shape\" v:layerMember=\"1\" transform=\"translate(455.049,-221.499)\">\n+\t\t\t<title>Sheet.70</title>\n+\t\t\t<path d=\"M0 611.87 C0 602.79 5.33 595.43 11.89 595.43 L282.92 595.43 C289.53 595.43 294.8 602.79 294.8 611.87 L294.8\n+\t\t\t\t\t\t 677.62 C294.8 686.76 289.53 694.06 282.92 694.06 L11.89 694.06 C5.33 694.06 0 686.76 0 677.62 L0 611.87\n+\t\t\t\t\t\t Z\" class=\"st6\"/>\n+\t\t</g>\n+\t\t<g id=\"shape71-109\" v:mID=\"71\" v:groupContext=\"shape\" transform=\"translate(455.049,-221.499)\">\n+\t\t\t<title>Sheet.71</title>\n+\t\t\t<path d=\"M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L391.97 595.43 C401.12 595.43 408.44 602.79 408.44 611.87 L408.44\n+\t\t\t\t\t\t 677.62 C408.44 686.76 401.12 694.06 391.97 694.06 L16.47 694.06 C7.38 694.06 0 686.76 0 677.62 L0 611.87\n+\t\t\t\t\t\t Z\" class=\"st12\"/>\n+\t\t</g>\n+\t\t<g id=\"shape72-111\" v:mID=\"72\" v:groupContext=\"shape\" transform=\"translate(489.065,-263.434)\">\n+\t\t\t<title>Sheet.72</title>\n+\t\t\t<desc>Indirect mbuf</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"112.128\" cy=\"675.59\" width=\"224.26\" height=\"36.9302\"/>\n+\t\t\t<path d=\"M224.26 657.13 L0 657.13 L0 694.06 L224.26 694.06 L224.26 657.13\" class=\"st8\"/>\n+\t\t\t<text x=\"20.73\" y=\"684.59\" class=\"st13\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Indirect mbuf</text>\t\t</g>\n+\t\t<g id=\"shape75-115\" v:mID=\"75\" v:groupContext=\"shape\" transform=\"translate(849.065,-281.435)\">\n+\t\t\t<title>Sheet.75</title>\n+\t\t\t<desc>(pointer to data)</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"100.199\" cy=\"678.273\" width=\"200.4\" height=\"31.5648\"/>\n+\t\t\t<path d=\"M200.4 662.49 L0 662.49 L0 694.06 L200.4 694.06 L200.4 662.49\" class=\"st8\"/>\n+\t\t\t<text x=\"4.49\" y=\"686.16\" class=\"st11\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>(pointer to data)</text>\t\t</g>\n+\t\t<g id=\"shape77-119\" v:mID=\"77\" v:groupContext=\"shape\" transform=\"translate(717.742,-563.523)\">\n+\t\t\t<title>Sheet.77</title>\n+\t\t\t<desc>next</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"33.3635\" cy=\"678.273\" width=\"66.73\" height=\"31.5648\"/>\n+\t\t\t<path d=\"M66.73 662.49 L0 662.49 L0 694.06 L66.73 694.06 L66.73 662.49\" class=\"st8\"/>\n+\t\t\t<text x=\"15.71\" y=\"683.67\" class=\"st19\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>next</text>\t\t</g>\n+\t\t<g id=\"shape78-123\" v:mID=\"78\" v:groupContext=\"shape\" transform=\"translate(1148.17,-529.067)\">\n+\t\t\t<title>Sheet.78</title>\n+\t\t\t<path d=\"M1.38 529.87 L1.25 543.55 L4.68 543.61 L4.81 529.94 L1.38 529.87 L1.38 529.87 ZM1.19 553.81 L1.12 557.23 L4.55\n+\t\t\t\t\t\t 557.29 L4.61 553.87 L1.19 553.81 L1.19 553.81 ZM1.05 567.48 L0.92 581.16 L4.35 581.22 L4.48 567.55 L1.05\n+\t\t\t\t\t\t 567.48 L1.05 567.48 ZM0.86 591.42 L0.86 594.84 L4.28 594.9 L4.28 591.48 L0.86 591.42 L0.86 591.42 ZM0.72\n+\t\t\t\t\t\t 605.09 L0.66 618.77 L4.08 618.83 L4.15 605.16 L0.72 605.09 L0.72 605.09 ZM0.53 629.03 L0.53 632.45 L3.95\n+\t\t\t\t\t\t 632.51 L3.95 629.09 L0.53 629.03 L0.53 629.03 ZM0.46 642.7 L0.33 656.38 L3.75 656.45 L3.89 642.77 L0.46\n+\t\t\t\t\t\t 642.7 L0.46 642.7 ZM0.26 666.64 L0.2 670.06 L3.62 670.12 L3.69 666.7 L0.26 666.64 L0.26 666.64 ZM0.13 680.31\n+\t\t\t\t\t\t L0 693.99 L3.43 694.06 L3.56 680.38 L0.13 680.31 L0.13 680.31 Z\" class=\"st20\"/>\n+\t\t</g>\n+\t\t<g id=\"shape79-125\" v:mID=\"79\" v:groupContext=\"shape\" transform=\"translate(946.254,-657.81)\">\n+\t\t\t<title>Sheet.79</title>\n+\t\t\t<path d=\"M11 686.69 L17.33 686.69 L17.33 688.27 L11 688.27 L11 686.69 L11 686.69 ZM22.07 686.69 L23.65 686.69 L23.65\n+\t\t\t\t\t\t 688.27 L22.07 688.27 L22.07 686.69 L22.07 686.69 ZM28.39 686.69 L34.72 686.69 L34.72 688.27 L28.39 688.27\n+\t\t\t\t\t\t L28.39 686.69 L28.39 686.69 ZM39.46 686.69 L41.04 686.69 L41.04 688.27 L39.46 688.27 L39.46 686.69 L39.46\n+\t\t\t\t\t\t 686.69 ZM45.78 686.69 L52.11 686.69 L52.11 688.27 L45.78 688.27 L45.78 686.69 L45.78 686.69 ZM56.85 686.69\n+\t\t\t\t\t\t L58.43 686.69 L58.43 688.27 L56.85 688.27 L56.85 686.69 L56.85 686.69 ZM63.18 686.69 L69.5 686.69 L69.5\n+\t\t\t\t\t\t 688.27 L63.18 688.27 L63.18 686.69 L63.18 686.69 ZM74.24 686.69 L75.82 686.69 L75.82 688.27 L74.24 688.27\n+\t\t\t\t\t\t L74.24 686.69 L74.24 686.69 ZM80.57 686.69 L86.89 686.69 L86.89 688.27 L80.57 688.27 L80.57 686.69 L80.57\n+\t\t\t\t\t\t 686.69 ZM91.63 686.69 L93.22 686.69 L93.22 688.27 L91.63 688.27 L91.63 686.69 L91.63 686.69 ZM97.96 686.69\n+\t\t\t\t\t\t L104.28 686.69 L104.28 688.27 L97.96 688.27 L97.96 686.69 L97.96 686.69 ZM109.03 686.69 L110.61 686.69 L110.61\n+\t\t\t\t\t\t 688.27 L109.03 688.27 L109.03 686.69 L109.03 686.69 ZM115.35 686.69 L121.67 686.69 L121.67 688.27 L115.35\n+\t\t\t\t\t\t 688.27 L115.35 686.69 L115.35 686.69 ZM126.42 686.69 L128 686.69 L128 688.27 L126.42 688.27 L126.42 686.69\n+\t\t\t\t\t\t L126.42 686.69 ZM132.74 686.69 L139.07 686.69 L139.07 688.27 L132.74 688.27 L132.74 686.69 L132.74 686.69\n+\t\t\t\t\t\t ZM143.81 686.69 L145.39 686.69 L145.39 688.27 L143.81 688.27 L143.81 686.69 L143.81 686.69 ZM150.13 686.69\n+\t\t\t\t\t\t L156.46 686.69 L156.46 688.27 L150.13 688.27 L150.13 686.69 L150.13 686.69 ZM161.2 686.69 L162.78 686.69\n+\t\t\t\t\t\t L162.78 688.27 L161.2 688.27 L161.2 686.69 L161.2 686.69 ZM167.53 686.69 L173.85 686.69 L173.85 688.27 L167.53\n+\t\t\t\t\t\t 688.27 L167.53 686.69 L167.53 686.69 ZM178.59 686.69 L180.17 686.69 L180.17 688.27 L178.59 688.27 L178.59\n+\t\t\t\t\t\t 686.69 L178.59 686.69 ZM184.92 686.69 L189.4 686.69 L189.4 688.27 L184.92 688.27 L184.92 686.69 L184.92\n+\t\t\t\t\t\t 686.69 ZM13.18 694.06 L0 687.41 L13.18 680.9 L13.18 694.06 L13.18 694.06 ZM187.22 680.9 L200.4 687.48 L187.22\n+\t\t\t\t\t\t 694.06 L187.22 680.9 L187.22 680.9 Z\" class=\"st20\"/>\n+\t\t</g>\n+\t\t<g id=\"shape80-127\" v:mID=\"80\" v:groupContext=\"shape\" transform=\"translate(982.882,-643.673)\">\n+\t\t\t<title>Sheet.80</title>\n+\t\t\t<path d=\"M0 655.13 L0 694.06 L127.01 694.06 L127.01 655.13 L0 655.13 L0 655.13 Z\" class=\"st16\"/>\n+\t\t</g>\n+\t\t<g id=\"shape81-129\" v:mID=\"81\" v:groupContext=\"shape\" transform=\"translate(1003.39,-660.621)\">\n+\t\t\t<title>Sheet.81</title>\n+\t\t\t<desc>pkt_len</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"48.6041\" cy=\"680.956\" width=\"97.21\" height=\"26.1994\"/>\n+\t\t\t<path d=\"M97.21 667.86 L0 667.86 L0 694.06 L97.21 694.06 L97.21 667.86\" class=\"st8\"/>\n+\t\t\t<text x=\"11.67\" y=\"687.5\" class=\"st21\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>pkt_len  </text>\t\t</g>\n+\t\t<g id=\"shape82-133\" v:mID=\"82\" v:groupContext=\"shape\" transform=\"translate(1001.18,-634.321)\">\n+\t\t\t<title>Sheet.82</title>\n+\t\t\t<desc>% segsz</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"49.2945\" cy=\"680.956\" width=\"98.59\" height=\"26.1994\"/>\n+\t\t\t<path d=\"M98.59 667.86 L0 667.86 L0 694.06 L98.59 694.06 L98.59 667.86\" class=\"st8\"/>\n+\t\t\t<text x=\"9.09\" y=\"687.5\" class=\"st21\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>% segsz</text>\t\t</g>\n+\t\t<g id=\"shape34-137\" v:mID=\"34\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(356.703,-264.106)\">\n+\t\t\t<title>Sheet.34</title>\n+\t\t\t<path d=\"M0 685.77 L90.67 685.77 L90.67 689.19 L0 689.19 L0 685.77 L0 685.77 ZM89.36 680.9 L97.21 687.48 L89.36 694.06\n+\t\t\t\t\t\t L89.36 680.9 L89.36 680.9 Z\" class=\"st2\"/>\n+\t\t</g>\n+\t\t<g id=\"shape85-139\" v:mID=\"85\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(78.5359,-282.66)\">\n+\t\t\t<title>Sheet.85</title>\n+\t\t\t<path d=\"M0 680.87 C-0 673.59 6.88 667.69 15.37 667.69 C23.86 667.69 30.73 673.59 30.73 680.87 C30.73 688.15 23.86 694.06\n+\t\t\t\t\t\t 15.37 694.06 C6.88 694.06 0 688.15 0 680.87 Z\" class=\"st16\"/>\n+\t\t</g>\n+\t\t<g id=\"shape87-141\" v:mID=\"87\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(85.4791,-284.062)\">\n+\t\t\t<title>Sheet.87</title>\n+\t\t\t<desc>1</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"8.66303\" cy=\"683.269\" width=\"17.33\" height=\"21.5726\"/>\n+\t\t\t<path d=\"M17.33 672.48 L0 672.48 L0 694.06 L17.33 694.06 L17.33 672.48\" class=\"st8\"/>\n+\t\t\t<text x=\"3.32\" y=\"688.66\" class=\"st22\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>1</text>\t\t</g>\n+\t\t<g id=\"shape88-145\" v:mID=\"88\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(468.906,-282.66)\">\n+\t\t\t<title>Sheet.88</title>\n+\t\t\t<path d=\"M0 680.87 C-0 673.59 6.89 667.69 15.37 667.69 C23.86 667.69 30.73 673.59 30.73 680.87 C30.73 688.15 23.86 694.06\n+\t\t\t\t\t\t 15.37 694.06 C6.89 694.06 -0 688.15 0 680.87 Z\" class=\"st16\"/>\n+\t\t</g>\n+\t\t<g id=\"shape90-147\" v:mID=\"90\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(474.575,-284.062)\">\n+\t\t\t<title>Sheet.90</title>\n+\t\t\t<desc>2</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"8.66303\" cy=\"683.269\" width=\"17.33\" height=\"21.5726\"/>\n+\t\t\t<path d=\"M17.33 672.48 L0 672.48 L0 694.06 L17.33 694.06 L17.33 672.48\" class=\"st8\"/>\n+\t\t\t<text x=\"3.32\" y=\"688.66\" class=\"st22\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>2</text>\t\t</g>\n+\t\t<g id=\"shape95-151\" v:mID=\"95\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(764.026,-275.998)\">\n+\t\t\t<title>Sheet.95</title>\n+\t\t\t<desc>next</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"33.3635\" cy=\"678.273\" width=\"66.73\" height=\"31.5648\"/>\n+\t\t\t<path d=\"M66.73 662.49 L0 662.49 L0 694.06 L66.73 694.06 L66.73 662.49\" class=\"st8\"/>\n+\t\t\t<text x=\"7.56\" y=\"686.16\" class=\"st15\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>next</text>\t\t</g>\n+\t\t<g id=\"shape97-155\" v:mID=\"97\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(889.755,-220.915)\">\n+\t\t\t<title>Sheet.97</title>\n+\t\t\t<path d=\"M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L391.97 595.43 C401.12 595.43 408.44 602.79 408.44 611.87 L408.44\n+\t\t\t\t\t\t 677.62 C408.44 686.76 401.12 694.06 391.97 694.06 L16.47 694.06 C7.38 694.06 0 686.76 0 677.62 L0 611.87\n+\t\t\t\t\t\t Z\" class=\"st12\"/>\n+\t\t</g>\n+\t\t<g id=\"shape100-157\" v:mID=\"100\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(751.857,-262.528)\">\n+\t\t\t<title>Sheet.100</title>\n+\t\t\t<path d=\"M0 685.77 L90.67 685.77 L90.67 689.19 L0 689.19 L0 685.77 L0 685.77 ZM89.36 680.9 L97.21 687.48 L89.36 694.06\n+\t\t\t\t\t\t L89.36 680.9 L89.36 680.9 Z\" class=\"st2\"/>\n+\t\t</g>\n+\t\t<g id=\"shape104-159\" v:mID=\"104\" v:groupContext=\"shape\" v:layerMember=\"1\" transform=\"translate(851.429,-218.08)\">\n+\t\t\t<title>Sheet.104</title>\n+\t\t\t<path d=\"M0 611.87 C0 602.79 5.33 595.43 11.89 595.43 L282.92 595.43 C289.53 595.43 294.8 602.79 294.8 611.87 L294.8\n+\t\t\t\t\t\t 677.62 C294.8 686.76 289.53 694.06 282.92 694.06 L11.89 694.06 C5.33 694.06 0 686.76 0 677.62 L0 611.87\n+\t\t\t\t\t\t Z\" class=\"st6\"/>\n+\t\t</g>\n+\t\t<g id=\"shape105-161\" v:mID=\"105\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(885.444,-260.015)\">\n+\t\t\t<title>Sheet.105</title>\n+\t\t\t<desc>Indirect mbuf</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"112.128\" cy=\"675.59\" width=\"224.26\" height=\"36.9302\"/>\n+\t\t\t<path d=\"M224.26 657.13 L0 657.13 L0 694.06 L224.26 694.06 L224.26 657.13\" class=\"st8\"/>\n+\t\t\t<text x=\"20.73\" y=\"684.59\" class=\"st13\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>Indirect mbuf</text>\t\t</g>\n+\t\t<g id=\"shape106-165\" v:mID=\"106\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(895.672,-229.419)\">\n+\t\t\t<title>Sheet.106</title>\n+\t\t\t<desc>(pointer to data)</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"100.199\" cy=\"678.273\" width=\"200.4\" height=\"31.5648\"/>\n+\t\t\t<path d=\"M200.4 662.49 L0 662.49 L0 694.06 L200.4 694.06 L200.4 662.49\" class=\"st8\"/>\n+\t\t\t<text x=\"12.86\" y=\"685.47\" class=\"st14\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>(pointer to data)</text>\t\t</g>\n+\t\t<g id=\"shape107-169\" v:mID=\"107\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(863.297,-280.442)\">\n+\t\t\t<title>Sheet.107</title>\n+\t\t\t<path d=\"M0 680.87 C-0 673.59 6.89 667.69 15.37 667.69 C23.86 667.69 30.73 673.59 30.73 680.87 C30.73 688.15 23.86 694.06\n+\t\t\t\t\t\t 15.37 694.06 C6.89 694.06 -0 688.15 0 680.87 Z\" class=\"st16\"/>\n+\t\t</g>\n+\t\t<g id=\"shape108-171\" v:mID=\"108\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(870.001,-281.547)\">\n+\t\t\t<title>Sheet.108</title>\n+\t\t\t<desc>3</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"8.66303\" cy=\"683.269\" width=\"17.33\" height=\"21.5726\"/>\n+\t\t\t<path d=\"M17.33 672.48 L0 672.48 L0 694.06 L17.33 694.06 L17.33 672.48\" class=\"st8\"/>\n+\t\t\t<text x=\"3.32\" y=\"688.66\" class=\"st22\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>3</text>\t\t</g>\n+\t\t<g id=\"shape109-175\" v:mID=\"109\" v:groupContext=\"shape\" v:layerMember=\"0\" transform=\"translate(500.959,-231.87)\">\n+\t\t\t<title>Sheet.109</title>\n+\t\t\t<desc>(pointer to data)</desc>\n+\t\t\t<v:textBlock v:margins=\"rect(0,0,0,0)\" v:tabSpace=\"42.5197\"/>\n+\t\t\t<v:textRect cx=\"100.199\" cy=\"678.273\" width=\"200.4\" height=\"31.5648\"/>\n+\t\t\t<path d=\"M200.4 662.49 L0 662.49 L0 694.06 L200.4 694.06 L200.4 662.49\" class=\"st8\"/>\n+\t\t\t<text x=\"12.86\" y=\"685.47\" class=\"st14\" v:langID=\"1033\"><v:paragraph v:horizAlign=\"1\"/><v:tabList/>(pointer to data)</text>\t\t</g>\n+\t</g>\n+</svg>\ndiff --git a/doc/guides/prog_guide/index.rst b/doc/guides/prog_guide/index.rst\nindex 40f04a1..c7c8b17 100644\n--- a/doc/guides/prog_guide/index.rst\n+++ b/doc/guides/prog_guide/index.rst\n@@ -56,6 +56,7 @@ Programmer's Guide\n     reorder_lib\n     ip_fragment_reassembly_lib\n     generic_receive_offload_lib\n+    generic_segmentation_offload_lib\n     pdump_lib\n     multi_proc_support\n     kernel_nic_interface\n",
    "prefixes": [
        "dpdk-dev",
        "v8",
        "6/6"
    ]
}