From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 03B1A46602; Tue, 22 Apr 2025 22:27:53 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 82BE440156; Tue, 22 Apr 2025 22:27:53 +0200 (CEST) Received: from mail-yb1-f176.google.com (mail-yb1-f176.google.com [209.85.219.176]) by mails.dpdk.org (Postfix) with ESMTP id A7DFB40151 for ; Tue, 22 Apr 2025 22:27:51 +0200 (CEST) Received: by mail-yb1-f176.google.com with SMTP id 3f1490d57ef6-e6e1cd3f1c5so3922085276.0 for ; Tue, 22 Apr 2025 13:27:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iol.unh.edu; s=unh-iol; t=1745353671; x=1745958471; darn=dpdk.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=YiTa8O1UfsgO3nbeurO0ZRd2r8yVSOy1zBCvdTORKhs=; b=WKtHttglQTuL6mDaP5SByshF1TNXyJvLN7RfmvfSq/6yJ1b+TYJN3nHov3YGaj7cqn zPrvkz+J+VJBnLaRggw/FSwNGiIJexu8Ge/NvMJNZE7opFLmGBt2Ilzo71rUUsMEGGmv a3lBPWw6QkV1u2OUOUjXDeGz/W6HDWsT0Y1s8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745353671; x=1745958471; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=YiTa8O1UfsgO3nbeurO0ZRd2r8yVSOy1zBCvdTORKhs=; b=m6Ab/ODW+/ojAS43bR6SE6Xz+eE7Q04MA0Wl+BUTojzZz/HQvN33EFJjSKaQuTDlBs Q+uoMZlm2lMCAgWLbcbo2NNRW0uIgqYNmSvOMjKXXZiA+11zd+Va/QIy5qfbmJ6MU4Nn t1rxJfs83IRfkjTzS+gk2pHhn0NN//gIayp0bkxn0aJRRDMJhGgUui/69gcXXwZXcL9r tLsMfW/ehx2x1EU10V+vCQGD5Q/QRBfp6MQDbU6cPaoqZt479IobSv9gu0WTtKQK9iTW HN/MUkIDFgYTCdfAvG6vm+l1MNmJPwjoEy/6qbMI2QczZHsyaQAyiV0S9D1dmU20z1ND qUfA== X-Forwarded-Encrypted: i=1; AJvYcCVDRgMq+GN+kDGBjpNzZdJO2TxcyrrRxo5pZUBpnFvns8sHn0wJ4zsN5DYXsijJ8MRjpCQ=@dpdk.org X-Gm-Message-State: AOJu0YwgoElwIoMdNcuTsBvGbnwVR8IKG0QgMv6gYA1OJwG5v9XPVe1w Em9RGylTtCeOBjSy5YdQBZwefonjGapx2r66/0S/s2FVjWWlJ8ULVaYDbh4dTCbJPO6AySK5M0s bXT/e43nVKMKagU/Zy/ZV/X3yVFokMpGGGK12/g== X-Gm-Gg: ASbGncu4mz4oGHzMDjwhw/qYvgCTKIhb1u8byuW1aLZJDP6RT9ymGaoIoyJD9IeqSMK LXfmmwvyNA7WCFp+Wvz8S706Ls/PVFs7/2lHJn9DrBpQ2M81RWYJLN+TfQCYtzQq8UXmlIhQ9Ie viGEr3aDWYj8fRXNOS/FHJOF14lmUVG3FODwmv7O1TD+9KUE3MxdKe7tKW X-Google-Smtp-Source: AGHT+IFawJ8EQ3pHo1l1uDeoZlAw6ZmTlc+AbKjv9RcVaWyC/2L4EXjxKOfvk4chBc0NJIoi50rEMRvuxkMrSwtE6FU= X-Received: by 2002:a05:6902:6c0e:b0:e72:c926:ee1 with SMTP id 3f1490d57ef6-e72c9260f5fmr9859785276.12.1745353670873; Tue, 22 Apr 2025 13:27:50 -0700 (PDT) MIME-Version: 1.0 References: <5050697.TLnPLrj5Ze@thomas> In-Reply-To: <5050697.TLnPLrj5Ze@thomas> From: Dean Marx Date: Tue, 22 Apr 2025 16:27:39 -0400 X-Gm-Features: ATxdqUHWOYGBC6PH0t3l8vnFKE6M0za7FyND9hk3wJ_8DFVCeFvfcX2-qU9Ee48 Message-ID: Subject: Re: Flow API Test Suite Inquiry To: Thomas Monjalon Cc: orika@nvidia.com, dev , Bruce Richardson , ajit.khaparde@broadcom.com Content-Type: multipart/mixed; boundary="0000000000008fa07e063363d1a9" X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org --0000000000008fa07e063363d1a9 Content-Type: text/plain; charset="UTF-8" Hi Thomas, This is very helpful. I've drafted a test plan that I believe will work best to cover these attributes. My plan is to submit incrementally larger tests as I go, to avoid the issues I've had in the past when trying to write one monolithic suite that covers everything. I will likely write a basic flow suite sometime in the near future covering the basics, so if anyone has anything they would like to see added based on the test plan, let me know in this thread and I'll make sure to add it. --0000000000008fa07e063363d1a9 Content-Type: text/plain; charset="US-ASCII"; name="RTE Flow Test Plan DTS.txt" Content-Disposition: attachment; filename="RTE Flow Test Plan DTS.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m9sygzzs0 UlRFIEZsb3cgVGVzdCBQbGFuIERUUwoKVGhpcyBwbGFuIGFpbXMgdG8gY292ZXIgdGVzdGluZyBv ZiBhbGwgc3luY2hyb25vdXMgRmxvdyBBUEkgZnVuY3Rpb25hbGl0eSwgaW5jbHVkaW5nIHRoZSBm b2xsb3dpbmc6CgpQYXR0ZXJucwoKLSBSVEVfRkxPV19JVEVNX1RZUEVfRVRICi0gUlRFX0ZMT1df SVRFTV9UWVBFX0lQVjQgLyBSVEVfRkxPV19JVEVNX1RZUEVfSVBWNgotIFJURV9GTE9XX0lURU1f VFlQRV9VRFAKLSBSVEVfRkxPV19JVEVNX1RZUEVfVENQCi0gUlRFX0ZMT1dfSVRFTV9UWVBFX1ZM QU4KCkFjdGlvbnMKCi0gUlRFX0ZMT1dfQUNUSU9OX1RZUEVfUVVFVUUKLSBSVEVfRkxPV19BQ1RJ T05fVFlQRV9SRVBSRVNFTlRFRF9QT1JUCi0gUlRFX0ZMT1dfQUNUSU9OX1RZUEVfUlNTCi0gUlRF X0ZMT1dfQUNUSU9OX1RZUEVfRFJPUAotIFJURV9GTE9XX0FDVElPTl9UWVBFX01PRElGWV9GSUVM RAoKR3JvdXBpbmcKCi0gcnRlX2Zsb3dfYXR0ci5ncm91cAotIHJ0ZV9mbG93X2F0dHIucHJpb3Jp dHkKLSBSVEVfRkxPV19BQ1RJT05fVFlQRV9KVU1QCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQoKUHJlcmVxdWlzaXRlczoKClR3byBsaW5rIHBvcnQgdG9wb2xvZ3kK RmxvdyBjb250cm9sIGNhcGFiaWxpdGllcwo0IFR4IHF1ZXVlcyBmb3IgcXVldWUgYWN0aW9uIGNh c2VzClR4IG9ubHkgZm9yd2FyZCBtb2RlIGZvciBlZ3Jlc3MgY2FzZQoJCi0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpRdWV1ZSBBY3Rpb24gRXRoCgpmbG93IGNyZWF0 ZSAwIGluZ3Jlc3MgcGF0dGVybiBldGggc3JjIGlzIDAyOjAwOjAwOjAwOjAwOjAwIC8gZW5kIGFj dGlvbnMgcXVldWUgaW5kZXggMSAvIGVuZApmbG93IGNyZWF0ZSAwIGluZ3Jlc3MgcGF0dGVybiBl dGggZHN0IGlzIDAyOjAwOjAwOjAwOjAwOjAwIC8gZW5kIGFjdGlvbnMgcXVldWUgaW5kZXggMSAv IGVuZApmbG93IGNyZWF0ZSAwIGluZ3Jlc3MgcGF0dGVybiBldGggdHlwZSBpcyAweDA4MDAgLyBl bmQgYWN0aW9ucyBxdWV1ZSBpbmRleCAxIC8gZW5kCgpTdGVwczoKCVN0YXJ0IHRlc3RwbWQgd2l0 aCA0IFR4IHF1ZXVlcyBhbmQgY3JlYXRlIGZpcnN0IGZsb3cgcnVsZS4KCVNlbmQgdGVzdCBwYWNr ZXQgdGhhdCBtYXRjaGVzIHRoZSBmbG93IHJ1bGUgcGF0dGVybi4KCURlc3Ryb3kgZmxvdyBydWxl LCByZXBlYXQgc3RlcHMgZm9yIGFsbCBydWxlcy4KVmVyaWZ5OgoJVmVyaWZ5IHF1ZXVlIHN0YXRz IHNob3cgYSBwYWNrZXQgd2FzIHJlY2VpdmVkLgoJCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCgpRdWV1ZSBBY3Rpb24gSVB2NC9JUHY2CgpmbG93IGNyZWF0ZSAwIGlu Z3Jlc3MgcGF0dGVybiBpcHY0IHNyYyBpcyAxOTIuMC4yLjAgLyBlbmQgYWN0aW9ucyBxdWV1ZSBp bmRleCAxIC8gZW5kCmZsb3cgY3JlYXRlIDAgaW5ncmVzcyBwYXR0ZXJuIGlwdjQgZHN0IGlzIDE5 Mi4wLjIuMCAvIGVuZCBhY3Rpb25zIHF1ZXVlIGluZGV4IDEgLyBlbmQKZmxvdyBjcmVhdGUgMCBp bmdyZXNzIHBhdHRlcm4gaXB2NCBuZXh0X3Byb3RvX2lkIGlzIDYgLyBlbmQgYWN0aW9ucyBxdWV1 ZSBpbmRleCAxIC8gZW5kCmZsb3cgY3JlYXRlIDAgaW5ncmVzcyBwYXR0ZXJuIGlwdjQgdHRsIGlz IDY0IC8gZW5kIGFjdGlvbnMgcXVldWUgaW5kZXggMSAvIGVuZApmbG93IGNyZWF0ZSAwIGluZ3Jl c3MgcGF0dGVybiBpcHY2IHNyYyBpcyAyMDAxOmRiODo6MSAvIGVuZCBhY3Rpb25zIHF1ZXVlIGlu ZGV4IDEgLyBlbmQKZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBhdHRlcm4gaXB2NiBkc3QgaXMgMjAw MTpkYjg6OjIgLyBlbmQgYWN0aW9ucyBxdWV1ZSBpbmRleCAxIC8gZW5kCmZsb3cgY3JlYXRlIDAg aW5ncmVzcyBwYXR0ZXJuIGlwdjYgcHJvdG8gaXMgMTcgLyBlbmQgYWN0aW9ucyBxdWV1ZSBpbmRl eCAxIC8gZW5kCmZsb3cgY3JlYXRlIDAgaW5ncmVzcyBwYXR0ZXJuIGlwdjYgaG9wX2xpbWl0cyBp cyAxMjggLyBlbmQgYWN0aW9ucyBxdWV1ZSBpbmRleCAxIC8gZW5kCgpTdGVwczoKCVN0YXJ0IHRl c3RwbWQgd2l0aCA0IFR4IHF1ZXVlcyBhbmQgY3JlYXRlIGZpcnN0IGZsb3cgcnVsZS4KCVNlbmQg dGVzdCBwYWNrZXQgdGhhdCBtYXRjaGVzIHRoZSBmbG93IHJ1bGUgcGF0dGVybi4KCURlc3Ryb3kg ZmxvdyBydWxlLCByZXBlYXQgc3RlcHMgZm9yIGFsbCBydWxlcy4KVmVyaWZ5OgoJVmVyaWZ5IHF1 ZXVlIHN0YXRzIHNob3cgYSBwYWNrZXQgd2FzIHJlY2VpdmVkLgoJCi0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpRdWV1ZSBBY3Rpb24gVENQL1VEUAoKZmxvdyBjcmVh dGUgMCBpbmdyZXNzIHBhdHRlcm4gdGNwIHNyYyBpcyAxMjM0IC8gZW5kIGFjdGlvbnMgcXVldWUg aW5kZXggMSAvIGVuZApmbG93IGNyZWF0ZSAwIGluZ3Jlc3MgcGF0dGVybiB0Y3AgZHN0IGlzIDgw IC8gZW5kIGFjdGlvbnMgcXVldWUgaW5kZXggMSAvIGVuZApmbG93IGNyZWF0ZSAwIGluZ3Jlc3Mg cGF0dGVybiB0Y3AgZmxhZ3MgaXMgMHgwMiAvIGVuZCBhY3Rpb25zIHF1ZXVlIGluZGV4IDEgLyBl bmQKZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBhdHRlcm4gdWRwIHNyYyBpcyA1MDAwIC8gZW5kIGFj dGlvbnMgcXVldWUgaW5kZXggMSAvIGVuZApmbG93IGNyZWF0ZSAwIGluZ3Jlc3MgcGF0dGVybiB1 ZHAgZHN0IGlzIDUzIC8gZW5kIGFjdGlvbnMgcXVldWUgaW5kZXggMSAvIGVuZAoKU3RlcHM6CglT dGFydCB0ZXN0cG1kIHdpdGggNCBUeCBxdWV1ZXMgYW5kIGNyZWF0ZSBmaXJzdCBmbG93IHJ1bGUu CglTZW5kIHRlc3QgcGFja2V0IHRoYXQgbWF0Y2hlcyB0aGUgZmxvdyBydWxlIHBhdHRlcm4uCglE ZXN0cm95IGZsb3cgcnVsZSwgcmVwZWF0IHN0ZXBzIGZvciBhbGwgcnVsZXMuClZlcmlmeToKCVZl cmlmeSBxdWV1ZSBzdGF0cyBzaG93IGEgcGFja2V0IHdhcyByZWNlaXZlZC4KCQotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKUXVldWUgQWN0aW9uIFZMQU4KCmZsb3cg Y3JlYXRlIDAgaW5ncmVzcyBwYXR0ZXJuIHZsYW4gdGNpIGlzIDB4MDA2NCBtYXNrIDB4MGZmZiAv IGVuZCBhY3Rpb25zIHF1ZXVlIGluZGV4IDEgLyBlbmQKZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBh dHRlcm4gdmxhbiBpbm5lcl90eXBlIGlzIDB4MDgwMCAvIGVuZCBhY3Rpb25zIHF1ZXVlIGluZGV4 IDEgLyBlbmQKClN0ZXBzOgoJU3RhcnQgdGVzdHBtZCB3aXRoIDQgVHggcXVldWVzIGFuZCBjcmVh dGUgZmlyc3QgZmxvdyBydWxlLgoJU2VuZCB0ZXN0IHBhY2tldCB0aGF0IG1hdGNoZXMgdGhlIGZs b3cgcnVsZSBwYXR0ZXJuLgoJRGVzdHJveSBmbG93IHJ1bGUsIHJlcGVhdCBzdGVwcyBmb3IgYWxs IHJ1bGVzLgpWZXJpZnk6CglWZXJpZnkgcXVldWUgc3RhdHMgc2hvdyBhIHBhY2tldCB3YXMgcmVj ZWl2ZWQuCgkKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCkRyb3Ag QWN0aW9uIEV0aAoKZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBhdHRlcm4gZXRoIHNyYyBpcyAwMjow MDowMDowMDowMDowMCAvIGVuZCBhY3Rpb25zIGRyb3AgLyBlbmQKZmxvdyBjcmVhdGUgMCBpbmdy ZXNzIHBhdHRlcm4gZXRoIGRzdCBpcyAwMjowMDowMDowMDowMDowMCAvIGVuZCBhY3Rpb25zIGRy b3AgLyBlbmQKZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBhdHRlcm4gZXRoIHR5cGUgaXMgMHgwODAw IC8gZW5kIGFjdGlvbnMgZHJvcCAvIGVuZAoKU3RlcHM6CglTdGFydCB0ZXN0cG1kIHdpdGggNCBU eCBxdWV1ZXMgYW5kIGNyZWF0ZSBmaXJzdCBmbG93IHJ1bGUuCglTZW5kIHRlc3QgcGFja2V0IHRo YXQgbWF0Y2hlcyB0aGUgZmxvdyBydWxlIHBhdHRlcm4uCglEZXN0cm95IGZsb3cgcnVsZSwgcmVw ZWF0IHN0ZXBzIGZvciBhbGwgcnVsZXMuClZlcmlmeToKCVZlcmlmeSBzZW50IHBhY2tldCBpcyBu b3QgcmVjZWl2ZWQuCgkKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K CkRyb3AgQWN0aW9uIElQdjQvSVB2NgoKZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBhdHRlcm4gaXB2 NCBzcmMgaXMgMTkyLjAuMi4wIC8gZW5kIGFjdGlvbnMgZHJvcCAvIGVuZApmbG93IGNyZWF0ZSAw IGluZ3Jlc3MgcGF0dGVybiBpcHY0IGRzdCBpcyAxOTIuMC4yLjAgLyBlbmQgYWN0aW9ucyBkcm9w IC8gZW5kCmZsb3cgY3JlYXRlIDAgaW5ncmVzcyBwYXR0ZXJuIGlwdjQgbmV4dF9wcm90b19pZCBp cyA2IC8gZW5kIGFjdGlvbnMgZHJvcCAvIGVuZApmbG93IGNyZWF0ZSAwIGluZ3Jlc3MgcGF0dGVy biBpcHY0IHR0bCBpcyA2NCAvIGVuZCBhY3Rpb25zIGRyb3AgLyBlbmQKZmxvdyBjcmVhdGUgMCBp bmdyZXNzIHBhdHRlcm4gaXB2NiBzcmMgaXMgMjAwMTpkYjg6OjEgLyBlbmQgYWN0aW9ucyBkcm9w IC8gZW5kCmZsb3cgY3JlYXRlIDAgaW5ncmVzcyBwYXR0ZXJuIGlwdjYgZHN0IGlzIDIwMDE6ZGI4 OjoyIC8gZW5kIGFjdGlvbnMgZHJvcCAvIGVuZApmbG93IGNyZWF0ZSAwIGluZ3Jlc3MgcGF0dGVy biBpcHY2IHByb3RvIGlzIDE3IC8gZW5kIGFjdGlvbnMgZHJvcCAvIGVuZApmbG93IGNyZWF0ZSAw IGluZ3Jlc3MgcGF0dGVybiBpcHY2IGhvcF9saW1pdHMgaXMgMTI4IC8gZW5kIGFjdGlvbnMgZHJv cCAvIGVuZAoKU3RlcHM6CglTdGFydCB0ZXN0cG1kIHdpdGggNCBUeCBxdWV1ZXMgYW5kIGNyZWF0 ZSBmaXJzdCBmbG93IHJ1bGUuCglTZW5kIHRlc3QgcGFja2V0IHRoYXQgbWF0Y2hlcyB0aGUgZmxv dyBydWxlIHBhdHRlcm4uCglEZXN0cm95IGZsb3cgcnVsZSwgcmVwZWF0IHN0ZXBzIGZvciBhbGwg cnVsZXMuClZlcmlmeToKCVZlcmlmeSBzZW50IHBhY2tldCBpcyBub3QgcmVjZWl2ZWQuCgkKLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCkRyb3AgQWN0aW9uIFRDUC9V RFAKCmZsb3cgY3JlYXRlIDAgaW5ncmVzcyBwYXR0ZXJuIHRjcCBzcmMgaXMgMTIzNCAvIGVuZCBh Y3Rpb25zIGRyb3AgLyBlbmQKZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBhdHRlcm4gdGNwIGRzdCBp cyA4MCAvIGVuZCBhY3Rpb25zIGRyb3AgLyBlbmQKZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBhdHRl cm4gdGNwIGZsYWdzIGlzIDB4MDIgLyBlbmQgYWN0aW9ucyBkcm9wIC8gZW5kCmZsb3cgY3JlYXRl IDAgaW5ncmVzcyBwYXR0ZXJuIHVkcCBzcmMgaXMgNTAwMCAvIGVuZCBhY3Rpb25zIGRyb3AgLyBl bmQKZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBhdHRlcm4gdWRwIGRzdCBpcyA1MyAvIGVuZCBhY3Rp b25zIGRyb3AgLyBlbmQKClN0ZXBzOgoJU3RhcnQgdGVzdHBtZCB3aXRoIDQgVHggcXVldWVzIGFu ZCBjcmVhdGUgZmlyc3QgZmxvdyBydWxlLgoJU2VuZCB0ZXN0IHBhY2tldCB0aGF0IG1hdGNoZXMg dGhlIGZsb3cgcnVsZSBwYXR0ZXJuLgoJRGVzdHJveSBmbG93IHJ1bGUsIHJlcGVhdCBzdGVwcyBm b3IgYWxsIHJ1bGVzLgpWZXJpZnk6CglWZXJpZnkgc2VudCBwYWNrZXQgaXMgbm90IHJlY2VpdmVk LgoJCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpEcm9wIEFjdGlv biBWTEFOIAoKZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBhdHRlcm4gdmxhbiB0Y2kgaXMgMHgwMDY0 IG1hc2sgMHgwZmZmIC8gZW5kIGFjdGlvbnMgZHJvcCAvIGVuZApmbG93IGNyZWF0ZSAwIGluZ3Jl c3MgcGF0dGVybiB2bGFuIGlubmVyX3R5cGUgaXMgMHgwODAwIC8gZW5kIGFjdGlvbnMgZHJvcCAv IGVuZAoKU3RlcHM6CglTdGFydCB0ZXN0cG1kIHdpdGggNCBUeCBxdWV1ZXMgYW5kIGNyZWF0ZSBm aXJzdCBmbG93IHJ1bGUuCglTZW5kIHRlc3QgcGFja2V0IHRoYXQgbWF0Y2hlcyB0aGUgZmxvdyBy dWxlIHBhdHRlcm4uCglEZXN0cm95IGZsb3cgcnVsZSwgcmVwZWF0IHN0ZXBzIGZvciBhbGwgcnVs ZXMuClZlcmlmeToKCVZlcmlmeSBzZW50IHBhY2tldCBpcyBub3QgcmVjZWl2ZWQuCgkKLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCk1vZGlmeSBGaWVsZCBBY3Rpb24K Ci8vIHJ1bGUgdG8gY29weSBJUHY0IHNyYyB0byBJUHY0IGRzdApmbG93IGNyZWF0ZSAwIGluZ3Jl c3MgZ3JvdXAgMSBwYXR0ZXJuIGV0aCAvIGVuZCBhY3Rpb25zIG1vZGlmeV9maWVsZCBvcCBzZXQg ZHN0X3R5cGUgaXB2NF9kc3Qgc3JjX3R5cGUgaXB2NF9zcmMgd2lkdGggMzIgLyBjb3VudCAvIHJz cyAvIGVuZAovLyBydWxlIHRvIGNvcHkgc3JjIE1BQyB0byBkc3QgTUFDCmZsb3cgY3JlYXRlIDAg aW5ncmVzcyBncm91cCAxIHBhdHRlcm4gZXRoIC8gZW5kIGFjdGlvbnMgbW9kaWZ5X2ZpZWxkIG9w IHNldCBkc3RfdHlwZSBtYWNfZHN0IHNyY190eXBlIG1hY19zcmMgd2lkdGggNDggLyBjb3VudCAv IHJzcyAvIGVuZAoKU3RlcHM6CglTdGFydCB0ZXN0cG1kIHdpdGggNCBUeCBxdWV1ZXMgYW5kIGNy ZWF0ZSBmaXJzdCBmbG93IHJ1bGUuCglTZW5kIHRlc3QgcGFja2V0IHRoYXQgbWF0Y2hlcyB0aGUg ZmxvdyBydWxlIHBhdHRlcm4uCglEZXN0cm95IGZsb3cgcnVsZSwgcmVwZWF0IHN0ZXBzIGZvciBh bGwgcnVsZXMuClZlcmlmeToKCVZlcmlmeSBwYWNrZXQgaXMgcmVjZWl2ZWQgd2l0aCB0aGUgbmV3 IGF0dHJpYnV0ZXMuCgkKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K CkVncmVzcyBydWxlcwoKZmxvdyBjcmVhdGUgMCBlZ3Jlc3MgcGF0dGVybiBldGggc3JjIGlzIDAy OjAwOjAwOjAwOjAwOjAwIC8gZW5kIGFjdGlvbnMgZHJvcCAvIGVuZApmbG93IGNyZWF0ZSAwIGVn cmVzcyBwYXR0ZXJuIGlwdjQgc3JjIGlzIDE5Mi4wLjIuMCAvIGVuZCBhY3Rpb25zIGRyb3AgLyBl bmQKZmxvdyBjcmVhdGUgMCBlZ3Jlc3MgcGF0dGVybiB0Y3Agc3JjIGlzIDEyMzQgLyBlbmQgYWN0 aW9ucyBkcm9wIC8gZW5kCmZsb3cgY3JlYXRlIDAgZWdyZXNzIHBhdHRlcm4gdWRwIHNyYyBpcyA1 MDAwIC8gZW5kIGFjdGlvbnMgZHJvcCAvIGVuZApmbG93IGNyZWF0ZSAwIGVncmVzcyBwYXR0ZXJu IHZsYW4gdGNpIGlzIDB4MDA2NCBtYXNrIDB4MGZmZiAvIGVuZCBhY3Rpb25zIGRyb3AgLyBlbmQK ClN0ZXBzOgoJU3RhcnQgdGVzdHBtZCB3aXRoIDQgVHggcXVldWVzIGFuZCBjcmVhdGUgZmlyc3Qg ZmxvdyBydWxlLgoJU2VuZCB0ZXN0IHBhY2tldCB0aGF0IG1hdGNoZXMgdGhlIGZsb3cgcnVsZSBw YXR0ZXJuLgoJRGVzdHJveSBmbG93IHJ1bGUsIHJlcGVhdCBzdGVwcyBmb3IgYWxsIHJ1bGVzLgpW ZXJpZnk6CglWZXJpZnkgcGFja2V0IGlzIGRyb3BwZWQuCgkKLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KCQpSU1MgdGVzdCBjYXNlcyBhcmUgb21pdHRlZCBmcm9tIHRo aXMgdGVzdCBwbGFuLCBhcyB0aGV5IHdpbGwgYmUgd3JpdHRlbiBsYXRlciBvbmNlCnRoZSBSU1Mg dGVzdCBzdWl0ZXMgYXJlIGZpbmlzaGVkIHRvIGF2b2lkIHJlZHVuZGFudCB0ZXN0IGNvdmVyYWdl LgoKUmVwcmVzZW50ZWQgcG9ydCwgZ3JvdXAsIGFuZCBwcmlvcml0eSB0ZXN0IGNhc2VzIHdpbGwg YmUgYWRkZWQgbGF0ZXIgaW4gZGV2ZWxvcG1lbnQuCgoK --0000000000008fa07e063363d1a9--