
From nobody Tue Aug  1 02:31:22 2017
Return-Path: <rkrejci@cesnet.cz>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2E1C1132879; Tue,  1 Aug 2017 02:31:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.301
X-Spam-Level: 
X-Spam-Status: No, score=-4.301 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cesnet.cz
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YsFDCIeNX-7s; Tue,  1 Aug 2017 02:31:18 -0700 (PDT)
Received: from office2.cesnet.cz (office2.cesnet.cz [195.113.144.244]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 173E9132455; Tue,  1 Aug 2017 02:31:17 -0700 (PDT)
Received: from [IPv6:2001:67c:1220:80c:95:e09a:96fc:f080] (unknown [IPv6:2001:67c:1220:80c:95:e09a:96fc:f080]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by office2.cesnet.cz (Postfix) with ESMTPSA id 83D7940005D; Tue,  1 Aug 2017 11:31:13 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cesnet.cz; s=office2; t=1501579874; bh=Dz3CEx29CU6ZlQx7EJel0ZxHN4hHddbcGA7237ijczs=; h=Subject:To:Cc:References:From:Date:In-Reply-To; b=cFjDxwbeoBntqfdJCYeqhfGzNvdZPiJDU2sF65bDSyESI+wOAiAuEp5tgP/Q1NbSC Lhvw6eTfD7fcrWwqePm8ZOnXc2ntIUyZr5ewNXbrlslwYShL6Vz86NtoUz4HhCS4VX rX+xvt8KWgy+0Y0ejGVHE9sDVd/3QTMuIgfRSlOQ=
To: "Pieter Lewyllie (pilewyll)" <pilewyll@cisco.com>, "Acee Lindem (acee)" <acee@cisco.com>, "Joe Clarke (jclarke)" <jclarke@cisco.com>
Cc: "Benoit Claise (bclaise)" <bclaise@cisco.com>, "Mahesh Jethanandani (mahesh)" <mahesh@cisco.com>, RTG YANG Design Team <rtg-dt-yang-arch@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "Carl Moberg (camoberg)" <camoberg@cisco.com>, YANG Doctors <yang-doctors@ietf.org>, Henrik Levkowetz <henrik@levkowetz.com>
References: <D58522E1.B74DB%acee@cisco.com> <4336925e-a64f-2d73-c67a-a5842de470b1@cisco.com> <a80a1c9b-1056-f6c1-0905-d2f22dab46c8@cisco.com> <D59FBE31.BA3D9%acee@cisco.com> <40AA2897-E297-4A10-AD1E-45EA8A078336@cisco.com> <D5A0CCBC.BA62F%acee@cisco.com> <BB27EB18-AFB5-4092-BB4D-374B620FE2CD@cisco.com> <D5A0F0D8.BA7A4%acee@cisco.com> <015C00CD-30AE-4ED4-AE2E-5188E79F1C25@cisco.com> <D5A0F8E3.BA824%acee@cisco.com> <70E356C5-E78B-4E0F-89A6-26E28E802137@cisco.com>
From: =?UTF-8?B?UmFkZWsgS3JlasSNw60=?= <rkrejci@cesnet.cz>
Message-ID: <bb68f231-f7d9-c29d-be1a-bc478bb474c4@cesnet.cz>
Date: Tue, 1 Aug 2017 11:30:49 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1
MIME-Version: 1.0
In-Reply-To: <70E356C5-E78B-4E0F-89A6-26E28E802137@cisco.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/6BggOm0Q5N9uolJQOnRJAAPYe30>
Subject: Re: [yang-doctors] YANG Tool Requests => regex validator
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 01 Aug 2017 09:31:21 -0000

Hi,
yangre requires patterns as you would write them in a YANG schema. Using =
{ in pattern without quoting is illegal - see RFC 7950, sec 6.1.3. It is =
the same issue as have semicolon there. So, yangre actually does not fail=
 with quantifier, but since it follows {, a valid YANG statement is expec=
ted, but 3 is an invalid statement/keyword.

yangre actually takes the pattern, creates very small YANG schema and the=
n 1) validates the schema (which does not pass in this case) and then 2) =
checks if the leaf of string type with the specified pattern(s) can have =
the provided value (if it matches the patterns). So it actually checks wh=
at yanglint does in case the string is specified as leaf's default value.=


Regarding the quotes in CLI - it is quite challenging to make quotation c=
orrect because of interpreting quotation by shell. See help, there are so=
me examples but there can be some special cases or different behavior wit=
h different shell. The current yangre accepts alternative input via a fil=
e (patterns on separate lines, leading space for invert match, at the las=
t line after a single blank line the string for matching) which would avo=
id issues with quoting. Anyway, as we were discussing with Pieter - Pytho=
n seems to do the quotation correct (or probably just bypass the shell), =
but yangre expect the patterns _including_ the quotation as you would wri=
te it in YANG schema. Only this way all the YANG rules can be checked.

Regards,
Radek

Dne 29.7.2017 v 12:06 Pieter Lewyllie (pilewyll) napsal(a):
> I get the same results as Joe stated before.
>
> I=E2=80=99m wondering why YANGRE requires extra quotes to match with th=
e {3} quantifier.
>
> Using the GUI:
>
> (([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3} matches 192.1.=
1. on W3CGREP, but not on YANGRE ( yangre error: Invalid keyword "3=E2=80=
=9D. )
>
> '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}=E2=80=99 matc=
hes 192.1.1. on YANGRE, but not on W3CGREP (which is expecting the =E2=80=
=98 in the test string)
>
> The same behaviour can be observed in the CLI, you just have to add wra=
p the expressions with appropriate quotes.
>
> *Radek,* do you have an idea why the YANGRE fails with the quantifier? =
Here are a couple of CLI examples that I observed:
> yangre -p "(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}([0-=
9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N}\p{L}]+)?" "192.168=
=2E0.1"
> yangre error: Invalid keyword "3=E2=80=9D.
>
> /yangre -p "'(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}([=
0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N}\p{L}]+)?'" =E2=80=
=9C192.168.0.1=E2=80=9D=20
> matches (no output)
>
> When inverting the quotes: (single quotes on the outside)
> yangre -p '"(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}([0=
-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N}\p{L}]+)?"' "192.1=
68.0.1"
> yangre error: Invalid keyword "(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-=
9]|25[0-5]).){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N=
}\p{L}]+)?=E2=80=9D".
>
> yangre -p '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}([0-=
9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N}\p{L}]+)?' "192.168=
=2E0.1"
> yangre error: Invalid keyword "3".
>
> Cheers,
> Pieter
>
>
>> On 28 Jul 2017, at 20:23, Acee Lindem (acee) <acee@cisco.com <mailto:a=
cee@cisco.com>> wrote:
>>
>>
>>
>> From: "Joe Clarke (jclarke)" <jclarke@cisco.com <mailto:jclarke@cisco.=
com>>
>> Date: Friday, July 28, 2017 at 2:12 PM
>> To: Acee Lindem <acee@cisco.com <mailto:acee@cisco.com>>
>> Cc: "Pieter Lewyllie (pilewyll)" <pilewyll@cisco.com <mailto:pilewyll@=
cisco.com>>, "Benoit Claise (bclaise)" <bclaise@cisco.com <mailto:bclaise=
@cisco.com>>, "Mahesh Jethanandani (mahesh)" <mahesh@cisco.com <mailto:ma=
hesh@cisco.com>>, RTG YANG Design Team <rtg-dt-yang-arch@ietf.org <mailto=
:rtg-dt-yang-arch@ietf.org>>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com <mai=
lto:Ing-Wher_Chen@jabil.com>>, "Carl Moberg (camoberg)" <camoberg@cisco.c=
om <mailto:camoberg@cisco.com>>, YANG Doctors <yang-doctors@ietf.org <mai=
lto:yang-doctors@ietf.org>>, Henrik Levkowetz <henrik@levkowetz.com <mail=
to:henrik@levkowetz.com>>, Radek Krej=C4=8D=C3=AD <rkrejci@cesnet.cz <mai=
lto:rkrejci@cesnet.cz>>
>> Subject: Re: YANG Tool Requests =3D> regex validator
>>
>>
>>         https://yangcatalog.org/yangre doesn=E2=80=99t work for me, no=
 matter how I quote
>>         it.
>>
>>         I tried with the inet:ipv4-address pattern and I did get this =
to work with
>>         W3CGREP but not yangre no matter how I quoted it. For W3CGREP,=
 I had to
>>         remove all the quoting and concatenation. This could be error =
prone for a
>>         very complex pattern.
>>
>>     Hmmm. This pattern from ietf-inet-types (note: I had the single qu=
otes in the UI):
>>
>>     '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1=
-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N}\p{L}]+)?'
>>
>>     Works for me with this string (only with YANGRE):
>>
>>     192.168.1.1
>>
>> Nope =E2=80=93 exact same pattern and test string fails for me. If I u=
nquote it, it works with W3CGREP.=20
>>
>>
>> Thanks,
>> Acee=20
>>
>>
>>
>>     Joe
>>
>

--=20
Radek Krejci
mobile  : +420 732 212 714
office  : +420 234 680 256
e-mail  : rkrejci@cesnet.cz
LinkedIn: http://www.linkedin.com/in/radekkrejci

CESNET, Association of Legal Entities
Zikova 4
160 00 Praha 6
Czech Republic



From nobody Tue Aug  1 03:15:31 2017
Return-Path: <ietfc@btconnect.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7AAFD129B5E; Tue,  1 Aug 2017 03:15:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.912
X-Spam-Level: 
X-Spam-Status: No, score=-2.912 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=-1, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=btconnect.onmicrosoft.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RV9Wu9zgG_dw; Tue,  1 Aug 2017 03:15:21 -0700 (PDT)
Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-eopbgr10099.outbound.protection.outlook.com [40.107.1.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C749313203A; Tue,  1 Aug 2017 03:15:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=btconnect.onmicrosoft.com; s=selector1-btconnect-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=nWi8P5+8yr6mZBj1WoOWdURcoV1GBIilTOKcY+TbryU=; b=hkRlInASSpIMsofI8VTWSDvjOLjPLjVXPpz8uiyF+M2TgajZP+9swqLJNtDoQIrfp2zJ5LnRn1xSjZmNDqrJ+y3LbJcic6RgzvVVVc1eqeiMo8nCpDmlqZDSfjyBHp9ucdCt3oJryNk3vlCBL6BRMx9Pqt2LKoKPyf+5kK3VBLo=
Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=ietfc@btconnect.com; 
Received: from pc6 (86.171.5.69) by VI1PR0701MB3008.eurprd07.prod.outlook.com (2603:10a6:800:87::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1320.10; Tue, 1 Aug 2017 10:15:17 +0000
Message-ID: <04f301d30aae$7482e900$4001a8c0@gateway.2wire.net>
From: "t.petch" <ietfc@btconnect.com>
To: "Juergen Schoenwaelder" <j.schoenwaelder@jacobs-university.de>, "Kent Watsen" <kwatsen@juniper.net>
Cc: <draft-ietf-netconf-keystore.all@ietf.org>, <yang-doctors@ietf.org>, <netconf@ietf.org>
References: <150028100874.32703.14161403810529927281@ietfa.amsl.com> <B1AC6895-5681-48F8-B7E7-418118120B4E@juniper.net> <20170720165942.GB21506@elstar.local> <F5E9973C-FCCD-4A96-B0D3-8C735CE911D3@juniper.net> <20170728073923.GA28870@elstar.local> <701F31A6-9941-4DE4-AE7E-00E859F103F8@juniper.net> <20170728154008.GA29865@elstar.local> <53886D3E-8A0C-4664-A7BD-1E708A80EE9D@juniper.net> <20170728170930.GA30054@elstar.local>
Date: Tue, 1 Aug 2017 11:09:41 +0100
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
X-Originating-IP: [86.171.5.69]
X-ClientProxiedBy: AM5P194CA0007.EURP194.PROD.OUTLOOK.COM (2603:10a6:203:8f::17) To VI1PR0701MB3008.eurprd07.prod.outlook.com (2603:10a6:800:87::22)
X-MS-Office365-Filtering-Correlation-Id: 3c2a36d1-ec44-43cd-fcba-08d4d8c6354f
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:VI1PR0701MB3008; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB3008; 3:YZyOVEQXkqcZZU9MX4lNUPhku71hdWbIyQKBrYEpJ0YBvSzbprdrOJ51et0NsN3dh/ZG94EqVrKoktEvNQfIESewZs8PsJTlJRkUOycmvYbpP0MjMp2uHdX5QcRUcyaESuheHEIoBxspu5DYpEnZ812j69vfLunzF/xd7V/uReshgQ06TOnnWnu6qeSUnjLxegpG2tfgvUF7DUlicmD/U4e94S8TO0JqZym0zVU13zs8kdIQa8z18GK0fVNsC+TN; 25:BjjAVyLulBeXDWAyP8kijGVMF81XPWUAfgCKOOwdc9EW/8YpJuKu0PJ2F8YZAg0gO6cHHowZJaexEaM77WcFEhicGgfqqx+jR/bw+dzRc9/wTGKob6fqh6N33PEhbpnmpNADDmn+LiN81K3gBPKFa+cW+8shI5VKkdmv/xbXz4X+YaLdhKG/qF6SKqEJjGbm5CouxQqVAWhu1Lq2vI9FSxZSZ1RfwDJgHFTVhfB+P9Mb67X7TTNpJXp8i59rTsT0Dr0XM1KhkEaRb6qNculZX2Zl74A/f9N9jjPlQVZz8K+OhTTmPK+gRrStntfHXVNa6YhY71kZ3g7dX2MbZnddTg==; 31:Ow6LMoF40ZcuOH2XrXIi1z5tJBx4AquGABZSUAg/1UcCiqMt1FLtzJ+7kOGIqDyynFi8M4YHBS95NkYMYxSIPtbT+NW/8PEyHaZbgTwhepdEkbLtt1nklAa7K+PJ80ReQusWo4TouPwreaDbSORBkmJkS9lv2ldRIsCXDvJvP0siF8Ivjm5tau2G67kLWGLIOX1Qk2ITq9bROFU+ViBs4zXB/EOzQ/MLTzwVWEDlIro=
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: VI1PR0701MB3008:
X-Exchange-Antispam-Report-Test: UriScan:(158342451672863)(166708455590820)(138986009662008); 
X-Microsoft-Antispam-PRVS: <VI1PR0701MB3008847664969177209FFEC2A0B30@VI1PR0701MB3008.eurprd07.prod.outlook.com>
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(3002001)(100000703101)(100105400095)(10201501046)(93006095)(93001095)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123564025)(20161123555025)(20161123558100)(20161123560025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:VI1PR0701MB3008; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:VI1PR0701MB3008; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB3008; 4:eugIXJbSKde1al1WqPoi/bu4hggM/qaSu9iPZYUpFVHcXzOy3irFlC6rsNILV7xSn8FwIcNPeJVWj2LdywC48MRAR5/jI6Iuo8T2Xjup9BEwSRjmU6jV9KviC6PWVVDvPnL8M6HNP3Dc43oHcm1lNLjtWdTgYKwgTPZsrACYQ12wGq0Qph3tyNR4Z3KmqbEHn+EW/0HYASGkjsroqX97Rju1IIo22reGszGP/x6oIpHSLZJa17YzBEI0VLrJfQZ6BgVCjpRwzyl28b0OS49nSlXx1EPs4YZc5eZAtu6yA8Y8mWdG9Y9eXJEeAG/g+YBq5eMJVQ1lcMCojoVeEYeoVRh5hyjc/3PCYW8Jn3wPQETFavzQUeDgVPhYFeoMrM/S
X-Forefront-PRVS: 0386B406AA
X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(7370300001)(4630300001)(6009001)(39850400002)(39840400002)(39860400002)(39410400002)(39450400003)(39400400002)(174864002)(189002)(24454002)(377454003)(51444003)(199003)(13464003)(52314003)(68736007)(1941001)(5660300001)(229853002)(42186005)(8676002)(66066001)(47776003)(966005)(6666003)(189998001)(23756003)(1556002)(478600001)(25786009)(50466002)(38730400002)(6496005)(8666007)(14496001)(7350300001)(53936002)(6246003)(44736005)(6486002)(93886004)(6306002)(4326008)(54906002)(101416001)(62236002)(44716002)(554214002)(6116002)(3846002)(81166006)(33646002)(106356001)(4720700003)(81156014)(84392002)(86362001)(230783001)(230700001)(9686003)(1456003)(7736002)(76176999)(81686999)(50986999)(105586002)(116806002)(305945005)(2906002)(97736004)(61296003)(50226002)(81816999)(74416001)(7726001); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR0701MB3008; H:pc6; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:0; LANG:en; 
Received-SPF: None (protection.outlook.com: btconnect.com does not designate permitted sender hosts)
X-Microsoft-Exchange-Diagnostics: =?iso-8859-1?Q?1; VI1PR0701MB3008; 23:CM6QAYN/ZlL+ILUKgycNLiwaJ8Ms4Bm0dL9t+?= =?iso-8859-1?Q?q3JLE2EiTKmdmESBMmRNHwnvEjiaSDaBYA6m5DOlWx9hKEQ7b+Wd887aa/?= =?iso-8859-1?Q?nI4j2ImWhaCQ/vgyKDSXbxx4FucRh7V8w5/8VXRpcAeC9zki400Re+Z1t8?= =?iso-8859-1?Q?nAr2KtTtaVCUinT1el44OY4SrUTsOaSDmSTU+MfN2YgkAbGrJa47pZGmQp?= =?iso-8859-1?Q?7qIqITQKlrStqAa/zn6gEkx0P6uWH8SviUVgWyOyBJpX9M+n3BxxUIZ+kf?= =?iso-8859-1?Q?Vz4LOoFmVwnAgCw/Ye8KkYWu1uYTOpHFfwEK8j/ydmWqRCumw5y3fu3n7R?= =?iso-8859-1?Q?MdFMcJZBySAOlV0oQUsmsVmVCJtzScm8eW06hDS6vKIjBqTXvOyUXCAioY?= =?iso-8859-1?Q?DeTZXaCI+6BNbKpHyXWpYzNUGfRRzmxYyOM6q1dtif5RAPRR4SPL2f/yGV?= =?iso-8859-1?Q?abrYh+ulTwdNZASHZEHIFl4YvNTJGpTOb2xk47qlZjwHGJlfyj3O7HNyvC?= =?iso-8859-1?Q?wYJxZlx/+iHhZ2Ox4/TYh/FYrY12xK685DIIVg39EHV2Xus9qIzzHShB++?= =?iso-8859-1?Q?5SGTKsp4D4ZqHNe5GC3N1gY5u5vifgk9lUdU70n8q/+v7HycCltIFvG8IB?= =?iso-8859-1?Q?DoHljmRx9eH97wgVJ7ybqu9wf238ZVZYqExA+rlACv7x14tmhuEoquGyn2?= =?iso-8859-1?Q?kFCcnEMDMC+uLPzIRIqzZRkNmrv/AJDhIIxQ+qnUluRuZ20e+/KLsSiK0+?= =?iso-8859-1?Q?ofECeq48szJn45EetyiiUI5FQqMnGrJqq7QJV5lZ34IKE0/Lweo15+rRT5?= =?iso-8859-1?Q?+k0K7KQWF8WEYkFt2eYb3sCtfGtel3kSRvJfqSUu1ZF5AVGg15MZCAK4UW?= =?iso-8859-1?Q?peliKs1kfqUjvyXEK+7XCZq/VZkizwXnsDkfdRlIQoDLsaepNEsi0xQTf6?= =?iso-8859-1?Q?/pHlVThqaDMHwxzrGcTbG9ec29TR8F7Q8RAfgSKU047ZuI1zfwoOP6rIyF?= =?iso-8859-1?Q?PXHc6D6wk4XKCMPzDNclqLn8fjiXgQG59hHJ0/zbpoEX4hw5+kUXyolnVX?= =?iso-8859-1?Q?+T/by5t0aTvSwu24xB3VIG87/IUrcBJg/lSqrXkwtnoCkQdAXdZmC84zoe?= =?iso-8859-1?Q?SHEoEhbAHjqWEFsIr/90wKWtUhAo7NZhhT8jcrZhbT53k7pBXbrzIZMzl/?= =?iso-8859-1?Q?Pgys3mhDPMNBRnHalBgwQmO4olAQRGoT38i/5pB+IC6Ctjj6sCn8nzX7qR?= =?iso-8859-1?Q?0Zp2Hg/0l3oAcL5DJ9/c+hIJJMoweitZcyJMWB8gAKTR29JkzHrCd+AMX2?= =?iso-8859-1?Q?fKyovLG4KY50MLmBZmfQT2x7n5LH3aokzMGUpY6D5LoEINND9F8/g3+Dsg?= =?iso-8859-1?Q?9qS2FoxSORwU7bHMoUw0Su9CunqdlPH6xG5pm19ADLYyjg8/FAdpAgjBho?= =?iso-8859-1?Q?dyyVguylZEOUVNe2TPI8W5j+DYJai5HpAqu7WwPmyJ26oEHf/dMQUv1Jto?= =?iso-8859-1?Q?evzAbTxuWc/2U9gUIir7MIq3nAGDV5OZDALlhwragZnta24rICL7zrVGRx?= =?iso-8859-1?Q?rB5iuuk+briL0SsNSVB1xapjwOIOnlOldk28SwgKLMvzaY8Yb0tj6HZd2s?= =?iso-8859-1?Q?4/IA3wJ4a4bCvd8MFUZDmccGV2MgI0uqWPagK/lDaLst18JMgXgOpbUcvz?= =?iso-8859-1?Q?s34gnNyGNDVe83xLPnmllNxXGobvfrdTKuuhH1TYE8YLYsJxBUktcx7Tv4?= =?iso-8859-1?Q?jGrkHx4XTcaBqyF6jYDN05yUU/nq6kpRRkFcijxu5XGGrmsirUqOBV0JZU?= =?iso-8859-1?Q?6M2Xqo45N5E0ZQLAgWTkL6tcAE0MIgHQqTfXRawfjq5ciHZxYvUcTQn+GZ?= =?iso-8859-1?Q?PMxA/cwZgE3TL6RXPbWnYzgbFj0+ZrDQQbWQA=3D=3D?=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB3008; 6:5VlZxhpzOcyhlo08KExBry44f0r/6fTpY1HFqvsXOoRrbnAb9KYQFNblOVXfMOSDVEwtTde3DG5TTm1upz2dO8K1HeaDTGthB7UMw/9ex7m7s6PqU3doqHxmx9OfGPPp9JRvG7A29oqRXNY28RVXaMzNKenPs11sOh52PtvTJXzo86Gj0k+BOywySblXrcqFApk8em9MEyUSB48fQ7yy9HaAUHpd4o2GWfemYvGJgUiHDZBBwGYDdLO1CndJpiHh6oF+2M6SD0k78VbowJjvWvMG+5faPNh1BiebZfL0QxqeVYE9YhVAxhI76jQun4gP6k2MLm+xZrZyp+TILeINGQ==; 5:svHLWe0Zv4VXan5/irG0dwflJ3JXi2P3KAzX2eqJzKVjV+U7H5KYN0BI4gAlMFJvsN0pqzWxGspl6IRKbaeHF+nXzysv3hiKC/1KFOekzsjoboNl+tubT6itKU4MMVy4wCWjZm+2ajZzKoMqgk8vFQ==; 24:2IJcSEwi7yIrIemkSh/vRsmdamaJ3M9eb3tdRV3oR19/n0pjJFs+vqKJsM4Tj/sxBi4Mo/PLFplUU2mUzjwgvh6iJbvezJnxwMVpX55Wp2E=; 7:dmC7k2DZ8eNWRB4WuHj9Ciy7dkW07y9BQ3xPP1QixeHvrbZhb9opr4tgytwodhulpMOGbWWlzLcT7K4bwt9sQLz0fLfZboIjGU1gvvzQaDTySeaNhIHC9CPNtbEYPcuuQdNwKhRmnmvPgeFc2Jwz/Z3nO6OGuguZOs1KJ/jxqi7xFxdu1BJS59Zm+7+zUCQcUpIlGQZ2QuM1hm/mvU5P3GHCBpOwW1UPFAcbUmTJNM0=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-OriginatorOrg: btconnect.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Aug 2017 10:15:17.0485 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0701MB3008
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/Q4RdwTAhIWfE0jMGpycD7pgBCV4>
Subject: Re: [yang-doctors] [Netconf] last call review of draft-ietf-netconf-keystore-02
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 01 Aug 2017 10:15:25 -0000

Kent

Changing the subject because my tack is slightly different.

I cannot reconcile this I-D with my (mis?)understanding of cryptography.

Stepping back, I see two types of keys, symmetric where one key is used
for encryption and decryption, and asymmetric, where there are two keys,
public and private, mathematically related but impossible to derive one
from the other, one used to encrypt, the other to decrypt.

I see this I-D as solely concerned with asymmetric keys.

Public and private key pairs must be generated together, after which the
private key must stay secret else you have no security.  Public keys by
contrast are public for all to know.  The challenge is authenticating
that the public key really is the public key of who you think it is.
Most public keys arrive by certificates which then allow you to follow a
chain thereof to a hopefully trustworthy trust anchor.  SSH, and some
other protocols, are different in distributing naked public keys and
relying on some other means of authenticating them (e.g. Trust on First
Use).

So when you say
"AFAICT, the system should be able to generate its host-key from the
private-key itself.  "
that is at odds with my understanding and would lead to an absence of
security.

When the I-D says,
"that might be used to hold onto private keys and
   certificates "
I struggle to see the point.  Indeed, the module contains public keys as
well as
"leaf public-key {
          config false;
          mandatory true;"
so you are really storing public/private key pairs (which may be
generated on the box).

The I-D also says
"Certificates associated with this private key."
which defeats me.  A certificate or chain thereof gives me a public key,
never a private one, and the means to authenticate the public key.

A public key may or may not have a certificate or chain thereof.  A TLS
client would likely have both but will rarely have a private key.  A
server of any protocol (except SSH and such like) will have a
public/private key pair and a certificate (and likely a chain thereof)
to send to any enquiring client along with the public key.  An SSH
server would have a public/private key pair but likely no certificates.

So, I cannot reconcile my understanding with the I-D.

Tom Petch


----- Original Message -----
From: "Juergen Schoenwaelder" <j.schoenwaelder@jacobs-university.de>
To: "Kent Watsen" <kwatsen@juniper.net>
Cc: <draft-ietf-netconf-keystore.all@ietf.org>; <yang-doctors@ietf.org>;
<netconf@ietf.org>
Sent: Friday, July 28, 2017 6:09 PM

> On Fri, Jul 28, 2017 at 05:00:06PM +0000, Kent Watsen wrote:
> >
> >
> > >> >> >> - I am not sure I understand trusted-host-keys. On systems
that have
> > >> >> >>   multiple user accounts, you usually have a per account
list of
> > >> >> >>   trusted host keys in addition to a global system wide
list. Perhaps
> > >> >> >>   make it clear that this models the global known hosts
list only?
> > >> >> >>
> > >> >> >> <KENT> it's a list of lists, so there can be many different
> > >> >> >> sets a host-keys defined, with each application/use
pointing
> > >> >> >> to its own entry.  The ietf-ssh-client module's grouping
has
> > >> >> >> a leafref to a specific entry.  FWIW, this grouping is
> > >> >> >> used by ietf-netconf-client module.  At the moment, there
> > >> >> >> no other uses of this grouping.  I think that you may be
> > >> >> >> getting confused between the key the server presents (the
> > >> >> >> host-key) versus the key user presents.
> > >> >> >> .
> > >> >> >
> > >> >> > I though these are the authorized host keys? Yes, I am
confused. If
> > >> >> > these are user public keys, they should not be called host
keys. But
> > >> >> > yes, I am confused (but I started to read the other
documents).
> > >> >>
> > >> >> This leaf encodes an SSH public key (RFC4253, 6.6), same as
used in
> > >> >> /ietf-system/system/user/authorized-key/key-data (and I have
changed
> > >> >> this leaf's type to match it in my local copy already), but
the uses
> > >> >> are different.  In ietf-system, the authorized-key is
configured on
> > >> >> a server in order to authenticate subsequent SSH-client
connections.
> > >> >> Here, we're taking about the key that that SSH-server presents
to
> > >> >> the client.  These are the host keys that OpenSSL often puts
into the
> > >> >> ~/.ssh/known-hosts file.
> > >> >
> > >> > I understand what you are modeling is
/etc/ssh/ssh_host_rsa_key.pub
> > >> > and friends. Make sure it is described clearly. Or do you
actually
> > >> > mean the clients cache of authenticated keys that goes into an
> > >> > account's known-hosts file? In this case, the keystore may be
the
> > >> > wrong place.
> > >>
> > >> /keystore/trusted-host-keys/trusted-host-key is in fact like the
> > >> known-hosts file.  That is, these are the host-keys that a client
has
> > >> "pinned" or "trusted".  The ietf-ssh-client has a leafref to one
of
> > >> these entries.  We could rename "trusted-host-key[s]" to
> > >> "pinned-host-key[s]" if that helps. Ditto for
trusted-certificate[s])
> > >>
> > >> By contrast, /keystore/keys/key/name is referenced by
ietf-ssh-server
> > >> to identify the host-key(s) the SSH server presents to SSH
clients.
> > >> This is analogous to /etc/ssh/ssh_host_rsa_key.pub and friends.
This
> > >> node isn't called e.g. /keystore/keys/key/ssh-host-key because,
AFAICT,
> > >> the system should be able to generate its host-key from the
private-key
> > >> itself.  Thus, referencing the name is equivalent.  If there were
a
> > >> /keystore/keys/key/ssh-host-key node, it would be a gratuitous
config
> > >> false value that somehow encoded the host-key in a more SSH
friendly
> > >> format.  But, it may have a subtler value in that, I think that
your
> > >> confusion may be because it was NOT there and so, in its absence,
> > >> you may have thought that the "trusted-host-keys" must serve that
> > >> function.  Thoughts?
> > >>
> > >> BTW, "host key" has a specific meaning, defined in RFC4251#4.1,
not to
> > >> be confused with authorized keys.
> > >
> > > I do not really follow you. I think I do understand what a host
key
> > > (pair) is and that it is different from a users key (pair).
> >
> > Fine, but this is SSH architecture thing, not something specific to
> > the draft - right?
>
> ???
>
> > > Yes, I did
> > > not understand from reading the ID that the private SSH host key
is to
> > > be found in /keystore/keys/key/name (likely because of all the
> > > certificate stuff around it that I have never seen used with SSH
host
> > > keys).
> >
> > Okay, then do you like having a /keystore/keys/key/ssh-host-key
node?
>
> I guess what I am looking for is a more radical split between X.509
> stuff and SSH key stuff, the most radical split would be a module for
> X.509 keys and certs and another module for SSH host keys. Or
> alternatively, if there is really a strong reason to have all these
> different keys in one list, then define the list such that
> augmentations add X.509 stuff and SSH key stuff. I am not a fan of
> lists where the usage of leafs for different purposes is not clear.
>
> > > I guess I am not a big fan of bundling the way X.509 keys and
certs
> > > work together with how SSH keys work (because I am not used to
this
> > > and the systems I tend to use do not do this either). Anyway, if
this
> > > is the direction to go, I think this needs explanatory text
somewhere.
> >
> > So then perhaps factoring out the x.509 and ssh stuff out into
augmenting
> > modules?
>
> I am not sure how much is left, other than a list with a key name leaf
> and whether it is worth to have this common structure (and whether any
> uniqueness constraints resulting from that are a benefit or not).
>
> >
> > >> >> >> - Should the document title be aligned with other YANG
module
> > >> >> >>   definitions, so it is easier to spot it?
> > >> >> >>
> > >> >> >> <KENT> I don't understand, what do you mean?
> > >> >> >
> > >> >> > We often use "[A] YANG Data Model for ....".
> > >> >> >
> > >> >> > https://en.wikipedia.org/wiki/YANG#Usage_in_Standards
> > >> >> >
> > >> >> > The current name does not say YANG (sometimes I search for
YANG
> > >> >> > in the RFC index) and Keystore is also pretty broad given
the
> > >> >> > related work we have.
> > >> >>
> > >> >> Gotcha, how about "YANG Data Model for Keystores"?
> > >> >
> > >> > Yes, except that 'keystores' leaves readers unclear about the
scope. I
> > >> > commented several times that the names of this module and the
other
> > >> > module for symmetric keys are unfortunate. Concerning the SSH
keys, I
> > >> > am still concerned that we would be better off to have a
separate SSH
> > >> > module that takes care about managing an SSH server's host keys
and
> > >> > then this module would be X509 certificate specific, i.e., a
'YANG
> > >> > Data Model for Managing X.509 Keys and Certificates' would be a
clear
> > >> > and well defined scope.
> > >>
> > >> From a refactoring perspective, we could have a base module and
then
> > >> two augmenting modules, one for SSH and the other for X.509.  I
would
> > >> think to define all three modules in the same draft, but that
wouldn't
> > >> help your draft-name issue.  We could put each module into own
draft
> > >> (e.g. +2 drafts), but is it worth it for renaming sake?  Maybe an
even
> > >> longer title?  "YANG Data Model for Managing Asymmetric Private
Keys,
> > >> X.509 Certificates, and SSH Host Keys'?  Naming aside, what do
you
> > >> think about the module-factoring idea?
> > >
> > > Perhaps it is simpler to have one data model to manage X.509 keys
and
> > > certs and another data model to manage SSH keys. I do not know how
> > > much commonality there is. At the end, I also do not mind if
> > > everything is lumped together as long as it is clear how to
implement
> > > things and key formats etc match with what implementations
typically
> > > do.
> >
> > Two modules, something like ietf-ssh-keystore and
ietf-x509-keystore?
> > Of course, there would overlap between them (e.g., both modules
would
> > have the /keys/key hierarchy, the ietf-ssh-client/server modules
might
> > need to import both keystores, since SSH can use X.509 certs too
(per
> > RFC6187).  I don't know, this doesn't seem right.  For instance,
what
> > is a server to do if it generates a private key that has not yet
been
> > associated with an X.509 cert or SSH host key, is the private key to
> > appear in both keystores?
>
> Is this how systems work? My command line tools either create X.509
> keys or SSH keys.
>
> > >> >> >> - Since the certs of a key do not contain a signature,
where are signed
> > >> >> >>   certificates stored or are they outside the scope of the
model?
> > >> >> >>
> > >> >> >> <KENT> I'm confused, certificates are signed structures
already...
> > >> >> >
> > >> >> > Well, the description of certificates/certificate/value
says:
> > >> >> >
> > >> >> >   An unsigned PKCS #7 SignedData structure, as specified
> > >> >> >   by Section 9.1 in RFC 2315, containing just certificates
> > >> >> >   (no content, signatures, or CRLs), encoded using ASN.1
> > >> >> >   distinguished encoding rules (DER), as specified in
> > >> >> >   ITU-T X.690.
> > >> >> >
> > >> >> > Yes, I am confused how this works.
> > >> >>
> > >> >> Okay, now I understand your confusion.  I believe the text is
> > >> >> accurate.  Think of the PKCS#7 structure being a little like a
> > >> >> TAR file that contains a directory structure like this:
> > >> >>
> > >> >>  pkcs7:
> > >> >>   /signed-info
> > >> >>   /signature   - this sig is only over 'signed-info' ...
> > >> >>   /extra-certificates
> > >> >>   /extra-revocation-objects
> > >> >>
> > >> >> So, in this case, we're using a degenerate form of the pkcs7
> > >> >> structure that has no content (signed-info), signature, or
CRLs
> > >> >> (revocation-objects), it only contains the certificates.
Perhaps
> > >> >> my use of the word "unsigned" isn't clear enough?
> > >> >
> > >> > So why pkcs7, is this what implementations use? The
certificates
> > >>
> > >> Why pkcs7 is because each certificate may have an associated
chain
> > >> of certificates leading to a trust-anchor CA certificate.  For
instance,
> > >> a vendor might have a CA called "foo-root" that signs an
intermediate
> > >> CA called "foo-intermediate" that signs the "foo-entity"
certificates.
> > >> So, a given foo-entity certificate (a single X.509 structure) is
> > >> commonly presented along with its chain of CA certs (more X.509
> > >> structures), in this case, the "foo-intermediate" and "foo-root"
CA
> > >> certs.  The pkcs7 structure is commonly used for this purpose in
the
> > >> PKI world.  Yes, it could be just a TAR file having a flat list
of
> > >> certs, but then we'd have to define that structure, whereas its
> > >> already defined in pkcs7.
> > >>
> > >> > I find in /etc/ssl/certs on my Debian system seem to be in PEM
format.
> > >>
> > >> PEM and DER are interchangeable formats.  PEM is essentially the
base64
> > >> encoding of the DER surrounded by the "===== BEGIN/END
CERTIFICATE
> > >> =====" header/footer.
> > >>
> > >
> > > DER encoded certificate or pkcs7? I thought PEM is just a base64
> > > encoded version of the DER encoded certificate, no pkcs7 involved.
> >
> > Both PKCS7 and X.509 or ASN.1-encoded structures, and all ASN.1
structures
> > can be encoded using PEM, DER, or even BER.   Your debian system's
"certs"
> > directory undoubtedly only contains root certs, hence there is no
cert-chain
> > to staple to them, and hence a single X.509 structure (either PEM or
a DER)
> > is perfect.  As soon as you step into needing more than one cert,
then
> > either PKCS7 or PKCS12 (both of which could be PEM or DER encoded),
or a
> > very special multi-part PEM (one that contains more than one of the
"====="
> > BEGIN/END blocks) could be used.  BTW, all this was discussed a
while back
> > related to https://github.com/netconf-wg/keystore/issues/1.  What's
written
> > in the GitHub issue tracker should be ignored, search instead the
list-archive
> > on issue #1...
> >
>
> What matters is that the I-D is clear and captures the important
> reasons etc. You can't expect implementors to read github issues
> or mailing list archives. Sorry for my ignorance.
>
> /js
>
> --
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>
>
> _______________________________________________
> Netconf mailing list
> Netconf@ietf.org
> https://www.ietf.org/mailman/listinfo/netconf


From nobody Tue Aug  1 05:58:09 2017
Return-Path: <acee@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7C69D131545; Tue,  1 Aug 2017 05:58:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.523
X-Spam-Level: 
X-Spam-Status: No, score=-14.523 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id BSRXKaX7YhI3; Tue,  1 Aug 2017 05:58:01 -0700 (PDT)
Received: from alln-iport-2.cisco.com (alln-iport-2.cisco.com [173.37.142.89]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E5B3512F280; Tue,  1 Aug 2017 05:58:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=8356; q=dns/txt; s=iport; t=1501592280; x=1502801880; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=YTM5uMcA96DcmD9iw08fPGziBRlPBB5FeAq7JH/ej28=; b=fi8w5WgYwInf7/ygYahDrlOZspy3z+oXfejxhss8tkb20AXrOsuI4Ocu u37OS+OSxzqwFIyMt8txs2W2Ele3H53VTRXI3N1kCGlXLtRzcIxAsDrnL Bn4+AXd3F8z419luiaB0tvld/f8XuyJr/ZkoigVxPr0BbuNK1LsP8DpaJ Q=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0AkAwCeeoBZ/4UNJK1cGQEBAQEBAQEBA?= =?us-ascii?q?QEBBwEBAQEBg1pkbScHngOBbJgfKIUfAhqEBUIVAQIBAQEBAQEBayiFGAEBAQE?= =?us-ascii?q?DIxFFDgICAQYCEQMBAgECAiMDAgICFBwUAQgIAgQBDQWKLxCRCJ1kgiaLTwEBA?= =?us-ascii?q?QEBAQEBAQEBAQEBAQEBAQEBAR0FgQaCHYIChlOCRYIuFyOCWYJhBZ93AodOjFm?= =?us-ascii?q?SQZEIhHABNSKBCncVhWAcgWd2h3ErgQWBDgEBAQ?=
X-IronPort-AV: E=Sophos;i="5.41,306,1498521600"; d="scan'208";a="459804673"
Received: from alln-core-11.cisco.com ([173.36.13.133]) by alln-iport-2.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 01 Aug 2017 12:57:56 +0000
Received: from XCH-RTP-012.cisco.com (xch-rtp-012.cisco.com [64.101.220.152]) by alln-core-11.cisco.com (8.14.5/8.14.5) with ESMTP id v71CvtvE017012 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Tue, 1 Aug 2017 12:57:56 GMT
Received: from xch-rtp-015.cisco.com (64.101.220.155) by XCH-RTP-012.cisco.com (64.101.220.152) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Tue, 1 Aug 2017 08:57:55 -0400
Received: from xch-rtp-015.cisco.com ([64.101.220.155]) by XCH-RTP-015.cisco.com ([64.101.220.155]) with mapi id 15.00.1210.000; Tue, 1 Aug 2017 08:57:55 -0400
From: "Acee Lindem (acee)" <acee@cisco.com>
To: =?utf-8?B?UmFkZWsgS3JlasSNw60=?= <rkrejci@cesnet.cz>, "Pieter Lewyllie (pilewyll)" <pilewyll@cisco.com>, "Joe Clarke (jclarke)" <jclarke@cisco.com>
CC: "Benoit Claise (bclaise)" <bclaise@cisco.com>, "Mahesh Jethanandani (mahesh)" <mahesh@cisco.com>, RTG YANG Design Team <rtg-dt-yang-arch@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "Carl Moberg (camoberg)" <camoberg@cisco.com>, YANG Doctors <yang-doctors@ietf.org>, Henrik Levkowetz <henrik@levkowetz.com>
Thread-Topic: YANG Tool Requests => regex validator
Thread-Index: AQHS/sQbX3YVGh7Gv0CrGwl3/lVlXaJoKFGAgAEhngCAACN7gIAAU8+A///Y4ICAAEWRAP//wCEAgAFKeQCABKz6gP//9sWA
Date: Tue, 1 Aug 2017 12:57:54 +0000
Message-ID: <D5A5F202.BBEED%acee@cisco.com>
References: <D58522E1.B74DB%acee@cisco.com> <4336925e-a64f-2d73-c67a-a5842de470b1@cisco.com> <a80a1c9b-1056-f6c1-0905-d2f22dab46c8@cisco.com> <D59FBE31.BA3D9%acee@cisco.com> <40AA2897-E297-4A10-AD1E-45EA8A078336@cisco.com> <D5A0CCBC.BA62F%acee@cisco.com> <BB27EB18-AFB5-4092-BB4D-374B620FE2CD@cisco.com> <D5A0F0D8.BA7A4%acee@cisco.com> <015C00CD-30AE-4ED4-AE2E-5188E79F1C25@cisco.com> <D5A0F8E3.BA824%acee@cisco.com> <70E356C5-E78B-4E0F-89A6-26E28E802137@cisco.com> <bb68f231-f7d9-c29d-be1a-bc478bb474c4@cesnet.cz>
In-Reply-To: <bb68f231-f7d9-c29d-be1a-bc478bb474c4@cesnet.cz>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.24.24.214]
Content-Type: text/plain; charset="utf-8"
Content-ID: <C3C0C1124F66B44C950B4DF0DA0EE6E0@emea.cisco.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/-aqiW7BQ8lQ7Zextyo5BXNjMYVM>
Subject: Re: [yang-doctors] YANG Tool Requests => regex validator
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 01 Aug 2017 12:58:03 -0000

SGkgUmFkZWssIA0KDQpTbyB0aGVuIGlmIG9uZSBpcyB0byBjdXQgYW5kIHBhc3RlIHRoYXQgcXVv
dGVkIHBhdHRlcm4gZnJvbSB0aGUgSUVURiB5YW5nDQptb2RlbCBpbnRvIGh0dHBzOi8veWFuZ2Nh
dGFsb2cub3JnL3lhbmdyZSwgaXQgc2hvdWxkIHdvcms/IE1vc3QgY29tcGxleA0KcGF0dGVybnMg
YXJlIG11bHRpLWxpbmUgcXVvdGVkIHN0cmluZ3MgZm9yIHJlYWRhYmlsaXR5IGluIEludGVybmV0
IGRyYWZ0cy4NCldpbGwgdGhlc2UgbXVsdGktbGluZSBwYXR0ZXJucyBiZSBoYW5kbGVkIGNvcnJl
Y3RseSBvciBzaG91bGQgb24gZG8gdGhlDQpjb25jYXRlbmF0aW9uIG1hbnVhbGx5IGFmdGVyIGN1
dCBhbmQgcGFzdD8NCg0KVGhhbmtzLA0KQWNlZSANCg0KT24gOC8xLzE3LCA1OjMwIEFNLCAiUmFk
ZWsgS3JlasSNw60iIDxya3JlamNpQGNlc25ldC5jej4gd3JvdGU6DQoNCj5IaSwNCj55YW5ncmUg
cmVxdWlyZXMgcGF0dGVybnMgYXMgeW91IHdvdWxkIHdyaXRlIHRoZW0gaW4gYSBZQU5HIHNjaGVt
YS4gVXNpbmcNCj57IGluIHBhdHRlcm4gd2l0aG91dCBxdW90aW5nIGlzIGlsbGVnYWwgLSBzZWUg
UkZDIDc5NTAsIHNlYyA2LjEuMy4gSXQgaXMNCj50aGUgc2FtZSBpc3N1ZSBhcyBoYXZlIHNlbWlj
b2xvbiB0aGVyZS4gU28sIHlhbmdyZSBhY3R1YWxseSBkb2VzIG5vdCBmYWlsDQo+d2l0aCBxdWFu
dGlmaWVyLCBidXQgc2luY2UgaXQgZm9sbG93cyB7LCBhIHZhbGlkIFlBTkcgc3RhdGVtZW50IGlz
DQo+ZXhwZWN0ZWQsIGJ1dCAzIGlzIGFuIGludmFsaWQgc3RhdGVtZW50L2tleXdvcmQuDQo+DQo+
eWFuZ3JlIGFjdHVhbGx5IHRha2VzIHRoZSBwYXR0ZXJuLCBjcmVhdGVzIHZlcnkgc21hbGwgWUFO
RyBzY2hlbWEgYW5kDQo+dGhlbiAxKSB2YWxpZGF0ZXMgdGhlIHNjaGVtYSAod2hpY2ggZG9lcyBu
b3QgcGFzcyBpbiB0aGlzIGNhc2UpIGFuZCB0aGVuDQo+MikgY2hlY2tzIGlmIHRoZSBsZWFmIG9m
IHN0cmluZyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBwYXR0ZXJuKHMpIGNhbg0KPmhhdmUgdGhl
IHByb3ZpZGVkIHZhbHVlIChpZiBpdCBtYXRjaGVzIHRoZSBwYXR0ZXJucykuIFNvIGl0IGFjdHVh
bGx5DQo+Y2hlY2tzIHdoYXQgeWFuZ2xpbnQgZG9lcyBpbiBjYXNlIHRoZSBzdHJpbmcgaXMgc3Bl
Y2lmaWVkIGFzIGxlYWYncw0KPmRlZmF1bHQgdmFsdWUuDQo+DQo+UmVnYXJkaW5nIHRoZSBxdW90
ZXMgaW4gQ0xJIC0gaXQgaXMgcXVpdGUgY2hhbGxlbmdpbmcgdG8gbWFrZSBxdW90YXRpb24NCj5j
b3JyZWN0IGJlY2F1c2Ugb2YgaW50ZXJwcmV0aW5nIHF1b3RhdGlvbiBieSBzaGVsbC4gU2VlIGhl
bHAsIHRoZXJlIGFyZQ0KPnNvbWUgZXhhbXBsZXMgYnV0IHRoZXJlIGNhbiBiZSBzb21lIHNwZWNp
YWwgY2FzZXMgb3IgZGlmZmVyZW50IGJlaGF2aW9yDQo+d2l0aCBkaWZmZXJlbnQgc2hlbGwuIFRo
ZSBjdXJyZW50IHlhbmdyZSBhY2NlcHRzIGFsdGVybmF0aXZlIGlucHV0IHZpYSBhDQo+ZmlsZSAo
cGF0dGVybnMgb24gc2VwYXJhdGUgbGluZXMsIGxlYWRpbmcgc3BhY2UgZm9yIGludmVydCBtYXRj
aCwgYXQgdGhlDQo+bGFzdCBsaW5lIGFmdGVyIGEgc2luZ2xlIGJsYW5rIGxpbmUgdGhlIHN0cmlu
ZyBmb3IgbWF0Y2hpbmcpIHdoaWNoIHdvdWxkDQo+YXZvaWQgaXNzdWVzIHdpdGggcXVvdGluZy4g
QW55d2F5LCBhcyB3ZSB3ZXJlIGRpc2N1c3Npbmcgd2l0aCBQaWV0ZXIgLQ0KPlB5dGhvbiBzZWVt
cyB0byBkbyB0aGUgcXVvdGF0aW9uIGNvcnJlY3QgKG9yIHByb2JhYmx5IGp1c3QgYnlwYXNzIHRo
ZQ0KPnNoZWxsKSwgYnV0IHlhbmdyZSBleHBlY3QgdGhlIHBhdHRlcm5zIF9pbmNsdWRpbmdfIHRo
ZSBxdW90YXRpb24gYXMgeW91DQo+d291bGQgd3JpdGUgaXQgaW4gWUFORyBzY2hlbWEuIE9ubHkg
dGhpcyB3YXkgYWxsIHRoZSBZQU5HIHJ1bGVzIGNhbiBiZQ0KPmNoZWNrZWQuDQo+DQo+UmVnYXJk
cywNCj5SYWRlaw0KPg0KPkRuZSAyOS43LjIwMTcgdiAxMjowNiBQaWV0ZXIgTGV3eWxsaWUgKHBp
bGV3eWxsKSBuYXBzYWwoYSk6DQo+PiBJIGdldCB0aGUgc2FtZSByZXN1bHRzIGFzIEpvZSBzdGF0
ZWQgYmVmb3JlLg0KPj4NCj4+IEnigJltIHdvbmRlcmluZyB3aHkgWUFOR1JFIHJlcXVpcmVzIGV4
dHJhIHF1b3RlcyB0byBtYXRjaCB3aXRoIHRoZSB7M30NCj4+cXVhbnRpZmllci4NCj4+DQo+PiBV
c2luZyB0aGUgR1VJOg0KPj4NCj4+ICgoWzAtOV18WzEtOV1bMC05XXwxWzAtOV1bMC05XXwyWzAt
NF1bMC05XXwyNVswLTVdKS4pezN9IG1hdGNoZXMNCj4+MTkyLjEuMS4gb24gVzNDR1JFUCwgYnV0
IG5vdCBvbiBZQU5HUkUgKCB5YW5ncmUgZXJyb3I6IEludmFsaWQga2V5d29yZA0KPj4iM+KAnS4g
KQ0KPj4NCj4+ICcoKFswLTldfFsxLTldWzAtOV18MVswLTldWzAtOV18MlswLTRdWzAtOV18MjVb
MC01XSkuKXszfeKAmSBtYXRjaGVzDQo+PjE5Mi4xLjEuIG9uIFlBTkdSRSwgYnV0IG5vdCBvbiBX
M0NHUkVQICh3aGljaCBpcyBleHBlY3RpbmcgdGhlIOKAmCBpbiB0aGUNCj4+dGVzdCBzdHJpbmcp
DQo+Pg0KPj4gVGhlIHNhbWUgYmVoYXZpb3VyIGNhbiBiZSBvYnNlcnZlZCBpbiB0aGUgQ0xJLCB5
b3UganVzdCBoYXZlIHRvIGFkZA0KPj53cmFwIHRoZSBleHByZXNzaW9ucyB3aXRoIGFwcHJvcHJp
YXRlIHF1b3Rlcy4NCj4+DQo+PiAqUmFkZWssKiBkbyB5b3UgaGF2ZSBhbiBpZGVhIHdoeSB0aGUg
WUFOR1JFIGZhaWxzIHdpdGggdGhlIHF1YW50aWZpZXI/DQo+PkhlcmUgYXJlIGEgY291cGxlIG9m
IENMSSBleGFtcGxlcyB0aGF0IEkgb2JzZXJ2ZWQ6DQo+PiB5YW5ncmUgLXAgDQo+PiIoKFswLTld
fFsxLTldWzAtOV18MVswLTldWzAtOV18MlswLTRdWzAtOV18MjVbMC01XSkuKXszfShbMC05XXxb
MS05XVswLTkNCj4+XXwxWzAtOV1bMC05XXwyWzAtNF1bMC05XXwyNVswLTVdKSglW1xwe059XHB7
TH1dKyk/IiAiMTkyLjE2OC4wLjEiDQo+PiB5YW5ncmUgZXJyb3I6IEludmFsaWQga2V5d29yZCAi
M+KAnS4NCj4+DQo+PiAveWFuZ3JlIC1wIA0KPj4iJygoWzAtOV18WzEtOV1bMC05XXwxWzAtOV1b
MC05XXwyWzAtNF1bMC05XXwyNVswLTVdKS4pezN9KFswLTldfFsxLTldWzAtDQo+PjldfDFbMC05
XVswLTldfDJbMC00XVswLTldfDI1WzAtNV0pKCVbXHB7Tn1ccHtMfV0rKT8nIiDigJwxOTIuMTY4
LjAuMeKAnQ0KPj4gbWF0Y2hlcyAobm8gb3V0cHV0KQ0KPj4NCj4+IFdoZW4gaW52ZXJ0aW5nIHRo
ZSBxdW90ZXM6IChzaW5nbGUgcXVvdGVzIG9uIHRoZSBvdXRzaWRlKQ0KPj4geWFuZ3JlIC1wIA0K
Pj4nIigoWzAtOV18WzEtOV1bMC05XXwxWzAtOV1bMC05XXwyWzAtNF1bMC05XXwyNVswLTVdKS4p
ezN9KFswLTldfFsxLTldWzAtDQo+PjldfDFbMC05XVswLTldfDJbMC00XVswLTldfDI1WzAtNV0p
KCVbXHB7Tn1ccHtMfV0rKT8iJyAiMTkyLjE2OC4wLjEiDQo+PiB5YW5ncmUgZXJyb3I6IEludmFs
aWQga2V5d29yZA0KPj4iKChbMC05XXxbMS05XVswLTldfDFbMC05XVswLTldfDJbMC00XVswLTld
fDI1WzAtNV0pLil7M30oWzAtOV18WzEtOV1bMC05DQo+Pl18MVswLTldWzAtOV18MlswLTRdWzAt
OV18MjVbMC01XSkoJVtccHtOfVxwe0x9XSspP+KAnSIuDQo+Pg0KPj4geWFuZ3JlIC1wIA0KPj4n
KChbMC05XXxbMS05XVswLTldfDFbMC05XVswLTldfDJbMC00XVswLTldfDI1WzAtNV0pLil7M30o
WzAtOV18WzEtOV1bMC05DQo+Pl18MVswLTldWzAtOV18MlswLTRdWzAtOV18MjVbMC01XSkoJVtc
cHtOfVxwe0x9XSspPycgIjE5Mi4xNjguMC4xIg0KPj4geWFuZ3JlIGVycm9yOiBJbnZhbGlkIGtl
eXdvcmQgIjMiLg0KPj4NCj4+IENoZWVycywNCj4+IFBpZXRlcg0KPj4NCj4+DQo+Pj4gT24gMjgg
SnVsIDIwMTcsIGF0IDIwOjIzLCBBY2VlIExpbmRlbSAoYWNlZSkgPGFjZWVAY2lzY28uY29tDQo+
Pj48bWFpbHRvOmFjZWVAY2lzY28uY29tPj4gd3JvdGU6DQo+Pj4NCj4+Pg0KPj4+DQo+Pj4gRnJv
bTogIkpvZSBDbGFya2UgKGpjbGFya2UpIiA8amNsYXJrZUBjaXNjby5jb20NCj4+PjxtYWlsdG86
amNsYXJrZUBjaXNjby5jb20+Pg0KPj4+IERhdGU6IEZyaWRheSwgSnVseSAyOCwgMjAxNyBhdCAy
OjEyIFBNDQo+Pj4gVG86IEFjZWUgTGluZGVtIDxhY2VlQGNpc2NvLmNvbSA8bWFpbHRvOmFjZWVA
Y2lzY28uY29tPj4NCj4+PiBDYzogIlBpZXRlciBMZXd5bGxpZSAocGlsZXd5bGwpIiA8cGlsZXd5
bGxAY2lzY28uY29tDQo+Pj48bWFpbHRvOnBpbGV3eWxsQGNpc2NvLmNvbT4+LCAiQmVub2l0IENs
YWlzZSAoYmNsYWlzZSkiDQo+Pj48YmNsYWlzZUBjaXNjby5jb20gPG1haWx0bzpiY2xhaXNlQGNp
c2NvLmNvbT4+LCAiTWFoZXNoIEpldGhhbmFuZGFuaQ0KPj4+KG1haGVzaCkiIDxtYWhlc2hAY2lz
Y28uY29tIDxtYWlsdG86bWFoZXNoQGNpc2NvLmNvbT4+LCBSVEcgWUFORyBEZXNpZ24NCj4+PlRl
YW0gPHJ0Zy1kdC15YW5nLWFyY2hAaWV0Zi5vcmcgPG1haWx0bzpydGctZHQteWFuZy1hcmNoQGll
dGYub3JnPj4sDQo+Pj5JbmctV2hlciBDaGVuIDxJbmctV2hlcl9DaGVuQGphYmlsLmNvbQ0KPj4+
PG1haWx0bzpJbmctV2hlcl9DaGVuQGphYmlsLmNvbT4+LCAiQ2FybCBNb2JlcmcgKGNhbW9iZXJn
KSINCj4+PjxjYW1vYmVyZ0BjaXNjby5jb20gPG1haWx0bzpjYW1vYmVyZ0BjaXNjby5jb20+Piwg
WUFORyBEb2N0b3JzDQo+Pj48eWFuZy1kb2N0b3JzQGlldGYub3JnIDxtYWlsdG86eWFuZy1kb2N0
b3JzQGlldGYub3JnPj4sIEhlbnJpaw0KPj4+TGV2a293ZXR6IDxoZW5yaWtAbGV2a293ZXR6LmNv
bSA8bWFpbHRvOmhlbnJpa0BsZXZrb3dldHouY29tPj4sIFJhZGVrDQo+Pj5LcmVqxI3DrSA8cmty
ZWpjaUBjZXNuZXQuY3ogPG1haWx0bzpya3JlamNpQGNlc25ldC5jej4+DQo+Pj4gU3ViamVjdDog
UmU6IFlBTkcgVG9vbCBSZXF1ZXN0cyA9PiByZWdleCB2YWxpZGF0b3INCj4+Pg0KPj4+DQo+Pj4g
ICAgICAgICBodHRwczovL3lhbmdjYXRhbG9nLm9yZy95YW5ncmUgZG9lc27igJl0IHdvcmsgZm9y
IG1lLCBubyBtYXR0ZXINCj4+PmhvdyBJIHF1b3RlDQo+Pj4gICAgICAgICBpdC4NCj4+Pg0KPj4+
ICAgICAgICAgSSB0cmllZCB3aXRoIHRoZSBpbmV0OmlwdjQtYWRkcmVzcyBwYXR0ZXJuIGFuZCBJ
IGRpZCBnZXQgdGhpcw0KPj4+dG8gd29yayB3aXRoDQo+Pj4gICAgICAgICBXM0NHUkVQIGJ1dCBu
b3QgeWFuZ3JlIG5vIG1hdHRlciBob3cgSSBxdW90ZWQgaXQuIEZvciBXM0NHUkVQLA0KPj4+SSBo
YWQgdG8NCj4+PiAgICAgICAgIHJlbW92ZSBhbGwgdGhlIHF1b3RpbmcgYW5kIGNvbmNhdGVuYXRp
b24uIFRoaXMgY291bGQgYmUgZXJyb3INCj4+PnByb25lIGZvciBhDQo+Pj4gICAgICAgICB2ZXJ5
IGNvbXBsZXggcGF0dGVybi4NCj4+Pg0KPj4+ICAgICBIbW1tLiBUaGlzIHBhdHRlcm4gZnJvbSBp
ZXRmLWluZXQtdHlwZXMgKG5vdGU6IEkgaGFkIHRoZSBzaW5nbGUNCj4+PnF1b3RlcyBpbiB0aGUg
VUkpOg0KPj4+DQo+Pj4gICAgIA0KPj4+JygoWzAtOV18WzEtOV1bMC05XXwxWzAtOV1bMC05XXwy
WzAtNF1bMC05XXwyNVswLTVdKS4pezN9KFswLTldfFsxLTldWzAtDQo+Pj45XXwxWzAtOV1bMC05
XXwyWzAtNF1bMC05XXwyNVswLTVdKSglW1xwe059XHB7TH1dKyk/Jw0KPj4+DQo+Pj4gICAgIFdv
cmtzIGZvciBtZSB3aXRoIHRoaXMgc3RyaW5nIChvbmx5IHdpdGggWUFOR1JFKToNCj4+Pg0KPj4+
ICAgICAxOTIuMTY4LjEuMQ0KPj4+DQo+Pj4gTm9wZSDigJMgZXhhY3Qgc2FtZSBwYXR0ZXJuIGFu
ZCB0ZXN0IHN0cmluZyBmYWlscyBmb3IgbWUuIElmIEkgdW5xdW90ZQ0KPj4+aXQsIGl0IHdvcmtz
IHdpdGggVzNDR1JFUC4NCj4+Pg0KPj4+DQo+Pj4gVGhhbmtzLA0KPj4+IEFjZWUgDQo+Pj4NCj4+
Pg0KPj4+DQo+Pj4gICAgIEpvZQ0KPj4+DQo+Pg0KPg0KPi0tIA0KPlJhZGVrIEtyZWpjaQ0KPm1v
YmlsZSAgOiArNDIwIDczMiAyMTIgNzE0DQo+b2ZmaWNlICA6ICs0MjAgMjM0IDY4MCAyNTYNCj5l
LW1haWwgIDogcmtyZWpjaUBjZXNuZXQuY3oNCj5MaW5rZWRJbjogaHR0cDovL3d3dy5saW5rZWRp
bi5jb20vaW4vcmFkZWtrcmVqY2kNCj4NCj5DRVNORVQsIEFzc29jaWF0aW9uIG9mIExlZ2FsIEVu
dGl0aWVzDQo+Wmlrb3ZhIDQNCj4xNjAgMDAgUHJhaGEgNg0KPkN6ZWNoIFJlcHVibGljDQo+DQo+
DQoNCg==


From nobody Tue Aug  1 06:21:40 2017
Return-Path: <rkrejci@cesnet.cz>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 67BF6132132; Tue,  1 Aug 2017 06:21:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.301
X-Spam-Level: 
X-Spam-Status: No, score=-4.301 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cesnet.cz
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mFwCAUoRaNpz; Tue,  1 Aug 2017 06:21:31 -0700 (PDT)
Received: from office2.cesnet.cz (office2.cesnet.cz [195.113.144.244]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B8ED5132162; Tue,  1 Aug 2017 06:21:25 -0700 (PDT)
Received: from [IPv6:2001:67c:1220:80c:95:e09a:96fc:f080] (unknown [IPv6:2001:67c:1220:80c:95:e09a:96fc:f080]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by office2.cesnet.cz (Postfix) with ESMTPSA id 0025440005D; Tue,  1 Aug 2017 15:21:21 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cesnet.cz; s=office2; t=1501593683; bh=74L3/iWkOToVY7hka5IbVUYqoGpvG5sVGNse61Hfy2A=; h=Subject:To:Cc:References:From:Date:In-Reply-To; b=H+h7UTEs5mwcJDBX577km+kQC370BpqxIZA2R0VUrdcuF1xh416zFasd8LTQu/cmn UhxmE3qpAIF/64Bo/dhZgHo7W+sXI4a1fDrJjUgiHDOn9EqTzXpJUm1ze7QWd5vgDL crRwnvt+BjQrporEaKwU94t47QUnTtLuWBdKbzz0=
To: "Acee Lindem (acee)" <acee@cisco.com>, "Pieter Lewyllie (pilewyll)" <pilewyll@cisco.com>, "Joe Clarke (jclarke)" <jclarke@cisco.com>
Cc: "Benoit Claise (bclaise)" <bclaise@cisco.com>, "Mahesh Jethanandani (mahesh)" <mahesh@cisco.com>, RTG YANG Design Team <rtg-dt-yang-arch@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "Carl Moberg (camoberg)" <camoberg@cisco.com>, YANG Doctors <yang-doctors@ietf.org>, Henrik Levkowetz <henrik@levkowetz.com>
References: <D58522E1.B74DB%acee@cisco.com> <4336925e-a64f-2d73-c67a-a5842de470b1@cisco.com> <a80a1c9b-1056-f6c1-0905-d2f22dab46c8@cisco.com> <D59FBE31.BA3D9%acee@cisco.com> <40AA2897-E297-4A10-AD1E-45EA8A078336@cisco.com> <D5A0CCBC.BA62F%acee@cisco.com> <BB27EB18-AFB5-4092-BB4D-374B620FE2CD@cisco.com> <D5A0F0D8.BA7A4%acee@cisco.com> <015C00CD-30AE-4ED4-AE2E-5188E79F1C25@cisco.com> <D5A0F8E3.BA824%acee@cisco.com> <70E356C5-E78B-4E0F-89A6-26E28E802137@cisco.com> <bb68f231-f7d9-c29d-be1a-bc478bb474c4@cesnet.cz> <D5A5F202.BBEED%acee@cisco.com>
From: =?UTF-8?B?UmFkZWsgS3JlasSNw60=?= <rkrejci@cesnet.cz>
Message-ID: <7d09c750-9f25-0982-aa0f-d832a0136cb0@cesnet.cz>
Date: Tue, 1 Aug 2017 15:20:58 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1
MIME-Version: 1.0
In-Reply-To: <D5A5F202.BBEED%acee@cisco.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/tzaPO-BtI8MBwAsKcvSFEhB1G8k>
Subject: Re: [yang-doctors] YANG Tool Requests => regex validator
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 01 Aug 2017 13:21:34 -0000

Hi Acee,
if you just remove newlines (putting multiple lines on a single line) and=
 preserve +, it works just fine even in GUI.Just try "[0-9]*" + "[a-z]*" =
with e.g. 01ac test string. I've tried to copy multi-line pattern into GU=
I's pattern field and it seems to be removing newline characters automati=
cally, so you should be straightforward.

yangre on cli (with command line patterns, not when reading patterns from=
 file) accepts even multi-line patterns (when correctly provided to shell=
):

$ yangre -V -p '"[0-9]*" +
"[a-z]*"' 1342dsga
pattern  1: "[0-9]*" +
"[a-z]*"
matching 1: regular
string    : 1342dsga
result    : matching


Regards,
Radek


Dne 1.8.2017 v 14:57 Acee Lindem (acee) napsal(a):
> Hi Radek,=20
>
> So then if one is to cut and paste that quoted pattern from the IETF ya=
ng
> model into https://yangcatalog.org/yangre, it should work? Most complex=

> patterns are multi-line quoted strings for readability in Internet draf=
ts.
> Will these multi-line patterns be handled correctly or should on do the=

> concatenation manually after cut and past?
>
> Thanks,
> Acee=20
>
> On 8/1/17, 5:30 AM, "Radek Krej=C4=8D=C3=AD" <rkrejci@cesnet.cz> wrote:=

>
>> Hi,
>> yangre requires patterns as you would write them in a YANG schema. Usi=
ng
>> { in pattern without quoting is illegal - see RFC 7950, sec 6.1.3. It =
is
>> the same issue as have semicolon there. So, yangre actually does not f=
ail
>> with quantifier, but since it follows {, a valid YANG statement is
>> expected, but 3 is an invalid statement/keyword.
>>
>> yangre actually takes the pattern, creates very small YANG schema and
>> then 1) validates the schema (which does not pass in this case) and th=
en
>> 2) checks if the leaf of string type with the specified pattern(s) can=

>> have the provided value (if it matches the patterns). So it actually
>> checks what yanglint does in case the string is specified as leaf's
>> default value.
>>
>> Regarding the quotes in CLI - it is quite challenging to make quotatio=
n
>> correct because of interpreting quotation by shell. See help, there ar=
e
>> some examples but there can be some special cases or different behavio=
r
>> with different shell. The current yangre accepts alternative input via=
 a
>> file (patterns on separate lines, leading space for invert match, at t=
he
>> last line after a single blank line the string for matching) which wou=
ld
>> avoid issues with quoting. Anyway, as we were discussing with Pieter -=

>> Python seems to do the quotation correct (or probably just bypass the
>> shell), but yangre expect the patterns _including_ the quotation as yo=
u
>> would write it in YANG schema. Only this way all the YANG rules can be=

>> checked.
>>
>> Regards,
>> Radek
>>
>> Dne 29.7.2017 v 12:06 Pieter Lewyllie (pilewyll) napsal(a):
>>> I get the same results as Joe stated before.
>>>
>>> I=E2=80=99m wondering why YANGRE requires extra quotes to match with =
the {3}
>>> quantifier.
>>>
>>> Using the GUI:
>>>
>>> (([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3} matches
>>> 192.1.1. on W3CGREP, but not on YANGRE ( yangre error: Invalid keywor=
d
>>> "3=E2=80=9D. )
>>>
>>> '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}=E2=80=99 ma=
tches
>>> 192.1.1. on YANGRE, but not on W3CGREP (which is expecting the =E2=80=
=98 in the
>>> test string)
>>>
>>> The same behaviour can be observed in the CLI, you just have to add
>>> wrap the expressions with appropriate quotes.
>>>
>>> *Radek,* do you have an idea why the YANGRE fails with the quantifier=
?
>>> Here are a couple of CLI examples that I observed:
>>> yangre -p=20
>>> "(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9]=
[0-9
>>> ]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N}\p{L}]+)?" "192.168.0.1"
>>> yangre error: Invalid keyword "3=E2=80=9D.
>>>
>>> /yangre -p=20
>>> "'(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9=
][0-
>>> 9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N}\p{L}]+)?'" =E2=80=9C192.1=
68.0.1=E2=80=9D
>>> matches (no output)
>>>
>>> When inverting the quotes: (single quotes on the outside)
>>> yangre -p=20
>>> '"(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9=
][0-
>>> 9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N}\p{L}]+)?"' "192.168.0.1"
>>> yangre error: Invalid keyword
>>> "(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9]=
[0-9
>>> ]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N}\p{L}]+)?=E2=80=9D".
>>>
>>> yangre -p=20
>>> '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9]=
[0-9
>>> ]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N}\p{L}]+)?' "192.168.0.1"
>>> yangre error: Invalid keyword "3".
>>>
>>> Cheers,
>>> Pieter
>>>
>>>
>>>> On 28 Jul 2017, at 20:23, Acee Lindem (acee) <acee@cisco.com
>>>> <mailto:acee@cisco.com>> wrote:
>>>>
>>>>
>>>>
>>>> From: "Joe Clarke (jclarke)" <jclarke@cisco.com
>>>> <mailto:jclarke@cisco.com>>
>>>> Date: Friday, July 28, 2017 at 2:12 PM
>>>> To: Acee Lindem <acee@cisco.com <mailto:acee@cisco.com>>
>>>> Cc: "Pieter Lewyllie (pilewyll)" <pilewyll@cisco.com
>>>> <mailto:pilewyll@cisco.com>>, "Benoit Claise (bclaise)"
>>>> <bclaise@cisco.com <mailto:bclaise@cisco.com>>, "Mahesh Jethanandani=

>>>> (mahesh)" <mahesh@cisco.com <mailto:mahesh@cisco.com>>, RTG YANG Des=
ign
>>>> Team <rtg-dt-yang-arch@ietf.org <mailto:rtg-dt-yang-arch@ietf.org>>,=

>>>> Ing-Wher Chen <Ing-Wher_Chen@jabil.com
>>>> <mailto:Ing-Wher_Chen@jabil.com>>, "Carl Moberg (camoberg)"
>>>> <camoberg@cisco.com <mailto:camoberg@cisco.com>>, YANG Doctors
>>>> <yang-doctors@ietf.org <mailto:yang-doctors@ietf.org>>, Henrik
>>>> Levkowetz <henrik@levkowetz.com <mailto:henrik@levkowetz.com>>, Rade=
k
>>>> Krej=C4=8D=C3=AD <rkrejci@cesnet.cz <mailto:rkrejci@cesnet.cz>>
>>>> Subject: Re: YANG Tool Requests =3D> regex validator
>>>>
>>>>
>>>>         https://yangcatalog.org/yangre doesn=E2=80=99t work for me, =
no matter
>>>> how I quote
>>>>         it.
>>>>
>>>>         I tried with the inet:ipv4-address pattern and I did get thi=
s
>>>> to work with
>>>>         W3CGREP but not yangre no matter how I quoted it. For W3CGRE=
P,
>>>> I had to
>>>>         remove all the quoting and concatenation. This could be erro=
r
>>>> prone for a
>>>>         very complex pattern.
>>>>
>>>>     Hmmm. This pattern from ietf-inet-types (note: I had the single
>>>> quotes in the UI):
>>>>
>>>>    =20
>>>> '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9=
][0-
>>>> 9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N}\p{L}]+)?'
>>>>
>>>>     Works for me with this string (only with YANGRE):
>>>>
>>>>     192.168.1.1
>>>>
>>>> Nope =E2=80=93 exact same pattern and test string fails for me. If I=
 unquote
>>>> it, it works with W3CGREP.
>>>>
>>>>
>>>> Thanks,
>>>> Acee=20
>>>>
>>>>
>>>>
>>>>     Joe
>>>>
>> --=20
>> Radek Krejci
>> mobile  : +420 732 212 714
>> office  : +420 234 680 256
>> e-mail  : rkrejci@cesnet.cz
>> LinkedIn: http://www.linkedin.com/in/radekkrejci
>>
>> CESNET, Association of Legal Entities
>> Zikova 4
>> 160 00 Praha 6
>> Czech Republic
>>
>>



From nobody Tue Aug  1 11:24:37 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B7C111321F1; Tue,  1 Aug 2017 11:24:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.802
X-Spam-Level: 
X-Spam-Status: No, score=-4.802 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-2.8, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id zBrRA4a2IH12; Tue,  1 Aug 2017 11:24:27 -0700 (PDT)
Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0136.outbound.protection.outlook.com [104.47.36.136]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A05B713221F; Tue,  1 Aug 2017 11:24:27 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=32IyEfdNar+JkB2SPpefJxeFkle/G42RMSVMz9a70jo=; b=BFlZrpfdKqtk45YZON19Mw2rxSFUWrtrOqfgFQL2tLHLZEQgMqEL7M/+p3XXokmft0MoB2opr3nwzDeRG2/bm+uiWeLOB20XciA+grIHbU9rhogUECtnqIAtz4NxwGblqQwWUmRaskdy0ZNADr2I8+isvL3ZswWfLRX1vO/ssAk=
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com (10.160.117.151) by BN3PR0501MB1476.namprd05.prod.outlook.com (10.160.117.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1320.10; Tue, 1 Aug 2017 18:24:26 +0000
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) by BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) with mapi id 15.01.1320.010; Tue, 1 Aug 2017 18:24:25 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: t.petch <ietfc@btconnect.com>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
CC: "draft-ietf-netconf-keystore.all@ietf.org" <draft-ietf-netconf-keystore.all@ietf.org>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: [Netconf] last call review of draft-ietf-netconf-keystore-02
Thread-Index: AQHTCq8XkNqYUxlm6UGsbvnPncWRP6JvjmEA
Date: Tue, 1 Aug 2017 18:24:25 +0000
Message-ID: <7C4C9B41-7343-4FCD-AB0F-0131F64B45BF@juniper.net>
References: <150028100874.32703.14161403810529927281@ietfa.amsl.com> <B1AC6895-5681-48F8-B7E7-418118120B4E@juniper.net> <20170720165942.GB21506@elstar.local> <F5E9973C-FCCD-4A96-B0D3-8C735CE911D3@juniper.net> <20170728073923.GA28870@elstar.local> <701F31A6-9941-4DE4-AE7E-00E859F103F8@juniper.net> <20170728154008.GA29865@elstar.local> <53886D3E-8A0C-4664-A7BD-1E708A80EE9D@juniper.net> <20170728170930.GA30054@elstar.local> <04f301d30aae$7482e900$4001a8c0@gateway.2wire.net>
In-Reply-To: <04f301d30aae$7482e900$4001a8c0@gateway.2wire.net>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/f.20.0.170309
authentication-results: spf=none (sender IP is ) smtp.mailfrom=kwatsen@juniper.net; 
x-originating-ip: [66.129.241.11]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BN3PR0501MB1476; 6:hgdpS16VXUu69ZssDT9ibdxhXFoKaVNFEFapz/g8Wmfz+AJHM3mWOHtshi3W2DGz0DgDasvn2qHUcwDp2BB+uGKuIqAv78ZfNt+GXh59nckvFms6tCS2zmXsyNKXHCv3DnbYHOKgRLjxZ9bo2uyo7uenHD1/bXG04OlorJMyvXOW4yMu+H9Z6lw3QNfs2xpisqz9b4ScJK61zRn5qIwcf7ytIyo7GkBiK7vGg3egvN6pXw/cqcQhL1TrmrTxdKlWft3vTJcvCyRbu2N++uWVOhGGp/FFILUuISKvdHDNbQSM8NDr97O5pDz46FBVN7sXhkHkrP3DPRV5+SIhuDmz3w==; 5:fplmsJ4vZ8BwP7eu72jO+3UMrdf1jxb1DmMi0dHV8nDqasayKy6b8YhTSPPtQkH91WLwBi1xAXuaGJgFr2JdfFIcwwvsDic2PnEWmKNpTTnuSfgwwSHYmKbJEa1+n5exfYdjBA0S1Gpyds2bzesKVA==; 24:gWioVHk/stUUO/X6x6DbKqIUj0jWq06BJgX/WGMPi9xowJ3lqaO2Tm+cbY/R2hEBtJzx1ygthlBiCheZKD8dyu5XXvwRy1dlgoiQ5qhGzEU=; 7:MlV4o0TPpwZG5WHqFg7cREJ0MFExPxwLl42s6OxDJ3DOAvcMNzTxeEI0kUQL1PYVK8vdPwNNbCwozfp/0YlaYbyKEgHv2mRMCSeigIx777Rzio4aYlvwockNb5bMUeG25tUj1Hzc4PhbUhkN6/Gr/O1ChCAnkAKC46kJnAP76d71P3GtjtQqmuj32069x8SWCMIoTcY1eGepMLlzpahtNyyTgSs0YJLBSv0z7iafLZU=
x-ms-office365-filtering-correlation-id: 76f0267c-156f-459b-26de-08d4d90a8a54
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(48565401081)(2017052603031)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BN3PR0501MB1476; 
x-ms-traffictypediagnostic: BN3PR0501MB1476:
x-exchange-antispam-report-test: UriScan:(158342451672863)(192374486261705);
x-microsoft-antispam-prvs: <BN3PR0501MB1476833CDCD23F0CB255B34DA5B30@BN3PR0501MB1476.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(100000703101)(100105400095)(10201501046)(93006095)(93001095)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123564025)(20161123555025)(20161123558100)(20161123562025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN3PR0501MB1476; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN3PR0501MB1476; 
x-forefront-prvs: 0386B406AA
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(39860400002)(39840400002)(39850400002)(39410400002)(39450400003)(39400400002)(199003)(189002)(81156014)(6512007)(101416001)(33656002)(82746002)(6436002)(50986999)(76176999)(54356999)(3846002)(102836003)(6116002)(5660300001)(86362001)(8666007)(105586002)(551544002)(3660700001)(54906002)(68736007)(106356001)(25786009)(77096006)(4001350100001)(7736002)(66066001)(305945005)(4326008)(229853002)(36756003)(8676002)(14454004)(99286003)(3280700002)(2906002)(6506006)(83716003)(38730400002)(81166006)(189998001)(8936002)(6246003)(97736004)(93886004)(230783001)(478600001)(6486002)(2900100001)(83506001)(53936002)(2950100002); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR0501MB1476; H:BN3PR0501MB1442.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; 
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <DEFF1CE309DD5549B4B36A3535DDB148@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Aug 2017 18:24:25.8972 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0501MB1476
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/gQ7yWZxeclygmJCk2CKApOT0Eao>
Subject: Re: [yang-doctors] [Netconf] last call review of draft-ietf-netconf-keystore-02
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 01 Aug 2017 18:24:31 -0000

SGkgVG9tLA0KDQoNCj4gQ2hhbmdpbmcgdGhlIHN1YmplY3QgYmVjYXVzZSBteSB0YWNrIGlzIHNs
aWdodGx5IGRpZmZlcmVudC4NCj4gDQo+IEkgY2Fubm90IHJlY29uY2lsZSB0aGlzIEktRCB3aXRo
IG15IChtaXM/KXVuZGVyc3RhbmRpbmcgb2YgY3J5cHRvZ3JhcGh5Lg0KPiANCj4gU3RlcHBpbmcg
YmFjaywgSSBzZWUgdHdvIHR5cGVzIG9mIGtleXMsIHN5bW1ldHJpYyB3aGVyZSBvbmUga2V5IGlz
IHVzZWQNCj4gZm9yIGVuY3J5cHRpb24gYW5kIGRlY3J5cHRpb24sIGFuZCBhc3ltbWV0cmljLCB3
aGVyZSB0aGVyZSBhcmUgdHdvIGtleXMsDQo+IHB1YmxpYyBhbmQgcHJpdmF0ZSwgbWF0aGVtYXRp
Y2FsbHkgcmVsYXRlZCBidXQgaW1wb3NzaWJsZSB0byBkZXJpdmUgb25lDQo+IGZyb20gdGhlIG90
aGVyLCBvbmUgdXNlZCB0byBlbmNyeXB0LCB0aGUgb3RoZXIgdG8gZGVjcnlwdC4NCj4NCj4gSSBz
ZWUgdGhpcyBJLUQgYXMgc29sZWx5IGNvbmNlcm5lZCB3aXRoIGFzeW1tZXRyaWMga2V5cy4NCg0K
Q29ycmVjdCwgdGhvdWdoIHRoZXJlIHdhcyBhIHRpbWUgd2hlbiB3ZSBjb25zaWRlcmVkIGhhdmlu
ZyBhICJwYXNzd29yZCINCmxlYWYsIHdoaWNoIHdvdWxkJ3ZlIGJlZW4gYSBmb3JtIG9mIGEgc3lt
bWV0cmljIGtleS4NCg0KDQo+IFB1YmxpYyBhbmQgcHJpdmF0ZSBrZXkgcGFpcnMgbXVzdCBiZSBn
ZW5lcmF0ZWQgdG9nZXRoZXIsIGFmdGVyIHdoaWNoIHRoZQ0KPiBwcml2YXRlIGtleSBtdXN0IHN0
YXkgc2VjcmV0IGVsc2UgeW91IGhhdmUgbm8gc2VjdXJpdHkuICBQdWJsaWMga2V5cyBieQ0KPiBj
b250cmFzdCBhcmUgcHVibGljIGZvciBhbGwgdG8ga25vdy4gIFRoZSBjaGFsbGVuZ2UgaXMgYXV0
aGVudGljYXRpbmcNCj4gdGhhdCB0aGUgcHVibGljIGtleSByZWFsbHkgaXMgdGhlIHB1YmxpYyBr
ZXkgb2Ygd2hvIHlvdSB0aGluayBpdCBpcy4NCj4gTW9zdCBwdWJsaWMga2V5cyBhcnJpdmUgYnkg
Y2VydGlmaWNhdGVzIHdoaWNoIHRoZW4gYWxsb3cgeW91IHRvIGZvbGxvdyBhDQo+IGNoYWluIHRo
ZXJlb2YgdG8gYSBob3BlZnVsbHkgdHJ1c3R3b3J0aHkgdHJ1c3QgYW5jaG9yLiAgU1NILCBhbmQg
c29tZQ0KPiBvdGhlciBwcm90b2NvbHMsIGFyZSBkaWZmZXJlbnQgaW4gZGlzdHJpYnV0aW5nIG5h
a2VkIHB1YmxpYyBrZXlzIGFuZA0KPiByZWx5aW5nIG9uIHNvbWUgb3RoZXIgbWVhbnMgb2YgYXV0
aGVudGljYXRpbmcgdGhlbSAoZS5nLiBUcnVzdCBvbiBGaXJzdA0KPiBVc2UpLg0KDQpDb3JyZWN0
LCB0aG91Z2ggaXQncyB3b3J0aCBub3RpbmcgdGhhdCBTU0ggY2FuIGFsc28gZGlzdHJpYnV0ZSBY
LjUwOSBjZXJ0cw0KcGVyIFJGQyA2MTg3Lg0KDQoNCj4gU28gd2hlbiB5b3Ugc2F5ICAiQUZBSUNU
LCB0aGUgc3lzdGVtIHNob3VsZCBiZSBhYmxlIHRvIGdlbmVyYXRlIGl0cw0KPiBob3N0LWtleSBm
cm9tIHRoZSBwcml2YXRlLWtleSBpdHNlbGYuIiB0aGF0IGlzIGF0IG9kZHMgd2l0aCBteSANCj4g
dW5kZXJzdGFuZGluZyBhbmQgd291bGQgbGVhZCB0byBhbiBhYnNlbmNlIG9mIHNlY3VyaXR5Lg0K
DQpNeSBtaXN0YWtlLCBJIHdhcyB1c2luZyB0aGUgb2xkIG5hbWUgInByaXZhdGUta2V5IiBiZWZv
cmUgd2UgY2hhbmdlZA0KaXQgdG8ganVzdCAia2V5IiwgYW5kIHdoYXQgSSByZWFsbHkgbWVhbnQg
dG8gc2F5IHdhcyB0aGF0IHRoZSBzeXN0ZW0NCnNob3VsZCBiZSBhYmxlIHRvIGNvbnZlcnQgL2tl
eXN0b3JlL2tleXMva2V5L3ByaXZhdGUta2V5IGludG8gYQ0KcmVwcmVzZW50YXRpb24gc3VpdGFi
bGUgZm9yIHNvZnR3YXJlIGNvbnN1bXB0aW9uIChlLmcuLCBhbiBvcGVuc3NoDQpob3N0LWtleSBm
aWxlKS4NCg0KDQo+IFdoZW4gdGhlIEktRCBzYXlzLCAidGhhdCBtaWdodCBiZSB1c2VkIHRvIGhv
bGQgb250byBwcml2YXRlIGtleXMNCj4gYW5kIGNlcnRpZmljYXRlcyAiSSBzdHJ1Z2dsZSB0byBz
ZWUgdGhlIHBvaW50LiAgSW5kZWVkLCB0aGUgDQo+IG1vZHVsZSBjb250YWlucyBwdWJsaWMga2V5
cyBhcyB3ZWxsIGFzDQo+ICJsZWFmIHB1YmxpYy1rZXkgew0KPiAgICAgICAgICBjb25maWcgZmFs
c2U7DQo+ICAgICAgICAgIG1hbmRhdG9yeSB0cnVlOyINCj4gc28geW91IGFyZSByZWFsbHkgc3Rv
cmluZyBwdWJsaWMvcHJpdmF0ZSBrZXkgcGFpcnMgKHdoaWNoIG1heSBiZQ0KPiBnZW5lcmF0ZWQg
b24gdGhlIGJveCkuDQoNClRoYXQgcGFydGljdWxhciBzZW50ZW5jZSwgaW4gdGhlIEFic3RyYWN0
IGFuZCBJbnRyb2R1Y3Rpb24sIGhhcyBiZWVuDQpyZXdyaXR0ZW4gYmFzZWQgb24gSnVlcmdlbidz
IGNvbW1lbnRzLiAgVGhlIGFic3RyYWN0IG5vdyBzYXlzOg0KDQogICBUaGlzIGRvY3VtZW50IGRl
ZmluZXMgYSBZQU5HIG1vZHVsZSBmb3IgYSBzeXN0ZW0tbGV2ZWwgbWVjaGFuaXNtLA0KICAgY2Fs
bGVkIGEgImtleXN0b3JlIiwgY29udGFpbmluZyBzZWN1cml0eS1zZW5zaXRpdmUgZGF0YSBpbmNs
dWRpbmcNCiAgIHByaXZhdGUga2V5cywgcGlubmVkIGNlcnRpZmljYXRlcywgYW5kIHBpbm5lZCBT
U0ggaG9zdC1rZXlzLg0KDQpUaGUgSW50cm9kdWN0aW9uIG5vdyBzYXlzOg0KDQogICBUaGlzIGRv
Y3VtZW50IGRlZmluZXMgYSBZQU5HIFtSRkM3OTUwXSBtb2R1bGUgZm9yIGEgc3lzdGVtLWxldmVs
DQogICBtZWNoYW5pc20sIGhlcmVpbiBjYWxsZWQgYSAia2V5c3RvcmUiLiAgVGhlIGtleXN0b3Jl
IHByb3ZpZGVzIGENCiAgIGNlbnRyYWxpemVkIGxvY2F0aW9uIGZvciBzZWN1cml0eSBzZW5zaXRp
dmUgZGF0YSwgYXMgZGVzY3JpYmVkIGJlbG93Lg0KDQogICBUaGlzIG1vZHVsZSBoYXMgdGhlIGZv
bGxvd2luZyBjaGFyYWN0ZXJpc3RpY3M6DQoNCiAgIG8gIEEgY29uZmlndXJhYmxlIGxpc3Qgb2Yg
a2V5cywgZWFjaCBhIHB1YmxpYy9wcml2YXRlIGtleSBwYWlyLiAgSWYgYQ0KICAgICAga2V5IGlz
IHVzZWQgdG8gc2lnbiBhIGNlcnRpZmljYXRlIHNpZ25pbmcgcmVxdWVzdCAoQ1NSKSwgd2hpY2gg
aXMNCiAgICAgIHRoZW4gc2lnbmVkIGJ5IGEgY2VydGlmaWNhdGUgYXV0aG9yaXR5IChDQSksIHRo
ZW4gdGhlIHJlc3VsdGluZw0KICAgICAgY2VydGlmaWNhdGUgbWF5IGJlIGNvbmZpZ3VyZWQgYXMg
YmVpbmcgYXNzb2NpYXRlZCB3aXRoIHRoZSBrZXkuDQogICAgICBLZXlzIGFyZSBleHBlY3RlZCB0
byBiZSBjb25maWd1cmVkIHVzaW5nIHN0YW5kYXJkIGNvbmZpZ3VyYXRpb24NCiAgICAgIG1lY2hh
bmlzbXMsIGhvd2V2ZXIsIHRvIHN1cHBvcnQgaGFyZHdhcmUgdGhhdCBnZW5lcmF0ZXMga2V5cywg
dGhlDQogICAgICBrZXkgbWF5IGFsc28gYmUgY3JlYXRlZCB2aWEgYW4gYWN0aW9uIGNhbGxlZCAn
Z2VuZXJhdGUtcHJpdmF0ZS0NCiAgICAgIGtleSIgYWN0aW9uLiAgS2V5cyBtYXkgYWxzbyBiZSBw
cmVpbnN0YWxsZWQgKGUuZy4sIGEga2V5DQogICAgICBhc3NvY2lhdGVkIHRvIGFuIElEZXZJRCBb
U3RkLTgwMi4xQVItMjAwOV0gY2VydGlmaWNhdGUpLg0KDQogICBvICBBbiB1bm9yZGVyZWQgbGlz
dCBvZiBwaW5uZWQgY2VydGlmaWNhdGUgc2V0cy4uLjxzbmlwLz4NCiAgIG8gIEFuIHVub3JkZXJl
ZCBsaXN0IG9mIHBpbm5lZCBTU0ggaG9zdCBrZXkgc2V0cy4uLjxzbmlwLz4NCiAgIG8gIEFuIGFj
dGlvbiB0byByZXF1ZXN0IHRoZSBzZXJ2ZXIgdG8gZ2VuZXJhdGUgYSBuZXcga2V5Li4uPHNuaXAv
Pg0KICAgbyAgQW4gYWN0aW9uIHRvIHJlcXVlc3QgdGhlIHNlcnZlciB0byBnZW5lcmF0ZSBhIENT
Ui4uLjxzbmlwLz4NCiAgIG8gIEEgbm90aWZpY2F0aW9uLi4uPHNuaXAvPg0KDQpEb2VzIHRoaXMg
aGVscD8gIFdoYXQgInBvaW50IiBhcmUgeW91IG5vdCBzZWVpbmc/DQoNCg0KPiBUaGUgSS1EIGFs
c28gc2F5cyAiQ2VydGlmaWNhdGVzIGFzc29jaWF0ZWQgd2l0aCB0aGlzIHByaXZhdGUga2V5LiIN
Cj4gd2hpY2ggZGVmZWF0cyBtZS4gIEEgY2VydGlmaWNhdGUgb3IgY2hhaW4gdGhlcmVvZiBnaXZl
cyBtZSBhIHB1YmxpYyBrZXksDQo+IG5ldmVyIGEgcHJpdmF0ZSBvbmUsIGFuZCB0aGUgbWVhbnMg
dG8gYXV0aGVudGljYXRlIHRoZSBwdWJsaWMga2V5Lg0KDQpBZ2FpbiwgdGhpcyBnb2VzIGJhY2sg
dGhlIG9sZCBuYW1lICJwcml2YXRlLWtleSIgYmVmb3JlIHdlIGNoYW5nZWQNCml0IHRvIGp1c3Qg
ImtleSIuICBJIGFncmVlIHRoYXQgaXQncyB3cm9uZyBhdCBmYWNlLXZhbHVlLiAgQWJvdmUgeW91
DQpjYW4gc2VlIGhvdyB0aGlzIHRleHQgd2FzIGNoYW5nZWQuICBOb3cgd2hhdCBpdCBzYXlzIG1h
a2VzIG1vcmUgc2Vuc2UuDQoNCg0KPiBBIHB1YmxpYyBrZXkgbWF5IG9yIG1heSBub3QgaGF2ZSBh
IGNlcnRpZmljYXRlIG9yIGNoYWluIHRoZXJlb2YuICANCg0KdHJ1ZS4NCg0KDQo+IEEgVExTIGNs
aWVudCB3b3VsZCBsaWtlbHkgaGF2ZSBib3RoIGJ1dCB3aWxsIHJhcmVseSBoYXZlIGEgcHJpdmF0
ZQ0KPiBrZXkuDQoNClRydWUsIGFzc3VtaW5nIGNsaWVudCBjZXJ0aWZpY2F0ZSBiYXNlZCBhdXRo
ZW50aWNhdGlvbiBpcyAicmFyZSIuDQoNCg0KPiBBIHNlcnZlciBvZiBhbnkgcHJvdG9jb2wgKGV4
Y2VwdCBTU0ggYW5kIHN1Y2ggbGlrZSkgd2lsbCBoYXZlIGENCj4gcHVibGljL3ByaXZhdGUga2V5
IHBhaXIgYW5kIGEgY2VydGlmaWNhdGUgKGFuZCBsaWtlbHkgYSBjaGFpbiB0aGVyZW9mKQ0KPiB0
byBzZW5kIHRvIGFueSBlbnF1aXJpbmcgY2xpZW50IGFsb25nIHdpdGggdGhlIHB1YmxpYyBrZXku
ICBBbiBTU0gNCj4gc2VydmVyIHdvdWxkIGhhdmUgYSBwdWJsaWMvcHJpdmF0ZSBrZXkgcGFpciBi
dXQgbGlrZWx5IG5vIGNlcnRpZmljYXRlcy4NCg0KQWxsIHRydWUNCg0KDQo+IFNvLCBJIGNhbm5v
dCByZWNvbmNpbGUgbXkgdW5kZXJzdGFuZGluZyB3aXRoIHRoZSBJLUQuDQoNCkkgdGhpbmsgaXQg
d2FzIG1vc3RseSBkdWUgdG8gdGhlIHdob2xlICJwcml2YXRlLWtleSIgdG8gImtleSIgcmVuYW1l
DQpub3QgaGF2aW5nIHBlcmNvbGF0ZWQgdGhyb3VnaCBhbGwgdGhlIHRleHQgeWV0LiAgWWVzPw0K
DQoNCj4gVG9tIFBldGNoDQoNCktlbnQNCg0KDQoNCg0K


From nobody Tue Aug  1 12:09:59 2017
Return-Path: <garywu@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EB79812EE45; Tue,  1 Aug 2017 12:09:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.523
X-Spam-Level: 
X-Spam-Status: No, score=-14.523 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5F6tk45AazgW; Tue,  1 Aug 2017 12:09:51 -0700 (PDT)
Received: from alln-iport-5.cisco.com (alln-iport-5.cisco.com [173.37.142.92]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DF55E1322EC; Tue,  1 Aug 2017 12:09:44 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=2144; q=dns/txt; s=iport; t=1501614584; x=1502824184; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=A3KrFMThYEjs5Yp+wfn1xJIyAet5B4KOYa8uVNhTiSU=; b=bfVnvZsS7Q0B6slqgWtqbKr6DgS2yt4rErBn3f/yTfvCRkMxOHkr32jN +iA6+a8/vxKQmXmCdk8sWIwfBekzBkI0JfutK7w9+Z7pC/AJGbWyTc1gK mUv4OcMg53jiBLuj68CjfjTKLSE0NW3wClWnXuAv419nww/1EEr+hYVKc E=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0AQAgAj0YBZ/4gNJK1VCRoBAQEBAgEBA?= =?us-ascii?q?QEIAQEBAYNagVEnB44Hj3+XeQ6CBIVHAhqECz8YAQIBAQEBAQEBayiFGQYjEUU?= =?us-ascii?q?QAgEIDgwCJgICAjAVEAIEAQ0Fii+vQYImi1IBAQEBAQEBAQEBAQEBAQEBAQEBA?= =?us-ascii?q?QEdgQuCHYICgUyCDIJ7hDoPFBY6glkwghIfBZ93ApQnkkGVeAEfOIEKdxVbAYU?= =?us-ascii?q?EHIFndokhgQ4BAQE?=
X-IronPort-AV: E=Sophos;i="5.41,306,1498521600"; d="scan'208";a="463205868"
Received: from alln-core-3.cisco.com ([173.36.13.136]) by alln-iport-5.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 01 Aug 2017 19:09:44 +0000
Received: from XCH-ALN-008.cisco.com (xch-aln-008.cisco.com [173.36.7.18]) by alln-core-3.cisco.com (8.14.5/8.14.5) with ESMTP id v71J9iLG007192 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Tue, 1 Aug 2017 19:09:44 GMT
Received: from xch-rcd-006.cisco.com (173.37.102.16) by XCH-ALN-008.cisco.com (173.36.7.18) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Tue, 1 Aug 2017 14:09:43 -0500
Received: from xch-rcd-006.cisco.com ([173.37.102.16]) by XCH-RCD-006.cisco.com ([173.37.102.16]) with mapi id 15.00.1210.000; Tue, 1 Aug 2017 14:09:43 -0500
From: "Gary Wu (garywu)" <garywu@cisco.com>
To: Kent Watsen <kwatsen@juniper.net>, Andy Bierman <andy@yumaworks.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>
CC: "draft-ietf-netconf-tls-client-server.all@ietf.org" <draft-ietf-netconf-tls-client-server.all@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: Yangdoctors last call review of draft-ietf-netconf-tls-client-server-03
Thread-Index: AQHTB+7zuFAY4qBtPEiFAM8Bielcg6Juu4KAgAEGkwA=
Date: Tue, 1 Aug 2017 19:09:43 +0000
Message-ID: <8A73EA6F-A375-42B8-BB2F-7EC43A662B0C@cisco.com>
References: <150128009697.20678.11905105517795192@ietfa.amsl.com> <DC601125-9319-4029-B463-999C28A887CF@juniper.net>
In-Reply-To: <DC601125-9319-4029-B463-999C28A887CF@juniper.net>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.32.199.45]
Content-Type: text/plain; charset="utf-8"
Content-ID: <EC065D354866774E8D5F85B55F0699D1@emea.cisco.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/Y1-SZtRasekQIBXu0dgZGTj7jF0>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-netconf-tls-client-server-03
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 01 Aug 2017 19:09:52 -0000

ICAgIEMxOg0KICAgIA0KICAgIChNMikgaWRlbnRpdHkgdGxzLTEuMg0KICAgIA0KICAgIFdoeSBh
cmUgdGhlcmUgbm8gaWRlbnRpdGllcyBkZWZpbmVkIGZvciB0bHMtMS4wIGFuZCB0bHMtMS4xPw0K
ICAgIA0KICAgIA0KICAgIDxLRU5UPiBJIGRvbid0IGtub3csIEdhcnkgZGVmaW5lZCB0aGlzLCBJ
J2xsIGxldCBoaW0gYW5zd2VyLg0KDQpJdCBtdXN0IGhhdmUgc2xpcHBlZCBteSBtaW5kLiAgSSds
bCBhZGQgdGhlbSBhbG9uZyB3aXRoIHRoZWlyIGlmLWZlYXR1cmUgY2FwYWJpbGl0aWVzLg0KDQpU
aGFua3MsDQpHYXJ5DQoNCk9uIDcvMzEvMTcsIDE6MjkgUE0sICJLZW50IFdhdHNlbiIgPGt3YXRz
ZW5AanVuaXBlci5uZXQ+IHdyb3RlOg0KDQogICAgSGkgQW5keSwNCiAgICANCiAgICBUaGFua3Mg
Zm9yIHlvdXIgcmV2aWV3LiAgQmVsb3cgYXJlIG15IHJlc3BvbnNlcyB0byB5b3VyIGNvbW1lbnRz
Lg0KICAgIA0KICAgIFRoYW5rcywNCiAgICBLZW50DQogICAgDQogICAgDQogICAgLS0NCiAgICAN
CiAgICBSZXZpZXdlcjogQW5keSBCaWVybWFuDQogICAgUmV2aWV3IHJlc3VsdDogUmVhZHkgd2l0
aCBOaXRzDQogICAgDQogICAgUmV2aWV3OiBkcmFmdC1pZXRmLW5ldGNvbmYtdGxzLWNsaWVudC1z
ZXJ2ZXItMDMNCiAgICANCiAgICBNb2R1bGVzOg0KICAgICAoTTEpIGlldGYtdGxzLWNsaWVudEAy
MDE3LTA2LTEzLnlhbmcNCiAgICAgKE0yKSBpZXRmLXRscy1jb21tb25AMjAxNy0wNi0xMy55YW5n
DQogICAgIChNMykgaWV0Zi10bHMtc2VydmVyQDIwMTctMDYtMTMueWFuZw0KICAgIA0KICAgIA0K
ICAgIFlBTkcgVXNhZ2U6DQogICAgDQogICAgIEkgZGlkIG5vdCBmaW5kIGFueXRoaW5nIHdyb25n
IGluIGVpdGhlciBtb2R1bGUuDQogICAgIHB5YW5nIGFuZCB5YW5nZHVtcC1wcm8gZG8gbm90IHJl
cG9ydCBhbnkgZXJyb3JzIG9yIHdhcm5pbmdzLg0KICAgIA0KICAgIENvbW1lbnRzOg0KICAgIA0K
ICAgIEMxOg0KICAgIA0KICAgIChNMikgaWRlbnRpdHkgdGxzLTEuMg0KICAgIA0KICAgIFdoeSBh
cmUgdGhlcmUgbm8gaWRlbnRpdGllcyBkZWZpbmVkIGZvciB0bHMtMS4wIGFuZCB0bHMtMS4xPw0K
ICAgIA0KICAgIA0KICAgIDxLRU5UPiBJIGRvbid0IGtub3csIEdhcnkgZGVmaW5lZCB0aGlzLCBJ
J2xsIGxldCBoaW0gYW5zd2VyLg0KICAgIA0KICAgIA0KICAgIA0KICAgIEMyOg0KICAgIA0KICAg
IFNlYyAxLjIgVHJlZSBEaWFncmFtcw0KICAgIA0KICAgIE9sZCB0ZXh0IHNob3VsZCBiZSByZXBs
YWNlZCB3aXRoIHJlZmVyZW5jZSB0bw0KICAgIGRyYWZ0LWlldGYtbmV0bW9kLXlhbmctdHJlZS1k
aWFncmFtcy0wMQ0KICAgIA0KICAgIA0KICAgIDxLRU5UPiBTYW1lIGNvbW1lbnQgYXMgYmVmb3Jl
Lg0KICAgIA0KICAgIA0KICAgIA0KICAgIEMzOg0KICAgIA0KICAgICAoTTEpIElFVEYgY29weXJp
Z2h0IHNheXMgMjAxNDsgY2hhbmdlIHRvIDIwMTcNCiAgICAgKE0zKSBJRVRGIGNvcHlyaWdodCBz
YXlzIDIwMTQ7IGNoYW5nZSB0byAyMDE3DQogICAgDQogICAgDQogICAgPEtFTlQ+IERvbmUhDQog
ICAgDQogICAgDQogICAgDQogICAgDQoNCg==


From nobody Tue Aug  1 12:32:18 2017
Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D0E6C132306 for <yang-doctors@ietfa.amsl.com>; Tue,  1 Aug 2017 12:32:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RQDC2PQDcDUX for <yang-doctors@ietfa.amsl.com>; Tue,  1 Aug 2017 12:32:10 -0700 (PDT)
Received: from mail-wr0-x231.google.com (mail-wr0-x231.google.com [IPv6:2a00:1450:400c:c0c::231]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 07C34132300 for <yang-doctors@ietf.org>; Tue,  1 Aug 2017 12:32:07 -0700 (PDT)
Received: by mail-wr0-x231.google.com with SMTP id f21so10597718wrf.5 for <yang-doctors@ietf.org>; Tue, 01 Aug 2017 12:32:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=G7SXuPvL4pftWCJ15+UH21dA/EqowFU/rWRMK1PInaQ=; b=t5PfH1pWamfmg2b4Nk8ZqwSGg/qcNm8Ypz9+7WJJxjU0/BuX3+fJRlXPc3We8YiLBW bNNGBJViwBIQNnw4ebkNAcEvMwaIB5eASzZiVhyXgGktJ1hi6pGckCXNXEV97fikrqJb T+d1grQwr6JPidIGbQKng2wdkmB+dwjUUeXirXhzJS5W+IcxpX9u1U3eO0AKxGG5YKWp PHK6Kx02Wo0CHjZBCCgsoziAwaZksaG5iOV4G9CnqsJ6KOAntMOKLCKc/2hdmSA2DRZ4 7ZT1eTalcMVfX5HFrS3TLiNAK7slr30i56fpzVxMRHcsleb7Z8waF3Va6D6FyPE8dit6 bYxg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=G7SXuPvL4pftWCJ15+UH21dA/EqowFU/rWRMK1PInaQ=; b=TeHSm989hlYyMgtIx4L8A3wrtDB4EPRAk4EgzLmni71xnVQGFgXB4MsFRssxYd+NT8 IFBxvyCZ2bXSJPBkZVT3o+LsvUMpetylmQG/on8d01Bohs8CgZJOUi6VchP3M82KHsjr Q8P7HKk8IFRa5RPyQWU3aZRQ8Pxwm/e3J9RnXXo+CJOndn1xHUirpB5kDFp7dNWTyu/H MdSW532VBr3/66UpNML2JryjsCVQ7esrDAixeaQwGTIEYm9LtSZIdBwuG6e0rqaXsWaj eG+iAyBDetmI3KpF0oABbmvF8V3X18GvyNAY3cfXzWC0tGOiQldk+PdgsBq+fVT2/ErA +B6g==
X-Gm-Message-State: AIVw113kl3Cu/J97apDmQzTsIUtykRSZjVxdxR3WTHKhR9pzQ7d9a38/ jmGJpQsw8SAhH40oPjr1vPdzw28Oeb6x
X-Received: by 10.223.134.39 with SMTP id 36mr16332354wrv.244.1501615925348; Tue, 01 Aug 2017 12:32:05 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.182.160 with HTTP; Tue, 1 Aug 2017 12:32:04 -0700 (PDT)
In-Reply-To: <A9F2ED3F-6AC5-4AEF-8EBF-1C4F89A6F0F7@juniper.net>
References: <150128020275.20726.13027423171798327745@ietfa.amsl.com> <A9F2ED3F-6AC5-4AEF-8EBF-1C4F89A6F0F7@juniper.net>
From: Andy Bierman <andy@yumaworks.com>
Date: Tue, 1 Aug 2017 12:32:04 -0700
Message-ID: <CABCOCHTmNdi7ZGPL_R8vyZTOKeVwJgtrqsT0ZNBCbMUT4Qo9tA@mail.gmail.com>
To: Kent Watsen <kwatsen@juniper.net>
Cc: "yang-doctors@ietf.org" <yang-doctors@ietf.org>,  "draft-ietf-netconf-restconf-client-server.all@ietf.org" <draft-ietf-netconf-restconf-client-server.all@ietf.org>,  "netconf@ietf.org" <netconf@ietf.org>
Content-Type: multipart/alternative; boundary="001a1146c380d1e08c0555b63322"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/nQuMShQT_Lhdtm0XlSbotn_Spy8>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-netconf-restconf-client-server-04
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 01 Aug 2017 19:32:13 -0000

--001a1146c380d1e08c0555b63322
Content-Type: text/plain; charset="UTF-8"

On Mon, Jul 31, 2017 at 3:56 PM, Kent Watsen <kwatsen@juniper.net> wrote:

> Hi Andy,
>
> Thanks for your review.  Below are my responses to your comments.
>
> Thanks,
> Kent
>
>
> --
>
> Reviewer: Andy Bierman
> Review result: Ready with Nits
>
> Review: draft-ietf-netconf-restconf-client-server-04
>
> Modules:
>  (M1) ietf-restconf-client@2017-07-03.yang
>  (M2) ietf-restconf-server@2017-07-03.yang
>
>
> YANG Usage:
>
>  I did not find anything wrong in either module.
>  pyang and yangdump-pro do not report any errors or warnings.
>
> Comments:
>
> C1:
>
>  (M1) RESTCONF does not have sessions so the term "RESTCONF session"
>  needs to be defined
>
>
> <KENT> good point, in this case, it's actually the underlying transport
> (TLS) that has a session.  Fixed.  But what about the 'max-sessions' leaf,
> under 'listen', in both modules?  - should this also be changed to talk
> about the TLS session, or removed altogether?
>
>
>

I think you can change it to "transport session" or "TLS session"
if the concept of session reconnect is is kept for RESTCONF



>
> C2:
>
>  (M1) feature tls-initiate
>  (M1) feature tls-listen
>  (M2) feature tls-listen
>  (M2) feature tls-call-home
>
>  Are these features really needed since a RESTCONF server MUST support
>  the TLS transport?
>
> <KENT> the features themselves are needed, as we don't know what
> clients/servers may support.
>


OK -- These features are nested within other features (initiate, listen).
You should add a comment somewhere that TLS is optional-to-support,
but mandatory to support if the TLS transport is implemented.
Currently RESTCONF requires TLS be supported, but future
versions could be different.

Also, recent YANG 1.1 discussions concluded (wrongly IMO) that nested
nodes do not inherit the if-feature-stmts of ancestors.  It is not clear
how one would access /foo/bar if /foo was not supported.

 So perhaps you should add if-feature-stmts:

  feature tls-listen {
     if-feature listen;
     ...
  }

  feature tls-listen {
    if-feature listen;
    ...
  }


> <KENT> the "tls" in the name of these features is likely unnecessary but
> 1) maybe, someday, there will be another transport? and, 2) these names are
> consistent with the names in the ssh modules, where there are both the
> "tls" and "ssh" based feature names, and so make more sense there.
>
>
>
> C3:
>
>  (M1)  /restconf-client/initiate/restconf-server/persistent/
>
>  RESTCONF has no session setup; It only has request and
>  response interactions. The purpose of reconnect, idle timeouts etc.
>  are completely up to the client application.
>
>
> <KENT> similar to the above, this is really meant to reflect the TLS
> layer.  It may not make too much sense for /restconf-client/initiate/restconf-server/persistent.
>  That said, I think it's okay, in the sense that a real HTTPS client might
> keep the underlying TLS session open across many HTTP-level interactions as
> a performance optimization.  What do you think?
>
>
Change it to be TLS session



> FWIW, it does *make* sense for /restconf-server/call-home/res
> tconf-client/connection-type/persistent/.  For instance, a client may
> need to keep the call-home connection open in order to send messages to the
> server when it needs to...
>
>
>
OK -- this may be more clear than hiding persistent in max-retries ==
unlimited



>
> C4:
>
>  (M1)  /restconf-client/initiate/restconf-server/persistent/max-attempts
>
>  What should the RESTCONF client do if a "Connection: close"
>  header is received from the server (indicating the server is dropping
>  the TCP connection) Should the reconnects proceed?
>
> <KENT> I don't understand the question.  The 'max-attempts' regards
> testing the aliveness of a server that the client is already connected
> to.  But, assuming the client was configured to try to maintain a
> persisted TLS connection, the client would immediately try to reconnect
> to one of the configured RESTCONF servers.
>


OK -- this is how our server works. It does not make a special case for
Connection: close.



>
> C5:
>
>  (M1)  /restconf-client/initiate/restconf-server/periodic/
>
>
>       "Periodically connect to the RESTCONF server, so that
>        the RESTCONF server may deliver messages pending for
>        the RESTCONF client.  The RESTCONF server must close
>        the connection when it is ready to release it.
>
> This is not how RESTCONF works.
> The RESTCONF server requires a request message in order to
> send content to a client.  I do not understand the use-case
> for periodic RESTCONF sessions.
>
> <KENT> Right, the server might be buffering data to send to
> the client (e.g., logs).  Maybe it's a wording issue?
>
> OLD
>
>   server may deliver messages pending for the RESTCONF client
>
> NEW
>
>   client can collect data (e.g., logs) from the RESTCONF server
>
> What do you think?
>


It should be clear that the client would have to issue a GET or maybe POST
to initiate the sending of stored data like logs



>
>
>
>
> C6:
>
>  (M1)  /restconf-client/initiate/restconf-server/periodic/
>  (M2)  /restconf-server/call-home/restconf-client/connection-type/
> periodic/
>
>  The RESTCONF notifications via SSE should be exempt from timeouts.
>  The RESTCONF client should terminate an SSE request. The server should
>  not timeout an SSE response connection
>
>
> <KENT> Agreed, and the description statement for the 'idle-timeout' leaf
> says "Sessions that have a notification subscription active are never
> dropped.  But here, under 'periodic', the whole point is to shed idle
> connections.  For instance, imagine a client that wants to collect logs
> from a low-powered server once a day.  What do you think?
>
>

Notification replay has a mode where it is terminated (i.e,., end-time
provided)
I think this would have to be used by the client.  This tells the server to
drop
the connection when the replay is complete.

This is 1 exception -- another is close-session.

   POST /restconf/operations/ietf-netconf:close-session

Is this supposed to do anything in RESTCONF?



>
> C7:
>
> Sec 1.2 Tree Diagrams
>
> Old text should be replaced with reference to
> draft-ietf-netmod-yang-tree-diagrams-01
>
> <KENT> same comment as before.
>
>
>

OK -- wait for tree draft to be stable


>
> C8:
>
>  (M1) IETF copyright says 2014; change to 2017
>  (M2) IETF copyright says 2014; change to 2017
>
> <KENT> fixed.
>
>
>
> Nits:
>
> Some descriptions mention SSH. This should be removed from
> this document.
>
> <KENT> done.
>
>
> The descriptions for choices that have only 1 case should
> explain why a choice is being used.
>
> <KENT> done.
>
>
> The tree diagram shows the fully expanded groupings,
> even many objects are in other drafts. I needed all 5 drafts
> open in windows for searching, plus pyang tree output,
> to really follow the data model structure.
>
> <KENT> I know.  Do you have a proposal?
>
>
The external nodes cannot really use a prefix because they
are pulled in from groupings, and technically in the same module namespace.
I don't know if any changes to the tree diagram should be made for
uses external-grouping.




>
>
> The examples do not show any usage of the hello-params.
> This would be useful because the namespace for the
> identityref objects (tls-version, cipher-suite) is not
> the same as the module that uses the grouping.
>
> <KENT> Point taken.  I sent Gary an email on this also.
>
>
>
> Note that the 'map-type' identityref is shown correctly encoded
> in examples on page 19 and 20.
>
> <KENT> not sure which draft you mean, but it's okay, I know how to prefex
> identities.
>
>
>
>


Andy

--001a1146c380d1e08c0555b63322
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Mon, Jul 31, 2017 at 3:56 PM, Kent Watsen <span dir=3D"ltr">&lt;<a h=
ref=3D"mailto:kwatsen@juniper.net" target=3D"_blank">kwatsen@juniper.net</a=
>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 =
0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Andy,<br>
<br>
Thanks for your review.=C2=A0 Below are my responses to your comments.<br>
<br>
Thanks,<br>
Kent<br>
<br>
<br>
--<br>
<br>
Reviewer: Andy Bierman<br>
Review result: Ready with Nits<br>
<br>
Review: draft-ietf-netconf-restconf-cl<wbr>ient-server-04<br>
<br>
Modules:<br>
=C2=A0(M1) ietf-restconf-client@2017-07-0<wbr>3.yang<br>
=C2=A0(M2) ietf-restconf-server@2017-07-0<wbr>3.yang<br>
<br>
<br>
YANG Usage:<br>
<br>
=C2=A0I did not find anything wrong in either module.<br>
=C2=A0pyang and yangdump-pro do not report any errors or warnings.<br>
<br>
Comments:<br>
<br>
C1:<br>
<br>
=C2=A0(M1) RESTCONF does not have sessions so the term &quot;RESTCONF sessi=
on&quot;<br>
=C2=A0needs to be defined<br>
<br>
<br>
&lt;KENT&gt; good point, in this case, it&#39;s actually the underlying tra=
nsport (TLS) that has a session.=C2=A0 Fixed.=C2=A0 But what about the &#39=
;max-sessions&#39; leaf, under &#39;listen&#39;, in both modules?=C2=A0 - s=
hould this also be changed to talk about the TLS session, or removed altoge=
ther?<br>
<br>
<br></blockquote><div><br></div><div><br></div><div>I think you can change =
it to &quot;transport session&quot; or &quot;TLS session&quot;</div><div>if=
 the concept of session reconnect is is kept for RESTCONF</div><div><br></d=
iv><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0=
 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
C2:<br>
<br>
=C2=A0(M1) feature tls-initiate<br>
=C2=A0(M1) feature tls-listen<br>
=C2=A0(M2) feature tls-listen<br>
=C2=A0(M2) feature tls-call-home<br>
<br>
=C2=A0Are these features really needed since a RESTCONF server MUST support=
<br>
=C2=A0the TLS transport?<br>
<br>
&lt;KENT&gt; the features themselves are needed, as we don&#39;t know what =
clients/servers may support.<br></blockquote><div><br></div><div><br></div>=
<div>OK -- These features are nested within other features (initiate, liste=
n).</div><div>You should add a comment somewhere that TLS is optional-to-su=
pport,</div><div>but mandatory to support if the TLS transport is implement=
ed.</div><div>Currently RESTCONF requires TLS be supported, but future</div=
><div>versions could be different.</div><div><br></div><div>Also, recent YA=
NG 1.1 discussions concluded (wrongly IMO) that nested</div><div>nodes do n=
ot inherit the if-feature-stmts of ancestors.=C2=A0 It is not clear</div><d=
iv>how one would access /foo/bar if /foo was not supported.</div><div><br><=
/div><div>=C2=A0So perhaps you should add if-feature-stmts:</div><div><br><=
/div><div>=C2=A0 feature tls-listen {</div><div>=C2=A0 =C2=A0 =C2=A0if-feat=
ure listen;</div><div>=C2=A0 =C2=A0 =C2=A0...</div><div>=C2=A0 }</div><div>=
<br></div><div>=C2=A0 feature tls-listen {</div><div>=C2=A0 =C2=A0 if-featu=
re listen;</div><div>=C2=A0 =C2=A0 ...</div><div>=C2=A0 }</div><div><br></d=
iv><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left=
:1px #ccc solid;padding-left:1ex">
<br>
&lt;KENT&gt; the &quot;tls&quot; in the name of these features is likely un=
necessary but 1) maybe, someday, there will be another transport? and, 2) t=
hese names are consistent with the names in the ssh modules, where there ar=
e both the &quot;tls&quot; and &quot;ssh&quot; based feature names, and so =
make more sense there.<br>
<br>
<br>
<br>
C3:<br>
<br>
=C2=A0(M1)=C2=A0 /restconf-client/initiate/rest<wbr>conf-server/persistent/=
<br>
<br>
=C2=A0RESTCONF has no session setup; It only has request and<br>
=C2=A0response interactions. The purpose of reconnect, idle timeouts etc.<b=
r>
=C2=A0are completely up to the client application.<br>
<br>
<br>
&lt;KENT&gt; similar to the above, this is really meant to reflect the TLS =
layer.=C2=A0 It may not make too much sense for /restconf-client/initiate/r=
est<wbr>conf-server/persistent.=C2=A0 =C2=A0That said, I think it&#39;s oka=
y, in the sense that a real HTTPS client might keep the underlying TLS sess=
ion open across many HTTP-level interactions as a performance optimization.=
=C2=A0 What do you think?<br>
<br></blockquote><div><br></div><div>Change it to be TLS session</div><div>=
<br></div><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"margi=
n:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
FWIW, it does *make* sense for /restconf-server/call-home/res<wbr>tconf-cli=
ent/connection-type/<wbr>persistent/.=C2=A0 For instance, a client may need=
 to keep the call-home connection open in order to send messages to the ser=
ver when it needs to...<br>
<br>
<br></blockquote><div><br></div><div>OK -- this may be more clear than hidi=
ng persistent in max-retries =3D=3D unlimited</div><div><br></div><div>=C2=
=A0<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;b=
order-left:1px #ccc solid;padding-left:1ex">
<br>
C4:<br>
<br>
=C2=A0(M1)=C2=A0 /restconf-client/initiate/rest<wbr>conf-server/persistent/=
max-<wbr>attempts<br>
<br>
=C2=A0What should the RESTCONF client do if a &quot;Connection: close&quot;=
<br>
=C2=A0header is received from the server (indicating the server is dropping=
<br>
=C2=A0the TCP connection) Should the reconnects proceed?<br>
<br>
&lt;KENT&gt; I don&#39;t understand the question.=C2=A0 The &#39;max-attemp=
ts&#39; regards<br>
testing the aliveness of a server that the client is already connected<br>
to.=C2=A0 But, assuming the client was configured to try to maintain a<br>
persisted TLS connection, the client would immediately try to reconnect<br>
to one of the configured RESTCONF servers.<br></blockquote><div><br></div><=
div><br></div><div>OK -- this is how our server works. It does not make a s=
pecial case for Connection: close.</div><div><br></div><div><br></div><bloc=
kquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #cc=
c solid;padding-left:1ex">
<br>
<br>
C5:<br>
<br>
=C2=A0(M1)=C2=A0 /restconf-client/initiate/rest<wbr>conf-server/periodic/<b=
r>
<br>
<br>
=C2=A0 =C2=A0 =C2=A0 &quot;Periodically connect to the RESTCONF server, so =
that<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0the RESTCONF server may deliver messages pending=
 for<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0the RESTCONF client.=C2=A0 The RESTCONF server m=
ust close<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0the connection when it is ready to release it.<b=
r>
<br>
This is not how RESTCONF works.<br>
The RESTCONF server requires a request message in order to<br>
send content to a client.=C2=A0 I do not understand the use-case<br>
for periodic RESTCONF sessions.<br>
<br>
&lt;KENT&gt; Right, the server might be buffering data to send to<br>
the client (e.g., logs).=C2=A0 Maybe it&#39;s a wording issue?<br>
<br>
OLD<br>
<br>
=C2=A0 server may deliver messages pending for the RESTCONF client<br>
<br>
NEW<br>
<br>
=C2=A0 client can collect data (e.g., logs) from the RESTCONF server<br>
<br>
What do you think?<br></blockquote><div><br></div><div><br></div><div>It sh=
ould be clear that the client would have to issue a GET or maybe POST</div>=
<div>to initiate the sending of stored data like logs</div><div><br></div><=
div>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8e=
x;border-left:1px #ccc solid;padding-left:1ex">
<br>
<br>
<br>
<br>
C6:<br>
<br>
=C2=A0(M1)=C2=A0 /restconf-client/initiate/rest<wbr>conf-server/periodic/<b=
r>
=C2=A0(M2)=C2=A0 /restconf-server/call-home/res<wbr>tconf-client/connection=
-type/<wbr>periodic/<br>
<br>
=C2=A0The RESTCONF notifications via SSE should be exempt from timeouts.<br=
>
=C2=A0The RESTCONF client should terminate an SSE request. The server shoul=
d<br>
=C2=A0not timeout an SSE response connection<br>
<br>
<br>
&lt;KENT&gt; Agreed, and the description statement for the &#39;idle-timeou=
t&#39; leaf<br>
says &quot;Sessions that have a notification subscription active are never<=
br>
dropped.=C2=A0 But here, under &#39;periodic&#39;, the whole point is to sh=
ed idle<br>
connections.=C2=A0 For instance, imagine a client that wants to collect log=
s<br>
from a low-powered server once a day.=C2=A0 What do you think?<br>
<br></blockquote><div><br></div><div><br></div><div>Notification replay has=
 a mode where it is terminated (i.e,., end-time provided)</div><div>I think=
 this would have to be used by the client.=C2=A0 This tells the server to d=
rop</div><div>the connection when the replay is complete.</div><div><br></d=
iv><div>This is 1 exception -- another is close-session.=C2=A0</div><div><b=
r></div><div>=C2=A0 =C2=A0POST /restconf/operations/ietf-netconf:close-sess=
ion</div><div><br></div><div>Is this supposed to do anything in RESTCONF?</=
div><div><br></div><div><br></div><blockquote class=3D"gmail_quote" style=
=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<br>
C7:<br>
<br>
Sec 1.2 Tree Diagrams<br>
<br>
Old text should be replaced with reference to<br>
draft-ietf-netmod-yang-tree-di<wbr>agrams-01<br>
<br>
&lt;KENT&gt; same comment as before.<br>
<br>
<br></blockquote><div><br></div><div><br></div><div>OK -- wait for tree dra=
ft to be stable</div><div>=C2=A0</div><blockquote class=3D"gmail_quote" sty=
le=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
C8:<br>
<br>
=C2=A0(M1) IETF copyright says 2014; change to 2017<br>
=C2=A0(M2) IETF copyright says 2014; change to 2017<br>
<br>
&lt;KENT&gt; fixed.<br>
<br>
<br>
<br>
Nits:<br>
<br>
Some descriptions mention SSH. This should be removed from<br>
this document.<br>
<br>
&lt;KENT&gt; done.<br>
<br>
<br>
The descriptions for choices that have only 1 case should<br>
explain why a choice is being used.<br>
<br>
&lt;KENT&gt; done.<br>
<br>
<br>
The tree diagram shows the fully expanded groupings,<br>
even many objects are in other drafts. I needed all 5 drafts<br>
open in windows for searching, plus pyang tree output,<br>
to really follow the data model structure.<br>
<br>
&lt;KENT&gt; I know.=C2=A0 Do you have a proposal?<br>
<br></blockquote><div><br></div><div>The external nodes cannot really use a=
 prefix because they</div><div>are pulled in from groupings, and technicall=
y in the same module namespace.</div><div>I don&#39;t know if any changes t=
o the tree diagram should be made for</div><div>uses external-grouping.</di=
v><div><br></div><div><br></div><div>=C2=A0</div><blockquote class=3D"gmail=
_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:=
1ex">
<br>
<br>
The examples do not show any usage of the hello-params.<br>
This would be useful because the namespace for the<br>
identityref objects (tls-version, cipher-suite) is not<br>
the same as the module that uses the grouping.<br>
<br>
&lt;KENT&gt; Point taken.=C2=A0 I sent Gary an email on this also.<br>
<br>
<br>
<br>
Note that the &#39;map-type&#39; identityref is shown correctly encoded<br>
in examples on page 19 and 20.<br>
<br>
&lt;KENT&gt; not sure which draft you mean, but it&#39;s okay, I know how t=
o prefex identities.<br>
<br>
<br>
<br></blockquote><div><br></div><div><br></div><div><br></div><div>Andy</di=
v><div>=C2=A0</div></div><br></div></div>

--001a1146c380d1e08c0555b63322--


From nobody Tue Aug  1 12:44:27 2017
Return-Path: <garywu@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 893F812EC48; Tue,  1 Aug 2017 12:44:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.523
X-Spam-Level: 
X-Spam-Status: No, score=-14.523 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id VC5znih3t_rQ; Tue,  1 Aug 2017 12:44:14 -0700 (PDT)
Received: from alln-iport-2.cisco.com (alln-iport-2.cisco.com [173.37.142.89]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A93DD1322F7; Tue,  1 Aug 2017 12:44:14 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=5326; q=dns/txt; s=iport; t=1501616654; x=1502826254; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=7IlZUFryl83dG2VxVGMi8rlTjkE4Su1tyq2+UC06M4A=; b=BKg4iscevEOt3A0ycqOfIQZw851/3acCVQ4dFjmmjWwMW5muFS8HynIX a63PV1zvxNp5pXNTV8LnLFSoMNWbxqwayyfFGfL3TjCpFiqDMu7mOMVoa 4wB8P48ybsx9bFfPhZQ6CS3vF3+2MdXCuX1xiBFIGdlGWhnbcUSZClTSJ 0=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0DDAgCP2YBZ/51dJa1eGgEBAQECAQEBA?= =?us-ascii?q?QgBAQEBg1pkODUnB44HkACXeQ6CBCyFGwIahAs/GAECAQEBAQEBAWsohRkGIxF?= =?us-ascii?q?FEAIBCA4MAiYCAgIwFRACBAENBYovEK8mgiaLUgEBAQEBAQEBAQEBAQEBAQEBA?= =?us-ascii?q?QEBARgFgQuCHYICgUyBYSuCe4Q6BgESAQlQglkwghIfBZ93AodOhxyFPYImkBu?= =?us-ascii?q?VeAEfOH8LdxVbAYUEHIFndodxDRcHgQWBDgEBAQ?=
X-IronPort-AV: E=Sophos;i="5.41,306,1498521600"; d="scan'208";a="460020395"
Received: from rcdn-core-6.cisco.com ([173.37.93.157]) by alln-iport-2.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 01 Aug 2017 19:44:13 +0000
Received: from XCH-ALN-010.cisco.com (xch-aln-010.cisco.com [173.36.7.20]) by rcdn-core-6.cisco.com (8.14.5/8.14.5) with ESMTP id v71JiDgJ023434 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Tue, 1 Aug 2017 19:44:13 GMT
Received: from xch-rcd-006.cisco.com (173.37.102.16) by XCH-ALN-010.cisco.com (173.36.7.20) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Tue, 1 Aug 2017 14:44:13 -0500
Received: from xch-rcd-006.cisco.com ([173.37.102.16]) by XCH-RCD-006.cisco.com ([173.37.102.16]) with mapi id 15.00.1210.000; Tue, 1 Aug 2017 14:44:12 -0500
From: "Gary Wu (garywu)" <garywu@cisco.com>
To: Kent Watsen <kwatsen@juniper.net>, Andy Bierman <andy@yumaworks.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>
CC: "draft-ietf-netconf-ssh-client-server.all@ietf.org" <draft-ietf-netconf-ssh-client-server.all@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: Yangdoctors last call review of draft-ietf-netconf-ssh-client-server-03
Thread-Index: AQHTB+7XG4uCskNmz0G4+8XG9F6WsqJuuaaAgAESEYA=
Date: Tue, 1 Aug 2017 19:44:12 +0000
Message-ID: <F7570952-C769-4B30-9F2E-A30C09C917AF@cisco.com>
References: <150128005005.20715.8994557350330588925@ietfa.amsl.com> <C7ABD900-ACB9-4BFC-B30D-3A7274DDB657@juniper.net>
In-Reply-To: <C7ABD900-ACB9-4BFC-B30D-3A7274DDB657@juniper.net>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.32.199.45]
Content-Type: text/plain; charset="utf-8"
Content-ID: <6AC5F7B131F98F4188469765838A86BA@emea.cisco.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/wGcjCRK2Gf3ebAwX9kivMPrtIa8>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-netconf-ssh-client-server-03
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 01 Aug 2017 19:44:26 -0000

ICAgIEMxOg0KICAgIA0KICAgICAoTTMpIHRyYW5zcG9ydC1wYXJhbXMgbGVhZnJlZnMNCiAgICAN
CiAgICAgRXhhbXBsZSBvZiA8dHJhbnNwb3J0LXBhcmFtcz4gaW4gc2VjLiA0LjIgc2hvd3MgaWV0
Zi1zc2gtY29tbW9uDQogICAgIGFzIHRoZSBtb2R1bGUgbmFtZXNwYWNlIGJ1dCB0aGlzIHdpbGwg
bmV2ZXIgaGFwcGVuIGluIHJlYWwgdXNhZ2UuDQogICAgDQogICAgIFBlb3BsZSB3aWxsIGNvcHkg
dGhlIHZhcmlvdXMgaWRlbnRpdHlyZWYgZXhhbXBsZXMgaW4gdGhpcyBzZWN0aW9uDQogICAgIGFu
ZCBub3QgZW5jb2RlIHRoZSBpZGVudGl0eXJlZiBwcmVmaXggY29ycmVjdGx5Lg0KICAgIA0KICAg
IA0KICAgIDxLRU5UPiBJIGFkZGVkIHByZWZpeGVzIHRvIHRoZSBleGFtcGxlLiAgDQogICAgDQog
ICAgPEtFTlQ+IFRoaXMgd291bGQndmUgYmVlbiBjYXVnaHQgZWFybGllciAodmlhIHZhbGlkYXRp
b24pIGhhZCB0aGUNCiAgICB0cmFuc3BvcnQtcGFyYW1zIGdyb3VwaW5nIGNvbnRhaW5lZCBzb21l
IG1hbmRhdG9yeSB2YWx1ZXMsIGFzIHRoZW4NCiAgICB0aGUgaWRlbnRpdGllcyB3b3VsZCBoYXZl
IHRvIHNob3cgdXAgaW4gb3RoZXIgZXhhbXBsZXMgKGUuZy4sIA0KICAgIGV4LW5ldGNvbmYtc2Vy
dmVyLnhtbCksIHdoaWNoIHdvdWxkIHRoZW4gaGF2ZSB0byBlbmNvZGUgdGhlIA0KICAgIGlkZW50
aXRpZXMgZnJvbSBhbm90aGVyIG5hbWVzcGFjZS4gIEkgc2VudCBlbWFpbCB0byBHYXJ5IGFza2lu
Zw0KICAgIGhpbSBhYm91dCBpZiBhbnkgb2YgdGhlc2UgdmFsdWVzIGFyZSBtYW5kYXRvcnkuDQoN
CjxHQVJZPiBUaGlzIGlzIHNvbWV0aGluZyBJIGhhZCBkZWJhdGVkIGFzIHdlbGwgZm9yIFNTSCBh
bmQgVExTIHRyYW5zcG9ydA0KcGFyYW1ldGVycy4gIEkgc2V0dGxlZCBvbiBtb2RlbGluZyB3aGF0
IHdhcyBpbXBsZW1lbnRlZCBpbiBwb3B1bGFyIHZlbmRvcnMgYW5kDQpvcGVuIHNvdXJjZSwgd2l0
aCB0aGUgYWJpbGl0eSBmb3IgdGhlIGlkZW50aXRpZXMgdG8gYmUgZXh0ZW5kZWQgYXMgbmVlZGVk
Lg0KICAgIA0KICAgIDxLRU5UPiBBbHNvIHJlbGF0ZWQsIEkgbm90aWNlIHRoYXQgdGhlcmUgYXJl
IGEgdG9uIG9mIGFsZ29yaXRobQ0KICAgIGlkZW50aXRpZXMgaGVyZSB0aGF0IEknZCBmb3Jnb3R0
ZW4gYWJvdXQuICBHb2luZyBiYWNrIHRvIEp1ZXJnZW4ncw0KICAgIGNvbW1lbnQgYWJvdXQgZmFj
dG9yaW5nIHRoZXNlIG91dCBpbnRvIGFub3RoZXIgbW9kdWxlLCBub3cgaXQNCiAgICBzZWVtcyBt
b3JlIHBydWRlbnQgdGhhbiBldmVyISBJIGp1c3QgZmlsZWQgYW4gaXNzdWUgdG8gdHJhY2sNCiAg
ICB0aGlzOiAgaHR0cHM6Ly9naXRodWIuY29tL25ldGNvbmYtd2cva2V5c3RvcmUvaXNzdWVzLzgN
Cg0KPEdBUlk+IElBTkEgaGFzIHJlZ2lzdHJpZXMgZm9yIFNTSCBhbmQgVExTLCBpZiB3ZSB3YW50
IHRvIGdvIGRvd24gdGhhdCByb3V0ZS4NClRoZXJlJ3Mgbm8gcHJvdG9jb2wtaW5kZXBlbmRlbnQg
cmVnaXN0cmllcyBmb3IgcHVibGljIGtleSBhbGdvcml0aG1zIGZvcg0Ka2V5c3RvcmUgdGhhdCBJ
IGtub3cgb2YgdW5mb3J0dW5hdGVseS4NCg0KVGhhbmtzLA0KR2FyeQ0KDQpPbiA3LzMxLzE3LCAx
OjIzIFBNLCAiS2VudCBXYXRzZW4iIDxrd2F0c2VuQGp1bmlwZXIubmV0PiB3cm90ZToNCg0KICAg
IEhpIEFuZHksIA0KICAgIA0KICAgIFRoYW5rcyBmb3IgeW91ciByZXZpZXcuICBCZWxvdyBhcmUg
bXkgcmVzcG9uc2VzIHRvIHlvdXIgY29tbWVudHMuDQogICAgDQogICAgVGhhbmtzLA0KICAgIEtl
bnQNCiAgICANCiAgICANCiAgICAtLQ0KICAgIA0KICAgIFJldmlld2VyOiBBbmR5IEJpZXJtYW4N
CiAgICBSZXZpZXcgcmVzdWx0OiBSZWFkeSB3aXRoIE5pdHMNCiAgICANCiAgICBSZXZpZXc6IGRy
YWZ0LWlldGYtbmV0Y29uZi1zc2gtY2xpZW50LXNlcnZlci0wMw0KICAgIA0KICAgIE1vZHVsZXM6
DQogICAgIChNMSkgaWV0Zi1zc2gtY2xpZW50QDIwMTctMDYtMTMueWFuZw0KICAgICAoTTIpIGll
dGYtc3NoLWNvbW1vbkAyMDE3LTA2LTEzLnlhbmcNCiAgICAgKE0zKSBpZXRmLXNzaC1zZXJ2ZXJA
MjAxNy0wNi0xMy55YW5nDQogICAgDQogICAgDQogICAgWUFORyBVc2FnZToNCiAgICANCiAgICAg
SSBkaWQgbm90IGZpbmQgYW55dGhpbmcgd3JvbmcgaW4gZWl0aGVyIG1vZHVsZS4NCiAgICAgcHlh
bmcgYW5kIHlhbmdkdW1wLXBybyBkbyBub3QgcmVwb3J0IGFueSBlcnJvcnMgb3Igd2FybmluZ3Mu
DQogICAgDQogICAgQ29tbWVudHM6DQogICAgDQogICAgQzE6DQogICAgDQogICAgIChNMykgdHJh
bnNwb3J0LXBhcmFtcyBsZWFmcmVmcw0KICAgIA0KICAgICBFeGFtcGxlIG9mIDx0cmFuc3BvcnQt
cGFyYW1zPiBpbiBzZWMuIDQuMiBzaG93cyBpZXRmLXNzaC1jb21tb24NCiAgICAgYXMgdGhlIG1v
ZHVsZSBuYW1lc3BhY2UgYnV0IHRoaXMgd2lsbCBuZXZlciBoYXBwZW4gaW4gcmVhbCB1c2FnZS4N
CiAgICANCiAgICAgUGVvcGxlIHdpbGwgY29weSB0aGUgdmFyaW91cyBpZGVudGl0eXJlZiBleGFt
cGxlcyBpbiB0aGlzIHNlY3Rpb24NCiAgICAgYW5kIG5vdCBlbmNvZGUgdGhlIGlkZW50aXR5cmVm
IHByZWZpeCBjb3JyZWN0bHkuDQogICAgDQogICAgDQogICAgPEtFTlQ+IEkgYWRkZWQgcHJlZml4
ZXMgdG8gdGhlIGV4YW1wbGUuICANCiAgICANCiAgICA8S0VOVD4gVGhpcyB3b3VsZCd2ZSBiZWVu
IGNhdWdodCBlYXJsaWVyICh2aWEgdmFsaWRhdGlvbikgaGFkIHRoZQ0KICAgIHRyYW5zcG9ydC1w
YXJhbXMgZ3JvdXBpbmcgY29udGFpbmVkIHNvbWUgbWFuZGF0b3J5IHZhbHVlcywgYXMgdGhlbg0K
ICAgIHRoZSBpZGVudGl0aWVzIHdvdWxkIGhhdmUgdG8gc2hvdyB1cCBpbiBvdGhlciBleGFtcGxl
cyAoZS5nLiwgDQogICAgZXgtbmV0Y29uZi1zZXJ2ZXIueG1sKSwgd2hpY2ggd291bGQgdGhlbiBo
YXZlIHRvIGVuY29kZSB0aGUgDQogICAgaWRlbnRpdGllcyBmcm9tIGFub3RoZXIgbmFtZXNwYWNl
LiAgSSBzZW50IGVtYWlsIHRvIEdhcnkgYXNraW5nDQogICAgaGltIGFib3V0IGlmIGFueSBvZiB0
aGVzZSB2YWx1ZXMgYXJlIG1hbmRhdG9yeS4NCiAgICANCiAgICA8S0VOVD4gQWxzbyByZWxhdGVk
LCBJIG5vdGljZSB0aGF0IHRoZXJlIGFyZSBhIHRvbiBvZiBhbGdvcml0aG0NCiAgICBpZGVudGl0
aWVzIGhlcmUgdGhhdCBJJ2QgZm9yZ290dGVuIGFib3V0LiAgR29pbmcgYmFjayB0byBKdWVyZ2Vu
J3MNCiAgICBjb21tZW50IGFib3V0IGZhY3RvcmluZyB0aGVzZSBvdXQgaW50byBhbm90aGVyIG1v
ZHVsZSwgbm93IGl0DQogICAgc2VlbXMgbW9yZSBwcnVkZW50IHRoYW4gZXZlciEgSSBqdXN0IGZp
bGVkIGFuIGlzc3VlIHRvIHRyYWNrDQogICAgdGhpczogIGh0dHBzOi8vZ2l0aHViLmNvbS9uZXRj
b25mLXdnL2tleXN0b3JlL2lzc3Vlcy84DQogICAgDQogICAgDQogICAgQzI6DQogICAgDQogICAg
U2VjIDEuMiBUcmVlIERpYWdyYW1zDQogICAgDQogICAgT2xkIHRleHQgc2hvdWxkIGJlIHJlcGxh
Y2VkIHdpdGggcmVmZXJlbmNlIHRvDQogICAgZHJhZnQtaWV0Zi1uZXRtb2QteWFuZy10cmVlLWRp
YWdyYW1zLTAxDQogICAgDQogICAgPEtFTlQ+IElzIHRoaXMgc2FmZT8gIEkndmUgcmVzaXN0ZWQg
ZG9pbmcgdGhpcyBzbyBmYXIgYmVjYXVzZSBJDQogICAgd2Fzbid0IHN1cmUgaWYgdGhlIHRyZWUt
ZGlhZ3JhbXMgZHJhZnQgbWlnaHQgYnJlYWsgc3ludGF4Li4uDQogICAgDQogICAgDQogICAgDQog
ICAgQzM6DQogICAgDQogICAgIChNMSkgSUVURiBjb3B5cmlnaHQgc2F5cyAyMDE0OyBjaGFuZ2Ug
dG8gMjAxNw0KICAgICAoTTMpIElFVEYgY29weXJpZ2h0IHNheXMgMjAxNDsgY2hhbmdlIHRvIDIw
MTcNCiAgICANCiAgICANCiAgICA8S0VOVD4gZG9uZSENCiAgICANCiAgICANCiAgICANCiAgICAN
CiAgICANCiAgICANCg0K


From nobody Wed Aug  2 03:20:25 2017
Return-Path: <ietfc@btconnect.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 462A3131EA6; Wed,  2 Aug 2017 03:20:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.701
X-Spam-Level: 
X-Spam-Status: No, score=-4.701 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-2.8, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=btconnect.onmicrosoft.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id oBoSAf3ZmaIF; Wed,  2 Aug 2017 03:20:20 -0700 (PDT)
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on0099.outbound.protection.outlook.com [104.47.0.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 00CEC126BF0; Wed,  2 Aug 2017 03:20:19 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=btconnect.onmicrosoft.com; s=selector1-btconnect-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=NBt22fK85J3PxLdSazzz3craS09Ia+w5ZSzHx0Pxm7c=; b=CBn6bHxecW/r3rbDlbqeUWbklSWZZDtEqcd1GkzStY/cJE1hwd5ucNKoxQqa02XrZ+PTVxS/SOH9rtMSqGvGienrJsvtt3+vm25ZpX2a3/Yi9x0t1FzF2Y1qv0d220UXCyg2g4nmM90JpBgRZ6fTwGUV1wLedzhZbRb8F17/+cI=
Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=ietfc@btconnect.com; 
Received: from pc6 (86.176.20.38) by DB6PR0701MB2997.eurprd07.prod.outlook.com (2603:10a6:4:73::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1304.10; Wed, 2 Aug 2017 10:20:16 +0000
Message-ID: <07d301d30b78$50b9a0c0$4001a8c0@gateway.2wire.net>
From: "t.petch" <ietfc@btconnect.com>
To: "Kent Watsen" <kwatsen@juniper.net>, "Juergen Schoenwaelder" <j.schoenwaelder@jacobs-university.de>
Cc: <draft-ietf-netconf-keystore.all@ietf.org>, <yang-doctors@ietf.org>, <netconf@ietf.org>
References: <150028100874.32703.14161403810529927281@ietfa.amsl.com> <B1AC6895-5681-48F8-B7E7-418118120B4E@juniper.net> <20170720165942.GB21506@elstar.local> <F5E9973C-FCCD-4A96-B0D3-8C735CE911D3@juniper.net> <20170728073923.GA28870@elstar.local> <701F31A6-9941-4DE4-AE7E-00E859F103F8@juniper.net> <20170728154008.GA29865@elstar.local> <53886D3E-8A0C-4664-A7BD-1E708A80EE9D@juniper.net> <20170728170930.GA30054@elstar.local> <04f301d30aae$7482e900$4001a8c0@gateway.2wire.net> <7C4C9B41-7343-4FCD-AB0F-0131F64B45BF@juniper.net>
Date: Wed, 2 Aug 2017 11:15:33 +0100
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
X-Originating-IP: [86.176.20.38]
X-ClientProxiedBy: VI1P194CA0012.EURP194.PROD.OUTLOOK.COM (2603:10a6:800:be::22) To DB6PR0701MB2997.eurprd07.prod.outlook.com (2603:10a6:4:73::7)
X-MS-Office365-Filtering-Correlation-Id: 1359c40e-18ff-42d3-4af6-08d4d990124f
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:DB6PR0701MB2997; 
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2997; 3:khpE8lRE1G+AFu2gxypmDlqC0Qktah1WqQ9cJ+FOtFBr2jZ0OmUlEkkDNrKuFfPWEJjdVzfLAgHIYduN2pGkDAXFs+5qbaLhWzke0U5NXRtEXdHaoEV1FTuuWvuhoyKDgAkGcYONxQdkaRizxhxSbN3S4FTkteyQ7A8RCDUoznni/wivzjxQzc02934CoVsE0iHWBhJcZrrvGRmeZpsM2/8vwLJa90V+LjyxQU4Z00XdSaMwbxuVOhQY5AVy9R03JtyZdPLgBuqtrdy1uUud5llas+K/G2wkWVqd919XMzDobebeo/PdjA2meCVwHeK5hT6GiM8wyCbbaTtDngg/ixXPEk7TFvb4IIOUVbXlQbxeoswox4IexSGLNF9HS+Z5n8rqhiL+si8KLX1NV0iRRlHfxHZ+3NoPaudeHnU+sD9OlQBFo+YY6J4lLIekDhOSVl4glniLkOcROBYbiHXdXoNFK0EiwD+OkXwUMibRcWWsxjTYNUw+Wv/ynw2mQRdcrbdqImJvvW//Q333Kwecl9s2E1v1QAGLjCiFWlPBoqbXyEf98tEClaTFk40IUtkuBD+W4TOTk681zWJykeawiqEjTCCSMjjWMUUyoCBfyY02lITLeqtUjpHFeiJehBfI/FUml2n75BOnSrMeVfznvM3MD+PyZVud11y034FpbD0+m4kc5szaBzUInx8Ns5gnjz0TcD179gSbPGcnoFqFRQ7R0/5EUY2GAMKlQmTCyZypV2xBl8Eg+F4uW4sbynH3XjQq7HoOe4tikQlXEDF/vnAFN91jshNtD/IC6LKQr6k=
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DB6PR0701MB2997:
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2997; 25:sYox1IcfezIlEfGWQK55bSYOFWXsmwK9uD4/veoltCydcdQoHDraiifucHjGFcam8CCT+GN+Jo/1Kw7W7O9VGkz4GYi2wZTnl2bSVvbzL2XkrERC+PT2nKY126A6SVQ/YfYWTtbdTimEgTMxCAe0u5kyQlYMaUNqlOnByF16QLMNallpomw0ATuXEtw0aNM1djH3h/kOGAYX72cKpiH985qgS4mI3cuVV/hPTj5g5X+LAyhfWObhDvX464s/qfpSJjdEiney6axItYVWnF4+lk0UNbP72As2DA/AaADjtSTbjVCCaDjOrK1pPBdRzs9svYd/RN+FZOnO0wf6muEHmBE93HyNrAqT8bwOln9MUSDqSRDaiMnCyulK4dh7Sy7u3A8fBU5iVyD3P1eEcqH9c4DC8nwqqvQWkTWIw9d6DnegjB5wVsSMN+ZRhtw0B0DyT/ank6Tbq5VcUEPP1AwwrHtyGkl3Mh2X291TeRkmCyb2Cl35jMEGH9Yqdx1l9OAO3jTGG/q9mhJAj0Uwb0F1et0Sm3pp9putYICHG1WMWo5+0PgbaPHWfqvhSq/xjubHKK8QX8ojupe7LcBO487crlSa9bqM7uracYyE9KbdPMBJbr28yWjd4kimdZK5c3YFFVKwirS9d1aNoBDiIvBUZv/pPi7HA2Z5nUkjxJ3pQ/XpOOOBp8iViDHmWaHaAJ16qdp7tSSFeKK7aq134JX+sDAsOEYiKia9F8ES1yrkXQ/AcUTvyerRlk6FR1qTqrdsrLFZ0Ar5Smuh+bQVSepb8SX0aM3VmKPQ7PqUranJY9Ski7cX5HdKaom2CIpdM3hTSvJT8XpmfHmZaoA0HchQffsCrgsHrRBC8uxqH3iF6BkenGxX1nUT+7/H+y3ROZpo8yBs/DBUuGHGSuy7vKlMbVmDtj0KOd973Xc2+9uVfDQ=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2997; 31:vzWdG01+fJeaRov504ydbKaByeKvIDGDVHtuG+3k7DC0WcgN+nJS/IzCkPYnGTJ40oRh/Qlrgo8fkaFBl2HQgDZyMbOtwZrgEw5RWNuYSwwaiHPuVInO4aqZOgnAL9W3omWGRffjdhZEaRZQWgoIXP2w1sqwkSglFLf5cO8hKo4MWn77slVRYKn56RmV9B8VFWUfXB4N26+NBCW0bYYIVsBWuUZz3ZxrDQdWhQY6gN1ohxKVrHYo+svxQh3x3aIrxSnRY/fWOk2/pnBozuoPEAXIcFmdFxo9K/uVjbNC99Ii5JklLiKU48MM4loOBqviX2g+x/0/XGAuJ3v48dybCkHnBhjkdsYRJvoKBY50oTJRq2UeIkLaYqwiZCTuiRymHGm9CqZimJcZzMhElRI9H4MxDMugin0sdTgaH0luqhE4ypzD+AEEmhMx9BDyloeee92dnUGmUROtoohGbrm086P4orxz5qNKMlWLrVDDjUAP8C0hOoxluyumiA0khO9wA+RzNWltK2OCHwyAiHhGqJTLU0eSOKVGkeYx7QBldTJxK2+b/NI0GF/sMhcrWIFd5Kfh6w+dA8OnJvCU3OC4znSX6O2WiyZ8qlTBp3Lk5JZZcGkvbV7gBDPhFVTiFIctwRtf40/FL/48mAx8nutzupG/IhLVqrLAfwSBYoyDfpQXhxp9sIjgxkF826LHgV3ONzP+38/CiRsEF3q20SrzWw==
X-Exchange-Antispam-Report-Test: UriScan:(158342451672863)(192374486261705)(138986009662008); 
X-Microsoft-Antispam-PRVS: <DB6PR0701MB2997C7F56E2EAE986BA7046CA0B00@DB6PR0701MB2997.eurprd07.prod.outlook.com>
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(100000703101)(100105400095)(3002001)(6041248)(20161123564025)(20161123562025)(20161123560025)(20161123555025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:DB6PR0701MB2997; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:DB6PR0701MB2997; 
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA3MDFNQjI5OTc7NDo5WDdqQXpIQXlIUXZjMFpzUVh4YWsxZnQr?= =?utf-8?B?WU8xQThReFM3T2JycHc3WXR4VUZBMzg0a0ZEQkFhY1gwb29UcS9kY08rMXpV?= =?utf-8?B?WS85bnZneFZrdHc4aHR0YU81QTdSWXZwaGEwTXZWWnNlRm54b3RkclN2SU85?= =?utf-8?B?Mit6c2c5MUxxVS9SVWFEL3FKcXlCWFRyTVJIRlkrN0dnUEJBaHlrWDYzdXgy?= =?utf-8?B?R3hYckZGOFVSQWw3Nm00QXcyYytKUUpJS2w5cVhrdmdKckwyaDU5aXoxUWZj?= =?utf-8?B?QUlOWGt0WDFudTB5czlJRFhlNWJaTTRKeDVyMG1BYVJhMHpnelZLQ1ppVE5Z?= =?utf-8?B?NjRacUtsMlFFOTl3RTRDVHZ1S2pKc05vQ2JjM1FyNGwzMW53UzFhNjR0Mk9I?= =?utf-8?B?S2RUakJMeTlvRWF5eXVKY1lGdWc0OEZGZDVsTEFFVW5oUVdjKzZ6VW1hbU9S?= =?utf-8?B?Y0krcTZncG9ORWVXdDJ0NE5oV09JV1FnWGdKMnZRSkwyWjc5MklWbFpkcm5m?= =?utf-8?B?dVZzYTJBbU1aaFJnc1dhQVRxS1RCVDFPSnRHeHo4UFN4dXV4RXRZV29jdnNq?= =?utf-8?B?WFU4NkQvcVJTVnZmYTlCNk9kSmhKK3VKMGNTN0ZMTG1DZ1UrQTRhZUw3aUpP?= =?utf-8?B?Z1pzQmxBYThRSGhVWkRMMjdWdFFGRmJZaW5lMmIyS3EydVdROXBLdldLTDQy?= =?utf-8?B?QWN0ajhIMmNXV240bGlmcUF5eXZodXA1R2V0MTFHb3JKakRxYVJ0UzlxTjlP?= =?utf-8?B?OUx3QS9wckNueEVVaUpZWkhMbDFOWlpGaEV6U3BrTEt6N3dFT2VsdStlZmlz?= =?utf-8?B?eXBHTE9UMXZjSkliUUR3QTUrM0hDNDhGSitJLzN3ZHlxLzJhK3IzYWkycDR5?= =?utf-8?B?cVRJNmpJUHIwL3hPSXpITUpZT3VBaG9kN0xvQkJ0ZmFVUElRcTZzY08xNW94?= =?utf-8?B?Z21UdXBoRjJpalVRaEd2c1FJdSt5QVUxQWExTHJxc3hWY0FzZ3hFbHZlbHVa?= =?utf-8?B?U2h5SDY5emtaM3F5RzI0MWlzanNJT09JRWVWZ2s1N1VxYlg2RGg4dzBCYVAv?= =?utf-8?B?SFQycmk3K05kNlFRWW8rNE8wcU5XRlVCUVBCV080TjRQODlwSUViczdBOXdQ?= =?utf-8?B?LzI3VVVZQkYyaXNjTkhBRFc3TTFReFpCc3NJOFg5SGcxaVFRRUJWRzNrNlU1?= =?utf-8?B?bGxCb3JGeWQ2ZFhwS1VzTWtPazJ2VGlKVGJsb0pzcEJpRmhaVzZKK1ZxY2Mw?= =?utf-8?B?ZzRDWGtGSk1XV2FpYkFkUk5vSVJyb0s3bDlCV2tLVGhjd0JKRlVoRE90ZnM2?= =?utf-8?B?NFJsR2FJRStLMkY0UXJoUG02SU5JR0VFTFRvSllrajllODFSNDQ1djcwVXV0?= =?utf-8?B?TWlDSnM1WTRKbElReTF4TUpUc29SUTNYT0JmellQOUs4eVFEdkpaRUErNzFr?= =?utf-8?B?M0kyNmNaUXdnT2YyM0k0cFZnaWdheXhuMXVQdEJ5RG5yOGVCa1RyVXVqSFpP?= =?utf-8?B?Znloa1pMTFQ4NGF5Wk9ENWVzZEpvUVpmR3RmUGphWnhKTEdwWnEvZER0OHVh?= =?utf-8?B?RGN4K0pYeGRCWUVDQ0xSYnFXZ2NvUDhUM1BHUlZIYTdzUFFpK2ZpeXAvZkND?= =?utf-8?B?dXoxanRoYnAxRHQwVDJCZFozQVNwYnU1K0pOM0trTWFlMDc1aUpIbVM2WGlR?= =?utf-8?Q?+KLYWA7oeiLqaacvUnqaYHZdOskTWyj6RWzepJSL?=
X-Forefront-PRVS: 0387D64A71
X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(7370300001)(4630300001)(6009001)(39850400002)(39450400003)(39860400002)(39400400002)(39840400002)(39410400002)(377454003)(199003)(189002)(51444003)(13464003)(1941001)(50466002)(229853002)(62236002)(66066001)(44716002)(47776003)(33646002)(97736004)(189998001)(105586002)(2906002)(84392002)(106356001)(6486002)(44736005)(478600001)(5660300001)(7350300001)(14496001)(4720700003)(25786009)(1556002)(6666003)(4326008)(54906002)(7736002)(9686003)(81816999)(305945005)(76176999)(50986999)(8666007)(6116002)(81686999)(3846002)(230700001)(6496005)(53936002)(38730400002)(81156014)(81166006)(8676002)(50226002)(86362001)(101416001)(68736007)(23676002)(1456003)(6246003)(42186005)(61296003)(551544002)(116806002)(230783001)(93886004)(5820100001)(74416001)(7726001); DIR:OUT; SFP:1102; SCL:1; SRVR:DB6PR0701MB2997; H:pc6; FPR:; SPF:None; PTR:InfoNoRecords; A:0; MX:1; LANG:en; 
Received-SPF: None (protection.outlook.com: btconnect.com does not designate permitted sender hosts)
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA3MDFNQjI5OTc7MjM6cXNsWStsaWdYTXRSTEdiOW5LT2llWWRF?= =?utf-8?B?OUp6SzdKVEZybjd0M2xTQkpvd2h4M3pFcm1qNEpnakh1T3ZVQ2dRQXgrVFVy?= =?utf-8?B?Sm45Q29zT1FzWWxKUkJ4dFFja1VZeGNpd1ZQZnRNVXMyZEtPR3pHYU5hWGxs?= =?utf-8?B?VitjVW82UFJqd0NUTGlRaHhqSlJ3LzFyM29zYUhHNnB3aDlpY0RnQkthTGFC?= =?utf-8?B?N0RWWXUwNjlUbEJhV09scE1mdGtoWDJLenZpa09qZkh2Y2N1dkFhN3FCRzJF?= =?utf-8?B?eVEzVnV1VGtqTUlCMVNlWVQza0xpYWM4L1U2NHp2d29xdEwxWWtyalZVcEN5?= =?utf-8?B?dlNDcU1iMGxpa01yWjRReHRNUnBTdTFRZGd6UWtUNklEVjc3Y0I5VC9EdTVC?= =?utf-8?B?YTNnYVY0L3EzN3ZmdU9oV0dCSzhJV0N6OU1QeS9TQnJRRFZEeXR0MTl5Z3Z2?= =?utf-8?B?QTVtQitNQlpGN2g2QVFWOUtBaWFkMXZyalZjb3hqZG5oV0hlbTllUWdyUkhk?= =?utf-8?B?bTZWeUUrZkxKRUFpUDJCeW40dW55dGtWYmhjUi9RYjNuMlN1RGtMSnlIUllv?= =?utf-8?B?NXJvMld3YW1OKzRUMVErYVhYWUxoY2MzVXFrcWM4SFQxOVdCdmZyL1ljWTRT?= =?utf-8?B?a1o4dmx6MklnbUlKT3NqL2FodVF3MHV3TzZWQlBwb0RVckJYa0gyNGNCVi9u?= =?utf-8?B?ZHd4Tk91djNucWM1S3llYjdhVjErY1BUMnJRZjRpSjQ0eXVQOE1EdFRSbTVs?= =?utf-8?B?Ni9sM2c0eUJ1cEs3SmdhbzBnY2hiT3B3bWRXc2ZPbEVlYkhsTW1qaVF6R2hF?= =?utf-8?B?bVNJRWU2UVhsaUFwdGxzWHdDZ003OUVOdGNNT1VLMXBqWFN1d3NEM3E1MGRU?= =?utf-8?B?cVVyQmdYb0hLZGhmVVZaYjFmMXVLdlRXUEo4OG94OUswSXcyVDBOcHpqQmlq?= =?utf-8?B?eEIzWkhiNnVYM2pSank0WFpZaGhJdUs3aGJmSHJnR0dmaktvVTRrT3pFWVlw?= =?utf-8?B?RGh2SUdxeEtMVW1QWGxBQ1UzMXBzYVk1S3ZuRDlmelVaaW5vSU9KUm1ISWtt?= =?utf-8?B?S21rMHVsWWJndGxXbkx1RVpjVFBuZzRqQ2xIUk9NenJpY2NTZGk5eWl2OWYw?= =?utf-8?B?Ry9WU1U2M0dXTXFOWk1qMTlCYmJrR3E5TGh2ZzBFNjhQVHVpMDVBbXZld01o?= =?utf-8?B?aGk4dmxHWEFmaVVFWjAzWWJwQ0Y2Qk5pa21DYnp0QW1RckVSdk1aVjJKUnJj?= =?utf-8?B?TFRBdVZaK0tOSHhjamp4OFkxMWFyMGhaVHFzYXJVc25UNTNXd1BPZTdMek5R?= =?utf-8?B?Snlsc2RLS2FSMlJzMkIzanovTGF4OXEzbC9uSmNRaFUvV1lqMzRQUnpod2VZ?= =?utf-8?B?eWM1NmExb1dQUEtaYmxseGJhNmVxUWxSaCt5SXdWc2tnQmN3OWk5ZkpoMkI5?= =?utf-8?B?ZDhDRmRHZFVONEt5U1V0bGd3OUJZWFlsRzQ5Zm1CUm9HNmVWbkViQ21PSzAv?= =?utf-8?B?SVAyRlBjeUIvQ1ptUDltM0p1YTZjT0tkdkZEMjZjMklBOFdGaFRNOGJGT1F0?= =?utf-8?B?czhYTUxpRmF2NnZML1U0VXk4SE5vRnJxN1hJanUvSGpxOUJGMkwzOVQzU3hL?= =?utf-8?B?U3hPZ28zdGZVODJydzR4b2lZOW9zTmJJNTVxbWI2RnovQVZyU3JIZjhWZkh1?= =?utf-8?B?TVZ5VXhtL1lmc1JTR3pPaVgxVzJRaDR2ZDFlZmQzcVhMS2plenYyd25xSXJ2?= =?utf-8?B?WU1vbkN1RU1EV3hrMEEwK2pVLzc5ckRGRU1uR216QlpIb2RLUk52UHZ3SjMr?= =?utf-8?B?NGpjUTFTT1ZlOUM1Zi8yOFNSeDBtYzJ2UUtocGd4dWxocEpIRzRIV1JVRUJN?= =?utf-8?B?czNRNzFxaUMrcWE1K3lSK1hMYkZ6L051aGVMMkh3ZzNiRlRuUFFDQStkd1J1?= =?utf-8?B?MzhqTHByRHpCQUVRdERBMVZqbWgyU2wrZHpMUGp0ZFJBRGZibXBUYmtsczBq?= =?utf-8?B?OVo3djNZK2VBTEhWdHpHaDJ5dDJzM1FEdEh4RGxEcWl3TDMyOCtXUUg0WHdh?= =?utf-8?B?Y0hwUWo4OUV2UHhRZVVVdE1aeHF0UFlnYlAwSjJzNy9SZjFiejJLM3FuMVhK?= =?utf-8?B?dzFWbEw5clRNMTV0N0RhWmNPcFNIdXozcnAzT0hTcUM0VVdqSFh3YitHQUgr?= =?utf-8?B?NVhuQldGRVBKaXA5b1h6K3JEbWYzZ1BsaXpsREdQSmhYTVo5cUdnQWU1OXBM?= =?utf-8?B?LzRlMXBwV3g1UnlSbnI4bHNSWVpZaTBHUUoxVjFYOVd0UTd6UDI0TWxLRGg1?= =?utf-8?Q?7UYwFLfgOLyogh3HFGYXYDvFIIPjuut0zyIVKEO?=
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA3MDFNQjI5OTc7NjpPSlJFV0pCL08reXlGL0U4b3VWeXJER29l?= =?utf-8?B?UEdaSHN3KzV5NHZ2VmZyOWNad0FPNlRhOTNjN3h2bytpN015ekJiNDZCSjd2?= =?utf-8?B?UEROc20wNG9FM1BoZk5EeU54aVBsL1k3cnFCM21iTDdhdG5xc2xQTURMR2E2?= =?utf-8?B?OGRvRkk0dnR3aW5tWUFsOXBPa1hhVGc1WkZySERqT1NWR25HVWVvT3FCY1B5?= =?utf-8?B?c2xDSUY4YW5ZUndMUTl1dEh0WXNPeG4xZTk3ajR4dGZBZis1aEdZT3MySVp6?= =?utf-8?B?UlZHdEpvbW9pUmRNUnF1RXY1RDRmbWF2VlBhSTFmN09VcktIT1FtM2c2c3pC?= =?utf-8?B?eWw1OS9qT3JueDlnZ3JOUDJOdFVzUi9KdkRkZytESWZrNHZsVVoydmlOSDBN?= =?utf-8?B?bGtkeTFYRHFyVG1PclVqSzd4dkJHRGlWcnVnYlpEWTFNRWFtcGk3Rk9RYUJN?= =?utf-8?B?aWg3alF3TVBDOVM4YUY5dzBRZkVoVzk5V2ZpM3YvTjI4UUxqR0JhQ0V5ZVhL?= =?utf-8?B?dVE4blhjQU04ajdadHdtRzk0OXB3WEhrczhHQjc3NUR0TWZLanJRR2hNeG83?= =?utf-8?B?Z0lmTlZxVGFGcUY1UUdmNHVUTFdwaFdncWlaSUxxMzRpSC9KQlBhS2kvSTJk?= =?utf-8?B?RVZZMUhuamtHVWg4UGEwTjNzSGhJMzNleVY4dVdGNWhUSVVnYnBsVllFU1ZZ?= =?utf-8?B?T0MwSDZxOEdXK0FxZGZzSHZmdnNEbVlmcENRZHA5WHFLTmxpcm15azZIRjln?= =?utf-8?B?cTA2MEE4bHJpcExza0FvTDVwaDNLU2x1OGoySStvWnFrbTdNQ29QUjIwZnNr?= =?utf-8?B?R2Q4S05ERUxhWWdBK0JsQUd6SmhPWlhpaDN0ZXl5UFhuakpEeUE5Rm94Sk1D?= =?utf-8?B?cHVVejZYa3c5My9oWlZZM2I2ejZhcWhpcXR1aWZkRWNlSlNLRVUxaGxKYkxE?= =?utf-8?B?Z0JMbTd1UU00UDUyeUIwV2FwaHZGeU5JdDQ2ZjAwSFJCQWpQZkVGNThCQm04?= =?utf-8?B?NVMwY3JJc3dlUEM0S0lDVzduc0lyTTAwWTZkU3pJb3hlZVZjbUFuOU5LQmpa?= =?utf-8?B?QXF3d1hLN3dJNVNWZ0t0TGltdUdpbGRLTlpDM0psL0Njd3NBZ2lQd2M3QUln?= =?utf-8?B?bHFJQ0k5STh3aTYvczJXNUkwa2FVdFFaVFRPTGtIcmN6U3drYmYyTFJCbjl1?= =?utf-8?B?Zkx2MlJBcWgzdXdieWxEWDVidER4cDM3ZWl5OFYyTExKbkxiZm41R2VZd0lW?= =?utf-8?B?MEV5NzBWaXhQdVZZc1Bxci9kVHdBSWxqNGVXcDM5STRhYksybjV0UVpUczFS?= =?utf-8?Q?h5mxYJ903xZ76noLBvPTfJaDIhMkJ8lCM=3D?=
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2997; 5:07hmdc0eiodE6/ByuI23wd0+42XZ2LJULLzK/WrxhfqePhyXuwx8X/Y+5QdnjypPcktJ2+mYxACgMC1uBWJvJNQaw1gdC+UsdTj0StCbMFE6jqF0JqZva7o6LFpiAMfbq7dSrbAQvMr11tZQa6mcFHm/qSu2FvV4wrzRrvU8Aaz5QQUUwPGyIJWmcd34agAEalHBiKrmiYtx/HbFlJZe6IggcwniE6Z5YuvgBfC240fesv4Sk7wdNbJW73I16KeYBavciNnb08H8V0mrIsSdHIyCZD53IBo5xaDzXk30ou9TW53+fkmAN8QixZ/tDiOKjuzxXfps5eYym3pDy4Oz8CZs+YjgLne8OK1TjaMaV/wMEhdlq/XjRL2Nofl5m5KC+lpwNavVRWA5+i5COYsDrb7DSyrBRqWZWEH95IEONKvKF2gfN/eUwZuBlOHV4mq2yJ++iMA5ifigaPmYa/tq3uDQmBIQM954iTQC5FF5qrscT1fKK2OjRt6s9JpVvM/W; 24:/OTXyharxp8xrSVzRP6b8KWeRGtRNW6TrFB4WDTRwo0c4cUk0srgQOuGtcqr7CBfEfU65/1jUQdFVLw+JKA9YvU47rF712IZDzgJIjNSems=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2997; 7:8oZGSo0E039Nrp2WSw9bS8OH+HydgGhyfWsik9WzHeKFJL47U8K8GoW0f/SwihmAuHFMq43xxiuVNH1OwLV72zyaCNKjnavTKGsyAuHNmDbz85f0j8GOX0aH8bxz8TwyQyAN0bA6DyhD92fvN+65lYVO8AQ8v2p2sm7PmqHYzRr0aZJR+gxnq/ntXmdtsu4zVvJJMr05uEG8RsRXxVjrRqavDtE91jN1Pc52oL4btzAxS8tqxicXpzafzMFFV2EOhzAeDRd9rZgIOW3JsW0S6FGET+A1FMTp+a+mutqM8HXUGOqJJLD0TXrsdZxonlxKEsoAPQYPfZaWN9uJPtCz7IR/Bg2EY3m7d2gUjf8IjQZHF7ZVbpCGFgmYHXCJExJk2XzIGJDsxBrOZ9QN/iCEgKkFD9Q/PYffizfF1gK/wFvim2EuSuUtgzqyiXDfplDb+Fvghn+wkxaGm87zAMMpcTfXkxYaak3EYyAyowc8Q5kpA+0nmy2pPZbcRHn9vOvPfiT3+zwh2a6dk4raC5VlFTS8TCT1BN9jZ6liACg6+oTjqdq8MEJqXzNCfvp4aH7HLaHUzVWC07/rkGGj8bRLTJOhIhMO0gJJJSf9Ih40TMyMNTWTGpUrA9Bj3jBYznugsFZGURzG2MzUbzr/mmuunjtgRvhQZrfAmcnGAqMsHQiwiywO3DSC+48Bs2PlZmBeeWiEK7+V+sjIYFKIS8Y6EfpzrJcrQrr3tcNPLQJMWWWNhYE9HDPDqqC8QUHX6VKqgsUd2xkCUt1KIgcgj6i8n49bH3rvqjgTfWTaRMXsMuY=
X-OriginatorOrg: btconnect.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2017 10:20:16.3974 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0701MB2997
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/SeUc9QzfAnVQ3joLxKm061M9nPM>
Subject: Re: [yang-doctors] [Netconf] last call review of draft-ietf-netconf-keystore-02
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 02 Aug 2017 10:20:23 -0000

Kent

Mostly yes.

I think the one further change that I would like is to move away from
   o  An unordered list of pinned SSH host key sets...

I think that the scope should be a public key, not limited to SSH and
not restricted to what is referred to as  a host key.  Typically this
would be in a client enabling it to trust a server to establish a secure
channel which may then be used for further authentication.  I see this
as far more common than SSH.

And since the scope is asymmetric cryptography, I would state the
obvious in the

Abstract

This document defines a YANG module for a system-level mechanism,
called a "keystore", containing security-sensitive data including
private keys, pinned certificates, and public keys, such as pinned SSH
host-keys, for use in asymmetric cryptography.

Tom Petch


----- Original Message -----
From: "Kent Watsen" <kwatsen@juniper.net>
Sent: Tuesday, August 01, 2017 7:24 PM

> Hi Tom,
>
> > Changing the subject because my tack is slightly different.
> >
> > I cannot reconcile this I-D with my (mis?)understanding of
cryptography.
> >
> > Stepping back, I see two types of keys, symmetric where one key is
used
> > for encryption and decryption, and asymmetric, where there are two
keys,
> > public and private, mathematically related but impossible to derive
one
> > from the other, one used to encrypt, the other to decrypt.
> >
> > I see this I-D as solely concerned with asymmetric keys.
>
> Correct, though there was a time when we considered having a
"password"
> leaf, which would've been a form of a symmetric key.
>
>
> > Public and private key pairs must be generated together, after which
the
> > private key must stay secret else you have no security.  Public keys
by
> > contrast are public for all to know.  The challenge is
authenticating
> > that the public key really is the public key of who you think it is.
> > Most public keys arrive by certificates which then allow you to
follow a
> > chain thereof to a hopefully trustworthy trust anchor.  SSH, and
some
> > other protocols, are different in distributing naked public keys and
> > relying on some other means of authenticating them (e.g. Trust on
First
> > Use).
>
> Correct, though it's worth noting that SSH can also distribute X.509
certs
> per RFC 6187.
>
>
> > So when you say  "AFAICT, the system should be able to generate its
> > host-key from the private-key itself." that is at odds with my
> > understanding and would lead to an absence of security.
>
> My mistake, I was using the old name "private-key" before we changed
> it to just "key", and what I really meant to say was that the system
> should be able to convert /keystore/keys/key/private-key into a
> representation suitable for software consumption (e.g., an openssh
> host-key file).
>
>
> > When the I-D says, "that might be used to hold onto private keys
> > and certificates "I struggle to see the point.  Indeed, the
> > module contains public keys as well as
> > "leaf public-key {
> >          config false;
> >          mandatory true;"
> > so you are really storing public/private key pairs (which may be
> > generated on the box).
>
> That particular sentence, in the Abstract and Introduction, has been
> rewritten based on Juergen's comments.  The abstract now says:
>
>    This document defines a YANG module for a system-level mechanism,
>    called a "keystore", containing security-sensitive data including
>    private keys, pinned certificates, and pinned SSH host-keys.
>
> The Introduction now says:
>
>    This document defines a YANG [RFC7950] module for a system-level
>    mechanism, herein called a "keystore".  The keystore provides a
>    centralized location for security sensitive data, as described
below.
>
>    This module has the following characteristics:
>
>    o  A configurable list of keys, each a public/private key pair.  If
a
>       key is used to sign a certificate signing request (CSR), which
is
>       then signed by a certificate authority (CA), then the resulting
>       certificate may be configured as being associated with the key.
>       Keys are expected to be configured using standard configuration
>       mechanisms, however, to support hardware that generates keys,
the
>       key may also be created via an action called 'generate-private-
>       key" action.  Keys may also be preinstalled (e.g., a key
>       associated to an IDevID [Std-802.1AR-2009] certificate).
>
>    o  An unordered list of pinned certificate sets...<snip/>
>    o  An unordered list of pinned SSH host key sets...<snip/>
>    o  An action to request the server to generate a new key...<snip/>
>    o  An action to request the server to generate a CSR...<snip/>
>    o  A notification...<snip/>
>
> Does this help?  What "point" are you not seeing?
>
>
> > The I-D also says "Certificates associated with this private key."
> > which defeats me.  A certificate or chain thereof gives me a public
key,
> > never a private one, and the means to authenticate the public key.
>
> Again, this goes back the old name "private-key" before we changed
> it to just "key".  I agree that it's wrong at face-value.  Above you
> can see how this text was changed.  Now what it says makes more sense.
>
>
> > A public key may or may not have a certificate or chain thereof.
>
> true.
>
>
> > A TLS client would likely have both but will rarely have a private
> > key.
>
> True, assuming client certificate based authentication is "rare".
>
>
> > A server of any protocol (except SSH and such like) will have a
> > public/private key pair and a certificate (and likely a chain
thereof)
> > to send to any enquiring client along with the public key.  An SSH
> > server would have a public/private key pair but likely no
certificates.
>
> All true
>
>
> > So, I cannot reconcile my understanding with the I-D.
>
> I think it was mostly due to the whole "private-key" to "key" rename
> not having percolated through all the text yet.  Yes?
>
>
> > Tom Petch
>
> Kent
>
>
>
>
>


From nobody Wed Aug  2 14:37:26 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id ABEE2129ACD; Wed,  2 Aug 2017 14:37:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.012
X-Spam-Level: 
X-Spam-Status: No, score=-3.012 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=-1, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yeIR51XTHQ1m; Wed,  2 Aug 2017 14:37:17 -0700 (PDT)
Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0100.outbound.protection.outlook.com [104.47.36.100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CCD2E124B0A; Wed,  2 Aug 2017 14:37:16 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=9qIyZybMLL+W9kuYAr5mz+GuP5aZPIjEQGhKXvRKzP0=; b=C5AJEihuhLrjUz+YGugG4PRbb3oznZYQyhTg9NQLIcxS1aHS+9Q5qJY25NhObxKplUqsa/e+TtFhPj9/4+ny/UUenRPGMT4CkcSwxYZ8jQMSza4hZ+xTVowpu+bBMsHcSyVIbX0n9rJ0oqOm3b2qkGlaLk9yCikweAKjUc5VZnM=
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com (10.160.117.151) by BN3PR0501MB1521.namprd05.prod.outlook.com (10.161.217.11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1320.10; Wed, 2 Aug 2017 21:37:15 +0000
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) by BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) with mapi id 15.01.1320.010; Wed, 2 Aug 2017 21:37:15 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: t.petch <ietfc@btconnect.com>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
CC: "draft-ietf-netconf-keystore.all@ietf.org" <draft-ietf-netconf-keystore.all@ietf.org>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: [Netconf] last call review of draft-ietf-netconf-keystore-02
Thread-Index: AQHTCq8XkNqYUxlm6UGsbvnPncWRP6JvjmEAgAFOJnyAAHoOgA==
Date: Wed, 2 Aug 2017 21:37:14 +0000
Message-ID: <FE5D497F-2B78-4CFE-8517-6924C04FAD12@juniper.net>
References: <150028100874.32703.14161403810529927281@ietfa.amsl.com> <B1AC6895-5681-48F8-B7E7-418118120B4E@juniper.net> <20170720165942.GB21506@elstar.local> <F5E9973C-FCCD-4A96-B0D3-8C735CE911D3@juniper.net> <20170728073923.GA28870@elstar.local> <701F31A6-9941-4DE4-AE7E-00E859F103F8@juniper.net> <20170728154008.GA29865@elstar.local> <53886D3E-8A0C-4664-A7BD-1E708A80EE9D@juniper.net> <20170728170930.GA30054@elstar.local> <04f301d30aae$7482e900$4001a8c0@gateway.2wire.net> <7C4C9B41-7343-4FCD-AB0F-0131F64B45BF@juniper.net> <07d301d30b78$50b9a0c0$4001a8c0@gateway.2wire.net>
In-Reply-To: <07d301d30b78$50b9a0c0$4001a8c0@gateway.2wire.net>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/f.20.0.170309
x-originating-ip: [66.129.241.11]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BN3PR0501MB1521; 6:RuTbir01IJ5cfBg4LIVWPkD/ZFPdrYpEpqIumLAAEF0jp87VIfbwyLr2Eb4Q6vAWQU0M7PCoh1FJvG+m9sB4KnzbF22rTkZCULYMnRl4HIyKC8ePslNdNX+Q5A8kzWb+qb2Bl5w5g+u1/3c4E6xUw+3u0GzmEvoeUDtOIx+CaHN4Vy6xFsYfYElSv4Qnvl1O5RjdcJdfOKerMRE29OhR6CL9yE93eXxkX8jW3c2uqvq4+z2qH4DniN7gY4rF+LpxONyRR+82mOs2Lly3h8xDuFhfhjWcG+KvBEewgoxgIksBa+U2/bffXuFWKc3jmya25g27iv1vrVMmGjmNSQK71g==; 5:EyKqTeJSNHn/0xStcFiV3sRXuNr6QaEwVFokC83z9C1aV9aAmt6nzI1U+uKbBaWIx85DO5Plp6K9Ti+m2nwv4dZFjBCIvVpKG6rrW689NPirTHSR9UmCEcaWuckz3cIutlV7Lt88X+RIZV5a2R8Tsw==; 24:BFI4m2qm43MY7OHuUJdszNGgrx09RQ+NWAa0RgKZ1v7k6DWfK4JWZtTk+P875kNEMuHKe9QM7I2JqNK6vQHwcKpttTHjKGgU3h7XL5RgFos=; 7:sd52p3/rg8Vq3nGlcgLfBvWn3oFXt8YptS8eKHv0QtrEGr/Ddpxj0tUTdyaX7XreMBvOa3x44ZZN6davlrFFe4VJpBnyt4vGyCSBMYYK8WB0s+yRTfMxOopAAacLIJvRvuOsEjXJJ+F5Mta2mDl33ENso1hO6jlmW8yxLAyEEYgjM1ekQmUfWqXag7Gvr6EM2LEOkhBbN18bS50cmfiQK2JjFblA5brht2oY09xrwmc=
x-ms-office365-filtering-correlation-id: 429abd52-a287-463e-bebd-08d4d9eea481
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(48565401081)(2017052603031)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BN3PR0501MB1521; 
x-ms-traffictypediagnostic: BN3PR0501MB1521:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=kwatsen@juniper.net; 
x-exchange-antispam-report-test: UriScan:(158342451672863);
x-microsoft-antispam-prvs: <BN3PR0501MB1521AD05E3C0224E8AEACB2EA5B00@BN3PR0501MB1521.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(100000703101)(100105400095)(93006095)(93001095)(10201501046)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123558100)(20161123564025)(20161123555025)(20161123560025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN3PR0501MB1521; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN3PR0501MB1521; 
x-forefront-prvs: 0387D64A71
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(39450400003)(39850400002)(39840400002)(39410400002)(39400400002)(39860400002)(199003)(76104003)(189002)(51444003)(189998001)(2900100001)(101416001)(3660700001)(33656002)(81156014)(8676002)(81166006)(8936002)(2950100002)(229853002)(68736007)(3280700002)(14454004)(25786009)(305945005)(2906002)(106356001)(86362001)(105586002)(7736002)(3846002)(6116002)(102836003)(93886004)(50986999)(54356999)(230783001)(66066001)(76176999)(4326008)(5660300001)(53936002)(6246003)(83506001)(97736004)(478600001)(8666007)(99286003)(38730400002)(4001350100001)(54906002)(82746002)(6506006)(77096006)(36756003)(6486002)(83716003)(6436002)(6512007); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR0501MB1521; H:BN3PR0501MB1442.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; 
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <6435E4CCF4E34E40B928B980E2F6CB25@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Aug 2017 21:37:14.9930 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0501MB1521
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/JCIcc3cdYiTb6-VexSDZEF3IZAY>
Subject: Re: [yang-doctors] [Netconf] last call review of draft-ietf-netconf-keystore-02
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 02 Aug 2017 21:37:18 -0000

SGkgVG9tLA0KDQoNCj4gTW9zdGx5IHllcy4NCj4NCj4gSSB0aGluayB0aGUgb25lIGZ1cnRoZXIg
Y2hhbmdlIHRoYXQgSSB3b3VsZCBsaWtlIGlzIHRvIG1vdmUgYXdheSBmcm9tDQo+ICAgbyAgQW4g
dW5vcmRlcmVkIGxpc3Qgb2YgcGlubmVkIFNTSCBob3N0IGtleSBzZXRzLi4uDQo+DQo+IEkgdGhp
bmsgdGhhdCB0aGUgc2NvcGUgc2hvdWxkIGJlIGEgcHVibGljIGtleSwgbm90IGxpbWl0ZWQgdG8g
U1NIIGFuZA0KPiBub3QgcmVzdHJpY3RlZCB0byB3aGF0IGlzIHJlZmVycmVkIHRvIGFzICBhIGhv
c3Qga2V5LiAgVHlwaWNhbGx5IHRoaXMNCj4gd291bGQgYmUgaW4gYSBjbGllbnQgZW5hYmxpbmcg
aXQgdG8gdHJ1c3QgYSBzZXJ2ZXIgdG8gZXN0YWJsaXNoIGEgc2VjdXJlDQo+IGNoYW5uZWwgd2hp
Y2ggbWF5IHRoZW4gYmUgdXNlZCBmb3IgZnVydGhlciBhdXRoZW50aWNhdGlvbi4gIEkgc2VlIHRo
aXMNCj4gYXMgZmFyIG1vcmUgY29tbW9uIHRoYW4gU1NILg0KDQpBZ3JlZWQuDQoNCj4gQW5kIHNp
bmNlIHRoZSBzY29wZSBpcyBhc3ltbWV0cmljIGNyeXB0b2dyYXBoeSwgSSB3b3VsZCBzdGF0ZSB0
aGUNCj5vYnZpb3VzIGluIHRoZSBBYnN0cmFjdA0KPg0KPiBUaGlzIGRvY3VtZW50IGRlZmluZXMg
YSBZQU5HIG1vZHVsZSBmb3IgYSBzeXN0ZW0tbGV2ZWwgbWVjaGFuaXNtLA0KPiBjYWxsZWQgYSAi
a2V5c3RvcmUiLCBjb250YWluaW5nIHNlY3VyaXR5LXNlbnNpdGl2ZSBkYXRhIGluY2x1ZGluZw0K
PiBwcml2YXRlIGtleXMsIHBpbm5lZCBjZXJ0aWZpY2F0ZXMsIGFuZCBwdWJsaWMga2V5cywgc3Vj
aCBhcyBwaW5uZWQgU1NIDQo+IGhvc3Qta2V5cywgZm9yIHVzZSBpbiBhc3ltbWV0cmljIGNyeXB0
b2dyYXBoeS4NCg0KWW91J3JlIHRvdWNoaW5nIGEgcG9pbnQgc2ltaWxhciB0byB3aGF0IHRoYXQg
SnVlcmdlbiByYWlzZWQuICBJIHRoaW5rDQp0aGUgc29sdXRpb24gaGVyZSBpcyB0byByZWZhY3Rv
ciB0aGUgaWV0Zi1rZXlzdG9yZSBtb2R1bGUgaW50byBhIGJhc2UNCm1vZHVsZSwgd2hpY2ggZG9l
c24ndCBtZW50aW9uIGFueXRoaW5nIHByb3RvY29sLXNwZWNpZmljLCBhbmQgYXVnbWVudGluZw0K
bW9kdWxlcyB0aGF0IGFyZSBwcm90b2NvbCBzcGVjaWZpYy4gIElmIHRoaXMgd2VyZSBkb25lLCB0
aGVuIHRoZQ0KYWJzdHJhY3QgbWlnaHQgcmVhZDoNCg0KICAgVGhpcyBkb2N1bWVudCBkZWZpbmVz
IGEgWUFORyBtb2R1bGUgZm9yIGEgc3lzdGVtLWxldmVsIG1lY2hhbmlzbSwNCiAgIGNhbGxlZCBh
ICJrZXlzdG9yZSIsIGNvbnRhaW5pbmcgc2VjdXJpdHktc2Vuc2l0aXZlIGRhdGEsIHN1Y2ggYXMN
CiAgIGFzeW1tZXRyaWMgcHJpdmF0ZSBrZXlzLiAgVGhpcyBkb2N1bWVudCBkZWZpbmVzIGFkZGl0
aW9uYWwgbW9kdWxlcw0KICAgdGhhdCBhdWdtZW50IHRoZSBiYXNlIGtleXN0b3JlIG1vZHVsZSBh
ZGRpbmcgc3VwcG9ydCBmb3IgWC41MDkNCiAgIGFuZCBTU0guDQoNCldoYXQgZG8geW91IHRoaW5r
Pw0KDQpLZW50DQoNCg0KDQoNCg==


From nobody Wed Aug  2 16:47:54 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2833D126C7A; Wed,  2 Aug 2017 16:47:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.022
X-Spam-Level: 
X-Spam-Status: No, score=-2.022 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id D1qa0X9p8EOa; Wed,  2 Aug 2017 16:47:44 -0700 (PDT)
Received: from NAM03-CO1-obe.outbound.protection.outlook.com (mail-co1nam03on0138.outbound.protection.outlook.com [104.47.40.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0E101131C91; Wed,  2 Aug 2017 16:47:43 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Ezmdko83GyYXDDd5M7XaUMvrRECPOvr7xk4FUhHkmGU=; b=DbphlQKJ1BNaShrIbMe4TK8TeAgkSvYTp8Fa3cB7E2R1I76OKbhnoairCcMFPGoZH2FVlvUinxYRjL36lQrPYlM1iaPvfg9CoCppBIHXW+0Rr75MVp4ncazeGkdvetcmReZmOrKh3mZ9oOMoh8zPzSjp28gt4y4Uf6bky0C21x8=
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com (10.160.117.151) by BN3PR0501MB1170.namprd05.prod.outlook.com (10.160.113.155) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1320.10; Wed, 2 Aug 2017 23:47:42 +0000
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) by BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) with mapi id 15.01.1320.010; Wed, 2 Aug 2017 23:47:42 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
CC: "yang-doctors@ietf.org" <yang-doctors@ietf.org>, "draft-ietf-netconf-keystore.all@ietf.org" <draft-ietf-netconf-keystore.all@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: Yangdoctors last call review of draft-ietf-netconf-keystore-02
Thread-Index: AQHS/tjFB6LSB6mMA0ixt1H16U9uU6Jbyb8AgAEruACAC1e7gIAAnl+AgAA4dACAAE3eAP//00kAgABFrwCABIqHgIAATTQAgAMwH4A=
Date: Wed, 2 Aug 2017 23:47:42 +0000
Message-ID: <DEE37B41-0EB4-43E3-8C48-34057BEB4AF6@juniper.net>
References: <150028100874.32703.14161403810529927281@ietfa.amsl.com> <B1AC6895-5681-48F8-B7E7-418118120B4E@juniper.net> <20170720165942.GB21506@elstar.local> <F5E9973C-FCCD-4A96-B0D3-8C735CE911D3@juniper.net> <20170728073923.GA28870@elstar.local> <701F31A6-9941-4DE4-AE7E-00E859F103F8@juniper.net> <20170728154008.GA29865@elstar.local> <53886D3E-8A0C-4664-A7BD-1E708A80EE9D@juniper.net> <20170728170930.GA30054@elstar.local> <7079A8FA-A8C6-4677-9DBA-2A00637AD023@juniper.net> <20170731190640.GC32546@elstar.local>
In-Reply-To: <20170731190640.GC32546@elstar.local>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/f.20.0.170309
authentication-results: spf=none (sender IP is ) smtp.mailfrom=kwatsen@juniper.net; 
x-originating-ip: [66.129.241.11]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BN3PR0501MB1170; 6:dfMw7ofG+SbjVQfnn1hH+7BU8f+o5B8yFZ6pOn/GOs8FqUpYLLncLHEAaGLm3IkFLxxR0oLXvLMbRBHPdz+74LYOhHA20XNMBIz+Yolwh6GDGAIbObVcJMRKkGGpXHX4amJy5AwRH34DAe9Vh99xCZS4TwDBC2xq0Uu59UCnhC5WhXgSfDmZZAc7jRHqApC/FOq+ba3y8z4YkKn7i2GNfqZCtGYMmJkWAXe7LJXBB5H1nXkh8x4znNJAfy8KID/RY+UqeEAisxaeezSXBDV/wbGHwdfVq+n7RWGgJ6Yw7cbZbWE1+/JMgNueXSDd96YuJEJyl9wF4GE5twetODHJIA==; 5:YMxk31ePu7XrR3RJrM08ZnC/fIFxiud+3XwOC+ZVr5F0YOzD6FaUeUQQz1S/9pMfTNPBkbmLSXWLw8p8cgf6S2GtElrvRHFGBQEEsx+L/ynwfvvFC8VFdbAXE+uMc3B0z3xrYjon0QbG/iqr9W16Ow==; 24:7LeyfSdr0wlR+bSG5uy9uiG3coHemT7XvB0FqJLR6JC7B4xizSnHbNQP0KAUWVYSLFUAsZccAdPcVgh7JHDDvID6Zc57uDbehTj/IL+x2AE=; 7:bzlWTERp0M4hw7bqJschu8bv8yTKbyWpbqj2rasuAV4FVmTXMHxNYZ87/sr/yBdmwGFZ0RjZBBMfRys1iyrwDx7hVbdAd9bKORbn7N2yV7UzHjwmBEJ9q1XQmwFULiocEUERtPVRTv0OdWKKZci4A3yf4f5bbN1MDBaKgTImOePslFfl+nb1ElRFeYvhF1lAlMgJkIGvrhjCHYzh6hifxOXe0hkH7Pa0OEpwVBFgNY8=
x-ms-office365-filtering-correlation-id: 2d42864d-396b-4b3a-5023-08d4da00ddcc
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603031)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BN3PR0501MB1170; 
x-ms-traffictypediagnostic: BN3PR0501MB1170:
x-exchange-antispam-report-test: UriScan:(158342451672863);
x-microsoft-antispam-prvs: <BN3PR0501MB1170DDC2847DFB38F21C2458A5B00@BN3PR0501MB1170.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(93006095)(93001095)(3002001)(100000703101)(100105400095)(10201501046)(6055026)(6041248)(20161123564025)(20161123560025)(20161123555025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN3PR0501MB1170; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN3PR0501MB1170; 
x-forefront-prvs: 0387D64A71
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(39450400003)(39860400002)(39850400002)(39410400002)(39840400002)(39400400002)(199003)(189002)(43784003)(51444003)(8936002)(478600001)(66066001)(14454004)(6436002)(6916009)(2900100001)(97736004)(230783001)(189998001)(93886004)(83716003)(7736002)(2950100002)(50986999)(305945005)(101416001)(83506001)(54356999)(76176999)(36756003)(86362001)(4001350100001)(68736007)(6512007)(81156014)(81166006)(8676002)(33656002)(82746002)(38730400002)(106356001)(2906002)(3846002)(4326008)(110136004)(54906002)(53936002)(99286003)(5660300001)(102836003)(77096006)(6116002)(6486002)(6506006)(229853002)(25786009)(105586002)(3280700002)(3660700001)(6246003); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR0501MB1170; H:BN3PR0501MB1442.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; 
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <0A668B1CC2E0C14F9B781DCDC03C9F9F@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Aug 2017 23:47:42.1154 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0501MB1170
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/FSv5LOH5CudxZAY2ebjPaSGeYFs>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-netconf-keystore-02
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 02 Aug 2017 23:47:46 -0000

DQpIaSBKdWVyZ2VuLA0KDQo+IDxzbmlwLz4NCj4gWWVzLCB0aGUgaG9zdC1rZXkgcmVzaWRlcyBv
biB0aGUgc2VydmVyLCB0aGUgcHVibGljIHBhcnQgb2YgdGhlIGhvc3QNCj4ga2V5IG1heSBiZSBz
dG9yZWQgb24gYSBjbGllbnQgaW4gYSBrbm93bi1ob3N0cyBmaWxlIHNvIHRoYXQgY2xpZW50IGNh
bg0KPiBjaGVjayB3aGV0aGVyIGl0IHRhbGtzIHRvIHRoZSByaWdodCBzZXJ2ZXIuIFNvIGZhciBz
byBnb29kLg0KPg0KPiBJdCBzZWVtcyAva2V5c3RvcmUvdHJ1c3RlZC1ob3N0LWtleXMvdHJ1c3Rl
ZC1ob3N0LWtleSByZXByZXNlbnRzDQo+IC9ldGMvc3NoL3NzaF9rbm93bl9ob3N0cyAoaS5lLiBh
IF9nbG9iYWxfIGtub3duIGhvc3RzIGxpc3QpIGFuZCB0aGVyZQ0KPiBpcyBubyB3YXkgdG8gbGVh
cm4gdGhlIHB1YmxpYyBrbm93biBob3N0IGtleSBmcm9tIGEgc2VydmVyIHZpYSB0aGUNCj4gWUFO
RyBtb2R1bGUuIENhbiBJIHJlcXVlc3QgY3JlYXRpb24gb2YgYSBoZXcgaG9zdCBrZXk/IFRoZXJl
IGlzDQo+IGdlbmVyYXRlLXByaXZhdGUta2V5IGJ1dCB0aGF0IHNlZW1zIHRvIGJlIG1vcmUgdGll
ZCB0byBYLjUwOSBzdHVmZi4NCg0KVGhlICdnZW5lcmF0ZS1wcml2YXRlLWtleScgYWN0aW9uIGlz
IG5vIHdheSBtZWFudCB0byBiZSBqdXN0IGZvciBYLjUwOQ0Kc3R1ZmYuICBCdXQgSSBhY2tub3ds
ZWRnZSB0aGF0IHRoZXJlIG1pZ2h0IGJlIGEgc2VtYW50aWMtZ2FwIGhlcmUuDQpGb3IgaW5zdGFu
Y2UsIGlmIG9uZSB3YW50cyB0byBhc2sgYW4gU1NIIHNlcnZlciB0byBnZW5lcmF0ZSBhIG5ldw0K
aG9zdC1rZXksIG9uZSBleHBlY3RzIGFuIEFQSSBjYWxsZWQgc29tZXRoaW5nIGxpa2UgJ2dlbmVy
YXRlLWhvc3Qta2V5Jw0KKGluc2lkZSBhbiBTU0ggbmFtZXNwYWNlLCBvciBhcyBhbiBhY3Rpb24g
dG8gdGhlIHNlcnZlciBpbnN0YW5jZSksDQpyYXRoZXIgdGhhbiBmaXJzdCBnZW5lcmF0aW5nIHRo
ZSAna2V5JyBhbmQgdGhlbiBzZXBhcmF0ZWx5IHNheWluZyB0aGF0DQppdCdzIHRoZSBob3N0LWtl
eS4gIEkgdGhpbmsgdGhhdCB0aGlzIGNvdWxkIGJlIGNhdWxrZWQgdXAgdG8gc2F5aW5nDQp0aGF0
IHRoZXJlIGlzIGEgYmFzZSBBUEkgbGF5ZXIgYW5kIHRoZW4sIHNlcGFyYXRlbHksIGhpZ2hlciBs
ZXZlbA0KbGF5ZXJzIHRoYXQgdXNlIGl0LCBidXQgaXQncyB3b3J0aCB0aGUgZGlzY3Vzc2lvbiBp
ZiBpdCBtYWtlcyBzZW5zZQ0KYXQgYWxsLi4uDQoNCg0KPiBOb3RlIHRoYXQgdGhpcyBkb2VzIG5v
dCBtb2RlbCB+Ly5zc2gva25vd24taG9zdHMgc2luY2UgdGhlIGxpc3QgaXMgbm90DQo+IG9uIGEg
cGVyIHVzZXIgYWNjb3VudCBiYXNlLiBJdCB3b3VsZCBhY3R1YWxseSBiZSB0aGUgZXF1aXZhbGVu
Y2Ugb2YgYQ0KPiBnbG9iYWwgL2V0Yy9zc2gvc3NoX2tub3duX2hvc3RzIGZpbGUuDQoNCk5vdCBl
eGFjdGx5LiAgQXMgaXQgaXMgdW5kZXRlcm1pbmVkIHdobywgb3Igd2hpY2ggbW9kZWxzLCBwb2lu
dCB0byB0aGUNCmtleXN0b3JlIGhvc3Qta2V5IGxpc3RzLiAgSW4gc29tZSBkYXRhIG1vZGVscywg
aXQgbWlnaHQgYmUgZ2xvYmFsIGFuZCwNCmluIG90aGVycywgdXNlciBzcGVjaWZpYy4NCg0KDQo+
PiA8c25pcC8+DQo+PiBObywgeW91ciBzeXN0ZW0gbW9zdCBsaWtlbHkgZG9lcyBub3QgdXNlIGEg
a2V5c3RvcmUgbWVjaGFuaXNtLiAgRm9yDQo+PiBpbnN0YW5jZSwgT3BlblNTTCdzIGBzc2gta2V5
Z2VuYCB1dGlsaXR5IGp1c3Qgd3JpdGVzIHRvIGEgbG9jYWwgZmlsZS4NCj4+IFdlJ3JlIGRvaW5n
IHNvbWV0aGluZyBhIGxpdHRsZSBkaWZmZXJlbnQgaGVyZSwgd2hpY2ggaXMgYSBjYXVzZSBmb3IN
Cj4+IGNhcmVmdWwgcmV2aWV3ICh0aGFua3MgYWdhaW4pLiAgVGFraW5nIGEgc3RlcCBiYWNrLCBv
bmUgb2YgdGhlIGRyaXZlcnMNCj4+IGZvciB0aGlzIGtleXN0b3JlIG1lY2hhbmlzbSBpcyB0byBj
ZW50cmFsaXplIHRoZSAvdHJ1c3RlZC1ob3N0LWtleXMNCj4+IGFuZCAvdHJ1c3RlZC1jZXJ0aWZp
Y2F0ZXMsIGFzIHRoZXNlIGxpc3RzIGFyZSByZWZlcmVuY2VkIGZyb20gbWFueQ0KPj4gbG9jYXRp
b25zLiAgTGVzcyBpbXBvcnRhbnQgdG8gY2VudHJhbGl6ZSBhcmUgdGhlIHByaXZhdGUga2V5cywg
YXMNCj4+IHRoZSBrZXlzIChhbHdheXM/KSBoYXZlIGEgc2luZ2xlIHVzZS4gIFRoZSBvbmx5IHJl
YXNvbiBmb3IgY2VudHJhbGl6aW5nDQo+PiB0aGUgcHJpdmF0ZSBrZXlzIGlzIHRvIGdpdmUga2V5
cyBjcmVhdGVkIHZpYSB0aGUgZ2VuZXJhdGUtcHJpdmF0ZS1rZXkNCj4+IGFjdGlvbiBhIHBsYWNl
IHRvIGJlIGxpc3RlZCBiZWZvcmUgdGhleSBhcmUgdXNlZCBmb3Igc29tZSBwdXJwb3NlLi4uDQo+
DQo+IFRoZSBxdWVzdGlvbiBpcyB3aGV0aGVyIHRoZXJlIGlzIHZhbHVlIHRvIGNlbnRyYWxpemUg
YmV5b25kIHRoZQ0KPiBkaWZmZXJuZXQga2V5IHN5c3RlbXMuIElzIHRoZXJlIHJlYWxseSBhZGRl
ZCB2YWx1ZSB0byB0cnkgdG8gdHJlYXQgU1NIDQo+IGtleXMgYW5kIFguNTA5IGluIHRoZSBzYW1l
IGxpc3QgaW5mcmFzdHJ1Y3R1cmUgb3IgYXJlIHRoZXkgYXQgdGhlIGVuZA0KPiBqdXN0IGRpZmZl
cmVudCB0aGluZ3M/IFdoYXQgYWJvdXQgb3RoZXIga2V5cywgaS5lLiwgZm9yIHNpZ25pbmcgRE5T
DQo+IHpvbmVzIG9yIFJQS0kga2V5cz8gSXMgaXQgdXNlZnVsIHRvIHRyeSB0byBwdXQgYWxsIG9m
IHRoZXNlIGtleXMgdGhhdA0KPiBzZXJ2ZSBkaWZmZXJlbnQgcHVycG9zZXMgaW50byBhIGNvbW1v
biBzdHJ1Y3R1cmU/IFRoZSBvcGVuIHNvdXJjZQ0KPiBwZW9wbGUgbWFpbnRhaW5pbmcgc29mdHdh
cmUgcGFja2FnZXMgc2VlbSB0byBrZWVwIHRoaW5ncyBzZXBhcmF0ZS4gSXMNCj4gSnVub3MgaGF2
aW5nIHN1Y2ggYSBjZW50cmFsaXplZCBhc3ltbWV0cmljIGtleXN0b3JlPyBIb3cgYWJvdXQgSU9T
IFhSPw0KPiBPdGhlcnM/IElmIG5vdCwgd2h5IHdvdWxkIGEgc3RhbmRhcmQgZG8gdGhpcz8NCg0K
SlVOT1MgaXMgbm90IGhhdmluZyBhIGNlbnRyYWxpemVkIGtleXN0b3JlLiAgSSBjYW4ndCBzcGVh
ayBmb3IgSU9TIG9yDQpvdGhlcnMsIGJ1dCBJIGd1ZXNzIG5vdC4gIFRoaXMgbW9kZWwgaXMgc3Vn
Z2VzdGluZyBhICpjb25jZXB0dWFsKg0Ka2V5c3RvcmUuICAgQXMgdGhlIGtleXN0b3JlIGRyYWZ0
IHNheXM6DQoNCiAgIEl0IGlzIG5vdCByZXF1aXJlZCB0aGF0IGEgc3lzdGVtIGhhcyBhbiBvcGVy
YXRpbmcgc3lzdGVtIGxldmVsDQogICBrZXlzdG9yZSB1dGlsaXR5IHRvIGltcGxlbWVudCB0aGlz
IG1vZHVsZS4NCg0KQnV0IHRvIHlvdXIgaGlnaGVyLWxldmVyIHF1ZXN0aW9uLCBpcyB0aGVyZSB2
YWx1ZSB0byB0cmVhdGluZyBzdWNoDQp2YXJpb3VzIGtleXMgc2ltaWxhcmx5LCBhbGwgSSBjYW4g
c2F5IGlzIHRoYXQgYWxsIHN1Y2ggcHJpdmF0ZSBrZXlzDQpzaG91bGQgYmUgcHJvdGVjdGVkIGFu
ZCwgYXMgc3VjaCwgdGhlIG5hY206ZGVmYXVsdC1kZW55LWFsbCBwcm9wZXJ0eQ0KZ2l2ZW4gaGVy
ZSBpcyBhcHJvcG9zLg0KDQpLZW50DQoNCg0KDQoNCg0K


From nobody Wed Aug  2 23:38:13 2017
Return-Path: <j.schoenwaelder@jacobs-university.de>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A0ABB132294; Wed,  2 Aug 2017 23:38:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level: 
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id iz5IqnfYvV_m; Wed,  2 Aug 2017 23:38:02 -0700 (PDT)
Received: from atlas5.jacobs-university.de (atlas5.jacobs-university.de [212.201.44.20]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0710A132297; Wed,  2 Aug 2017 23:38:02 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas5.jacobs-university.de (Postfix) with ESMTP id D3618375; Thu,  3 Aug 2017 08:38:00 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas5.jacobs-university.de ([10.70.0.217]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10032) with ESMTP id jGt2kgtbcBfY; Thu,  3 Aug 2017 08:37:58 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas5.jacobs-university.de (Postfix) with ESMTPS; Thu,  3 Aug 2017 08:38:00 +0200 (CEST)
Received: from localhost (demetrius4.jacobs-university.de [212.201.44.49]) by hermes.jacobs-university.de (Postfix) with ESMTP id AEA0C200BC; Thu,  3 Aug 2017 08:38:00 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius4.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id B0TnYDIqIaIe; Thu,  3 Aug 2017 08:37:59 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id D82E1200BA; Thu,  3 Aug 2017 08:37:59 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id C214D40079FA; Thu,  3 Aug 2017 08:37:59 +0200 (CEST)
Date: Thu, 3 Aug 2017 08:37:59 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Kent Watsen <kwatsen@juniper.net>
Cc: "yang-doctors@ietf.org" <yang-doctors@ietf.org>, "draft-ietf-netconf-keystore.all@ietf.org" <draft-ietf-netconf-keystore.all@ietf.org>,  "netconf@ietf.org" <netconf@ietf.org>
Message-ID: <20170803063759.GC35265@elstar.local>
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
Mail-Followup-To: Kent Watsen <kwatsen@juniper.net>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, "draft-ietf-netconf-keystore.all@ietf.org" <draft-ietf-netconf-keystore.all@ietf.org>,  "netconf@ietf.org" <netconf@ietf.org>
References: <20170720165942.GB21506@elstar.local> <F5E9973C-FCCD-4A96-B0D3-8C735CE911D3@juniper.net> <20170728073923.GA28870@elstar.local> <701F31A6-9941-4DE4-AE7E-00E859F103F8@juniper.net> <20170728154008.GA29865@elstar.local> <53886D3E-8A0C-4664-A7BD-1E708A80EE9D@juniper.net> <20170728170930.GA30054@elstar.local> <7079A8FA-A8C6-4677-9DBA-2A00637AD023@juniper.net> <20170731190640.GC32546@elstar.local> <DEE37B41-0EB4-43E3-8C48-34057BEB4AF6@juniper.net>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <DEE37B41-0EB4-43E3-8C48-34057BEB4AF6@juniper.net>
User-Agent: Mutt/1.6.0 (2016-04-01)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/SdwCIQpNDqVw8BrEBFVJk2WTj4Q>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-netconf-keystore-02
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 03 Aug 2017 06:38:05 -0000

On Wed, Aug 02, 2017 at 11:47:42PM +0000, Kent Watsen wrote:
> 
> Hi Juergen,
> 
> > <snip/>
> > Yes, the host-key resides on the server, the public part of the host
> > key may be stored on a client in a known-hosts file so that client can
> > check whether it talks to the right server. So far so good.
> >
> > It seems /keystore/trusted-host-keys/trusted-host-key represents
> > /etc/ssh/ssh_known_hosts (i.e. a _global_ known hosts list) and there
> > is no way to learn the public known host key from a server via the
> > YANG module. Can I request creation of a hew host key? There is
> > generate-private-key but that seems to be more tied to X.509 stuff.
> 
> The 'generate-private-key' action is no way meant to be just for X.509
> stuff.  But I acknowledge that there might be a semantic-gap here.
> For instance, if one wants to ask an SSH server to generate a new
> host-key, one expects an API called something like 'generate-host-key'
> (inside an SSH namespace, or as an action to the server instance),
> rather than first generating the 'key' and then separately saying that
> it's the host-key.  I think that this could be caulked up to saying
> that there is a base API layer and then, separately, higher level
> layers that use it, but it's worth the discussion if it makes sense
> at all...

Sound complex and unclear to me.
 
> > Note that this does not model ~/.ssh/known-hosts since the list is not
> > on a per user account base. It would actually be the equivalence of a
> > global /etc/ssh/ssh_known_hosts file.
> 
> Not exactly.  As it is undetermined who, or which models, point to the
> keystore host-key lists.  In some data models, it might be global and,
> in others, user specific.

OK, but very different from how implementations work (they tend to
store account specific known host keys in account specific places).

> >> <snip/>
> >> No, your system most likely does not use a keystore mechanism.  For
> >> instance, OpenSSL's `ssh-keygen` utility just writes to a local file.
> >> We're doing something a little different here, which is a cause for
> >> careful review (thanks again).  Taking a step back, one of the drivers
> >> for this keystore mechanism is to centralize the /trusted-host-keys
> >> and /trusted-certificates, as these lists are referenced from many
> >> locations.  Less important to centralize are the private keys, as
> >> the keys (always?) have a single use.  The only reason for centralizing
> >> the private keys is to give keys created via the generate-private-key
> >> action a place to be listed before they are used for some purpose...
> >
> > The question is whether there is value to centralize beyond the
> > differnet key systems. Is there really added value to try to treat SSH
> > keys and X.509 in the same list infrastructure or are they at the end
> > just different things? What about other keys, i.e., for signing DNS
> > zones or RPKI keys? Is it useful to try to put all of these keys that
> > serve different purposes into a common structure? The open source
> > people maintaining software packages seem to keep things separate. Is
> > Junos having such a centralized asymmetric keystore? How about IOS XR?
> > Others? If not, why would a standard do this?
> 
> JUNOS is not having a centralized keystore.  I can't speak for IOS or
> others, but I guess not.  This model is suggesting a *conceptual*
> keystore.   As the keystore draft says:
> 
>    It is not required that a system has an operating system level
>    keystore utility to implement this module.
> 
> But to your higher-lever question, is there value to treating such
> various keys similarly, all I can say is that all such private keys
> should be protected and, as such, the nacm:default-deny-all property
> given here is apropos.
>

It is easy to specify nacm:default-deny-all on multiple branches. I am
concerned about trying to create a unified asymmetric keystore that
nobody really has experience with and that maintenance of it may
become a real problem given that this would involve collaboration and
coordination between multiple WGs in the IETF (ideally this work
should be done by security WGs).

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Fri Aug  4 05:12:46 2017
Return-Path: <ietfc@btconnect.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7B7C212700F; Fri,  4 Aug 2017 05:12:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.921
X-Spam-Level: 
X-Spam-Status: No, score=-1.921 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=btconnect.onmicrosoft.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8FwWIOBLujD9; Fri,  4 Aug 2017 05:12:42 -0700 (PDT)
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0091.outbound.protection.outlook.com [104.47.1.91]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EB08F13216B; Fri,  4 Aug 2017 05:12:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=btconnect.onmicrosoft.com; s=selector1-btconnect-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=q/JgCZRDoDNu5elTNd+aT4ZC6a8CCXcnM6AH8rojtiU=; b=UcKU3A8NdtNJbMd4UZVzRkF7WbDrwtRt0+gzlmIc34vVpEOBpNV0OTk3DCh38wQBxnaZR8/LGad1rNBTz78Sc9s+QiYrpu3aKyKEP80gU0ynO9azsoOWmdHKcxmFeZ7b/AVukFiWQxjpXOVsOWLODvb/1yqlYCz2p3QrTZLpsdQ=
Received: from pc6 (86.176.20.38) by HE1PR0701MB3002.eurprd07.prod.outlook.com (2603:10a6:3:4d::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1304.10; Fri, 4 Aug 2017 12:12:39 +0000
Message-ID: <042d01d30d1a$56e2eee0$4001a8c0@gateway.2wire.net>
From: "t.petch" <ietfc@btconnect.com>
To: "Kent Watsen" <kwatsen@juniper.net>, "Juergen Schoenwaelder" <j.schoenwaelder@jacobs-university.de>
Cc: <draft-ietf-netconf-keystore.all@ietf.org>, <yang-doctors@ietf.org>, <netconf@ietf.org>
References: <150028100874.32703.14161403810529927281@ietfa.amsl.com> <B1AC6895-5681-48F8-B7E7-418118120B4E@juniper.net> <20170720165942.GB21506@elstar.local> <F5E9973C-FCCD-4A96-B0D3-8C735CE911D3@juniper.net> <20170728073923.GA28870@elstar.local> <701F31A6-9941-4DE4-AE7E-00E859F103F8@juniper.net> <20170728154008.GA29865@elstar.local> <53886D3E-8A0C-4664-A7BD-1E708A80EE9D@juniper.net> <20170728170930.GA30054@elstar.local> <04f301d30aae$7482e900$4001a8c0@gateway.2wire.net> <7C4C9B41-7343-4FCD-AB0F-0131F64B45BF@juniper.net> <07d301d30b78$50b9a0c0$4001a8c0@gateway.2wire.net> <FE5D497F-2B78-4CFE-8517-6924C04FAD12@juniper.net>
Date: Fri, 4 Aug 2017 13:08:03 +0100
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
X-Originating-IP: [86.176.20.38]
X-ClientProxiedBy: HE1P18901CA0003.EURP189.PROD.OUTLOOK.COM (2603:10a6:3:8b::13) To HE1PR0701MB3002.eurprd07.prod.outlook.com (2603:10a6:3:4d::8)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5bd9490a-262b-40ff-f673-08d4db3219f0
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:HE1PR0701MB3002; 
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB3002; 3:YigvCJk0Gm3BqSvQ/zsSyuZFPEcgo2In3tDGkhcprna59ocqq4vR2UBGLhnObCA/aK9z8SBStwPiZRAP8doKatFqjkA8e7WKnrRHO7qkoy8maks78XPyjxdl0ClsEwmUmFvMCPXW/n9+2ACxi1IwyUnYKRckIplAHH0k8ba15ZvAdjYu+ZNPusAtNsXh/JA0YOAffFMCKaEZbHhAepMLLOPqz1sOazZ2EuZ3TEIAs2T2YcCNaGmb+WPCI0Xo6XAfWRW8w2CpVLrbXoh0ugRNuZNFSZK1OpKXarhQeX552QBpfdlrp7Oz2enjbiXXhDcBeqs540WtldI/BMqCnvZSq/cTW66QdbKST7/B7V+ZQafy7e8r0iAD/DgDJ2MLVVN6BM0tJyG8G+oPoKz0U6XiV6PFvTrFqo8dOkF+3IzdLnvVsHhPNDe1GySLGJoAjJUUTKkefhh8wWitVZ5Kw9AHWVZiwy5t9ohBR6QgGscP3vkcfL6YMw4RAvEtu1UvQ2k4lleakTLSsRPSB2SvJb5dt0t7zQw8Kq1JGl0veTadV7Zoe4GYdjHMYXJK84/TvMRtjwhv1rLj5nMr9m/ktYlT7EXuX0luGSOBnumxEzHjnXEJcreFPJ/N1eUI4OC0itg4oaThuljsaib36zP2ROTm84ur3MvHEIBYJVwxVzY4CaO9mtAe9WWxp8mqtCF3hKx69mNad8UTqrhTWhwNhleymnSe0P9b6AFhfwFP/HUrT5z1vSIyv2o+WWwnDmpenjZym7xe12tafTxG49BHY1lJ3Vp/NQHEWwH3sIXPgyK1JiA=
X-MS-TrafficTypeDiagnostic: HE1PR0701MB3002:
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtIRTFQUjA3MDFNQjMwMDI7MjU6c0EvdVVLcmVob21uNTNndXMzekszZGNu?= =?utf-8?B?NXp0dkE5QlZuN0hqOUNKcVRaQ0NTd1I2cG9GM1EySndkNVMzeW42eU83T1lZ?= =?utf-8?B?RkJmbVFhWUFZQ05FSHhJQXppdFY4RjRSTndmWUdzcHU5TC8vN1NhUHNHeXYv?= =?utf-8?B?Q1lpSUQrYU9jZ3NKM0dsYldDUHdmWVhRUi93OUhvNmliUU95VCsrTUdDdCth?= =?utf-8?B?OG5VUVI1RlVOMXJEWERVL0xIWFMrbmsvc25NNFNMVVJNME81L1RCbGwveHZw?= =?utf-8?B?L2h5S0RQZVQralRRQzRlU2JaN0RsUjRqZGFFUktzdEJBY1RFZUhDMFVRd1Rh?= =?utf-8?B?UEJiWHYxTTJSWGlycHI2d0d5Q1l6UTFOQmY5dW1CVFVKUDdVSTRRQWI4T0J2?= =?utf-8?B?WFpDQnRLcFdrWjUvWEhqZXJpUFNQN242UmNUeitWUXN2bVh0Smk0MitnVXVp?= =?utf-8?B?MmxERXRXeU50czUrT3ZBMFdhcm5lUjZmNGt2SFNXWHJWMzdtREdDYVpSRUhS?= =?utf-8?B?elhBbnNiSGpDK1ZOc3hoZ0tQaVNCZWt2WUlIMWFQS0JXZ1djWmk3aXVsM1U4?= =?utf-8?B?ZzZhY0tUVFMxZUVnTGUxa1o5ZkZNaEJ2TUxOQ2luSTd0VVM4aTZPMWdtRHJT?= =?utf-8?B?Wmo5NUErQkJuc2gybEM5cS8zR2ZreG1lQjdvM3BDQ2c2Wk83Q0k2QldmOUpD?= =?utf-8?B?V29WRTA4Z3FlU0JmQ2NqMlBjQ0ptRlVjNTZSZnVvWkErNExXR082dytiRUZx?= =?utf-8?B?SWVIWVhkeEpIaXJoSjNDM0VHRzBiTDR0MEQ2d05QMWk5cStJU3NoeVN0M3Fx?= =?utf-8?B?cWpUNmg2c1Fhb09LQ1lnejQ1SU1MVjBqMlBkL0ZlOUhITDZ0MHNYVkRxU253?= =?utf-8?B?QWRhb2JRdVpvbVNGZjk1M1lrank5VjFOZXJmZ0t3T1lVS0lkWFlzekRzR0J2?= =?utf-8?B?a21LbU5uRTM4UkNWcmo0cXBGN2RHRlZCcExRTVliNGNweEpwcXlFVCtLc3ZX?= =?utf-8?B?c0Ntd2tTREZrMVI3c1p1eXc3NHcveWU1Zk8vQWhKUmQvemc4L00xWEdmcHFp?= =?utf-8?B?bzJFQ1YrdEdSVkZBbTg0YVhxQXZ4Y09NZVkyb2xQM0FYU21nbjl1VUduZG9p?= =?utf-8?B?ZGtONXVBK1BjeTI3SWptMnpvQXY5eE54N2diaFZMcGtoc0tadXNiam12OW1p?= =?utf-8?B?VThCQmFScm10ajFGVi93dW9Ca1ZSL3F5MzR5MFptRHZTeEpBc2dTMHJPajJq?= =?utf-8?B?TGJDYTh6VW5JN0YwV2VRL01sRzA3UUdlZUtPWUljTVJWMU45YUJkWVlVQXFT?= =?utf-8?B?U0pqRHpQOUgwdWdjQT09?=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB3002; 31:36Q5tX4WGk8eLybIhDshaM5N+3WhjlbfDESjx9V2aZn8mzQVoowa/xDCrqjQuh62xA5yhEaoT775sB3C9lVDEpr0TbWkM09ghi5qJmUyIO0DMzChWsNVWI6DocSozAj/2Biu/drJQN/QyFenfJUHOljnqDk8GXxsuLm+C8N4QAmYDoY3RXh6GBfbkns5s025VDB0sDxG+FpyTMjF6VmRA5j/ocXn7wsDH2DMgX7SLSGH4hs1s40nyJcjqNczzCInukkgJj8336up9aj1+i4tlOWRgRRKIRNRyW77y0WQ3vr4emb+GH4kWOqkkYifP+4sUvTelULOGsRDAW+ZD7Y9u2fXGZMEx3BFqmVVRFWWa4DYxYiMi+4JsMbZHL5PXrc85x7bEMCmiLHjlhUq9FN1yjSRInPDtE5xHDHO3qua8II1vHKgkI/LFOt8FyrkFRsvgxioIN3jHlvQ8r2R6SNe1B14gvX24Ovv+nzHl8E5Gp/Q+gTU8Kb5WYkt/KWuNTMNdytPt5nvUy+yMiSpI4h0zDEBfqZyBsiGfKl8ng/ZvJj3q6idsY/P1MFrKhxt7BqUbbcvRUc/Wld2WXU8lx4dBp+ak0pkV1okFIT36ldGu7halCln6Kada6ZnSriAIYCzqkrAQZOKzK3ooKKU92stA+T21unpyzZ2kSQATDhxvuY04Mtg5sD/oBaiOCMBvCpNQkFs8IhRkYg9cfR/VK1bIw==
X-Exchange-Antispam-Report-Test: UriScan:(158342451672863)(138986009662008);
X-Microsoft-Antispam-PRVS: <HE1PR0701MB300229E7AB5A2BAE08F09E40A0B60@HE1PR0701MB3002.eurprd07.prod.outlook.com>
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(93006095)(93001095)(3002001)(100000703101)(100105400095)(10201501046)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123560025)(20161123564025)(20161123558100)(20161123562025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:HE1PR0701MB3002; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:HE1PR0701MB3002; 
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtIRTFQUjA3MDFNQjMwMDI7NDo5U3RTVXNxTzFKZE9tRHJlMXNQWDBidlNr?= =?utf-8?B?WlMybVdxZzVPODB2MFBRNGwrNWQ2L0xVNktYa0l0T0I4RHorcGJ0cGkrclNR?= =?utf-8?B?clFBUmppS08xTFZzVVNReVZaSW5ZOVZLSXBBeitKWUt5UUtFbEdtWjU4OWNH?= =?utf-8?B?Ykw1alRydmlXN0w1SU1INmExU29wd2JiVkQ3bm9kZEF4TTZUTW1BZzVNUW9J?= =?utf-8?B?RlVZUDAxWjlrUFY0eHRuUW00ei81RmFKZGV1RFlYK1JweGNnZ2tQaWFQaVQx?= =?utf-8?B?TG5yWEcrSEtSb2VKUzkxa3BUUDc1U0ZMQ3JERnlEYjA2bTlJa2Zocm9qS0FZ?= =?utf-8?B?WGVRU0pSc0E1cnhGN0dhRnNaVTJVV3hYbTFPRnE1U1MvTWtUNHJkZzN6TXNR?= =?utf-8?B?alduVXZ4WkNpVlpPeWJzbXhhTGlYVkh5UCs5L2pJSGNkdTdSNzBNbFZtdjM0?= =?utf-8?B?cFU5VWIvMFhHZTY3YmtadERjUXhVZ0owRkhVR2kzcDl6cGZKUyt2ZDNiSjBp?= =?utf-8?B?VnFwUG5CNTN1MS9hUmNpV29TM1kvY3luOHB3T29wRkYreS96Y055RnZsZnZu?= =?utf-8?B?ai80d0xsTWFaUWwyQmhmcDBPRFgxTXV4cHdGZGpueWxQc1ArZzdpbnVnOGNJ?= =?utf-8?B?YU93NGp1bDNOeWcxdm1PQWVFUVN2QmNySzFCU3hSWVdQR2JlR0xoQUNGaTRj?= =?utf-8?B?M21RZlhkdDJZcjZ2QUpKbUpOU0trMElyQnllSFEzNndLQnhvNFlpcVBIRzBa?= =?utf-8?B?MUxNZ3lOeXVBQTNzMnhtVkw2TjM5dzh2VTNMdWZweTQvU3NxYlhkcERzeFA3?= =?utf-8?B?ODYxa0ZsSW5jR1poM04xVk94UUtxUThlM3FBYW9xQnpPVWx5YjVDaUoyd0tQ?= =?utf-8?B?MHJZeWxQZ3NHb1lvUUhUSWd0NGpwSkdLQlJXaUJ2L2RtblpPcGpWejhKNnJC?= =?utf-8?B?WDlqaEdjeEhjS1h4VzdWKzVvdTUrTS9NZ2wrbjVxbC9BZnc2MytKZUVJWWph?= =?utf-8?B?b1V1R0VvRTVCVHVSRDdiUlJoTGV1dnEwSHJEejE1VEFDVk5xVjFwNWJLbWhj?= =?utf-8?B?UVFXRzBjcUkwanFtRFI1RjJ5TjUwN3FXeXBhOVZpL3NtYXFLUnFDdWFLMExF?= =?utf-8?B?aFpNSXlLdlNGWGhTZ3JnZjM2UHRvcG5FME9ZdDVJdXFtcEJRYkRtUGpuUC9T?= =?utf-8?B?eldqT0JlWVBYMkFZQ1R4U0FWOFkrc2JUeXd3WEZCQVdaTjIzYkxWa1BYM1JW?= =?utf-8?B?QkpxUjU3VC9PV0wyMGhxTDBEQWx3L1NHVjczVDQ3cXRna1NOdHNqbDVyRVdk?= =?utf-8?B?OXNlZjZ4MDNSbEVoSWhPUDBKT0RyenNUcU1oemJLT1RuaTV3TjNqTEdxWHRN?= =?utf-8?B?MitSZVF2d3U3OU44ZVRLOWNlM2tBNFU0ckhCdjJKdndtNmIyUnJLdW02VlN5?= =?utf-8?B?OUpMaDFHakhZUFJCalc2bTd0SzVjbDZlMUR4ajFEVVFsd09lZjdSSmUyaUts?= =?utf-8?B?Z3kybjJ3K1ExZVRiL1dNcWJjYnVkY2VSb2diVlA1OEFhelk3amNMeVR4cVB6?= =?utf-8?B?R3p1Vy9xSkV5QnBaSTdkUnZ1OE91VEZGeUFQUkgxRWZpR1lsNzVTSmZqMnNH?= =?utf-8?B?MjZMd2JKODZqaDZWQytSMHFTdXloOVh3V0ZpeEwwZTJ0SHZVcUlJNDNxZz09?=
X-Forefront-PRVS: 0389EDA07F
X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(7370300001)(6009001)(39400400002)(39850400002)(39450400003)(39410400002)(39860400002)(39840400002)(189002)(13464003)(199003)(51444003)(76104003)(229853002)(9686003)(47776003)(23676002)(1941001)(97736004)(8676002)(7736002)(14496001)(230700001)(81156014)(44716002)(305945005)(62236002)(106356001)(50226002)(61296003)(81166006)(6246003)(4720700003)(68736007)(6486002)(6116002)(66066001)(50986999)(230783001)(81686999)(4326008)(478600001)(101416001)(33646002)(6666003)(81816999)(5820100001)(189998001)(1456003)(8666007)(76176999)(2906002)(6496005)(54906002)(116806002)(7350300001)(53936002)(25786009)(44736005)(1556002)(93886004)(84392002)(50466002)(38730400002)(3846002)(5660300001)(42186005)(105586002)(86362001)(74416001)(7726001); DIR:OUT; SFP:1102; SCL:1; SRVR:HE1PR0701MB3002; H:pc6; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:0; LANG:en; 
Received-SPF: None (protection.outlook.com: btconnect.com does not designate permitted sender hosts)
Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=ietfc@btconnect.com; 
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtIRTFQUjA3MDFNQjMwMDI7MjM6R2QvWkM1cG13ZXVoTVZnWUxIYmQrdW1X?= =?utf-8?B?c1FFZnBTeEptWFg5THRnQUhnMUNPNm1KRkZUbFNWSVZJczhRbHd0WW9UOWF3?= =?utf-8?B?RzFiTGtaQnh2Rm0wY0tRU0JoSDNzVnFlbi8vNjBqeHNMcnFKM0RRSFpIU2Vz?= =?utf-8?B?MWNJZ0JBTXpNNUxaRnE1c0ZkaGo1VDVkbnpOWFgxRzdpVWVRMVJvSEJQWHd2?= =?utf-8?B?NWdvamNRb2o0QlBIM0ttOWRCNFRxTlQ0YjYxUXBidkhraSt6UTMxUExsSnRO?= =?utf-8?B?anlEUThINlZCSDVudjZkeG4wNUhhaUR2c0F6bHB3MGJ1Q01oVEZNSUViN1px?= =?utf-8?B?SnFSNFZnMlhPYVc1UnJHRVY2Sk9kanR6dGNqUmVzalZkaGJUYnpDYzlmdGt3?= =?utf-8?B?a21POE03ejZZREN2aFpidmZSSG51bytaOGFmWnhVa2VHVmZBNG0zNXpNYk43?= =?utf-8?B?ekRuS1pMelR2djZ3bVJaQjdmQzE0c3VQNElwUjVhSkFtRENKb1dSenVLenJX?= =?utf-8?B?TXFQQTZPQThnSDVGdWRWa29ZRnNpRVQ0QVJ3U1RyM0drU0laYjI5RVJBeUM0?= =?utf-8?B?TVkrUWFyWXhTZVBBVGRBYzFDcXNVQnFxeC9GemFCVVBuZVdkNGlXNjJsNTJJ?= =?utf-8?B?Y1RlUWJoVkJXK1lXV0RBT3p0dGRQRUxoQVZTOGh0M0NXeG1vQkNqc3U0dU81?= =?utf-8?B?V2VoY0tkZVo3UzR6Q1p1Z0V6TWZuMGs0NEV3eVVVT2MzbklFdFhJc1JNYUtq?= =?utf-8?B?elVhUmYwU2wwUENteXNLNVJNRERGWHJlWGZ0dTBHekIxM1JUOHpWZ2lBYldq?= =?utf-8?B?aERCUFVhaElwN0JhT2gvRkpXcEtObHhXRzl2dk9Jc0duYWswY0lha0MxakM2?= =?utf-8?B?QisvODV0ZHRITjFHNThyblNpUXJKRE5wUi9xeFVzMElnUUk4cHNMQjlUaFMv?= =?utf-8?B?a3NFTkxKZ0NGclZ2eURFTVpGV0VyVjBqaEd0L3NpV0hBOCt6ekxTU0VKYkdw?= =?utf-8?B?bmpra0hUa2s5d1JlZlpxZmZJcFpNdDVZRnhHcGM4MFFNYWVaK3ZKOTB1aCsv?= =?utf-8?B?K1dNbFNlWENOci91cys1Q2lLTXM4Y3hLVjB3ZTBWckxFMG1wT2xpVk1TOEVp?= =?utf-8?B?U2VKZVZSUGh5REhTcWxlcW43NnpTbnNrQVhLbjNFWk9VSzlSUmFDOTMvM3dx?= =?utf-8?B?eVE4WXBYZ0VDdjNKZ2NQbG5mQW54VmNUUExyV0tmeVo0ODhzcjIxazhEM1Ns?= =?utf-8?B?ako0R2VBZExGc1VvK1dsNG5sYnVIU0N0Uy85bjRwZHd3Q0xCc2w3VmI1T0g0?= =?utf-8?B?YlZ4d0dvbXA1U3Q1WEhQTE00M1FSb2YwMFlKQk4vVmhzTm9yWnVzd1RYY2Ro?= =?utf-8?B?WFVwUHNKMTAraE1vUS9ETDQvY3JhRWJuNDY5ZGRBV2dreUx3SDl4aHdzV3pN?= =?utf-8?B?WGEzbGhZUk14U0hKdmFTWFNCWHh4SGpHVWR1OXpLZG1IWVo0bFVqRTNOV0Iy?= =?utf-8?B?RytlSnJYMDZQNXBKcXlCVnE0QXlYVHZaVWdDeG5kUDZGRFNCS0hnaUpScUtI?= =?utf-8?B?aUhjOTdXcTd1YzV0UGhFbHBBTFJPWGZWbnZzK0lwL3kvYU9ZSlhVcDg1SDhj?= =?utf-8?B?UXZwdEgvQkRXcURPNjYvK1RRVWVhTGdQZU9WU2QyRXlNSVl3UEVBckczUHlO?= =?utf-8?B?am15dSt6RWVhKy84NDQzWERVRDhqMVZUNTh6K0V6NTk3SXNpTGoxQW8wQUNt?= =?utf-8?B?cHhTWVZMYzRoYmoxY3AxTnFEeHM1VUcyWTNpaUQ2TkRwZXovWFZnVWQ5SlY5?= =?utf-8?B?b1BRS3MzTUxyd2d6UTF5Ylc4aWZlMkdVd3pETG0zRjA4Vis5V2YvMW9iUnJZ?= =?utf-8?B?SUJHZjRCMUIwMTBTZy8vaGlTbW51RDZhb1FCcEJWam9qaEwvdFNGcDd4SCtB?= =?utf-8?B?U3g4SnJOdnJ4bThYVnFlNzhQNjF2aGdZalF3RisyNmlPcm5IazlDOENSTnJS?= =?utf-8?B?NFFtNWNCV1phZVhkcFlxVnE4ZmhleHlVMU1GUFMvWFZtTk1tZnplZWVpeEM3?= =?utf-8?B?OTN6NmZxMFFIRnUvaHpRajdXeHJTN2NJMGMyVUpvYTdwbC9PSTk3L2xvNVlY?= =?utf-8?B?VlRWdXpuVFAyMWdnT2xza3BPZElRVERSUk1NYXNibjBrTDNnNmRWc3Zyc2tS?= =?utf-8?B?Ni80ckJsNHI1WWxtY2M0YXBJQmNJM3NWeDVBcEdxNHNSaDRLMzhkSHFHcjZI?= =?utf-8?B?cWZkTXVkU1drdjlIVUF5Si91a0lwT2V2SUNzM1NsVGtBWmtvWWFVbzhIUGpF?= =?utf-8?Q?mSh5Y+4U8KflqCgUVc=3D?=
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtIRTFQUjA3MDFNQjMwMDI7Njp2ajZWUXU3WnVDNGllM2lYaFdhWGFiOWx0?= =?utf-8?B?NzN0VDlRbmduWWQwQ1ZhTUw3UG5DbGFZYWJ4anBTalNsVmdrcG1VQjB6bjBQ?= =?utf-8?B?U1pUTXJ0MVJzVnRnbnpNamc3bXdwSDl0T1VRTWYvM2ZacHpZbDE0dklOZFl6?= =?utf-8?B?ckZjRCs0a1FVQTdRQmZSK0lFb3g4ZEhvRlZnTTBYNDBMLzcySXhkNm9qWks3?= =?utf-8?B?UVE3a1V5VTF3Vi8vYTBXaElLQmtKZWdMODVoOGpBcXYyY3JKbXBBR1hielk0?= =?utf-8?B?ZUtvYjdpaEloOXZ2MXR3bFNweVloUDh1K0g4U2F0Sk0vMXB0TXRGTzQvYjY5?= =?utf-8?B?Q1pzdGwrZ29FemJLR1hJdWlRem9XUVdDbTBkZEc0RW82TjFqTUZKSEY1Nk8v?= =?utf-8?B?OVZBTFVHMnVyRnZ4dFM2S0xUMktBbWJlUDRFSU1JU1NBdUtaZHVyVFZ0amxD?= =?utf-8?B?ODFlNm1pbDFod0xMcjg4VlN5ZHNOeHFJSlFRbGE4Zm9TLy9ua2NoMmtkWjgx?= =?utf-8?B?RE9aLzdUUFRIYzMrd2NQdVBXYlN2RnZ1TFpDUXFEK2JmMnV3VWZYYWhtQWM4?= =?utf-8?B?THdaY2s1enFWYi9RUlRnbENYNGxYQ3RZa1JIMGp6KzM1SnFvRnBEektJNWFH?= =?utf-8?B?TTVJUlR1ZENBOVF3Tk5YWmtRbGxicUFTVG9NdklVM3VLbmpGUWRrbm82UnpF?= =?utf-8?B?S1EyQkJZUzNpdXlhUlFkOVQ2SjljK0ZTTlU4SnhzbVp0ckNnNkhhQUdjNWtO?= =?utf-8?B?TlJXZkVYUndPUVBLMDVaSm5DbEFiTGNXeEs2cTFlYzFJNUkrQ0ZOUHlUS29h?= =?utf-8?B?SDhJYkt3Zi9pSEJzd0Jib2lyOERDZkcwWHZ2cWt0SVUyYytMZFlDQUJJSXNh?= =?utf-8?B?R21Yc3ZXeHl2WGRKYTl2cnllZ1ZuMkc1N2l2OGRyVXVpcmk1YmRaVWZFMkJC?= =?utf-8?B?R3J6dk9vOHJTYWNNcmVrRnVhY0VLUVJ4TVlRNzl0akNIMUdEWFJIVXdiSWNv?= =?utf-8?B?NWVWM1VTZXlXYURMay9UMGtJRTZyZktvM1ZxNjVyYmg1c3pTNWFkVEFqNDND?= =?utf-8?B?bXlQSEI1OEI3SllyQUZWV3FhYXQydHlBdU13cTM3Y3ZxcXRkSGFzZWlEeCsr?= =?utf-8?B?bWlGZHpIVi9vQndSTldqRElSa0xCRFU5dFAvSmE0VHZ3MVdFQ3lIZkJHUHhL?= =?utf-8?B?bmJOTktJN1d2MXJ2cVp0eVRDaSs2SkJBTlpEUkJMeXd5ck1CZ24rOVA2eHBs?= =?utf-8?B?MXZHKzd4VDdCczVGK2RGbDlRb2U2RDNUQlVuZ0ZUOVppMUo1aFFUbVM5Zzhx?= =?utf-8?Q?mT4sn4RebyBFQ8cYZ30TG07HcSSRERm0M=3D?=
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB3002; 5:S/0edI6LHHfvRy2LwB1oJrz00GWhzqIUmMwC4ExcxFg60g7SFNjv/P3HVIpkFp4fzwTcSUJ0Veqi4RgS1vkwRig+/bEUAMvVRanbCqUv2PX1rmsG+EMrlCMkFr6Yq8DOpVlHtiqPgjktmzjO6aSB5IbTzeC/KmNG1Tc3z58aFiZdpU0HXkq3Ys8KZC/JELlkvMKmn0f04uE3Ra41WncBiB5k7o+s0Yx9dU+j/5ovR8kRorHS2V6L/3g1Escagphhy65cXiPkI6FR+vOQp3AI9xNT5geXkAVky8Rpj7xepZeb8OfCdVjgBjrtojt/3U3h8TUV924+XTuLFNEZvnUXOpgp9Yr2ZjVCnZ+djl91I+33khZeUFsK3VV0nNofTU77reUNTYs+UeOqjI3oV21yW9LbpLXzMWM7Oyx9QZBQvP2b3GVzRT1lFPaKrLFNvw8QIZHlxiwSyyRFXUu3aWESQHbc+eVkdE6ZYEUE6BAeEdYYZ8PrupyGE04ZDBKZVqTa; 24:9CFIpJlCdNGLBwViv/uH6ovPm6QwaisMFujmg5rxtND78kuaZnYUTnmZb3yalqglFW/kTcr/6tZT/qHsje3z+qzQ8o1EgPL37/iKBErF8yc=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB3002; 7:EbTWVmCgVry2bVM08cpeMrWSaQBODsjA0dClrHXGPi5hh3fP/KbrJ49zQTllxLXQCIw2Wj1X6aUjHESEg7cSPFqtZhbYz7nMrBSpHRts1ZLrkp5woUMFLOakUW5krQSLw2IV+uT47Urb0n+uo32kIpmjt45sCSdSaiponPWaNvFsfjwvZ1H29+YCfUVqHM+AOBce4mpLNqmE4yhpfiqXSzSJ9v+06KPpLkKqI2Ep8NvlXrGDb8i8h0MR8TGmmr4mGfg0IybBgEjQ1T2Ab6X6DlkKlOrNqA9bMcQpSA8s4+ClKujMHfmJcMoyaVRM7Uhz6xT99O6bf9oOhTmRIeyUtetlGa9AexCV1JYU+owCO+vyl3q7MpuI29oWBO7Ofg2QmjVd1FeWK+D5ubn/n5U0MApjWXfpI8eTGtxm3XE5b0zRVjhbxVx5le4YqD0jbmbuHS9pIgaIPKFcecgu3sXFiNdz2c84O5OxwN7S5cQ2FRil9oc0aPsNkeOZaQdOfHKs6H/lsTCP3Xrvsr7TN1xztqZRy+bTiXeygPS3ivJ5Ml6JT/aQofUxe/yORvUEAopi80ndFM5sJtfQt/TDHXGgbFXrMnlOt0h36oLIVPedfX+bbxYCCDY7zXbaGy1tAj6LFv9KRmgX0sLtWGDdkeGdnU8h4e9GdFCOKmyimK32IpIDVkjAaCzVhO7ueK2iMCO/BGWfY+Ng7hlac61cX3aHXdqZuVVuP4X3jAjsCLuapIGpK9x5Ci9TT4s6cI2oz646RseSGerYUTjLPnQMJk1sbg58x1ugyTlydI2wf7tkgss=
X-OriginatorOrg: btconnect.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Aug 2017 12:12:39.0683 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0701MB3002
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/AX7_qLArgfrtt8XGsCNqh93-e0k>
Subject: Re: [yang-doctors] [Netconf] last call review of draft-ietf-netconf-keystore-02
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 04 Aug 2017 12:12:44 -0000

----- Original Message -----
From: "Kent Watsen" <kwatsen@juniper.net>
Subject: Re: [Netconf] last call review of
draft-ietf-netconf-keystore-02


> Hi Tom,
>
> > Mostly yes.
> >
> > I think the one further change that I would like is to move away
from
> >   o  An unordered list of pinned SSH host key sets...
> >
> > I think that the scope should be a public key, not limited to SSH
and
> > not restricted to what is referred to as  a host key.  Typically
this
> > would be in a client enabling it to trust a server to establish a
secure
> > channel which may then be used for further authentication.  I see
this
> > as far more common than SSH.
>
> Agreed.
>
> > And since the scope is asymmetric cryptography, I would state the
> >obvious in the Abstract
> >
> > This document defines a YANG module for a system-level mechanism,
> > called a "keystore", containing security-sensitive data including
> > private keys, pinned certificates, and public keys, such as pinned
SSH
> > host-keys, for use in asymmetric cryptography.
>
> You're touching a point similar to what that Juergen raised.  I think
> the solution here is to refactor the ietf-keystore module into a base
> module, which doesn't mention anything protocol-specific, and
augmenting
> modules that are protocol specific.  If this were done, then the
> abstract might read:
>
>    This document defines a YANG module for a system-level mechanism,
>    called a "keystore", containing security-sensitive data, such as
>    asymmetric private keys.  This document defines additional modules
>    that augment the base keystore module adding support for X.509
>    and SSH.
>
> What do you think?

Kent

I doubt that it will clarify.

My model is that are different ways of arriving at a public key but that
once you have, then the cryptography is the same, with a choice of
algorithms.

If you are a SSH client, then likely you have a stash of public host
keys associated with one or more SSH servers, and, apart from
algorithms, no more.

If you are a TLS client, then likely you are using X.509 and will have a
pre-configured trust anchor, in the shape of a public key or a
certificate (which may or may not be root).

If you are a SSH server, then likely you will have stash of
private/public key pairs, perhaps with constraints on their usage, and
the ability to generate further private/public key pairs.

If you are a TLS server, then you will have one or more X.509
certificates with your public keys, a chain of X.509 certificates back
to an anchor that the client will trust, the corresponding private keys
and perhaps the ability to generate a X.509 certificate with a
public/private key pair; this may or may not chain back to a trusted
root.

There are other TLS options but I think that their usage is limited, but
in the context of network management, one or more could be significant
although I don't have a specific example in mind ( I like PAKE but do
not see it in use).

So the only part in common is what you do once you have the public key,
which is not much.

Tom Petch.

> Kent
>
>
>
>
>


From nobody Tue Aug  8 16:57:30 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietf.org
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id A265A1320BE; Tue,  8 Aug 2017 16:57:19 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
From: Kent Watsen <kwatsen@juniper.net>
To: <yang-doctors@ietf.org>
Cc: i2rs@ietf.org, draft-ietf-i2rs-yang-network-topo.all@ietf.org
X-Test-IDTracker: no
X-IETF-IDTracker: 6.58.0
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <150223663961.3605.4696763251648960641@ietfa.amsl.com>
Date: Tue, 08 Aug 2017 16:57:19 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/LJKO3wVjbD_cFSYsAeYNTrx9U64>
Subject: [yang-doctors] Yangdoctors last call review of draft-ietf-i2rs-yang-network-topo-14
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 08 Aug 2017 23:57:20 -0000

Reviewer: Kent Watsen
Review result: Almost Ready


YANG Doctor review of draft-ietf-i2rs-yang-network-topo-14 (by Kent Watsen)


4 modules are defined in the draft:
- ietf-network@2017-06-30.yang
- ietf-network-topology@2017-06-30.yang
- ietf-network-state@2017-06-30.yang
- ietf-network-topology-state@2017-06-30.yang

No validation errors from either `pyang` or `yanglint`.

0 examples are defined in the draft.

The -state modules appear to have all the correct changes
from their base modules.

Regarding ietf-network@2017-06-30.yang:
- prefix “nd”, should be “nw”?  (in IANA Considerations also)
- “import ietf-inet-types” should have a ‘reference’ to RFC 6991
- remove “WG Chairs”, per the template in rfc6087bis-13 Appendix C.
- s/Editor/Author/? (this is a preference choice)
- defines ‘network-ref’ that is unused within module (it’s used by
  ietf-network-topology)
- leafref paths don’t include prefix (rfc6087bis S4.2)

Regarding ietf-network-topology@2017-06-30.yang:
- prefix “lnk” should be “nt” or maybe “nwtp”? (in IANA Considerations also)
- “import ietf-inet-types” should have a ‘reference’ to RFC 6991
- “import ietf-network” should have a ‘reference’ to RFC XXXX
- remove “WG Chairs”, per the template in rfc6087bis-13 Appendix C.
- s/Editor/Author/? (this is a preference choice)
- defines grouping link-ref and tp-ref that are unused within module
- mandatory true for source/dest-node/tp?
- replace “tp” with “term-pt”?  (both in “-tp” and “tp-“ uses)

Regarding ietf-networ-statek@2017-06-30.yang:
- similar comments to ietf-network@2017-06-30.yang:

Regarding ietf-network-topology-state@2017-06-30.yang:
- similar comments to ietf-network-topology@2017-06-30.yang.


Comments on draft:

1) The document still has references to “server-provided”.  Not the YANG
leaf of course, but in general text.  For instance “The model does allow 
to layer a network that is configured on top of one that is server-provided.”
I think that the statement is more about values being in <operational>
than how it was learned.  All uses of “server-provided” should be examined
for correctness.

2) This sentence doesn’t make sense to me, how can a server-provided model
(you mean data?) access any information in conventional datastores?:
   “An implementation's security policy MAY further restrict what
   information the server-provided model is allowed to access in
   standard configuration data-stores,”
Either way, this text likely should be moved to the Security 
Considerations section.

3) Should the last paragraph in Section 1 be removed now?  Is the module
expected to continue to update?

4) S4.1, P3: the text here says new data nodes are augmented in, but 
the YANG module itself says that only presence containers are allowed.

5) are the mandatory statement values set appropriately everywhere?
(e.g., source-node?, source-tp?)

6) network-type is a presence container, not an identity? No where in
the draft is there an example showing it being used.

7) Section 4.4.8., why not use identities?

8) S4.4.9 is a duplicate of some text in S4.1

9) This statement is true, but I think misleading in context. “YANG 
requires data nodes to be designated as either configuration or 
operational data, but not both”. It seems that the solution depends
entirely on config true nodes, and NMDA to present the operational 
value of those config true nodes.  Right?

10) When using <CODE BEGINS>, you should have a note to the RFC 
Editor to change the date to the date of publication, both in the 
filename as well as in the module’s ’revision’ statement.

11) IANA Considerations has comments “(RFC form)” - are these supposed
to be notes to RFC Editor to replace with final RFC designation?

12) Your Security Considerations section should follow the template here:
https://trac.ietf.org/trac/ops/wiki/yang-security-guidelines

13) create examples for the use-cases in Appendix A?  Note, every draft
should have examples of its YANG modules...


Nits:

- why reference RFC6991 in the Introduction?
- replace “allows to define” with “enables the definition of”
- in a few places, you refer to “network.yang”, but the 
  file is called “ietf-network.yang”.
- in a few places, you refer to “network-topology.yang”, 
  but the file is called “ietf-network-topology.yang”.
- replace “- X1 and X2 - mapping onto a single L3 network element”
  with “(X1 and X3) mapping onto a single L3 network element (Y2)”
- replace “data-store” with “datastore”
- replace “model” with “data model” where it’s not already.
- replace “the <intended> datastore” with just “<intended>”
- replace “the intended datastore” with just “<intended>”
- update Section 2 to also include a reference to RFC 8174 (see RFC 8174)
- pull the “datastore” term from the revised-datastores draft?
- NETCONF and YANG don’t need to be terms/defined, since references
  to their RFCs are provided when they’re used.
- s/the network.yang module/the “ietf-network” YANG module/
- your tree-diagram notation in S4.1 isn’t complete.  And you duplicate
  it in S4.2.  Create a top-level section called “tree diagram notation”
  that both sections reference?
- s/allows to represent/allows representation of/
- s/another container/a presence container called/
- s/allows to define more/allows definition of more/
- s/allows also to represent/allows representation of/
- s/configuration and intended datastores/conventional datastores/
- s/and show up only/and thus only appear/
- /ietf-network:networks/network/network-id - being the list’s key, 
  I was expecting this to the first element defined.
- for the various leafrefs in both models, I see a lot of longish
  relative paths; suggest you change these to absolute paths if possible
- /nd:networks/nd:network:/link/link-id is the list key but not the
  first leaf listed
- incomplete sentence: “augmentations can in turn against augmenting
  modules”
- s/need to specified/need to be specified/
- s/if the link-to-links mapping known/if the link-to-links mapping
  are known/
- s/each link known/each link are known/
- s/the operational datastore/<operational>/
- s/into the data model without relying/into <operational> without relying/
- s/in the following two companion modules/the following two companion modules/
- s/that represent a state model/to represent the operational state/

Thanks,
Kent




From nobody Tue Aug  8 23:56:33 2017
Return-Path: <bclaise@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BF896131EB2; Tue,  8 Aug 2017 23:56:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.499
X-Spam-Level: 
X-Spam-Status: No, score=-14.499 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5, WEIRD_PORT=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id J3ll2X1gjQFd; Tue,  8 Aug 2017 23:56:22 -0700 (PDT)
Received: from aer-iport-2.cisco.com (aer-iport-2.cisco.com [173.38.203.52]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 33EFA131DB6; Tue,  8 Aug 2017 23:56:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=21798; q=dns/txt; s=iport; t=1502261781; x=1503471381; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to; bh=NfC1uJZna3u5K8vdOVwmQr1x/TXcGHZNuOAZwW70rMs=; b=Ri0Y1/lJOWuZySqszO2Dsc6TQgODfjFUTsJ1OGJ/XGt3wlDgY9v/Pdp7 WrIJ+6mjFmWc10AdtCvJw2Ht+iUhzS1/fsssHbctpMavutmNuBlttOH/A HzZ7DsRKFvQ+zBzR3GahJLdD1PmSd4jFOi/eWKH57uiuyBirL5w3sa4dn A=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0AAAQBgsYpZ/xbLJq1TCRoBAQEBAgEBA?= =?us-ascii?q?QEIAQEBAYQ+gRSOD3OhY4UzDoIEIQEMhDVkAoUyGAECAQEBAQEBAWsohRkCAQM?= =?us-ascii?q?BASFLCxAJAg4EMAICJyIOBgEMBgIBAReKFBCRDZ1kgiYniyoBAQEBAQEBAQEBA?= =?us-ascii?q?QEBAQEBAQEBAQEYBYMog06BYyuCfIQ9DBICgymCQh8FjAmUDYdTjGOCD4kzhw2?= =?us-ascii?q?JYYNBiGkfOIEKMiEIHBVJhUyBUD42h1MrghQBAQE?=
X-IronPort-AV: E=Sophos;i="5.41,346,1498521600";  d="scan'208,217";a="653812902"
Received: from aer-iport-nat.cisco.com (HELO aer-core-3.cisco.com) ([173.38.203.22]) by aer-iport-2.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 09 Aug 2017 06:56:16 +0000
Received: from [10.55.221.36] (ams-bclaise-nitro3.cisco.com [10.55.221.36]) by aer-core-3.cisco.com (8.14.5/8.14.5) with ESMTP id v796uAve020218; Wed, 9 Aug 2017 06:56:10 GMT
To: Kent Watsen <kwatsen@juniper.net>, yang-doctors@ietf.org
Cc: i2rs@ietf.org, draft-ietf-i2rs-yang-network-topo.all@ietf.org
References: <150223663961.3605.4696763251648960641@ietfa.amsl.com>
From: Benoit Claise <bclaise@cisco.com>
Message-ID: <a4a94055-2dbf-60b5-188a-e86f84f3a449@cisco.com>
Date: Wed, 9 Aug 2017 08:56:10 +0200
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1
MIME-Version: 1.0
In-Reply-To: <150223663961.3605.4696763251648960641@ietfa.amsl.com>
Content-Type: multipart/alternative; boundary="------------CBFDE9068FA1A6BAC74FC4F2"
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/eSslguKdIe7RvlkF9nXtcFtMOVQ>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-i2rs-yang-network-topo-14
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 09 Aug 2017 06:56:26 -0000

This is a multi-part message in MIME format.
--------------CBFDE9068FA1A6BAC74FC4F2
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit

Dear all,

Now implemented in the yangcatalog.org, we have the tree-type metadata.
from https://github.com/xorrkaz/netmod-yang-catalog, to be published 
soon in https://datatracker.ietf.org/doc/draft-clacla-netmod-model-catalog/

      leaf tree-type {
          type enumeration {
            enum split {
              description
                "This module uses a split config/operational state layout.";
            }
            enum nmda-compatible {
              description
                "This module is compatible with the Network Management
    Datastores
                 Architecture (NMDA) and combines config and operational
    state nodes.";
            }
            enum transitional-extra {
              description
                "This module is derived as a '-state' module to allow
    for transitioning
                 to a full NMDA-compliant tree structure.";
            }
            enum openconfig {
              description
                "This module uses the Openconfig data element layout.";
            }
            enum unclassified {
             description
               "This module does not have a data element tree, or it
    does not belong to any category.";
            }
            enum not-applicable {
              description
                "This module is submodule.";
            }
          }
          description
            "The type of data element tree used by the module as it
    relates to the
             Network Management Datastores Architecture.";
          reference
            "draft-dsdt-nmda-guidelines Guidelines for YANG Module
    Authors (NMDA)


Happy to see that the two following I2RS modules are "nmda-compatible"
https://yangcatalog.org:8443/search/modules/ietf-network,2017-06-30,ietf
https://yangcatalog.org:8443/search/modules/ietf-network-topology,2017-06-30,ietf
The following two are: transactional-extra
https://yangcatalog.org:8443/search/modules/ietf-network-state,2017-06-30,ietf
https://yangcatalog.org:8443/search/modules/ietf-network-state,2017-06-30,ietf

We'll work on a nicer GUI later one. The key point for now: the 
tree-type metadata is populated.

Regards, Benoit
> Reviewer: Kent Watsen
> Review result: Almost Ready
>
>
> YANG Doctor review of draft-ietf-i2rs-yang-network-topo-14 (by Kent Watsen)
>
>
> 4 modules are defined in the draft:
> - ietf-network@2017-06-30.yang
> - ietf-network-topology@2017-06-30.yang
> - ietf-network-state@2017-06-30.yang
> - ietf-network-topology-state@2017-06-30.yang
>
> No validation errors from either `pyang` or `yanglint`.
>
> 0 examples are defined in the draft.
>
> The -state modules appear to have all the correct changes
> from their base modules.
>
> Regarding ietf-network@2017-06-30.yang:
> - prefix “nd”, should be “nw”?  (in IANA Considerations also)
> - “import ietf-inet-types” should have a ‘reference’ to RFC 6991
> - remove “WG Chairs”, per the template in rfc6087bis-13 Appendix C.
> - s/Editor/Author/? (this is a preference choice)
> - defines ‘network-ref’ that is unused within module (it’s used by
>    ietf-network-topology)
> - leafref paths don’t include prefix (rfc6087bis S4.2)
>
> Regarding ietf-network-topology@2017-06-30.yang:
> - prefix “lnk” should be “nt” or maybe “nwtp”? (in IANA Considerations also)
> - “import ietf-inet-types” should have a ‘reference’ to RFC 6991
> - “import ietf-network” should have a ‘reference’ to RFC XXXX
> - remove “WG Chairs”, per the template in rfc6087bis-13 Appendix C.
> - s/Editor/Author/? (this is a preference choice)
> - defines grouping link-ref and tp-ref that are unused within module
> - mandatory true for source/dest-node/tp?
> - replace “tp” with “term-pt”?  (both in “-tp” and “tp-“ uses)
>
> Regarding ietf-networ-statek@2017-06-30.yang:
> - similar comments to ietf-network@2017-06-30.yang:
>
> Regarding ietf-network-topology-state@2017-06-30.yang:
> - similar comments to ietf-network-topology@2017-06-30.yang.
>
>
> Comments on draft:
>
> 1) The document still has references to “server-provided”.  Not the YANG
> leaf of course, but in general text.  For instance “The model does allow
> to layer a network that is configured on top of one that is server-provided.”
> I think that the statement is more about values being in <operational>
> than how it was learned.  All uses of “server-provided” should be examined
> for correctness.
>
> 2) This sentence doesn’t make sense to me, how can a server-provided model
> (you mean data?) access any information in conventional datastores?:
>     “An implementation's security policy MAY further restrict what
>     information the server-provided model is allowed to access in
>     standard configuration data-stores,”
> Either way, this text likely should be moved to the Security
> Considerations section.
>
> 3) Should the last paragraph in Section 1 be removed now?  Is the module
> expected to continue to update?
>
> 4) S4.1, P3: the text here says new data nodes are augmented in, but
> the YANG module itself says that only presence containers are allowed.
>
> 5) are the mandatory statement values set appropriately everywhere?
> (e.g., source-node?, source-tp?)
>
> 6) network-type is a presence container, not an identity? No where in
> the draft is there an example showing it being used.
>
> 7) Section 4.4.8., why not use identities?
>
> 8) S4.4.9 is a duplicate of some text in S4.1
>
> 9) This statement is true, but I think misleading in context. “YANG
> requires data nodes to be designated as either configuration or
> operational data, but not both”. It seems that the solution depends
> entirely on config true nodes, and NMDA to present the operational
> value of those config true nodes.  Right?
>
> 10) When using <CODE BEGINS>, you should have a note to the RFC
> Editor to change the date to the date of publication, both in the
> filename as well as in the module’s ’revision’ statement.
>
> 11) IANA Considerations has comments “(RFC form)” - are these supposed
> to be notes to RFC Editor to replace with final RFC designation?
>
> 12) Your Security Considerations section should follow the template here:
> https://trac.ietf.org/trac/ops/wiki/yang-security-guidelines
>
> 13) create examples for the use-cases in Appendix A?  Note, every draft
> should have examples of its YANG modules...
>
>
> Nits:
>
> - why reference RFC6991 in the Introduction?
> - replace “allows to define” with “enables the definition of”
> - in a few places, you refer to “network.yang”, but the
>    file is called “ietf-network.yang”.
> - in a few places, you refer to “network-topology.yang”,
>    but the file is called “ietf-network-topology.yang”.
> - replace “- X1 and X2 - mapping onto a single L3 network element”
>    with “(X1 and X3) mapping onto a single L3 network element (Y2)”
> - replace “data-store” with “datastore”
> - replace “model” with “data model” where it’s not already.
> - replace “the <intended> datastore” with just “<intended>”
> - replace “the intended datastore” with just “<intended>”
> - update Section 2 to also include a reference to RFC 8174 (see RFC 8174)
> - pull the “datastore” term from the revised-datastores draft?
> - NETCONF and YANG don’t need to be terms/defined, since references
>    to their RFCs are provided when they’re used.
> - s/the network.yang module/the “ietf-network” YANG module/
> - your tree-diagram notation in S4.1 isn’t complete.  And you duplicate
>    it in S4.2.  Create a top-level section called “tree diagram notation”
>    that both sections reference?
> - s/allows to represent/allows representation of/
> - s/another container/a presence container called/
> - s/allows to define more/allows definition of more/
> - s/allows also to represent/allows representation of/
> - s/configuration and intended datastores/conventional datastores/
> - s/and show up only/and thus only appear/
> - /ietf-network:networks/network/network-id - being the list’s key,
>    I was expecting this to the first element defined.
> - for the various leafrefs in both models, I see a lot of longish
>    relative paths; suggest you change these to absolute paths if possible
> - /nd:networks/nd:network:/link/link-id is the list key but not the
>    first leaf listed
> - incomplete sentence: “augmentations can in turn against augmenting
>    modules”
> - s/need to specified/need to be specified/
> - s/if the link-to-links mapping known/if the link-to-links mapping
>    are known/
> - s/each link known/each link are known/
> - s/the operational datastore/<operational>/
> - s/into the data model without relying/into <operational> without relying/
> - s/in the following two companion modules/the following two companion modules/
> - s/that represent a state model/to represent the operational state/
>
> Thanks,
> Kent
>
>
>
> _______________________________________________
> yang-doctors mailing list
> yang-doctors@ietf.org
> https://www.ietf.org/mailman/listinfo/yang-doctors


--------------CBFDE9068FA1A6BAC74FC4F2
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">Dear all,<br>
      <br>
      Now implemented in the yangcatalog.org, we have the tree-type
      metadata.<br>
      from <a class="moz-txt-link-freetext"
        href="https://github.com/xorrkaz/netmod-yang-catalog">https://github.com/xorrkaz/netmod-yang-catalog</a>,
      to be published soon in <a class="moz-txt-link-freetext"
href="https://datatracker.ietf.org/doc/draft-clacla-netmod-model-catalog/">https://datatracker.ietf.org/doc/draft-clacla-netmod-model-catalog/</a><br>
      <br>
      <blockquote> leaf tree-type {<br>
             type enumeration {<br>
               enum split {<br>
                 description<br>
                   "This module uses a split config/operational state
        layout.";<br>
               }<br>
               enum nmda-compatible {<br>
                 description<br>
                   "This module is compatible with the Network
        Management Datastores<br>
                    Architecture (NMDA) and combines config and
        operational state nodes.";<br>
               }<br>
               enum transitional-extra {<br>
                 description<br>
                   "This module is derived as a '-state' module to allow
        for transitioning<br>
                    to a full NMDA-compliant tree structure.";<br>
               }<br>
               enum openconfig {<br>
                 description<br>
                   "This module uses the Openconfig data element
        layout.";<br>
               }<br>
               enum unclassified {<br>
                description<br>
                  "This module does not have a data element tree, or it
        does not belong to any category.";<br>
               }<br>
               enum not-applicable {<br>
                 description<br>
                   "This module is submodule.";<br>
               }<br>
             }<br>
             description<br>
               "The type of data element tree used by the module as it
        relates to the<br>
                Network Management Datastores Architecture.";<br>
             reference<br>
               "draft-dsdt-nmda-guidelines Guidelines for YANG Module
        Authors (NMDA)<br>
      </blockquote>
      <br>
      Happy to see that the two following I2RS modules are
      "nmda-compatible"<br>
         
      <a class="moz-txt-link-freetext" href="https://yangcatalog.org:8443/search/modules/ietf-network,2017-06-30,ietf">https://yangcatalog.org:8443/search/modules/ietf-network,2017-06-30,ietf</a><br>
         
<a class="moz-txt-link-freetext" href="https://yangcatalog.org:8443/search/modules/ietf-network-topology,2017-06-30,ietf">https://yangcatalog.org:8443/search/modules/ietf-network-topology,2017-06-30,ietf</a><br>
      The following two are: transactional-extra<br>
         
<a class="moz-txt-link-freetext" href="https://yangcatalog.org:8443/search/modules/ietf-network-state,2017-06-30,ietf">https://yangcatalog.org:8443/search/modules/ietf-network-state,2017-06-30,ietf</a><br>
         
<a class="moz-txt-link-freetext" href="https://yangcatalog.org:8443/search/modules/ietf-network-state,2017-06-30,ietf">https://yangcatalog.org:8443/search/modules/ietf-network-state,2017-06-30,ietf</a><br>
      <br>
      We'll work on a nicer GUI later one. The key point for now: the
      tree-type metadata is populated.<br>
      <br>
      Regards, Benoit<br>
    </div>
    <blockquote type="cite"
      cite="mid:150223663961.3605.4696763251648960641@ietfa.amsl.com">
      <pre wrap="">Reviewer: Kent Watsen
Review result: Almost Ready


YANG Doctor review of draft-ietf-i2rs-yang-network-topo-14 (by Kent Watsen)


4 modules are defined in the draft:
- <a class="moz-txt-link-abbreviated" href="mailto:ietf-network@2017-06-30.yang">ietf-network@2017-06-30.yang</a>
- <a class="moz-txt-link-abbreviated" href="mailto:ietf-network-topology@2017-06-30.yang">ietf-network-topology@2017-06-30.yang</a>
- <a class="moz-txt-link-abbreviated" href="mailto:ietf-network-state@2017-06-30.yang">ietf-network-state@2017-06-30.yang</a>
- <a class="moz-txt-link-abbreviated" href="mailto:ietf-network-topology-state@2017-06-30.yang">ietf-network-topology-state@2017-06-30.yang</a>

No validation errors from either `pyang` or `yanglint`.

0 examples are defined in the draft.

The -state modules appear to have all the correct changes
from their base modules.

Regarding <a class="moz-txt-link-abbreviated" href="mailto:ietf-network@2017-06-30.yang">ietf-network@2017-06-30.yang</a>:
- prefix “nd”, should be “nw”?  (in IANA Considerations also)
- “import ietf-inet-types” should have a ‘reference’ to RFC 6991
- remove “WG Chairs”, per the template in rfc6087bis-13 Appendix C.
- s/Editor/Author/? (this is a preference choice)
- defines ‘network-ref’ that is unused within module (it’s used by
  ietf-network-topology)
- leafref paths don’t include prefix (rfc6087bis S4.2)

Regarding <a class="moz-txt-link-abbreviated" href="mailto:ietf-network-topology@2017-06-30.yang">ietf-network-topology@2017-06-30.yang</a>:
- prefix “lnk” should be “nt” or maybe “nwtp”? (in IANA Considerations also)
- “import ietf-inet-types” should have a ‘reference’ to RFC 6991
- “import ietf-network” should have a ‘reference’ to RFC XXXX
- remove “WG Chairs”, per the template in rfc6087bis-13 Appendix C.
- s/Editor/Author/? (this is a preference choice)
- defines grouping link-ref and tp-ref that are unused within module
- mandatory true for source/dest-node/tp?
- replace “tp” with “term-pt”?  (both in “-tp” and “tp-“ uses)

Regarding <a class="moz-txt-link-abbreviated" href="mailto:ietf-networ-statek@2017-06-30.yang">ietf-networ-statek@2017-06-30.yang</a>:
- similar comments to <a class="moz-txt-link-abbreviated" href="mailto:ietf-network@2017-06-30.yang">ietf-network@2017-06-30.yang</a>:

Regarding <a class="moz-txt-link-abbreviated" href="mailto:ietf-network-topology-state@2017-06-30.yang">ietf-network-topology-state@2017-06-30.yang</a>:
- similar comments to <a class="moz-txt-link-abbreviated" href="mailto:ietf-network-topology@2017-06-30.yang">ietf-network-topology@2017-06-30.yang</a>.


Comments on draft:

1) The document still has references to “server-provided”.  Not the YANG
leaf of course, but in general text.  For instance “The model does allow 
to layer a network that is configured on top of one that is server-provided.”
I think that the statement is more about values being in &lt;operational&gt;
than how it was learned.  All uses of “server-provided” should be examined
for correctness.

2) This sentence doesn’t make sense to me, how can a server-provided model
(you mean data?) access any information in conventional datastores?:
   “An implementation's security policy MAY further restrict what
   information the server-provided model is allowed to access in
   standard configuration data-stores,”
Either way, this text likely should be moved to the Security 
Considerations section.

3) Should the last paragraph in Section 1 be removed now?  Is the module
expected to continue to update?

4) S4.1, P3: the text here says new data nodes are augmented in, but 
the YANG module itself says that only presence containers are allowed.

5) are the mandatory statement values set appropriately everywhere?
(e.g., source-node?, source-tp?)

6) network-type is a presence container, not an identity? No where in
the draft is there an example showing it being used.

7) Section 4.4.8., why not use identities?

8) S4.4.9 is a duplicate of some text in S4.1

9) This statement is true, but I think misleading in context. “YANG 
requires data nodes to be designated as either configuration or 
operational data, but not both”. It seems that the solution depends
entirely on config true nodes, and NMDA to present the operational 
value of those config true nodes.  Right?

10) When using &lt;CODE BEGINS&gt;, you should have a note to the RFC 
Editor to change the date to the date of publication, both in the 
filename as well as in the module’s ’revision’ statement.

11) IANA Considerations has comments “(RFC form)” - are these supposed
to be notes to RFC Editor to replace with final RFC designation?

12) Your Security Considerations section should follow the template here:
<a class="moz-txt-link-freetext" href="https://trac.ietf.org/trac/ops/wiki/yang-security-guidelines">https://trac.ietf.org/trac/ops/wiki/yang-security-guidelines</a>

13) create examples for the use-cases in Appendix A?  Note, every draft
should have examples of its YANG modules...


Nits:

- why reference RFC6991 in the Introduction?
- replace “allows to define” with “enables the definition of”
- in a few places, you refer to “network.yang”, but the 
  file is called “ietf-network.yang”.
- in a few places, you refer to “network-topology.yang”, 
  but the file is called “ietf-network-topology.yang”.
- replace “- X1 and X2 - mapping onto a single L3 network element”
  with “(X1 and X3) mapping onto a single L3 network element (Y2)”
- replace “data-store” with “datastore”
- replace “model” with “data model” where it’s not already.
- replace “the &lt;intended&gt; datastore” with just “&lt;intended&gt;”
- replace “the intended datastore” with just “&lt;intended&gt;”
- update Section 2 to also include a reference to RFC 8174 (see RFC 8174)
- pull the “datastore” term from the revised-datastores draft?
- NETCONF and YANG don’t need to be terms/defined, since references
  to their RFCs are provided when they’re used.
- s/the network.yang module/the “ietf-network” YANG module/
- your tree-diagram notation in S4.1 isn’t complete.  And you duplicate
  it in S4.2.  Create a top-level section called “tree diagram notation”
  that both sections reference?
- s/allows to represent/allows representation of/
- s/another container/a presence container called/
- s/allows to define more/allows definition of more/
- s/allows also to represent/allows representation of/
- s/configuration and intended datastores/conventional datastores/
- s/and show up only/and thus only appear/
- /ietf-network:networks/network/network-id - being the list’s key, 
  I was expecting this to the first element defined.
- for the various leafrefs in both models, I see a lot of longish
  relative paths; suggest you change these to absolute paths if possible
- /nd:networks/nd:network:/link/link-id is the list key but not the
  first leaf listed
- incomplete sentence: “augmentations can in turn against augmenting
  modules”
- s/need to specified/need to be specified/
- s/if the link-to-links mapping known/if the link-to-links mapping
  are known/
- s/each link known/each link are known/
- s/the operational datastore/&lt;operational&gt;/
- s/into the data model without relying/into &lt;operational&gt; without relying/
- s/in the following two companion modules/the following two companion modules/
- s/that represent a state model/to represent the operational state/

Thanks,
Kent



_______________________________________________
yang-doctors mailing list
<a class="moz-txt-link-abbreviated" href="mailto:yang-doctors@ietf.org">yang-doctors@ietf.org</a>
<a class="moz-txt-link-freetext" href="https://www.ietf.org/mailman/listinfo/yang-doctors">https://www.ietf.org/mailman/listinfo/yang-doctors</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>

--------------CBFDE9068FA1A6BAC74FC4F2--


From nobody Wed Aug  9 13:48:22 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 619EF132492; Wed,  9 Aug 2017 13:48:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.021
X-Spam-Level: 
X-Spam-Status: No, score=-2.021 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id GCPz5NRj1otL; Wed,  9 Aug 2017 13:48:14 -0700 (PDT)
Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0090.outbound.protection.outlook.com [104.47.42.90]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D726213248D; Wed,  9 Aug 2017 13:48:13 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=yZEfmEtTBUAfyJw8Iy7cii2lqUDsP0UQST9+JDRESow=; b=VZFQRkfYdOzrzYax5e5v9ekHu/zFuB/Buwuz/YBupSvX+VsFM43jkmwUpSoLA98D73tbTpdzJcjLekFO+tABsYgfq1loKPuE6sVoTuIbTsmqXuKllolsFIcr3BXOdgbK8z8dSOqiQ2ZEy7ViYFcw4XUYD37lSOXupMm0HEA2X1I=
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com (10.160.117.151) by BN3PR0501MB1457.namprd05.prod.outlook.com (10.160.117.154) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1341.9; Wed, 9 Aug 2017 20:48:11 +0000
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) by BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) with mapi id 15.01.1341.010; Wed, 9 Aug 2017 20:48:11 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: Andy Bierman <andy@yumaworks.com>
CC: "yang-doctors@ietf.org" <yang-doctors@ietf.org>, "draft-ietf-netconf-restconf-client-server.all@ietf.org" <draft-ietf-netconf-restconf-client-server.all@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: Yangdoctors last call review of draft-ietf-netconf-restconf-client-server-04
Thread-Index: AQHTB+8y29TveGyQA0qavQMqV/nni6JuTX8AgAGcVwCADGTdgA==
Date: Wed, 9 Aug 2017 20:48:11 +0000
Message-ID: <30CD19F8-6441-4EA3-A340-8CEDD6D4FD6A@juniper.net>
References: <150128020275.20726.13027423171798327745@ietfa.amsl.com> <A9F2ED3F-6AC5-4AEF-8EBF-1C4F89A6F0F7@juniper.net> <CABCOCHTmNdi7ZGPL_R8vyZTOKeVwJgtrqsT0ZNBCbMUT4Qo9tA@mail.gmail.com>
In-Reply-To: <CABCOCHTmNdi7ZGPL_R8vyZTOKeVwJgtrqsT0ZNBCbMUT4Qo9tA@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/f.20.0.170309
x-originating-ip: [66.129.241.14]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BN3PR0501MB1457; 6:B5X3XfpILl3bOVgniiwMkLWs1O58xa8CBYycX8tughV7yqY46KyfMgXt4lRXm1y288Z2BiX/FeeREb4EKGMFyUGD92zpuzXpnH0jQhmHJzVly99j3doAPs9UNFKra1guo/vH1otfpDAh+k25UZb6RsaZzveRmNHLTKqdmrKCBw9P4pxTbYp65v1IPlOQZgrhEVndURmm1Fm/rXFfcJgnjIqbVzJDqlclao2AmBGElXoUK2sdIAhhmfVy8bWwwK0rZS7AQDXYUnnpp9e0OedyeraKjmoPyWjJhICjpKYy/anWfAxpSDoDuORpzUR/ejPCdRY6NBENMKZ0/LTqCqq+vg==; 5:PWFyYzxpBAsLQ9Uc/VfQtxDxKFFokn8xd1GItVBgKkNx0Mr/uuFezr1IiX+T+6BoB0dd48aJA1TGCPE1xTLLNZbvuHKTLd1ES9vZGOQchhC2NCU5tTFs70ziGDy5Xc3C/gMhXycX930X8O0JnIXAfA==; 24:6iRWkJEvIfcx4+3pBAz3X39lnmuElPC4gGczJ5H97/0KRBHwRRWqdE5zu7+SgaqqTxDJ/lpajT0ADlueEcTiMmeASJ8MOycLebEOWrdaTnM=; 7:zjVvVlxhFQ1a79DiYuaSqkksDLzKXNVrQbrVcykGo+EHQFPmmmmeAkXvBT00lTENDxKw/yBXQ7TAyAFwwxLRP0eyixC6dosoUqBXGWMULMks0MJDtYBBDaonokYl6SUPYtUoo0E4cOEbrcc8BDVyn+Vv0gFNbFyuMiG/AVEkXJJj/No5ir0krf8snXO0BfhIlRJLIxIGx+l1w/mBWv51qflmCw2ogJQ+vRSf9GUwqoE=
x-ms-office365-filtering-correlation-id: 0fdfafe4-e342-4fb6-3c85-08d4df67f30f
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603124)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BN3PR0501MB1457; 
x-ms-traffictypediagnostic: BN3PR0501MB1457:
x-exchange-antispam-report-test: UriScan:(158342451672863)(21532816269658);
x-microsoft-antispam-prvs: <BN3PR0501MB1457FF2AE24DF9674E8DBB8AA58B0@BN3PR0501MB1457.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(93006095)(93001095)(100000703101)(100105400095)(10201501046)(3002001)(6055026)(6041248)(20161123555025)(20161123562025)(20161123564025)(20161123560025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN3PR0501MB1457; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN3PR0501MB1457; 
x-forefront-prvs: 0394259C80
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(39850400002)(39860400002)(39450400003)(39840400002)(39410400002)(39400400002)(199003)(189002)(76104003)(3846002)(4001350100001)(81156014)(2900100001)(8936002)(14454004)(189998001)(8676002)(4326008)(7736002)(478600001)(36756003)(6436002)(305945005)(25786009)(81166006)(6246003)(6486002)(229853002)(83506001)(6506006)(102836003)(110136004)(38730400002)(6116002)(77096006)(54906002)(106356001)(86362001)(3660700001)(105586002)(83716003)(53936002)(54356999)(6916009)(66066001)(99286003)(561944003)(3280700002)(97736004)(76176999)(2950100002)(2906002)(5660300001)(33656002)(82746002)(6512007)(68736007)(50986999)(101416001)(230783001); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR0501MB1457; H:BN3PR0501MB1442.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; 
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
authentication-results: spf=none (sender IP is ) smtp.mailfrom=kwatsen@juniper.net; 
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <EE88931035B4424888F489D7D81ECAB4@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Aug 2017 20:48:11.7788 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0501MB1457
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/JI7mvny4M_mA0XFtMWgxOVDxIkA>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-netconf-restconf-client-server-04
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 09 Aug 2017 20:48:16 -0000

SGkgQW5keSwNCg0KPj4+IE1vZHVsZXM6DQo+Pj4gIChNMSkgaWV0Zi1yZXN0Y29uZi1jbGllbnRA
MjAxNy0wNy0wMy55YW5nDQo+Pj4gIChNMikgaWV0Zi1yZXN0Y29uZi1zZXJ2ZXJAMjAxNy0wNy0w
My55YW5nDQo+Pj4NCj4+PiBDb21tZW50czoNCj4+PiANCj4+PiBDMToNCj4+Pg0KPj4+IChNMSkg
UkVTVENPTkYgZG9lcyBub3QgaGF2ZSBzZXNzaW9ucyBzbyB0aGUgdGVybSAiUkVTVENPTkYgc2Vz
c2lvbiINCj4+PiBuZWVkcyB0byBiZSBkZWZpbmVkDQo+Pg0KPj4gPEtFTlQ+IGdvb2QgcG9pbnQs
IGluIHRoaXMgY2FzZSwgaXQncyBhY3R1YWxseSB0aGUgdW5kZXJseWluZyANCj4+IHRyYW5zcG9y
dCAoVExTKSB0aGF0IGhhcyBhIHNlc3Npb24uICBGaXhlZC4gIEJ1dCB3aGF0IGFib3V0IHRoZQ0K
Pj4gJ21heC1zZXNzaW9ucycgbGVhZiwgdW5kZXIgJ2xpc3RlbicsIGluIGJvdGggbW9kdWxlcz8g
IC0gc2hvdWxkDQo+PiB0aGlzIGFsc28gYmUgY2hhbmdlZCB0byB0YWxrIGFib3V0IHRoZSBUTFMg
c2Vzc2lvbiwgb3IgcmVtb3ZlZA0KPj4gYWx0b2dldGhlcj8NCj4NCj4gSSB0aGluayB5b3UgY2Fu
IGNoYW5nZSBpdCB0byAidHJhbnNwb3J0IHNlc3Npb24iIG9yICJUTFMgc2Vzc2lvbiINCj4gaWYg
dGhlIGNvbmNlcHQgb2Ygc2Vzc2lvbiByZWNvbm5lY3QgaXMgaXMga2VwdCBmb3IgUkVTVENPTkYN
Cg0KRml4ZWQgaW4gbXkgbG9jYWwgY29weS4NCiANCg0KPj4+IEMyOg0KPj4+DQo+Pj4gKE0xKSBm
ZWF0dXJlIHRscy1pbml0aWF0ZQ0KPj4+IChNMSkgZmVhdHVyZSB0bHMtbGlzdGVuDQo+Pj4gKE0y
KSBmZWF0dXJlIHRscy1saXN0ZW4NCj4+PiAoTTIpIGZlYXR1cmUgdGxzLWNhbGwtaG9tZQ0KPj4+
DQo+Pj4gQXJlIHRoZXNlIGZlYXR1cmVzIHJlYWxseSBuZWVkZWQgc2luY2UgYSBSRVNUQ09ORiBz
ZXJ2ZXIgTVVTVCBzdXBwb3J0DQo+Pj4gdGhlIFRMUyB0cmFuc3BvcnQ/DQo+Pg0KPj4gPEtFTlQ+
IHRoZSBmZWF0dXJlcyB0aGVtc2VsdmVzIGFyZSBuZWVkZWQsIGFzIHdlIGRvbid0IGtub3cgd2hh
dCANCj4+IGNsaWVudHMvc2VydmVycyBtYXkgc3VwcG9ydC4NCj4+DQo+IE9LIC0tIFRoZXNlIGZl
YXR1cmVzIGFyZSBuZXN0ZWQgd2l0aGluIG90aGVyIGZlYXR1cmVzIChpbml0aWF0ZSwgbGlzdGVu
KS4NCj4gWW91IHNob3VsZCBhZGQgYSBjb21tZW50IHNvbWV3aGVyZSB0aGF0IFRMUyBpcyBvcHRp
b25hbC10by1zdXBwb3J0LA0KPiBidXQgbWFuZGF0b3J5IHRvIHN1cHBvcnQgaWYgdGhlIFRMUyB0
cmFuc3BvcnQgaXMgaW1wbGVtZW50ZWQuDQo+IEN1cnJlbnRseSBSRVNUQ09ORiByZXF1aXJlcyBU
TFMgYmUgc3VwcG9ydGVkLCBidXQgZnV0dXJlDQo+IHZlcnNpb25zIGNvdWxkIGJlIGRpZmZlcmVu
dC4NCg0KSSBhZGRlZCB0aGlzIHRvIHRoZSBkZXNjcmlwdGlvbiBzdGF0ZW1lbnQgb2YgdGhlICd0
bHMtbGlzdGVuJyBhbmQNCid0bHMtaW5pdGlhdGUnIGZlYXR1cmVzOg0KDQogICAgICBDdXJyZW50
bHkgVExTIGlzIHRoZSBvbmx5IHRyYW5zcG9ydCBzdXBwb3J0ZWQgYnkgUkVTVENPTkYsDQogICAg
ICB0aGlzIGZlYXR1cmUgaGVscHMgc3VwcG9ydCBwb3NzaWJsZSBmdXR1cmUgdHJhbnNwb3J0cy4i
Ow0KDQphbmQgSSBhbHNvIGFkZGVkIGEgZGVzaWduIG5vdGUgaW50byB0aGUgZHJhZnQgaXRzZWxm
Lg0KDQoNCj4gQWxzbywgcmVjZW50IFlBTkcgMS4xIGRpc2N1c3Npb25zIGNvbmNsdWRlZCAod3Jv
bmdseSBJTU8pIHRoYXQgbmVzdGVkDQo+IG5vZGVzIGRvIG5vdCBpbmhlcml0IHRoZSBpZi1mZWF0
dXJlLXN0bXRzIG9mIGFuY2VzdG9ycy4gIEl0IGlzIG5vdCBjbGVhcg0KPiBob3cgb25lIHdvdWxk
IGFjY2VzcyAvZm9vL2JhciBpZiAvZm9vIHdhcyBub3Qgc3VwcG9ydGVkLg0KDQpXYWl0LCBzZXJp
b3VzbHk/IEkgZGlkbid0IHNlZSB0aGF0LiAgSSBkb24ndCB1bmRlcnN0YW5kIGhvdyBlbHNlIG5l
c3RlZA0KaWYtZmVhdHVyZSBzdGF0ZW1lbnRzIGNhbiBiZSBpbnRlcnByZXRlZC4gIENhbiB5b3Ug
cG9pbnQgdG8gdGhlIHRocmVhZA0Kd2hlcmUgdGhpcyB3YXMgZGlzY3Vzc2VkPw0KDQoNCg0KPiBT
byBwZXJoYXBzIHlvdSBzaG91bGQgYWRkIGlmLWZlYXR1cmUtc3RtdHM6DQo+DQo+ICBmZWF0dXJl
IHRscy1saXN0ZW4gew0KPiAgICAgaWYtZmVhdHVyZSBsaXN0ZW47DQo+ICAgICAuLi4NCj4gIH0N
Cj4NCj4gIGZlYXR1cmUgdGxzLWxpc3RlbiB7DQo+ICAgIGlmLWZlYXR1cmUgbGlzdGVuOw0KPiAg
ICAuLi4NCj4gIH0NCg0KSSB3ZW50IGFoZWFkIGFuZCBtYWRlIHRoaXMgY2hhbmdlLCBpdCBzZWVt
cyBiZXR0ZXIuDQoNCg0KDQo+Pj4gQzM6DQo+DQo+IENoYW5nZSBpdCB0byBiZSBUTFMgc2Vzc2lv
bg0KDQpEb25lLg0KDQogDQoNCj4+PiBDNDoNCj4gDQo+IE9LIC0tIHRoaXMgaXMgaG93IG91ciBz
ZXJ2ZXIgd29ya3MuIEl0IGRvZXMgbm90IG1ha2UgYSBzcGVjaWFsIGNhc2UgZm9yIENvbm5lY3Rp
b246IGNsb3NlLg0KDQpDb3JyZWN0Lg0KDQoNCg0KPj4+IEM1Og0KPg0KPiBJdCBzaG91bGQgYmUg
Y2xlYXIgdGhhdCB0aGUgY2xpZW50IHdvdWxkIGhhdmUgdG8gaXNzdWUgYSBHRVQgb3IgbWF5YmUg
UE9TVA0KPiB0byBpbml0aWF0ZSB0aGUgc2VuZGluZyBvZiBzdG9yZWQgZGF0YSBsaWtlIGxvZ3MN
Cg0KT2theSwgaG93IGFib3V0IHRoaXM/DQoNCiAgICJQZXJpb2RpY2FsbHkgY29ubmVjdCB0byB0
aGUgUkVTVENPTkYgc2VydmVyLCBzbyB0aGF0LA0KICAgIGUuZy4sIHRoZSBSRVNUQ09ORiBjbGll
bnQgY2FuIGNvbGxlY3QgZGF0YSAobG9ncykgDQogICAgZnJvbSB0aGUgUkVTVENPTkYgc2VydmVy
LiAgVGhlIFJFU1RDT05GIGNsaWVudCBtdXN0DQogICAgY2xvc2UgdGhlIGNvbm5lY3Rpb24gd2hl
biBpdCBpcyByZWFkeSB0byByZWxlYXNlIGl0Lg0KICAgIE9uY2UgdGhlIGNvbm5lY3Rpb24gaXMg
Y2xvc2VkLCB0aGUgUkVTVENPTkYgY2xpZW50DQogICAgcmVzdGFydHMgaXRzIHRpbWVyIHVudGls
IHRoZSBuZXh0IGNvbm5lY3Rpb24uIjsNCg0KDQoNCj4+PkM2Og0KPj4+DQo+Pj4gKE0xKSAgL3Jl
c3Rjb25mLWNsaWVudC9pbml0aWF0ZS9yZXN0Y29uZi1zZXJ2ZXIvcGVyaW9kaWMvDQo+Pj4gKE0y
KSAgL3Jlc3Rjb25mLXNlcnZlci9jYWxsLWhvbWUvcmVzdGNvbmYtY2xpZW50L2Nvbm5lY3Rpb24t
dHlwZS9wZXJpb2RpYy8NCj4+Pg0KPj4+IFRoZSBSRVNUQ09ORiBub3RpZmljYXRpb25zIHZpYSBT
U0Ugc2hvdWxkIGJlIGV4ZW1wdCBmcm9tIHRpbWVvdXRzLg0KPj4+IFRoZSBSRVNUQ09ORiBjbGll
bnQgc2hvdWxkIHRlcm1pbmF0ZSBhbiBTU0UgcmVxdWVzdC4gVGhlIHNlcnZlciBzaG91bGQNCj4+
PiBub3QgdGltZW91dCBhbiBTU0UgcmVzcG9uc2UgY29ubmVjdGlvbg0KPj4NCj4+IDxLRU5UPiBB
Z3JlZWQsIGFuZCB0aGUgZGVzY3JpcHRpb24gc3RhdGVtZW50IGZvciB0aGUgJ2lkbGUtdGltZW91
dCcgbGVhZg0KPj4gc2F5cyAiU2Vzc2lvbnMgdGhhdCBoYXZlIGEgbm90aWZpY2F0aW9uIHN1YnNj
cmlwdGlvbiBhY3RpdmUgYXJlIG5ldmVyDQo+PiBkcm9wcGVkLiAgQnV0IGhlcmUsIHVuZGVyICdw
ZXJpb2RpYycsIHRoZSB3aG9sZSBwb2ludCBpcyB0byBzaGVkIGlkbGUNCj4+IGNvbm5lY3Rpb25z
LiAgRm9yIGluc3RhbmNlLCBpbWFnaW5lIGEgY2xpZW50IHRoYXQgd2FudHMgdG8gY29sbGVjdCBs
b2dzDQo+PiBmcm9tIGEgbG93LXBvd2VyZWQgc2VydmVyIG9uY2UgYSBkYXkuICBXaGF0IGRvIHlv
dSB0aGluaz8NCj4NCj4gTm90aWZpY2F0aW9uIHJlcGxheSBoYXMgYSBtb2RlIHdoZXJlIGl0IGlz
IHRlcm1pbmF0ZWQgKGkuZSwuLCBlbmQtdGltZSBwcm92aWRlZCkNCj4gSSB0aGluayB0aGlzIHdv
dWxkIGhhdmUgdG8gYmUgdXNlZCBieSB0aGUgY2xpZW50LiAgVGhpcyB0ZWxscyB0aGUgc2VydmVy
IHRvIGRyb3ANCj4gdGhlIGNvbm5lY3Rpb24gd2hlbiB0aGUgcmVwbGF5IGlzIGNvbXBsZXRlLg0K
DQpTdXJlLCBidXQga2VlcCBpbiBtaW5kIHRoYXQgbG9ncyBhcmUganVzdCBhbiBleGFtcGxlLCB0
aGVyZSBjb3VsZCBiZSBvdGhlcg0KZGF0YS1jb2xsZWN0aW9uIG1lY2hhbmlzbXMuICBTdGlsbCwg
bm90ZSB0aGF0IHdoZW4gZW5kLXRpbWUgcHJvdmlkZWQgaXMNCnJlYWNoZWQsIHRoZSBsaW5lIHdv
dWxkIGJlY29tZSBpZGxlLCBpZiBpdCBkaWRuJ3QgZHJvcC4gIFRoaXMgc2VlbXMgbGlrZSBhDQpt
b3JlIGdlbmVyaWMgbWVjaGFuaXNtLg0KDQoNCj4gVGhpcyBpcyAxIGV4Y2VwdGlvbiAtLSBhbm90
aGVyIGlzIGNsb3NlLXNlc3Npb24uIA0KPg0KPiAgIFBPU1QgL3Jlc3Rjb25mL29wZXJhdGlvbnMv
aWV0Zi1uZXRjb25mOmNsb3NlLXNlc3Npb24NCj4NCj4gSXMgdGhpcyBzdXBwb3NlZCB0byBkbyBh
bnl0aGluZyBpbiBSRVNUQ09ORj8NCg0KRmlyc3QsIEkgZG9uJ3QgdmlldyB0aGUgYWJvdmUgYXMg
YW4gZXhjZXB0aW9uLiAgV2l0aCByZWdhcmRzIHRvICdjbG9zZS0NCnNlc3Npb24nLCBkb2VzIGl0
IGV2ZW4gaGF2ZSBhIG1lYW5pbmcgaW4gUkVTVENPTkY/ICAtIGFuZCBpcyB0aGlzIGFjdHVhbGx5
DQphbiBpc3N1ZSBmb3IgUkZDIDgwNDA/DQoNCg0KDQo+Pj4gQzc6DQo+Pj4NCj4+PiBTZWMgMS4y
IFRyZWUgRGlhZ3JhbXMNCj4+PiANCj4+PiBPbGQgdGV4dCBzaG91bGQgYmUgcmVwbGFjZWQgd2l0
aCByZWZlcmVuY2UgdG8NCj4+PiBkcmFmdC1pZXRmLW5ldG1vZC15YW5nLXRyZWUtZGlhZ3JhbXMt
MDENCj4+DQo+PiA8S0VOVD4gc2FtZSBjb21tZW50IGFzIGJlZm9yZS4NCj4NCj4gT0sgLS0gd2Fp
dCBmb3IgdHJlZSBkcmFmdCB0byBiZSBzdGFibGUNCg0KWWVwLg0KDQoNCj4+PiBOaXRzOg0KPj4+
DQo+Pj4gVGhlIHRyZWUgZGlhZ3JhbSBzaG93cyB0aGUgZnVsbHkgZXhwYW5kZWQgZ3JvdXBpbmdz
LA0KPj4+IGV2ZW4gbWFueSBvYmplY3RzIGFyZSBpbiBvdGhlciBkcmFmdHMuIEkgbmVlZGVkIGFs
bCA1IGRyYWZ0cw0KPj4+IG9wZW4gaW4gd2luZG93cyBmb3Igc2VhcmNoaW5nLCBwbHVzIHB5YW5n
IHRyZWUgb3V0cHV0LA0KPj4+IHRvIHJlYWxseSBmb2xsb3cgdGhlIGRhdGEgbW9kZWwgc3RydWN0
dXJlLg0KPj4NCj4+IDxLRU5UPiBJIGtub3cuICBEbyB5b3UgaGF2ZSBhIHByb3Bvc2FsPw0KPg0K
PiBUaGUgZXh0ZXJuYWwgbm9kZXMgY2Fubm90IHJlYWxseSB1c2UgYSBwcmVmaXggYmVjYXVzZSB0
aGV5DQo+IGFyZSBwdWxsZWQgaW4gZnJvbSBncm91cGluZ3MsIGFuZCB0ZWNobmljYWxseSBpbiB0
aGUgc2FtZSBtb2R1bGUNCj4gbmFtZXNwYWNlLiBJIGRvbid0IGtub3cgaWYgYW55IGNoYW5nZXMg
dG8gdGhlIHRyZWUgZGlhZ3JhbSANCj4gc2hvdWxkIGJlIG1hZGUgZm9yIHVzZXMgZXh0ZXJuYWwt
Z3JvdXBpbmcuDQoNCkFncmVlZC4NCiANCg0KDQo+IEFuZHkNCg0KS2VudA0KDQoNCg0KDQoNCg0K
DQo=


From nobody Thu Aug 10 09:21:48 2017
Return-Path: <mersue@gmail.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 709BC13239E for <yang-doctors@ietfa.amsl.com>; Thu, 10 Aug 2017 09:21:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level: 
X-Spam-Status: No, score=-1.998 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id va1BNbdEwxcX for <yang-doctors@ietfa.amsl.com>; Thu, 10 Aug 2017 09:21:31 -0700 (PDT)
Received: from mail-wm0-x229.google.com (mail-wm0-x229.google.com [IPv6:2a00:1450:400c:c09::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8FAB91323A7 for <yang-doctors@ietf.org>; Thu, 10 Aug 2017 09:21:30 -0700 (PDT)
Received: by mail-wm0-x229.google.com with SMTP id i66so26957322wmg.0 for <yang-doctors@ietf.org>; Thu, 10 Aug 2017 09:21:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;  h=from:to:cc:references:in-reply-to:subject:date:message-id :mime-version:thread-index:content-language; bh=NkXlO8yg071whWlzSH44ovZzRB4yCzukFvPbSTJADNE=; b=vQEmM7hV3CKMhQNLSGKxKfQc05IDMdiOsKSvJZImNP4sK6iR9FLUdFC2VbK3sfTp1T K7vrkc03nT0i4RL9xNbjnqF56cHkR0PtVPOA+Zs6qKfTGrc8noo43RzPVkgQ0T3WUCPe Nwv4ruX+Cz5ao7Hh4+Tob3CSa6gWdb0oOOK2bJIX16wSyGfq984hXx56G7a6bCgFVEKe hFC1/V+rU7K8vucyOmyc+cMPy7oB/5KPDlBvVgkKjEhF3ooImSDnSSWyUECkl5ki1Kb8 OrKCHIOUkH0DZhuz1zalQBXKIalqVhkL06YmeFb9QlFCaZ2AtmXsJ1kz4ED+wHQhqLgu lZHQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:references:in-reply-to:subject:date :message-id:mime-version:thread-index:content-language; bh=NkXlO8yg071whWlzSH44ovZzRB4yCzukFvPbSTJADNE=; b=L+6ASta6mEnWiTK1LGXKDch8xAgU9gDl5SFEw/5svW4VTJTGqCMW6k/R52u4ULBZmT V4Y6C//TBaqVaXjxMrYhEcIjtp7Sf0S/J++iQpIA8Gtu/sx5hDlw5fDjPh7IzuPhmxuQ OvF0+9shpshhUdZQOX6m6pvBtnCsISAqIud1ELlXsWUv5+cmmHY3kPPeLO1rqGD6W9h2 TQJ2U0Cp26UzJFpZXS1Mt8qGlk4/CWuXARm9pyhhXlyaD83KSATqZImORp9DXFi5kcrS xj8isYZUthXVOp+WocVAg0rfMrpJz6dBi24mUrGiwuMZsrDRcrL+RYNbF+uKWMuj6to2 wEyw==
X-Gm-Message-State: AHYfb5i9qii1Op56vyvtnn19CmlraRZRZs0yQi+SjO82xbcAChWyubbi EyYVQqBqkmo/tMbd
X-Received: by 10.28.208.78 with SMTP id h75mr7726165wmg.119.1502382088985; Thu, 10 Aug 2017 09:21:28 -0700 (PDT)
Received: from DESKTOPFLHJVQJ (p57A77FD9.dip0.t-ipconnect.de. [87.167.127.217]) by smtp.gmail.com with ESMTPSA id k134sm6376408wmg.12.2017.08.10.09.21.27 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 10 Aug 2017 09:21:28 -0700 (PDT)
From: "Mehmet Ersue" <mersue@gmail.com>
To: "'YANG Doctors'" <yang-doctors@ietf.org>
Cc: "'Dan Romascanu'" <dromasca@gmail.com>
References: <007e01d2f019$eb5d13c0$c2173b40$@gmail.com>
In-Reply-To: <007e01d2f019$eb5d13c0$c2173b40$@gmail.com>
Date: Thu, 10 Aug 2017 18:21:26 +0200
Message-ID: <031e01d311f4$b7b289e0$27179da0$@gmail.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_031F_01D31205.7B3F9FA0"
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQKq4XgVZBJJ0TP8/31AhqTzCHStU6DOIpsA
Content-Language: de
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/eg2VdEGhRSzd-Mj5nC7rpIQEx4M>
Subject: Re: [yang-doctors] Re-review of YANG Modules following the NMDA Guidelines WAS:RE: Fwd: Important: Guidelines for YANG module authors
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 10 Aug 2017 16:21:36 -0000

This is a multipart message in MIME format.

------=_NextPart_000_031F_01D31205.7B3F9FA0
Content-Type: text/plain;
	charset="iso-8859-2"
Content-Transfer-Encoding: quoted-printable

Dear YANG Doctors,

=20

we think it is important that the YANG modules we are developing are =
NMDA
compliant.

=20

If not done yet, please indicate the necessary actions needed for NMDA
compliance on the review page of a draft.

This is an essential help for the draft authors to get their document =
final
before IETF LC.

=20

The review update can be entered on the draft review page under "Correct
review".

See the mail below for the documents you reviewed.=20

See the URL below for the reviews done so far:
https://datatracker.ietf.org/group/yangdoctors/reviews/?since=3Dall#close=
d-rev
iew-requests

=20

Many Thanks for your kind efforts!!

=20

Cheers,

Mehmet

(YANG Doctors Secretary)

=20

From: yang-doctors [mailto:yang-doctors-bounces@ietf.org] On Behalf Of
Mehmet Ersue
Sent: Wednesday, June 28, 2017 4:22 PM
To: 'YANG Doctors' <yang-doctors@ietf.org>
Cc: 'Dan Romascanu' <dromasca@gmail.com>
Subject: [yang-doctors] Re-review of YANG Modules following the NMDA
Guidelines WAS:RE: Fwd: Important: Guidelines for YANG module authors

=20

Dear YANG Doctors,

=20

following Benoit's request I'm going to restart the review of the YANG
modules listed below to achieve the NMDA compliance.

Please use for your review the criteria and guidelines in:
<https://datatracker.ietf.org/doc/draft-dsdt-nmda-guidelines/>
https://datatracker.ietf.org/doc/draft-dsdt-nmda-guidelines/

If there is any issue or unclear guideline we need to clarify this on =
YANG
Doctors maillist.

=20

I would like to ask you to finish your review at the latest during or =
right
after the IETF week=20

so that we can give the draft authors feedback as early as possible
(potentially during IETF #99).

=20

Currently running reviews should already consider the NMDA guidelines.=20

These are:

=20
<https://datatracker.ietf.org/doc/draft-ietf-i2rs-yang-l3-topology/review=
req
uest/8890/> draft-ietf-i2rs-yang-l3-topology-09           Ladislav =
Lhotka=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-rtgwg-device-model/reviewreq=
ues
t/8513/> draft-ietf-rtgwg-device-model-02             Giles Heron=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-mpls-ldp-yang/reviewrequest/=
845
9/> draft-ietf-mpls-ldp-yang-01                         Dean Bogdanovic=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-netmod-syslog-model/reviewre=
que
st/8317/> draft-ietf-netmod-syslog-model-12          Kent Watsen=20

=20

=20

Below are the drafts which need to be re-reviewed by original reviewers. =


- To enter your review result please click on the draft name (on the =
page
for closed reviews:

https://datatracker.ietf.org/group/yangdoctors/reviews/?since=3Dall#close=
d-rev
iew-requests)

- Please use the button "Correct review" to enter the review results.

- Please send an email to the authors AND YANG Doctors maillist.

=20

 =
<https://datatracker.ietf.org/doc/draft-ietf-pim-yang/reviewrequest/8484/=
>
draft-ietf-pim-yang-00                             Dean Bogdanovic
Ready with Issues=20

NOTE: Publication requested, not yet in IETF LC, i.e. an urgent review =
is
very useful.

=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-l3sm-l3vpn-service-model/rev=
iew
request/8246/> draft-ietf-l3sm-l3vpn-service-model-16          Giles =
Heron
Ready=20

NOTE: Already published. Review can be useful.

=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-netmod-intf-ext-yang/reviewr=
equ
est/8458/> draft-ietf-netmod-intf-ext-yang-04           Andy Bierman
Almost Ready=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-netconf-yang-push/reviewrequ=
est
/8237/> draft-ietf-netconf-yang-push-04                 Bert Wijnen
On the Right Track=20

=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-i2rs-yang-l3-topology/review=
req
uest/8481/> draft-ietf-i2rs-yang-l3-topology-02           Carl Moberg
Ready with Issues=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-lime-yang-oam-model/reviewre=
que
st/8236/> draft-ietf-lime-yang-oam-model-08         Carl Moberg       On =
the
Right Track=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-lime-yang-connectionless-oam=
-me
thods/reviewrequest/8235/>
draft-ietf-lime-yang-connectionless-oam-methods-00Carl Moberg            =
 On
the Right Track=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-lime-yang-connectionless-oam=
/re
viewrequest/8234/> draft-ietf-lime-yang-connectionless-oam-03        =
Carl
Moberg       On the Right Track=20

=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-trill-yang-oam/reviewrequest=
/88
16/> draft-ietf-trill-yang-oam                                 Jan =
Lindblad
On the Right Track=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-ippm-twamp-yang/reviewreques=
t/8
483/> draft-ietf-ippm-twamp-yang-00                 Jan Lindblad       =
Ready
with Issues=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-pim-igmp-mld-yang/reviewrequ=
est
/8263/> draft-ietf-pim-igmp-mld-yang-01              Jan Lindblad       =
On
the Right Track=20

=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-i2rs-yang-network-topo/revie=
wre
quest/8482/> draft-ietf-i2rs-yang-network-topo-02      Kent Watsen
Almost Ready=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-rtgwg-yang-rip/reviewrequest=
/84
86/> draft-ietf-rtgwg-yang-rip-02                        Ladislav Lhotka
Ready with Issues=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-rtgwg-yang-key-chain/reviewr=
equ
est/8239/> draft-ietf-rtgwg-yang-key-chain-13          Ladislav Lhotka
Almost Ready=20

=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-teas-yang-te-topo/reviewrequ=
est
/8747/> draft-ietf-teas-yang-te-topo-08                  Mahesh =
Jethanandani
Ready with Issues=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-netmod-acl-model/reviewreque=
st/
8480/> draft-ietf-netmod-acl-model-07                 Mahesh =
Jethanandani
Ready with Issues=20

=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-rtgwg-ni-model/reviewrequest=
/84
93/> draft-ietf-rtgwg-ni-model-02                       Martin Bjorklund
Not Ready=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-rtgwg-lne-model/reviewreques=
t/8
491/> draft-ietf-rtgwg-lne-model-02                    Martin Bjorklund
Ready with Issues=20

 =
<https://datatracker.ietf.org/doc/draft-ietf-lmap-yang/reviewrequest/8485=
/>
draft-ietf-lmap-yang-05                                 Martin Bjorklund
Ready with Issues=20

=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-rtgwg-routing-types/reviewre=
que
st/8529/> draft-ietf-rtgwg-routing-types                    Radek =
Krej=E8=ED
Ready with Nits=20

=20
<https://datatracker.ietf.org/doc/draft-ietf-rtgwg-yang-vrrp/reviewreques=
t/8
487/> draft-ietf-rtgwg-yang-vrrp-01                     Radek Krej=E8=ED
Ready with Issues=20

=20

Many Thanks for your efforts.

=20

Cheers,

Mehmet

=20

From: yang-doctors [ <mailto:yang-doctors-bounces@ietf.org>
mailto:yang-doctors-bounces@ietf.org] On Behalf Of Benoit Claise
Sent: Monday, June 26, 2017 1:01 PM
To: YANG Doctors < <mailto:yang-doctors@ietf.org> =
yang-doctors@ietf.org>;
Robert Wilton -X (rwilton - Ensoft Ltd at Cisco) <
<mailto:rwilton@cisco.com> rwilton@cisco.com>; < =
<mailto:rtg-ads@ietf.org>
rtg-ads@ietf.org> < <mailto:rtg-ads@ietf.org> rtg-ads@ietf.org>;
<mailto:ops-ads@ietf.org> ops-ads@ietf.org
Subject: Re: [yang-doctors] Fwd: Important: Guidelines for YANG module
authors

=20

Dear YANG doctors,

Thinking some more about it, I believe we want to review one more time =
the
already-reviewed YANG modules to flag whether they align with the =
guidelines
below.
Background: the TEAS YANG module draft-ietf-teas-yang-te-topo, which =
we're
discussing now.=20
On this specific one, not only it's not aligned with the NMDA =
guidelines,
but he doesn't align with any of of the known YANG module structure, as =
Rob
mentioned:

My comment actually relates to the fact the structure used by TE YANG
modules don't match any other YANG modules - they are using their own =
unique
style of structure.

Practically, it means that this YANG module will be hard to integrate.

Regards, Benoit   =20

Dear YANG doctors,

Here is an important message for your YANG doctor reviews.
Rob Wilton developed some tooling to help YANG module designers to
transition to NMDA.

Rob, would you mind explaining to everybody on this list, and maybe on =
the
NETMOD if you believe this is relevant for everybody.

Regards, Benoit

-------- Forwarded Message --------=20


Subject:=20

Important: Guidelines for YANG module authors


Date:=20

Fri, 9 Jun 2017 15:56:39 +0200


From:=20

Benoit Claise  <mailto:bclaise@cisco.com> <bclaise@cisco.com>


To:=20

NETMOD Working Group  <mailto:netmod@ietf.org> <netmod@ietf.org>



Dear all,

Now that the new NETMOD and NETCONF charters have been approved, it's =
time
to think about the guidelines for YANG module authors.

The Network Management Datastore Architecture (NMDA) addresses the =
so-called
"OpState problem" that has been the subject of much discussion in the =
IETF.
NMDA is still in development, and there will be a transition period =
before
NMDA solutions are universally available.


The NETMOD Datastore Design Team and the Routing Yang Architecture =
Design
Team have worked with Alia and Benoit to create initial guidelines for =
how
the NMDA, as defined in
<https://datatracker.ietf.org/doc/draft-ietf-netmod-revised-datastores/>
draft-ietf-netmod-revised-datastores, impacts Yang models. The
<https://datatracker.ietf.org/doc/draft-dsdt-nmda-guidelines/>
draft-dsdt-nmda-guidelines individual draft was foundational in helping
creating those guidelines.

=20

If you have questions or concerns on how these guidelines should apply =
to
work of interest, please contact your WG Chairs or ADs.

=20

It is our strong recommendation, as ADs with agreement from the NETMOD =
WG
Chairs, that models SHOULD move as quickly as possible to the NMDA. The
specific approach to be taken for models being developed now and during =
the
NMDA transition period should be based on both the expected usage and =
the
maturity of the data model.

1. New models and models that are not concerned with the operational =
state
of configuration information SHOULD immediately be structured to be
NMDA-compatible.

2. Models that require immediate support for "in use" and "system =
created"
information SHOULD be structured for NMDA. Then derived versions of =
these
models SHOULD be created, either by hand or with suitable tools, that =
follow
the current modeling strategies. In some cases, the non-NMDA model may =
be an
existing model and not derived from the NMDA model. In all cases, the =
NMDA
and non-NMDA modules SHOULD be published in the same document, with NMDA
modules in the document main body and the non-NMDA modules in an =
Appendix.
The use of the non-NMDA model will allow temporary bridging of the time
period until NMDA implementations are available. The non-NMDA module =
names
should include '-state' appended.

We would like to thank Kent Watsen, Lou Berger, Rob Wilton, Martin
Bjorklund, Phil Shafer, Acee Lindem, Chris Hopps, Juergen Schoenwaelder, =
and
all others who helped develop these guidelines.

Regards,
Alia Atlas, Routing AD
Deborah Brungard, Routing AD
Alvaro Retana, Routing AD
Warren Kumari, Operations & Management AD=20
Benoit Claise, Operations & Management AD

=20

_______________________________________________

yang-doctors mailing list

 <mailto:yang-doctors@ietf.org> yang-doctors@ietf.org

 <https://www.ietf.org/mailman/listinfo/yang-doctors>
https://www.ietf.org/mailman/listinfo/yang-doctors

=20


------=_NextPart_000_031F_01D31205.7B3F9FA0
Content-Type: text/html;
	charset="iso-8859-2"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-2"><meta name=3DGenerator content=3D"Microsoft Word =
15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
	{mso-style-name:msonormal;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
span.EmailStyle18
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:#0000CC;}
span.EmailStyle19
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:#0000CC;}
span.EmailStyle20
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:#0000CC;}
span.EmailStyle21
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:#0000CC;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US =
link=3D"#0563C1" vlink=3D"#954F72"><div class=3DWordSection1><p =
class=3DMsoNormal><span style=3D'color:#0000CC'>Dear YANG =
Doctors,<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'>we think it is important =
that the YANG modules we are developing are NMDA =
compliant.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'>If not done yet, please =
indicate the necessary actions needed for NMDA compliance on the review =
page of a draft.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'>This is an essential help for the draft authors =
to get their document final before IETF LC.<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'>The review update can be =
entered </span><span style=3D'color:#0000CC'>on the draft review =
page</span><span style=3D'color:#0000CC'> under </span><span =
style=3D'color:#0000CC'>&#8220;Correct =
review&#8221;.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'>See the mail below for the documents you =
reviewed. <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'>See the URL below for the reviews done so far: =
<a =
href=3D"https://datatracker.ietf.org/group/yangdoctors/reviews/?since=3Da=
ll#closed-review-requests">https://datatracker.ietf.org/group/yangdoctors=
/reviews/?since=3Dall#closed-review-requests</a><o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><div><p =
class=3DMsoNormal><span style=3D'color:#0000CC'>Many Thanks for your =
kind efforts!!<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'>Cheers,<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'>Mehmet<o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'>(YANG Doctors =
Secretary)<o:p></o:p></span></p></div><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><div =
style=3D'border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm =
4.0pt'><div><div style=3D'border:none;border-top:solid #E1E1E1 =
1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=3DMsoNormal><b>From:</b> =
yang-doctors [mailto:yang-doctors-bounces@ietf.org] <b>On Behalf Of =
</b>Mehmet Ersue<br><b>Sent:</b> Wednesday, June 28, 2017 4:22 =
PM<br><b>To:</b> 'YANG Doctors' =
&lt;yang-doctors@ietf.org&gt;<br><b>Cc:</b> 'Dan Romascanu' =
&lt;dromasca@gmail.com&gt;<br><b>Subject:</b> [yang-doctors] Re-review =
of YANG Modules following the NMDA Guidelines WAS:RE: Fwd: Important: =
Guidelines for YANG module authors<o:p></o:p></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'>Dear YANG Doctors,<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'>following Benoit&#8217;s =
request I&#8217;m going to restart the review of the YANG modules listed =
below to achieve the NMDA compliance.<o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'>Please use for your =
review the criteria and guidelines in: <a =
href=3D"https://datatracker.ietf.org/doc/draft-dsdt-nmda-guidelines/"><sp=
an =
style=3D'color:blue'>https://datatracker.ietf.org/doc/draft-dsdt-nmda-gui=
delines/</span></a><o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'>If there is any issue or unclear guideline we =
need to clarify this on YANG Doctors maillist.<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'>I would like to ask you =
to finish your review at the latest during or right after the IETF week =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'>so that we can give the draft authors feedback =
as early as possible (potentially during IETF =
#99).<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'>Currently running =
reviews should already consider the NMDA guidelines. =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'>These are:<o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-i2rs-yang-l3-topology=
/reviewrequest/8890/"><span =
style=3D'color:blue'>draft-ietf-i2rs-yang-l3-topology-09</span></a>&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ladislav Lhotka =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-rtgwg-device-model/re=
viewrequest/8513/"><span =
style=3D'color:blue'>draft-ietf-rtgwg-device-model-02</span></a>&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Giles =
Heron <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-mpls-ldp-yang/reviewr=
equest/8459/"><span =
style=3D'color:blue'>draft-ietf-mpls-ldp-yang-01</span></a>&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp; Dean Bogdanovic <o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-netmod-syslog-model/r=
eviewrequest/8317/"><span =
style=3D'color:blue'>draft-ietf-netmod-syslog-model-12</span></a>&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Kent Watsen =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'>Below are the drafts =
which need to be re-reviewed by original reviewers. =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'>- To enter your review result please click on =
the draft name (on the page for closed reviews:<o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/group/yangdoctors/reviews/?since=3Da=
ll#closed-review-requests">https://datatracker.ietf.org/group/yangdoctors=
/reviews/?since=3Dall#closed-review-requests</a>)<o:p></o:p></span></p><p=
 class=3DMsoNormal><span style=3D'color:#0000CC'>- Please use the button =
&#8220;Correct review&#8221; to enter the review =
results.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'>- Please send an email to the authors AND YANG =
Doctors maillist.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-pim-yang/reviewreques=
t/8484/"><span style=3D'color:blue'>draft-ietf-pim-yang-00</span></a> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp; Dean Bogdanovic =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ready =
with Issues <o:p></o:p></span></p><p class=3DMsoNormal><i><span =
style=3D'color:#0000CC'>NOTE: Publication requested, not yet in IETF LC, =
i.e. an urgent review is very useful.<o:p></o:p></span></i></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-l3sm-l3vpn-service-mo=
del/reviewrequest/8246/"><span =
style=3D'color:blue'>draft-ietf-l3sm-l3vpn-service-model-16</span></a> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Giles Heron =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ready =
<o:p></o:p></span></p><p class=3DMsoNormal><i><span =
style=3D'color:#0000CC'>NOTE: Already published. Review can be =
useful.<o:p></o:p></span></i></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-netmod-intf-ext-yang/=
reviewrequest/8458/"><span =
style=3D'color:blue'>draft-ietf-netmod-intf-ext-yang-04</span></a>&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Andy Bierman =
&nbsp;&nbsp; Almost Ready <o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-netconf-yang-push/rev=
iewrequest/8237/"><span =
style=3D'color:blue'>draft-ietf-netconf-yang-push-04</span></a> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp; Bert Wijnen &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; On =
the Right Track <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-i2rs-yang-l3-topology=
/reviewrequest/8481/"><span =
style=3D'color:blue'>draft-ietf-i2rs-yang-l3-topology-02</span></a>&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Carl Moberg =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ready with Issues =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-lime-yang-oam-model/r=
eviewrequest/8236/"><span =
style=3D'color:blue'>draft-ietf-lime-yang-oam-model-08</span></a>&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Carl Moberg =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; On the Right Track =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-lime-yang-connectionl=
ess-oam-methods/reviewrequest/8235/"><span =
style=3D'color:blue'>draft-ietf-lime-yang-connectionless-oam-methods-00</=
span></a>Carl Moberg =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; On =
the Right Track <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-lime-yang-connectionl=
ess-oam/reviewrequest/8234/"><span =
style=3D'color:blue'>draft-ietf-lime-yang-connectionless-oam-03</span></a=
>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Carl Moberg =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; On the Right Track =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-trill-yang-oam/review=
request/8816/"><span =
style=3D'color:blue'>draft-ietf-trill-yang-oam</span></a> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Jan Lindblad =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; On the Right Track =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-ippm-twamp-yang/revie=
wrequest/8483/"><span =
style=3D'color:blue'>draft-ietf-ippm-twamp-yang-00</span></a> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp; Jan Lindblad &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ready with =
Issues <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-pim-igmp-mld-yang/rev=
iewrequest/8263/"><span =
style=3D'color:blue'>draft-ietf-pim-igmp-mld-yang-01</span></a>&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Jan =
Lindblad &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; On the Right Track =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-i2rs-yang-network-top=
o/reviewrequest/8482/"><span =
style=3D'color:blue'>draft-ietf-i2rs-yang-network-topo-02</span></a>&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp; Kent Watsen &nbsp;&nbsp;&nbsp;&nbsp; Almost =
Ready <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-rtgwg-yang-rip/review=
request/8486/"><span =
style=3D'color:blue'>draft-ietf-rtgwg-yang-rip-02</span></a>&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp; Ladislav Lhotka Ready with Issues =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-rtgwg-yang-key-chain/=
reviewrequest/8239/"><span =
style=3D'color:blue'>draft-ietf-rtgwg-yang-key-chain-13</span></a>&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ladislav Lhotka Almost =
Ready <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-teas-yang-te-topo/rev=
iewrequest/8747/"><span =
style=3D'color:blue'>draft-ietf-teas-yang-te-topo-08</span></a>&nbsp; =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp; Mahesh Jethanandani Ready with Issues =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-netmod-acl-model/revi=
ewrequest/8480/"><span =
style=3D'color:blue'>draft-ietf-netmod-acl-model-07</span></a> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp; Mahesh Jethanandani Ready with Issues =
<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-rtgwg-ni-model/review=
request/8493/"><span =
style=3D'color:blue'>draft-ietf-rtgwg-ni-model-02</span></a>&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp; =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp; Martin Bjorklund =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
Not Ready <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-rtgwg-lne-model/revie=
wrequest/8491/"><span =
style=3D'color:blue'>draft-ietf-rtgwg-lne-model-02</span></a>&nbsp;&nbsp;=
&nbsp; =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp; Martin Bjorklund =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
Ready with Issues <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-lmap-yang/reviewreque=
st/8485/"><span style=3D'color:blue'>draft-ietf-lmap-yang-05</span></a> =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Martin Bjorklund =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
Ready with Issues <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-rtgwg-routing-types/r=
eviewrequest/8529/"><span =
style=3D'color:blue'>draft-ietf-rtgwg-routing-types</span></a>&nbsp;&nbsp=
;&nbsp; =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp; Radek Krej=E8=ED &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ready =
with Nits <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-rtgwg-yang-vrrp/revie=
wrequest/8487/"><span =
style=3D'color:blue'>draft-ietf-rtgwg-yang-vrrp-01</span></a>&nbsp;&nbsp;=
&nbsp;&nbsp; =
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp; Radek Krej=E8=ED &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ready =
with Issues <o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:#0000CC'>Many Thanks for your =
efforts.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'>Cheers,<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'>Mehmet<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><b>From:</b> yang-doctors [<a =
href=3D"mailto:yang-doctors-bounces@ietf.org"><span =
style=3D'color:blue'>mailto:yang-doctors-bounces@ietf.org</span></a>] =
<b>On Behalf Of </b>Benoit Claise<br><b>Sent:</b> Monday, June 26, 2017 =
1:01 PM<br><b>To:</b> YANG Doctors &lt;<a =
href=3D"mailto:yang-doctors@ietf.org"><span =
style=3D'color:blue'>yang-doctors@ietf.org</span></a>&gt;; Robert Wilton =
-X (rwilton - Ensoft Ltd at Cisco) &lt;<a =
href=3D"mailto:rwilton@cisco.com"><span =
style=3D'color:blue'>rwilton@cisco.com</span></a>&gt;; &lt;<a =
href=3D"mailto:rtg-ads@ietf.org"><span =
style=3D'color:blue'>rtg-ads@ietf.org</span></a>&gt; &lt;<a =
href=3D"mailto:rtg-ads@ietf.org"><span =
style=3D'color:blue'>rtg-ads@ietf.org</span></a>&gt;; <a =
href=3D"mailto:ops-ads@ietf.org"><span =
style=3D'color:blue'>ops-ads@ietf.org</span></a><br><b>Subject:</b> Re: =
[yang-doctors] Fwd: Important: Guidelines for YANG module =
authors<o:p></o:p></p><p class=3DMsoNormal><span =
style=3D'color:black'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:black'>Dear YANG =
doctors,<br><br>Thinking some more about it, I believe we want to review =
one more time the already-reviewed YANG modules to flag whether they =
align with the guidelines below.<br>Background: the TEAS YANG module =
draft-ietf-teas-yang-te-topo, which we're discussing now. <br>On this =
specific one, not only it's not aligned with the NMDA guidelines, but he =
doesn't align with any of of the known YANG module structure, as Rob =
mentioned:<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:black'>My comment actually relates to the fact the =
structure used by TE YANG modules don't match any other YANG modules - =
they are using their own unique style of =
structure.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:black'>Practically, it means that this YANG module will =
be hard to integrate.<br><br>Regards, Benoit &nbsp;&nbsp; =
<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'><span style=3D'color:black'>Dear YANG =
doctors,<br><br>Here is an important message for your YANG doctor =
reviews.<br>Rob Wilton developed some tooling to help YANG module =
designers to transition to NMDA.<br><br>Rob, would you mind explaining =
to everybody on this list, and maybe on the NETMOD if you believe this =
is relevant for everybody.<br><br>Regards, =
Benoit<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:black'>-------- Forwarded Message -------- =
<o:p></o:p></span></p><table class=3DMsoNormalTable border=3D0 =
cellspacing=3D0 cellpadding=3D0><tr><td nowrap valign=3Dtop =
style=3D'padding:0cm 0cm 0cm 0cm'><p class=3DMsoNormal align=3Dright =
style=3D'text-align:right'><b><span style=3D'color:black'>Subject: =
<o:p></o:p></span></b></p></td><td style=3D'padding:0cm 0cm 0cm 0cm'><p =
class=3DMsoNormal><span style=3D'color:black'>Important: Guidelines for =
YANG module authors<o:p></o:p></span></p></td></tr><tr><td nowrap =
valign=3Dtop style=3D'padding:0cm 0cm 0cm 0cm'><p class=3DMsoNormal =
align=3Dright style=3D'text-align:right'><b><span =
style=3D'color:black'>Date: <o:p></o:p></span></b></p></td><td =
style=3D'padding:0cm 0cm 0cm 0cm'><p class=3DMsoNormal><span =
style=3D'color:black'>Fri, 9 Jun 2017 15:56:39 =
+0200<o:p></o:p></span></p></td></tr><tr><td nowrap valign=3Dtop =
style=3D'padding:0cm 0cm 0cm 0cm'><p class=3DMsoNormal align=3Dright =
style=3D'text-align:right'><b><span style=3D'color:black'>From: =
<o:p></o:p></span></b></p></td><td style=3D'padding:0cm 0cm 0cm 0cm'><p =
class=3DMsoNormal><span style=3D'color:black'>Benoit Claise <a =
href=3D"mailto:bclaise@cisco.com"><span =
style=3D'color:blue'>&lt;bclaise@cisco.com&gt;</span></a><o:p></o:p></spa=
n></p></td></tr><tr><td nowrap valign=3Dtop style=3D'padding:0cm 0cm 0cm =
0cm'><p class=3DMsoNormal align=3Dright =
style=3D'text-align:right'><b><span style=3D'color:black'>To: =
<o:p></o:p></span></b></p></td><td style=3D'padding:0cm 0cm 0cm 0cm'><p =
class=3DMsoNormal><span style=3D'color:black'>NETMOD Working Group <a =
href=3D"mailto:netmod@ietf.org"><span =
style=3D'color:blue'>&lt;netmod@ietf.org&gt;</span></a><o:p></o:p></span>=
</p></td></tr></table><p class=3DMsoNormal><span =
style=3D'color:black'><br><br>Dear all,<br><br>Now that the new NETMOD =
and NETCONF charters have been approved, it's time to think about the =
guidelines for YANG module authors.<br><br>The Network Management =
Datastore Architecture (NMDA) addresses the so-called &quot;OpState =
problem&quot; that has been the subject of much discussion in the IETF. =
NMDA is still in development, and there will be a transition period =
before NMDA solutions are universally available.<o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:black'><br>The NETMOD Datastore =
Design Team and the Routing Yang Architecture Design Team have worked =
with Alia and Benoit to create initial guidelines for how the NMDA, as =
defined in <a =
href=3D"https://datatracker.ietf.org/doc/draft-ietf-netmod-revised-datast=
ores/" target=3D"_blank"><span =
style=3D'color:blue'>draft-ietf-netmod-revised-datastores</span></a>, =
impacts Yang models. The <a =
href=3D"https://datatracker.ietf.org/doc/draft-dsdt-nmda-guidelines/" =
target=3D"_blank"><span =
style=3D'color:blue'>draft-dsdt-nmda-guidelines</span></a> individual =
draft was foundational in helping creating those =
guidelines.<o:p></o:p></span></p><p class=3DMsoNormal><span =
style=3D'color:black'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:black'>If you have questions or =
concerns on how these guidelines should apply to work of interest, =
please contact your WG Chairs or ADs.<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:black'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'color:black'>It is our strong =
recommendation, as ADs with agreement from the NETMOD WG Chairs, that =
models SHOULD move as quickly as possible to the NMDA. The specific =
approach to be taken for models being developed now and during the NMDA =
transition period should be based on both the expected usage and the =
maturity of the data model.<br><br>1. New models and models that are not =
concerned with the operational state of configuration information SHOULD =
immediately be structured to be NMDA-compatible.<br><br>2. Models that =
require immediate support for &quot;in use&quot; and &quot;system =
created&quot; information SHOULD be structured for NMDA. Then derived =
versions of these models SHOULD be created, either by hand or with =
suitable tools, that follow the current modeling strategies. In some =
cases, the non-NMDA model may be an existing model and not derived from =
the NMDA model. In all cases, the NMDA and non-NMDA modules SHOULD be =
published in the same document, with NMDA modules in the document main =
body and the non-NMDA modules in an Appendix. The use of the non-NMDA =
model will allow temporary bridging of the time period until NMDA =
implementations are available. The non-NMDA module names should include =
&#8217;-state&#8217; appended.<br><br>We would like to thank Kent =
Watsen, Lou Berger, Rob Wilton, Martin Bjorklund, Phil Shafer, Acee =
Lindem, Chris Hopps, Juergen Schoenwaelder, and all others who helped =
develop these guidelines.<br><br>Regards,<br>Alia Atlas, Routing =
AD<br>Deborah Brungard, Routing AD<br>Alvaro Retana, Routing =
AD<br>Warren Kumari, Operations &amp; Management AD <br>Benoit Claise, =
Operations &amp; Management AD<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'><span =
style=3D'color:black'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span style=3D'font-size:10.0pt;font-family:"Courier =
New";color:black'>_______________________________________________<o:p></o=
:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Courier =
New";color:black'>yang-doctors mailing list<o:p></o:p></span></p><p =
class=3DMsoNormal><span style=3D'font-size:10.0pt;font-family:"Courier =
New";color:black'><a href=3D"mailto:yang-doctors@ietf.org"><span =
style=3D'color:blue'>yang-doctors@ietf.org</span></a><o:p></o:p></span></=
p><p class=3DMsoNormal><span =
style=3D'font-size:10.0pt;font-family:"Courier New";color:black'><a =
href=3D"https://www.ietf.org/mailman/listinfo/yang-doctors"><span =
style=3D'color:blue'>https://www.ietf.org/mailman/listinfo/yang-doctors</=
span></a><o:p></o:p></span></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></div></body></html>
------=_NextPart_000_031F_01D31205.7B3F9FA0--



From nobody Thu Aug 10 09:37:13 2017
Return-Path: <mersue@gmail.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5ED70132190 for <yang-doctors@ietfa.amsl.com>; Thu, 10 Aug 2017 09:37:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level: 
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9,  DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id lRihtFyM5ymd for <yang-doctors@ietfa.amsl.com>; Thu, 10 Aug 2017 09:37:09 -0700 (PDT)
Received: from mail-wr0-x229.google.com (mail-wr0-x229.google.com [IPv6:2a00:1450:400c:c0c::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 59C3F131CCF for <yang-doctors@ietf.org>; Thu, 10 Aug 2017 09:37:09 -0700 (PDT)
Received: by mail-wr0-x229.google.com with SMTP id c24so5093598wra.1 for <yang-doctors@ietf.org>; Thu, 10 Aug 2017 09:37:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;  h=from:to:subject:date:message-id:mime-version:thread-index :content-language; bh=N69di/KLCjtgQ8Vd6jsegiltcgq59SIoH9eCwzLK5Fc=; b=jkAIZPmX/0TaNGGhBqjAeEw3ds7am3rHiAGTSlPJfAm6wrPOe/VRr4b3Aqn2h5MjSr 0yT85JCgxcU/YxrWnrZSiJCgA+jaixfSTVOYYOfgXl3Cc/q2R1My6CfsuUFmFVKDE28f 2Vq2zQ8GTU2hjCz0dmgakRjroA1TRnaKbptP8Zv+yOKqRjrfLIDFi4SCbEOOt+uQS87C KDNiiqUt+Xz3/2pue5Zwr8HbJRW+kuko3/7knc5PfnjuL298+StfHqxeZ7AeWbZShRtG XSPmkMyrKIe/inHadaKnvNzVG6fI2AXdAR9pGBolmy/Y3aakwOQz4gqXZTiUhZiNP29t dIVQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :thread-index:content-language; bh=N69di/KLCjtgQ8Vd6jsegiltcgq59SIoH9eCwzLK5Fc=; b=g6QDnCAnQvOSK8u0jHRGxvHDGSg8iBAbTSGfKUyT2gx4z5Eh2gttXOFAdLCcEUR058 Ni7ySaqZxw2/aFzpDDC/bosHT14y+STe+r6TKKdWjm4xykL2CHgtADAfNDTJYSsZVHSX tkYHHIcqUEZMV9FggdySJwoIr4G+KTklXI8jmfbQlh3ISKRa+Ygm3vZfcHod76oUgBmP aOXTUe7rvH7AlvxWcll7avm9TP6Ey3dj5qQo5ZrXmA3JDQPsHvO+dS0Tus5MeM3QX+a/ ConDsw2SfTWdReKm1eDSlOE1FaQgrlrPa4lToUgdC0yv5/XRynF81bz+gA/s1ijYuInY odbA==
X-Gm-Message-State: AHYfb5jXjDjzZ+5AAY66ClJuIjcP+hsK013QZ76Y2X6MJpWDulTStNkZ PRzbK3peMc6rYVUa
X-Received: by 10.223.147.97 with SMTP id 88mr9003884wro.226.1502383027654; Thu, 10 Aug 2017 09:37:07 -0700 (PDT)
Received: from DESKTOPFLHJVQJ (p57A77FD9.dip0.t-ipconnect.de. [87.167.127.217]) by smtp.gmail.com with ESMTPSA id x4sm6885194wma.33.2017.08.10.09.37.06 for <yang-doctors@ietf.org> (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 10 Aug 2017 09:37:06 -0700 (PDT)
From: "Mehmet Ersue" <mersue@gmail.com>
To: "'YANG Doctors'" <yang-doctors@ietf.org>
Date: Thu, 10 Aug 2017 18:37:05 +0200
Message-ID: <034b01d311f6$e7462fc0$b5d28f40$@gmail.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="----=_NextPart_000_034C_01D31207.AAD08660"
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AdMR9YccW8J99qLAQjyqgOU+XkmqbA==
Content-Language: de
X-MS-TNEF-Correlator: 00000000C69E16B615ED5F4C9AF09728F866A19A0700C3B68E10F77511CEB4CD00AA00BBB6E600000000000D0000DA153A9D1E7DC94CB17CBADC7CDDA70F0000000087500000
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/5dPPXnkS8hcyJElFqOwJWPqR5sU>
Subject: [yang-doctors] Summary of Open review assignments for YANG Doctors
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 10 Aug 2017 16:37:11 -0000

This is a multipart message in MIME format.

------=_NextPart_000_034C_01D31207.AAD08660
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Dear YANG Doctors,

Following YANG module reviews are pending on YANG Doctors page.
As a few of them are on the list already a long time,=20
I would like to ask the reviewers to close the open reviews as soon as
possible.

Documents in Last call:

Reviewer               Draft
Dean Bogdanovic        draft-ietf-netconf-zerotouch-14=20
Kent Watsen            draft-ietf-netconf-rfc6536bis-04=20
Kent Watsen            draft-ietf-netmod-syslog-model-12

Early review requests:

Reviewer               Due        Draft
Dean Bogdanovic        2017-04-07 draft-ietf-mpls-ldp-yang-01=20
Giles Heron            2017-07-31 draft-ietf-i2rs-rib-info-model-11=20
Giles Heron            2017-04-28 draft-ietf-rtgwg-device-model-02


Next in the reviewer rotation:

Martin Bjorklund	(vac. till Aug 15)
Radek Krej=C4=8D=C3=AD=09
Carl Moberg=09
Mahesh Jethanandani=09
Jan Lindblad=09
Thomas Nadeau=09
Ladislav Lhotka=09
J=C3=BCrgen Sch=C3=B6nw=C3=A4lder	keystore
Andy Bierman	Skip next time
Dean Bogdanovic	ZT
Kent Watsen	Skip next time
Giles Heron=09
Reshad Rahman=09

Thanks,
Mehmet


------=_NextPart_000_034C_01D31207.AAD08660
Content-Type: application/ms-tnef;
	name="winmail.dat"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
	filename="winmail.dat"

eJ8+IgYQAQaQCAAEAAAAAAABAAEAAQeQBgAIAAAA5AQAAAAAAADoAAEIgAcAGAAAAElQTS5NaWNy
b3NvZnQgTWFpbC5Ob3RlADEIAQgABQAEAAAAAAAAAAAAAQkABAACAAAAAAAAAAEDkAYAlBYAACkA
AAALAAIAAQAAAAMAJgAAAAAACwApAAAAAAALACsAAAAAAAMALgAAAAAAHgBNAAEAAAABAAAAAAAA
AB4AcAABAAAANAAAAFN1bW1hcnkgb2YgT3BlbiByZXZpZXcgYXNzaWdubWVudHMgZm9yIFlBTkcg
RG9jdG9ycwACAXEAAQAAABYAAAAB0xH1hxxbwn32osBCPKqA5T5eSapsAAALABcMAAAAAAsAAQ4B
AAAAAwAUDgEAAAAeACgOAQAAACAAAAAwMDAwMDAwMwFtZXJzdWVAZ21haWwuY29tAUdtYWlsAB4A
KQ4BAAAAIAAAADAwMDAwMDAzAW1lcnN1ZUBnbWFpbC5jb20BR21haWwAAgEJEAEAAABSEgAAThIA
ANA7AABMWkZ1fAKUfgcABgEBC2BuZzEwMmY1AGQAcmNwDdAOADIdDGBjDUQBNAExc3Rz4mgFcGJj
aBA1CQAQwKAzMTUwNhBEaA6wmRDWYmkBQw2kMzMTJsRmZROjdGhlB4ATZecAUBTXFG5jcw3iAfcC
pHkS8GRpAzYCABDACsBzhGV0AtFwcnEyAADSKgqhbm8ZsCAN8BsB6jYTsDARsDQbgQHQG3D8NH0H
bQKDDyAYhgRkGV3qMRpcNxthORsDG9IbsP8cMAhVB7IdTx5fH28gfyGP/DM3GHcD4xlfGmsBMBvS
PxsSG7AbcCYxJoAHQGli/wUQJ0QRoRhvKL8ajxufHK3/EZIAUCfPLc8p6SsyKt8FEMAgTGlnaHQs
ByKY/zKvM780zzXfLCUT0Cy/OI/3Lt8v7zD/NDy/Pc8+3z/v/0D/RTA3b0M/Kd86nyv4EdD/R69I
v0nPSt8sByevTY9EOd5iRPFFYE+ET6N9BxMnRLY4R4hCvDJV8FL0IAdt+CBDRVWlTHhWvUICV+95
WPN5clWlV7FZ/1KiMa42MgFbnwOCRwnRa1Wlvjldn16mIpFfXwOCVAhw7ydEJbBhf16lN1FhYz8D
gtgoSGUr0AfQKWS1Mgj/Zc5Xv2fWBxABoA6waLYimK9eLVmyaw8DgkIHQHQOsL9ktTyvXpdxMW8f
aANWCJDodG5hB4FlaLRFYSKv/VctMVkgIahZJkVgTHh2Lv9bVXedXPVFYF2IIz1fBnecf2CoRWBh
aH0/YwR3nGSGNP8N4IBfZj13nGhLg7AyCIR//3c/hpJsaoOwIp9uTneccGn/g7BxOIDvctSF7XRv
dX92j/93n3iveb+VP3vfl099/38P/4AfgS+CP4NPnr+Fb4Z/h4//iJ+jv4q/pd+M343vjv+QD+er
T5IvAgA3NUePVy87Rv9ZNbFATH9a37OHXPWxQF2I/1IMXwg7RmCosUBhaLh+Ywb7O0ZkhjdFALtP
Zk47RmhL/75QMg9qT8CXbGq+UDdfbl//O0Zwab5QcTi4fnLWwJeSXv8Rkl2Psn9b71lFEaFhb7Wv
/88fXPYRoKWZXi/Sf2BP1HH/bU+8T2OPZJbUcXE/v49zX/9oW9RxQh/DH96vbGvUcVYf/8avb29w
edRxWc/KH+Lfy7/f1HG3384PO0vQCTG7P9Hfe++N0/gywg/Vv++M18sy/8Wf2b/vjNvJznD4z7+f
75v9364y4LjCr/4v/zPj7Q4B7wCvxs/vqugMMrSf6g/+nf/sL/Sh7W/uf++P9FbxH/Iv//M/LAYV
gRCv9g/3HxO3+L9/+c/63xO3/H/9j/6f39sz7wCPAZ8Cr+QLMwSfBa8Gv/3oOTMIjwmfCq8Lv86C
6S//zj/PTxPV0M8Rny5v0/ihoO8wL9XP1t/X6TTYrxk/2s+929g03I8c/+sf37004L/3IQ89/+Pt
NOTvJR/nD+gb/jTo/ykPQi8rDzPBLE8tX/syP9AnNDAfMS9O39P41ID/UJ81HzYv1+n0sFR/OR86
L/9TyDvfPO9Kb9+9M9BcX0Ev/0I/4/yxWUTfYi9G/1QiSE//SV9in0t/VDEM303Ps41UIv8Qj1Gf
tr7MscH/VW+573N0/xgvWX+9XnOSG+9dX8Cfc1b/H/9hj8Qvc1YkD2W/x79zdO8n/2nPyy/MOTZt
L24/b0/ftIBwf3GPcp/MwDdz33Tv/3X/j/N3X3hveX+QEXq/e8//fN+Pxn5vf3+Aj4/Ggh+DL/+E
P4/kha+Gv4fPzDliAqJP2038xLBpnQDQCTeM743/e6gl0/g4kE+RX6gk18s475PPlN+oJNvJOJcv
mD+oJL3frjia35vvtTXj7Tiej/+fn6gk6AygErpvafy1NaTLAcxxY29sb3J0YghsO1zX0GQwXGeN
19FuwgDBkHVlMMG/+mUEgDXC6sQBw7/EycLUf8Tyw1/HL8btxm/En8LvZf3YkDjMus3RzY/OmcLU
zsK/zS/Q/9C90D/Ob9I0OVhgv9WE1uHPA9bgzLPHZTlQgPXXpDPIZDPEhtnRzEPZ0H/SNFBx0sOp
Ic8D21DgIiroXGRlrXFwvhL4ocFQia2AXGHgYjA2INyWtHBh3TFxuQDdoGnCAIe40MIArSBkY3Rs
3wCWcuAA4/Bw3OFhdeggPd3wc98A4GCRYOFibnVKbeSAYeEgdG/d8GTwanVzdLjQIrHfwcJhU50Q
wmFpdN8QMN5wXBhub3GnwWNAb3RlpiDogOMgeWxiwGj38P506IDfX+Bv4X/ij+OfzMDn52Dd0a1w
czFpIN4AwgCP3gDdcp0AVTBnMTAEgP/mgepA6/Trkd1k7UMb0e0ynmbPMO8z3cLeFFxoA9DT3eLC
AGRi8QVj0sBo8Dnu025w7ynypGkgc27oZXh065Fz5ODBYGNQtw+w5ZCn0GnBYORAeeSA/k70osGg
3JPsMeuR6fBpAM0HwHblYOWQdW7w4NzgL+ogweD0+exQROgUIFANkXBh0sDfEGggRm/0bnTchHTs
QFRg+sBVAFZ38kDqQGb6wFdo8HS8aEJcQOpA3wD28GztcMtiEPxUcvzIZmz8Nvug9f43Yv43cvwx
wZDjsMHx0wA05bBwZfwxc/dAwXBfB6H6sR8Q/VAB9mwCBWLnAgXnoAIUZGcC9gRwA/b73eACFHbf
P+df6G/pf+qP/+uf7K/tv+7P79/w7/H/8w/P9BHcUPPRK4Btafex3OD/Y3D3e/XEasAjIOXQG1IM
QH9koAZvB38IjwmfCq8LvTP/mMAMwlRgDS8ONR2RDp8PpvsSDxMdYhlwweD6MPRCFAP1DaFz4/Fr
VeD3buWwkYD9aPA5SDDeUDAA+XAeMOOw/2rA9BH2JyTx9ugcvx3DHr9/3VIUUiNl9qIklCRj3cBr
3yW/Jsqc4JFh9ic3KC8MGHcNvBkwwSBmMAIry/eZSO8BIQLgJLH2JzgwLzE/DiVvMuFkoK2A5fBk
HlAR4WjvMuDfAPQwOVJiOaE10ivL0xSf99VVbleQc8FA90D9+CBNwlBHgPow9icmwDYPfzcfMlo+
oTqvO7/4EfogbL3BUHfB4DTJ3JNXkHbBgWvlcDzwa+TAdz4B3JNw/GdwRdNG8uQwRwHkJReH8wIg
SPFhMEVFLeFF0knT+ji6IDRMoFxALdlJ089BLQ8wOYzQUAFt9MFoUFcYkEzj+iIzYHBtX5BrJkLj
sk4lU3VJIW1z6fXxbEZjsGNOkWkAGYCj+QFUYG1sTZFwZ05zZnJQ99zhSmNQsRiySTcAcD2x21A0
TpHjsHRMp2KgTpFsIHJ5U9Ex3JP6eFDQbhsgR0NVAwxQG3DAdHA6Ly9zrYBCsHUjcC5CwGNZAD0w
+6AuKcEwbS9XcGZj4GUv8nfBYGQvjmAPMFhTUNCvwPBG8N8QAaB3z0AyU2G9WZNotnJOkVEB/LA0
XcDfWwP9YFt2UzFbhWLcUE3x9mcaoOVQcuPRGzBsYBhAP2kgGBH7QBhAAuH7oG5ifmrd8MJQ9vDd
wPtxT/Br/+Uw90AOUGAU9JRn8B5R3NCP+jDlQU4gweBzeXP0kNNTIczBbHn6MHZQ0BFRc2IH4/Fn
ZPTQSWDSsWbvX+FFsD2xYLF2nQFksfQQ71DQrHA48PtAcB4wWDBm0H5s+/D0EuQwIfDBYEKxeP/B
4MEw+kA9sUky90AuwGXz/1UBSPFm0VUBAaDlEJGArHBN5MB4HjBWMG95wlBc/fQQcDjwwXBrwOTA
GTEC4N8ZgGAAORDBgVUwYhFw5LF/GYFYMPSRMrH0kjjwGuBl+xDQwWB6X+IEcFzyLsBvsc844G4C
oAARUWd2cIlvQf8bUC7A3jFxAnIEcbNmwmHRu3Ehc5Nqa+EeQCGgdqTQ/HdrAGG6MHTyVpCdAA/B
91oxXSAFgmUa4HZV9JDlQPv1AWNAdEZwLsBvIF9Bd+f/G3Bc8BqgGYDksVUgG3Aa4f/BgTKgiNCE
0CNgVSAeEW0y/wBh3aB38HXhGEDBkPtRd+H/wYHBcAUhVSBOMW5hbyDkwP9OMRiwRyLz4d8QGrAh
ci7A/1gwREAeEURRWBBjMEMRYoDzYzAYoXBw95AYQBlhqED/fWiaEMGBLaIZMK1Q5MDSwP/7QBqS
WBAZUPfxaBFPcOWw3/SRnRAbIOSxAGFuTiH6wD+JMGMwfWFjMEWw5LFjeP8ZgORQFqHkMABwbMFE
cIZB92ux5MDeAGNVMXpS3gCGM/caoC7AAvBoh6N3slZARxD7GIFiEWNl8HmTwYBOQIhiD//wfDKK
smXwdHhieP5cfZAiAJGA9AAZUHXgVqH9aJFseuEOcGxxncDlIDmhKw5xkaAw3KJ3ZRFmbe2L4Gmh
QAGgIFoQ3kDkov8PsPTQlnCxMGwg5UAYUM8wfeQwbPSQXPB14HvwVSB1/0hi/FKQgOWQXlH4IV4V
4+L/9BDCAF+x96ABoG8gk7MZBP+SwOWQX0PlcUbhVTBeUD1Q/2aRGiFXMBpQlzHkUMFwl7L7AGE9
sTdYsJchsPAeUEdi4/pA9CBhIC5GpZdFr9D/l9IN0Zg/mU+aX5eQsxAaIN/c4GAAnC+dP55PbLag
GiDvC+Cb76C/ocUpmqy6MJ+P+6R/oaViuRCr8aWvl2O9oP+jT6gfqS+qP5eBK0Crkpgf/6z/rg+m
HdKgq5+xL7I/s0//l4HbcLAvtc+237flWYECQP9G8CbzkyUXDxgfGS8aPxtP/0hDv3G54C3pKN8d
vypfH9/fIO8h//OiTMALzDINvdbw/yoBXXAy4OQhVTBLOjnwueCHLdpQgJNxWUFOR/jwR93AwbBL
8CwNCrzSIF/RBUQkYaHQJOUwZH2xIPtFoXWiILng5WABMABw0kJP+jDQK9Pw+bBlLtEFQZXToSAP
sHfUcGYg/ADvQrDTs9SB1wEghMLTsHzw/XbRed5yy2/Mf82PJpOiEP9EUMZQ2N/Z79r/zm8uJdbw
+VPgZSzYz93v3v8uB9EFn+IP4x/kL+AfLiVJIFhgX8Aw+CBmEC1Q1vBv07Bz/mvXs9NEAaDToOuh
ksBXUPvrgdfRb9QB0zjToD0w1IH97pFwV1At4Bah1ca8xL2Pf76fv6/Av8HPwt9Kc8+AOP9aEAxQ
5j/nT+hf5U/37/j/v/oP6Y/PoxAw9GBlkiAuwY/73/zv/f9KsDIzMDiync8MTCNwjxB14Ww60Qzu
Uuxl4YAH+0RP4FeA79//8O/x//MP9B/1L/Y/z2YBb98Cf/4P/x/Phy7QQn8AZLD7aBB08GMH8gFf
Ei8TP+EXfxbPF98Y7xQfLfh3UAkBLbt1AIvgLY1haKEgIHpZwPdkAGyAOfAtU0D7Xxt/HI9/yBaS
EMi5yceSER2/zxtL+T2xIFc5sIQBB/ofnyAggWUgYzY1MzZihNB8LTAhdyivKb+NYdLRLXNikURQ
Zy3S0YCgIVAy/yIPIx8kLyU/JkwEj/sPMF//MW8dQjNEMx80LycvNj0Jv/8KzwvfDO8N/w8P9r83
Lzg/9wOPNU/Pk0W54GNA0zXTMfxxdWCghaAGjwefCKNLMP8Ibz3/Pw9AH0EvQj9DTw/f/xDvRn9H
jzwPFS8WOgfyusDsMTcr4SvgNyoKjuBs0OItZ3BwLXnGQSvgV4DN0QVHkEBLQCBIINEtO89c5F0Q
OjAqCmkyROArMPfvgB/gIJBvL4ZfP2BPXQTcMjgqCn0Bj8AtgFBcMf5lL4XGgDcfV99Y70jENp//
aS84v1l/PM9PD1AfUS9SP/9TT1RfRD9FT21vam9If3Cv/CBOlNCPEL1h7BrTMCDw/ZKgaSsAS4Zs
r8WQxrx7v/98x3jGcV9yb3N/dI91n3avP3e/Vl9533rmWU9wPyBNE7nhvWFCatVAa2x1DacwXHfw
u9F2YWMut+GR0gDWMHXSYIYwKYAv/Y1FNGwBemyU8Y7Pj982gCpSifBl6/BLSwBqXPAnZTjtkgOT
f41Pjl+blu/EF0NKQZDwb2Ig0A5nmXqRANfQc2ggSq8q0LsRxkBb8WmZekpbkR5MulHvkInwmXpU
aG/6be6RTpiRiDCZegXw1DCZL0BhdgXgo4B0a4jwLaFK/J8gLSFTeqD2bvx35OsgINCSA+twLzDV
Me5l1daR4NiwQtNwuXDGQMGSA1NraXAgKsB+Yc/hotEFW32SA1pULC+pz3+q2GR5mXpMcKBAifCY
cWj/qaaaP5tPgp9sH4EfgihvTn+1b7K/et+cn+Cto3DGQGv50OdNZbGQKtC5n7qvu79/vM+4v7+/
wM/B38Lvw/p9AgDJ8AAAAwDeP+n9AAADAPE/BwQAAB4A+j8BAAAABgAAAEdtYWlsAAAAAwAJWQMA
AAADAC6ACCAGAAAAAADAAAAAAAAARgAAAAAQhQAAAAAAAAMARIAIIAYAAAAAAMAAAAAAAABGAAAA
AAGFAAAAAAAACwB6gAggBgAAAAAAwAAAAAAAAEYAAAAABoUAAAAAAAALAHyACCAGAAAAAADAAAAA
AAAARgAAAAAOhQAAAAAAAAMAfYAIIAYAAAAAAMAAAAAAAABGAAAAABiFAAAAAAAACwB+gAggBgAA
AAAAwAAAAAAAAEYAAAAAgoUAAAAAAAAeAH+ACCAGAAAAAADAAAAAAAAARgAAAADYhQAAAQAAAAkA
AABJUE0uTm90ZQAAAAADAICACCAGAAAAAADAAAAAAAAARgAAAADrhQAABwQAAAsAHw4BAAAAAgH4
DwEAAAAQAAAAI7OGnE/4dkW6BJp6PBHkBQIB+g8BAAAAEAAAAMaeFrYV7V9MmvCXKPhmoZoDAP4P
BQAAAAMADTT9P60OAwAPNP0/rQ4CARQ0AQAAABAAAADpL+t1llBEhoO4feUiqklIAgHiZQEAAAAU
AAAAhIXFmJcyO0ydZCJ6wWYzywAH/+8CAeNlAQAAABUAAAAUhIXFmJcyO0ydZCJ6wWYzywAH/+8A
AAACAX8AAQAAAI0AAAAwMDAwMDAwMEM2OUUxNkI2MTVFRDVGNEM5QUYwOTcyOEY4NjZBMTlBMDcw
MEMzQjY4RTEwRjc3NTExQ0VCNENEMDBBQTAwQkJCNkU2MDAwMDAwMDAwMDBEMDAwMERBMTUzQTlE
MUU3REM5NENCMTdDQkFEQzdDRERBNzBGMDAwMDAwMDA4NzUwMDAwMAAAAAADAAYQOxYp5AMABxAS
AwAAAwAQEAAAAAADABEQAAAAAB4ACBABAAAAZQAAAERFQVJZQU5HRE9DVE9SUyxGT0xMT1dJTkdZ
QU5HTU9EVUxFUkVWSUVXU0FSRVBFTkRJTkdPTllBTkdET0NUT1JTUEFHRUFTQUZFV09GVEhFTUFS
RU9OVEhFTElTVEFMUkVBRFkAAAAA4cM=

------=_NextPart_000_034C_01D31207.AAD08660--


From nobody Thu Aug 10 09:48:53 2017
Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 110E01323AE for <yang-doctors@ietfa.amsl.com>; Thu, 10 Aug 2017 09:48:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level: 
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NE4hUN6PlB2b for <yang-doctors@ietfa.amsl.com>; Thu, 10 Aug 2017 09:48:45 -0700 (PDT)
Received: from mail-wm0-x236.google.com (mail-wm0-x236.google.com [IPv6:2a00:1450:400c:c09::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 629DD1323A4 for <yang-doctors@ietf.org>; Thu, 10 Aug 2017 09:48:42 -0700 (PDT)
Received: by mail-wm0-x236.google.com with SMTP id m85so24328855wma.0 for <yang-doctors@ietf.org>; Thu, 10 Aug 2017 09:48:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=FLtVPIxiGymrLqNFeelhxxi+SxPriRfylhqYhumoYn8=; b=ukvX3pErkAvFawFY/xMe/9YS1xsol/T1iLVj8LITolJmXwAJNbiyQBVrY2YI/KMkE6 6aMSRt96mIUBMu7RnoE+3lEBoaLqqcejR9zndZ4pwzNYLHKlc/chcWHtmoDXkaU2fFKX IoTgsylr9RwDMv9jv5Wm9NSXYcRZBRYMY/A0ehDZtABl7PwJ3/lTXXashyiAcDkqkfAL yggfC1DWSIh6jWBwsTaEjLQNlFLa8aBLTxcEi78oviV2Wbw1PqflfiPYWG0VS8qm7DBO uwtB+RFmEmNjrkgrynf6+ZNDZxoQm7q75Fl8IPdpSnIhGjCcLv9YgJEMiW/6l5pGPRjh Murw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=FLtVPIxiGymrLqNFeelhxxi+SxPriRfylhqYhumoYn8=; b=Lm5geNE1YN8/lrlIW6Y3c9Z/rFMDa1A9g321az7hb92MH7qUvnACbGFWxZzZtFKN95 Tx7VPtqHGqNbh5s5/G2bVBzz+j6TS3qyp3RXbvlPdiGo8Jioqxr+slIWjGtU4LqSFPeD aNSMAyqCzzjuFxojLQKGpQkNFj5SKC5g47sxzXcHlaYmpsWCWjPp3DGInRWIU4IxUjIK ZDiWOycpsuVj10BBB3HLyLEQ0dd/vpwczCDsaF240E+GNsyKUEtfRQ022ivvq0lFEn5i gcbr6Zh9GcvBfK8UsEIjcoF8qx4nLvQvqrvdYH4QyPPLcvEboG1bZ+hEucFOqSQlpXsw iTVw==
X-Gm-Message-State: AHYfb5jTIRAf4aWXi1T7E7Tkb/MNb0f1DXr9gdsvDVdylMTnX7FbibCd E+PlNpM2mxo+pXKi2Q7HCr4zHVC2HDDJ
X-Received: by 10.28.203.78 with SMTP id b75mr7683584wmg.50.1502383720859; Thu, 10 Aug 2017 09:48:40 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.182.160 with HTTP; Thu, 10 Aug 2017 09:48:40 -0700 (PDT)
In-Reply-To: <30CD19F8-6441-4EA3-A340-8CEDD6D4FD6A@juniper.net>
References: <150128020275.20726.13027423171798327745@ietfa.amsl.com> <A9F2ED3F-6AC5-4AEF-8EBF-1C4F89A6F0F7@juniper.net> <CABCOCHTmNdi7ZGPL_R8vyZTOKeVwJgtrqsT0ZNBCbMUT4Qo9tA@mail.gmail.com> <30CD19F8-6441-4EA3-A340-8CEDD6D4FD6A@juniper.net>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 10 Aug 2017 09:48:40 -0700
Message-ID: <CABCOCHQrgYOUGXo1g3LGn9t8rL3-MoJwNmSG2amgAkxMp_Prhw@mail.gmail.com>
To: Kent Watsen <kwatsen@juniper.net>
Cc: "yang-doctors@ietf.org" <yang-doctors@ietf.org>,  "draft-ietf-netconf-restconf-client-server.all@ietf.org" <draft-ietf-netconf-restconf-client-server.all@ietf.org>,  "netconf@ietf.org" <netconf@ietf.org>
Content-Type: multipart/alternative; boundary="94eb2c1308feffa148055668f7d1"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/5hUys8F5hQXTkXf9qUN2C2e_8ls>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-netconf-restconf-client-server-04
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 10 Aug 2017 16:48:48 -0000

--94eb2c1308feffa148055668f7d1
Content-Type: text/plain; charset="UTF-8"

Hi Kent,


On Wed, Aug 9, 2017 at 1:48 PM, Kent Watsen <kwatsen@juniper.net> wrote:

> Hi Andy,
>
> >>> Modules:
> >>>  (M1) ietf-restconf-client@2017-07-03.yang
> >>>  (M2) ietf-restconf-server@2017-07-03.yang
> >>>
> >>> Comments:
> >>>
> >>> C1:
> >>>
> >>> (M1) RESTCONF does not have sessions so the term "RESTCONF session"
> >>> needs to be defined
> >>
> >> <KENT> good point, in this case, it's actually the underlying
> >> transport (TLS) that has a session.  Fixed.  But what about the
> >> 'max-sessions' leaf, under 'listen', in both modules?  - should
> >> this also be changed to talk about the TLS session, or removed
> >> altogether?
> >
> > I think you can change it to "transport session" or "TLS session"
> > if the concept of session reconnect is is kept for RESTCONF
>
> Fixed in my local copy.
>
>
> >>> C2:
> >>>
> >>> (M1) feature tls-initiate
> >>> (M1) feature tls-listen
> >>> (M2) feature tls-listen
> >>> (M2) feature tls-call-home
> >>>
> >>> Are these features really needed since a RESTCONF server MUST support
> >>> the TLS transport?
> >>
> >> <KENT> the features themselves are needed, as we don't know what
> >> clients/servers may support.
> >>
> > OK -- These features are nested within other features (initiate, listen).
> > You should add a comment somewhere that TLS is optional-to-support,
> > but mandatory to support if the TLS transport is implemented.
> > Currently RESTCONF requires TLS be supported, but future
> > versions could be different.
>
> I added this to the description statement of the 'tls-listen' and
> 'tls-initiate' features:
>
>       Currently TLS is the only transport supported by RESTCONF,
>       this feature helps support possible future transports.";
>


If you are trying to say that TLS might not be the mandatory-to-implement
transport, this sentence is not quite right.

You know I am not a big fan of YANG conformance.
We have nothing in between "always mandatory" and "purely optional,
server developer's choice".  We have nothing like conditionally
mandatory "If the RESTCONF server supports listening on TLS , then
the listen-tls feature MUST be supported."

The when-stmt can be used to provide this conditionally-mandatory
conformance,
but it has to be customized for each data subtree. It is more expensive
than if-feature
on many levels.



> and I also added a design note into the draft itself.
>
>
> > Also, recent YANG 1.1 discussions concluded (wrongly IMO) that nested
> > nodes do not inherit the if-feature-stmts of ancestors.  It is not clear
> > how one would access /foo/bar if /foo was not supported.
>
> Wait, seriously? I didn't see that.  I don't understand how else nested
> if-feature statements can be interpreted.  Can you point to the thread
> where this was discussed?
>
>
I cannot find it now.
Essentially, features are not coupled to objects:

  container foo {
     if-feature A;
     container foo2 {
        if-feature AA;
     }
  }

  container bar {
     if-feature AA;
   }

The designer has to decide:
Does feature AA depend on A, or just container foo2 depends on container
foo?
Does an external subtree (like /bar) depend on both features or can they be
used independently?

In this case I think the intent is to support feature listen if any
transport is supported,
and feature listen-<transport> is a specific transport is supported, so the
if-feature
inside the 2nd feature is correct.



>
> > So perhaps you should add if-feature-stmts:
> >
> >  feature tls-listen {
> >     if-feature listen;
> >     ...
> >  }
> >
> >  feature tls-listen {
> >    if-feature listen;
> >    ...
> >  }
>
> I went ahead and made this change, it seems better.
>
>
>
> >>> C3:
> >
> > Change it to be TLS session
>
> Done.
>
>
>
> >>> C4:
> >
> > OK -- this is how our server works. It does not make a special case for
> Connection: close.
>
> Correct.
>
>
>
> >>> C5:
> >
> > It should be clear that the client would have to issue a GET or maybe
> POST
> > to initiate the sending of stored data like logs
>
> Okay, how about this?
>
>    "Periodically connect to the RESTCONF server, so that,
>     e.g., the RESTCONF client can collect data (logs)
>     from the RESTCONF server.  The RESTCONF client must
>     close the connection when it is ready to release it.
>     Once the connection is closed, the RESTCONF client
>     restarts its timer until the next connection.";
>
>
>
Not sure this is needed.
RESTCONF does not define any interactions that are not initiated by the
client,
but if that changes, then no reason to constrain this text. I would change
'must' to 'SHOULD' in the 2nd sentence.



>
> >>>C6:
> >>>
> >>> (M1)  /restconf-client/initiate/restconf-server/periodic/
> >>> (M2)  /restconf-server/call-home/restconf-client/connection-
> type/periodic/
> >>>
> >>> The RESTCONF notifications via SSE should be exempt from timeouts.
> >>> The RESTCONF client should terminate an SSE request. The server should
> >>> not timeout an SSE response connection
> >>
> >> <KENT> Agreed, and the description statement for the 'idle-timeout' leaf
> >> says "Sessions that have a notification subscription active are never
> >> dropped.  But here, under 'periodic', the whole point is to shed idle
> >> connections.  For instance, imagine a client that wants to collect logs
> >> from a low-powered server once a day.  What do you think?
> >
> > Notification replay has a mode where it is terminated (i.e,., end-time
> provided)
> > I think this would have to be used by the client.  This tells the server
> to drop
> > the connection when the replay is complete.
>
> Sure, but keep in mind that logs are just an example, there could be other
> data-collection mechanisms.  Still, note that when end-time provided is
> reached, the line would become idle, if it didn't drop.  This seems like a
> more generic mechanism.
>
>
> > This is 1 exception -- another is close-session.
> >
> >   POST /restconf/operations/ietf-netconf:close-session
> >
> > Is this supposed to do anything in RESTCONF?
>
> First, I don't view the above as an exception.  With regards to 'close-
> session', does it even have a meaning in RESTCONF?  - and is this actually
> an issue for RFC 8040?
>
>

RESTCONF does not specify any behavior for specific operation resources.
It is left as an implementation detail.  Our server treats each RESTCONF
request
as a new management session, so a NETCONF operation like <lock> is granted
and then released right afterwards by the server because the session is
terminated.
I think any standard behavior for application layer sessions would need to
be defined
in a new versions of RESTCONF.








>
>
> >>> C7:
> >>>
> >>> Sec 1.2 Tree Diagrams
> >>>
> >>> Old text should be replaced with reference to
> >>> draft-ietf-netmod-yang-tree-diagrams-01
> >>
> >> <KENT> same comment as before.
> >
> > OK -- wait for tree draft to be stable
>
> Yep.
>
>
> >>> Nits:
> >>>
> >>> The tree diagram shows the fully expanded groupings,
> >>> even many objects are in other drafts. I needed all 5 drafts
> >>> open in windows for searching, plus pyang tree output,
> >>> to really follow the data model structure.
> >>
> >> <KENT> I know.  Do you have a proposal?
> >
> > The external nodes cannot really use a prefix because they
> > are pulled in from groupings, and technically in the same module
> > namespace. I don't know if any changes to the tree diagram
> > should be made for uses external-grouping.
>
> Agreed.
>
>
>
> > Andy
>
> Kent
>
>
>
Andy

--94eb2c1308feffa148055668f7d1
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi Kent,<div><br><div class=3D"gmail_extra"><br><div class=
=3D"gmail_quote">On Wed, Aug 9, 2017 at 1:48 PM, Kent Watsen <span dir=3D"l=
tr">&lt;<a href=3D"mailto:kwatsen@juniper.net" target=3D"_blank">kwatsen@ju=
niper.net</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=
=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Andy,=
<br>
<br>
&gt;&gt;&gt; Modules:<br>
&gt;&gt;&gt;=C2=A0 (M1) ietf-restconf-client@2017-07-<wbr>03.yang<br>
&gt;&gt;&gt;=C2=A0 (M2) ietf-restconf-server@2017-07-<wbr>03.yang<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Comments:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; C1:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; (M1) RESTCONF does not have sessions so the term &quot;RESTCON=
F session&quot;<br>
&gt;&gt;&gt; needs to be defined<br>
&gt;&gt;<br>
&gt;&gt; &lt;KENT&gt; good point, in this case, it&#39;s actually the under=
lying<br>
&gt;&gt; transport (TLS) that has a session.=C2=A0 Fixed.=C2=A0 But what ab=
out the<br>
&gt;&gt; &#39;max-sessions&#39; leaf, under &#39;listen&#39;, in both modul=
es?=C2=A0 - should<br>
&gt;&gt; this also be changed to talk about the TLS session, or removed<br>
&gt;&gt; altogether?<br>
&gt;<br>
&gt; I think you can change it to &quot;transport session&quot; or &quot;TL=
S session&quot;<br>
&gt; if the concept of session reconnect is is kept for RESTCONF<br>
<br>
Fixed in my local copy.<br>
<br>
<br>
&gt;&gt;&gt; C2:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; (M1) feature tls-initiate<br>
&gt;&gt;&gt; (M1) feature tls-listen<br>
&gt;&gt;&gt; (M2) feature tls-listen<br>
&gt;&gt;&gt; (M2) feature tls-call-home<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Are these features really needed since a RESTCONF server MUST =
support<br>
&gt;&gt;&gt; the TLS transport?<br>
&gt;&gt;<br>
&gt;&gt; &lt;KENT&gt; the features themselves are needed, as we don&#39;t k=
now what<br>
&gt;&gt; clients/servers may support.<br>
&gt;&gt;<br>
&gt; OK -- These features are nested within other features (initiate, liste=
n).<br>
&gt; You should add a comment somewhere that TLS is optional-to-support,<br=
>
&gt; but mandatory to support if the TLS transport is implemented.<br>
&gt; Currently RESTCONF requires TLS be supported, but future<br>
&gt; versions could be different.<br>
<br>
I added this to the description statement of the &#39;tls-listen&#39; and<b=
r>
&#39;tls-initiate&#39; features:<br>
<br>
=C2=A0 =C2=A0 =C2=A0 Currently TLS is the only transport supported by RESTC=
ONF,<br>
=C2=A0 =C2=A0 =C2=A0 this feature helps support possible future transports.=
&quot;;<br></blockquote><div><br></div><div><br></div><div>If you are tryin=
g to say that TLS might not be the mandatory-to-implement</div><div>transpo=
rt, this sentence is not quite right.</div><div><br></div><div>You know I a=
m not a big fan of YANG conformance.</div><div>We have nothing in between &=
quot;always mandatory&quot; and &quot;purely optional,</div><div>server dev=
eloper&#39;s choice&quot;.=C2=A0 We have nothing like conditionally</div><d=
iv>mandatory &quot;If the RESTCONF server supports listening on TLS , then<=
br></div><div>the listen-tls feature MUST be supported.&quot;</div><div><br=
></div><div>The when-stmt can be used to provide this conditionally-mandato=
ry conformance,</div><div>but it has to be customized for each data subtree=
. It is more expensive than if-feature</div><div>on many levels.</div><div>=
<br></div><div><br></div><blockquote class=3D"gmail_quote" style=3D"margin:=
0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
and I also added a design note into the draft itself.<br>
<br>
<br>
&gt; Also, recent YANG 1.1 discussions concluded (wrongly IMO) that nested<=
br>
&gt; nodes do not inherit the if-feature-stmts of ancestors.=C2=A0 It is no=
t clear<br>
&gt; how one would access /foo/bar if /foo was not supported.<br>
<br>
Wait, seriously? I didn&#39;t see that.=C2=A0 I don&#39;t understand how el=
se nested<br>
if-feature statements can be interpreted.=C2=A0 Can you point to the thread=
<br>
where this was discussed?<br>
<br></blockquote><div><br></div><div>I cannot find it now.</div><div>Essent=
ially, features are not coupled to objects:</div><div><br></div><div>=C2=A0=
 container foo {</div><div>=C2=A0 =C2=A0 =C2=A0if-feature A;</div><div>=C2=
=A0 =C2=A0 =C2=A0container foo2 {</div><div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 if-=
feature AA;</div><div>=C2=A0 =C2=A0 =C2=A0}</div><div>=C2=A0 }</div><div><b=
r></div><div>=C2=A0 container bar {</div><div>=C2=A0 =C2=A0 =C2=A0if-featur=
e AA;</div><div>=C2=A0 =C2=A0}</div><div><br></div><div>The designer has to=
 decide:</div><div>Does feature AA depend on A, or just container foo2 depe=
nds on container foo?</div><div>Does an external subtree (like /bar) depend=
 on both features or can they be used independently?</div><div><br></div><d=
iv>In this case I think the intent is to support feature listen if any tran=
sport is supported,</div><div>and feature listen-&lt;transport&gt; is a spe=
cific transport is supported, so the if-feature</div><div>inside the 2nd fe=
ature is correct.</div><div><br></div><div><br></div><blockquote class=3D"g=
mail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-l=
eft:1ex">
<br>
<br>
&gt; So perhaps you should add if-feature-stmts:<br>
&gt;<br>
&gt;=C2=A0 feature tls-listen {<br>
&gt;=C2=A0 =C2=A0 =C2=A0if-feature listen;<br>
&gt;=C2=A0 =C2=A0 =C2=A0...<br>
&gt;=C2=A0 }<br>
&gt;<br>
&gt;=C2=A0 feature tls-listen {<br>
&gt;=C2=A0 =C2=A0 if-feature listen;<br>
&gt;=C2=A0 =C2=A0 ...<br>
&gt;=C2=A0 }<br>
<br>
I went ahead and made this change, it seems better.<br>
<br>
<br>
<br>
&gt;&gt;&gt; C3:<br>
&gt;<br>
&gt; Change it to be TLS session<br>
<br>
Done.<br>
<br>
<br>
<br>
&gt;&gt;&gt; C4:<br>
&gt;<br>
&gt; OK -- this is how our server works. It does not make a special case fo=
r Connection: close.<br>
<br>
Correct.<br>
<br>
<br>
<br>
&gt;&gt;&gt; C5:<br>
&gt;<br>
&gt; It should be clear that the client would have to issue a GET or maybe =
POST<br>
&gt; to initiate the sending of stored data like logs<br>
<br>
Okay, how about this?<br>
<br>
=C2=A0 =C2=A0&quot;Periodically connect to the RESTCONF server, so that,<br=
>
=C2=A0 =C2=A0 e.g., the RESTCONF client can collect data (logs)<br>
=C2=A0 =C2=A0 from the RESTCONF server.=C2=A0 The RESTCONF client must<br>
=C2=A0 =C2=A0 close the connection when it is ready to release it.<br>
=C2=A0 =C2=A0 Once the connection is closed, the RESTCONF client<br>
=C2=A0 =C2=A0 restarts its timer until the next connection.&quot;;<br>
<br>
<br></blockquote><div><br></div><div>Not sure this is needed.</div><div>RES=
TCONF does not define any interactions that are not initiated by the client=
,</div><div>but if that changes, then no reason to constrain this text. I w=
ould change</div><div>&#39;must&#39; to &#39;SHOULD&#39; in the 2nd sentenc=
e.</div><div><br></div><div>=C2=A0</div><blockquote class=3D"gmail_quote" s=
tyle=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
&gt;&gt;&gt;C6:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; (M1)=C2=A0 /restconf-client/initiate/<wbr>restconf-server/peri=
odic/<br>
&gt;&gt;&gt; (M2)=C2=A0 /restconf-server/call-home/<wbr>restconf-client/con=
nection-<wbr>type/periodic/<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; The RESTCONF notifications via SSE should be exempt from timeo=
uts.<br>
&gt;&gt;&gt; The RESTCONF client should terminate an SSE request. The serve=
r should<br>
&gt;&gt;&gt; not timeout an SSE response connection<br>
&gt;&gt;<br>
&gt;&gt; &lt;KENT&gt; Agreed, and the description statement for the &#39;id=
le-timeout&#39; leaf<br>
&gt;&gt; says &quot;Sessions that have a notification subscription active a=
re never<br>
&gt;&gt; dropped.=C2=A0 But here, under &#39;periodic&#39;, the whole point=
 is to shed idle<br>
&gt;&gt; connections.=C2=A0 For instance, imagine a client that wants to co=
llect logs<br>
&gt;&gt; from a low-powered server once a day.=C2=A0 What do you think?<br>
&gt;<br>
&gt; Notification replay has a mode where it is terminated (i.e,., end-time=
 provided)<br>
&gt; I think this would have to be used by the client.=C2=A0 This tells the=
 server to drop<br>
&gt; the connection when the replay is complete.<br>
<br>
Sure, but keep in mind that logs are just an example, there could be other<=
br>
data-collection mechanisms.=C2=A0 Still, note that when end-time provided i=
s<br>
reached, the line would become idle, if it didn&#39;t drop.=C2=A0 This seem=
s like a<br>
more generic mechanism.<br>
<br>
<br>
&gt; This is 1 exception -- another is close-session.<br>
&gt;<br>
&gt;=C2=A0 =C2=A0POST /restconf/operations/ietf-<wbr>netconf:close-session<=
br>
&gt;<br>
&gt; Is this supposed to do anything in RESTCONF?<br>
<br>
First, I don&#39;t view the above as an exception.=C2=A0 With regards to &#=
39;close-<br>
session&#39;, does it even have a meaning in RESTCONF?=C2=A0 - and is this =
actually<br>
an issue for RFC 8040?<br>
<br></blockquote><div><br></div><div><br></div><div>RESTCONF does not speci=
fy any behavior for specific operation resources.</div><div>It is left as a=
n implementation detail.=C2=A0 Our server treats each RESTCONF request</div=
><div>as a new management session, so a NETCONF operation like &lt;lock&gt;=
 is granted</div><div>and then released right afterwards by the server beca=
use the session is terminated.</div><div>I think any standard behavior for =
application layer sessions would need to be defined</div><div>in a new vers=
ions of RESTCONF.</div><div><br></div><div><br></div><div><br></div><div><b=
r></div><div><br></div><div><br></div><div>=C2=A0</div><blockquote class=3D=
"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding=
-left:1ex">
<br>
<br>
&gt;&gt;&gt; C7:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Sec 1.2 Tree Diagrams<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Old text should be replaced with reference to<br>
&gt;&gt;&gt; draft-ietf-netmod-yang-tree-<wbr>diagrams-01<br>
&gt;&gt;<br>
&gt;&gt; &lt;KENT&gt; same comment as before.<br>
&gt;<br>
&gt; OK -- wait for tree draft to be stable<br>
<br>
Yep.<br>
<br>
<br>
&gt;&gt;&gt; Nits:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; The tree diagram shows the fully expanded groupings,<br>
&gt;&gt;&gt; even many objects are in other drafts. I needed all 5 drafts<b=
r>
&gt;&gt;&gt; open in windows for searching, plus pyang tree output,<br>
&gt;&gt;&gt; to really follow the data model structure.<br>
&gt;&gt;<br>
&gt;&gt; &lt;KENT&gt; I know.=C2=A0 Do you have a proposal?<br>
&gt;<br>
&gt; The external nodes cannot really use a prefix because they<br>
&gt; are pulled in from groupings, and technically in the same module<br>
&gt; namespace. I don&#39;t know if any changes to the tree diagram<br>
&gt; should be made for uses external-grouping.<br>
<br>
Agreed.<br>
<br>
<br>
<br>
&gt; Andy<br>
<span class=3D"HOEnZb"><font color=3D"#888888"><br>
Kent<br>
<br>
<br></font></span></blockquote><div><br></div><div>Andy</div><div><br></div=
><div>=C2=A0</div></div><br></div></div></div>

--94eb2c1308feffa148055668f7d1--


From nobody Thu Aug 10 18:58:08 2017
Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A7C01127077 for <yang-doctors@ietfa.amsl.com>; Thu, 10 Aug 2017 18:58:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id er7NpHFR2Fje for <yang-doctors@ietfa.amsl.com>; Thu, 10 Aug 2017 18:58:05 -0700 (PDT)
Received: from mail-wm0-x229.google.com (mail-wm0-x229.google.com [IPv6:2a00:1450:400c:c09::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 82AD1126E64 for <yang-doctors@ietf.org>; Thu, 10 Aug 2017 18:58:05 -0700 (PDT)
Received: by mail-wm0-x229.google.com with SMTP id i66so36312118wmg.0 for <yang-doctors@ietf.org>; Thu, 10 Aug 2017 18:58:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=10mfirtppUah9btkhqTfHYyfeWGrzPjTvx2gvpwfTpE=; b=Ia/vLzLMrA04BJyBzFXtRgBWFK6pe1SrQfcA8IDtfAVHFy8BumCh4EQtlpOlCt3FEZ nGTe0GzKOpYFks5ydOVezp5GXvUPANQrMWCKonwZJM6z9M6kY05tCt6vfkJQ0dA5a09r lkyv7OgHHd51Ox89a/6BF6mnGZgd+i/HycwIPgqX3Gg8J+yYeUMMYyVM2KSRA37zRdGo 0d3vbvoTGsTs2vhRs4ccrsGGfqKYgLbYW8stmUqoyPyxCOwG22LQvnMTNLl2SYz5TuT7 3kfm3sRD10gh1FDiKt/EeC2XwejpE10YRQDEGOO4REDYqRwHidkp9vctH0XYti0tGFMb Gklw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=10mfirtppUah9btkhqTfHYyfeWGrzPjTvx2gvpwfTpE=; b=hws6yP7CXDCCqKJSMBs2vsm5JU/OqpcOYfzWNPUreo8vKID6+xWoQkYI1CqpJXFMHI Hn5zXL9QkSBSQKybDikP/cFLA4PNLc2R5EBwZ9PZE4rvbJ3eHx+pgTmu/Gms1l3QjsZp ORDSGI7r7YbNF1j0TRzv9tv9PsAd98DvB7cmcA2yGaeXXNfigzECuhCg4qvVfDhYAOXB PIy73kscQ8qfK8yW6xSZJNjU/gE3v4XpI3cwf6EycoGV71yeYcc8SVkTLagZrZpoihQs md5+OaWCYm+gAZV5fDtSGORYQN9pB2rlOLB/gvAL6dnZwH+5k9WD1zEmPcoVpyiqs1gy RAig==
X-Gm-Message-State: AHYfb5jGe/hjwkys5VZ5OulcTP3wa0Rq6j9u3+EI6NWo0GAITBYhff48 zc3MgVLBASl9crUW8ASEV/U9E88mNJCq
X-Received: by 10.28.159.133 with SMTP id i127mr7993499wme.172.1502416684083;  Thu, 10 Aug 2017 18:58:04 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.182.160 with HTTP; Thu, 10 Aug 2017 18:58:03 -0700 (PDT)
In-Reply-To: <034b01d311f6$e7462fc0$b5d28f40$@gmail.com>
References: <034b01d311f6$e7462fc0$b5d28f40$@gmail.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 10 Aug 2017 18:58:03 -0700
Message-ID: <CABCOCHQu8M+ox0V+O14oM+_9RuC4KHpa6D65bdomo-9V6UiNWw@mail.gmail.com>
To: Mehmet Ersue <mersue@gmail.com>
Cc: YANG Doctors <yang-doctors@ietf.org>
Content-Type: multipart/alternative; boundary="001a114545fcc28109055670a4c6"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/Z5GOGp3gPRXeD5u4OuYVPerWGIY>
Subject: Re: [yang-doctors] Summary of Open review assignments for YANG Doctors
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 11 Aug 2017 01:58:07 -0000

--001a114545fcc28109055670a4c6
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi,

You don't need to skip next time for me.
It all averages out in the end. Maybe next time I will get an easy one
and somebody else will get a really big module.


Andy


On Thu, Aug 10, 2017 at 9:37 AM, Mehmet Ersue <mersue@gmail.com> wrote:

> Dear YANG Doctors,
>
> Following YANG module reviews are pending on YANG Doctors page.
> As a few of them are on the list already a long time,
> I would like to ask the reviewers to close the open reviews as soon as
> possible.
>
> Documents in Last call:
>
> Reviewer               Draft
> Dean Bogdanovic        draft-ietf-netconf-zerotouch-14
> Kent Watsen            draft-ietf-netconf-rfc6536bis-04
> Kent Watsen            draft-ietf-netmod-syslog-model-12
>
> Early review requests:
>
> Reviewer               Due        Draft
> Dean Bogdanovic        2017-04-07 draft-ietf-mpls-ldp-yang-01
> Giles Heron            2017-07-31 draft-ietf-i2rs-rib-info-model-11
> Giles Heron            2017-04-28 draft-ietf-rtgwg-device-model-02
>
>
> Next in the reviewer rotation:
>
> Martin Bjorklund        (vac. till Aug 15)
> Radek Krej=C4=8D=C3=AD
> Carl Moberg
> Mahesh Jethanandani
> Jan Lindblad
> Thomas Nadeau
> Ladislav Lhotka
> J=C3=BCrgen Sch=C3=B6nw=C3=A4lder      keystore
> Andy Bierman    Skip next time
> Dean Bogdanovic ZT
> Kent Watsen     Skip next time
> Giles Heron
> Reshad Rahman
>
> Thanks,
> Mehmet
>
>
> _______________________________________________
> yang-doctors mailing list
> yang-doctors@ietf.org
> https://www.ietf.org/mailman/listinfo/yang-doctors
>
>

--001a114545fcc28109055670a4c6
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi,<div><br></div><div>You don&#39;t need to skip next tim=
e for me.</div><div>It all averages out in the end. Maybe next time I will =
get an easy one</div><div>and somebody else will get a really big module.</=
div><div><br></div><div><br></div><div>Andy</div><div><br></div><div><div c=
lass=3D"gmail_extra"><br><div class=3D"gmail_quote">On Thu, Aug 10, 2017 at=
 9:37 AM, Mehmet Ersue <span dir=3D"ltr">&lt;<a href=3D"mailto:mersue@gmail=
.com" target=3D"_blank">mersue@gmail.com</a>&gt;</span> wrote:<br><blockquo=
te class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc so=
lid;padding-left:1ex">Dear YANG Doctors,<br>
<br>
Following YANG module reviews are pending on YANG Doctors page.<br>
As a few of them are on the list already a long time,<br>
I would like to ask the reviewers to close the open reviews as soon as<br>
possible.<br>
<br>
Documents in Last call:<br>
<br>
Reviewer=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Draft<br>
Dean Bogdanovic=C2=A0 =C2=A0 =C2=A0 =C2=A0 draft-ietf-netconf-zerotouch-<wb=
r>14<br>
Kent Watsen=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 draft-ietf-netconf-rfc=
6536bis-<wbr>04<br>
Kent Watsen=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 draft-ietf-netmod-sysl=
og-<wbr>model-12<br>
<br>
Early review requests:<br>
<br>
Reviewer=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Due=C2=A0 =
=C2=A0 =C2=A0 =C2=A0 Draft<br>
Dean Bogdanovic=C2=A0 =C2=A0 =C2=A0 =C2=A0 2017-04-07 draft-ietf-mpls-ldp-y=
ang-01<br>
Giles Heron=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 2017-07-31 draft-ietf-=
i2rs-rib-info-<wbr>model-11<br>
Giles Heron=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 2017-04-28 draft-ietf-=
rtgwg-device-model-<wbr>02<br>
<br>
<br>
Next in the reviewer rotation:<br>
<br>
Martin Bjorklund=C2=A0 =C2=A0 =C2=A0 =C2=A0 (vac. till Aug 15)<br>
Radek Krej=C4=8D=C3=AD<br>
Carl Moberg<br>
Mahesh Jethanandani<br>
Jan Lindblad<br>
Thomas Nadeau<br>
Ladislav Lhotka<br>
J=C3=BCrgen Sch=C3=B6nw=C3=A4lder=C2=A0 =C2=A0 =C2=A0 keystore<br>
Andy Bierman=C2=A0 =C2=A0 Skip next time<br>
Dean Bogdanovic ZT<br>
Kent Watsen=C2=A0 =C2=A0 =C2=A0Skip next time<br>
Giles Heron<br>
Reshad Rahman<br>
<br>
Thanks,<br>
Mehmet<br>
<br>
<br>______________________________<wbr>_________________<br>
yang-doctors mailing list<br>
<a href=3D"mailto:yang-doctors@ietf.org">yang-doctors@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/yang-doctors" rel=3D"noref=
errer" target=3D"_blank">https://www.ietf.org/mailman/<wbr>listinfo/yang-do=
ctors</a><br>
<br></blockquote></div><br></div></div></div>

--001a114545fcc28109055670a4c6--


From nobody Fri Aug 11 04:33:12 2017
Return-Path: <mersue@gmail.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 941D21274D2 for <yang-doctors@ietfa.amsl.com>; Fri, 11 Aug 2017 04:33:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level: 
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id AGEaumUkk3sL for <yang-doctors@ietfa.amsl.com>; Fri, 11 Aug 2017 04:33:08 -0700 (PDT)
Received: from mail-wm0-x22d.google.com (mail-wm0-x22d.google.com [IPv6:2a00:1450:400c:c09::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B3B111243F6 for <yang-doctors@ietf.org>; Fri, 11 Aug 2017 04:33:07 -0700 (PDT)
Received: by mail-wm0-x22d.google.com with SMTP id k20so1860880wmg.0 for <yang-doctors@ietf.org>; Fri, 11 Aug 2017 04:33:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;  h=from:to:cc:references:in-reply-to:subject:date:message-id :mime-version:thread-index:content-language; bh=0FnFmk7lu70gLWW56IVdBHTTfENayLz1RkT325svUws=; b=u8NwfA2Ryab0ts3joUJbQJx68llxU6VOGX/5Jpol4RzWhOsfGrdbhenprB7VEB+lSR D2+Y19GXEmFlOj3/KctiHQIfqb3zyq0fEtQi6WEscEN6J1I971f7t5XZj2Rq0oGba6kP VJlrhEt24/fokKPOj2MPq5wvRK3eH68SY8peFlDHVTlVvpyLU76zQRkKCMuaGRS1zG06 hZnYmvSi2DMuF5m87ntqHR0OVlBUgjTRwqx7mD36dLmGpNgvaxWY+gXN8KohiGjLJrsU TxZS5N3FKD/Q+2kVtKBsnzaT4Fdrk+JaiuHTgTMymfbx6K5gDiiKN4BRiA8EfsbpcSYF GShw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:references:in-reply-to:subject:date :message-id:mime-version:thread-index:content-language; bh=0FnFmk7lu70gLWW56IVdBHTTfENayLz1RkT325svUws=; b=khosEnJl+w5LSuuRkH/jrMkNoj9LqjFl+83DWs3MlVU2grzpAkwJkJ7dQwHoup1n/P CEVVrQKG21V38Kfqa8OWzZYleG3/umT7P3vFI+4XV236UAZLkE2bsOhFxi0ngz32zTdb w/FrAudjjjVS4nNaRlDR+v8L9f8kCSxWxQJieKS4eZt5Jil5fjNCgRk6twN9dy6yLjPX NRR819kv/v32IGl0hnBrKlJS5Ef8YDMk4cxPX5Bn6z6F6I8oneQcvx0f72daKRDF95EP NAzY09+ZVXDCWM549BmsoyUx9M1DIajlEhrEWlvjZsCVFeU61t4OqQEQPUz6meCF68Rc 6ZgQ==
X-Gm-Message-State: AHYfb5jJVczibdwSgebRe4HLmOGUMg1kNIkytN6gmW4DHw5tSrMqmAOK p479XE7nFmEh28Tl
X-Received: by 10.28.15.75 with SMTP id 72mr8719849wmp.177.1502451186228; Fri, 11 Aug 2017 04:33:06 -0700 (PDT)
Received: from DESKTOPFLHJVQJ (p57A772EC.dip0.t-ipconnect.de. [87.167.114.236]) by smtp.gmail.com with ESMTPSA id 80sm968012wml.23.2017.08.11.04.33.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 11 Aug 2017 04:33:05 -0700 (PDT)
From: "Mehmet Ersue" <mersue@gmail.com>
To: "'Andy Bierman'" <andy@yumaworks.com>
Cc: "'YANG Doctors'" <yang-doctors@ietf.org>
References: <034b01d311f6$e7462fc0$b5d28f40$@gmail.com> <CABCOCHQu8M+ox0V+O14oM+_9RuC4KHpa6D65bdomo-9V6UiNWw@mail.gmail.com>
In-Reply-To: <CABCOCHQu8M+ox0V+O14oM+_9RuC4KHpa6D65bdomo-9V6UiNWw@mail.gmail.com>
Date: Fri, 11 Aug 2017 13:33:04 +0200
Message-ID: <007801d31295$9975d620$cc618260$@gmail.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_0079_01D312A6.5D007AE0"
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQFlQNTejd5CpOSYMZtg7jhhQr+NRAKrQxTho0VPY3A=
Content-Language: de
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/0k99QEznF60R6U68qziam3RcIi4>
Subject: Re: [yang-doctors] Summary of Open review assignments for YANG Doctors
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 11 Aug 2017 11:33:11 -0000

This is a multipart message in MIME format.

------=_NextPart_000_0079_01D312A6.5D007AE0
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Fine. Thank you!

=20

Cheers,

Mehmet

=20

From: Andy Bierman [mailto:andy@yumaworks.com]=20
Sent: Friday, August 11, 2017 3:58 AM
To: Mehmet Ersue <mersue@gmail.com>
Cc: YANG Doctors <yang-doctors@ietf.org>
Subject: Re: [yang-doctors] Summary of Open review assignments for YANG =
Doctors

=20

Hi,

=20

You don't need to skip next time for me.

It all averages out in the end. Maybe next time I will get an easy one

and somebody else will get a really big module.

=20

=20

Andy

=20

=20

On Thu, Aug 10, 2017 at 9:37 AM, Mehmet Ersue <mersue@gmail.com =
<mailto:mersue@gmail.com> > wrote:

Dear YANG Doctors,

Following YANG module reviews are pending on YANG Doctors page.
As a few of them are on the list already a long time,
I would like to ask the reviewers to close the open reviews as soon as
possible.

Documents in Last call:

Reviewer               Draft
Dean Bogdanovic        draft-ietf-netconf-zerotouch-14
Kent Watsen            draft-ietf-netconf-rfc6536bis-04
Kent Watsen            draft-ietf-netmod-syslog-model-12

Early review requests:

Reviewer               Due        Draft
Dean Bogdanovic        2017-04-07 draft-ietf-mpls-ldp-yang-01
Giles Heron            2017-07-31 draft-ietf-i2rs-rib-info-model-11
Giles Heron            2017-04-28 draft-ietf-rtgwg-device-model-02


Next in the reviewer rotation:

Martin Bjorklund        (vac. till Aug 15)
Radek Krej=C4=8D=C3=AD
Carl Moberg
Mahesh Jethanandani
Jan Lindblad
Thomas Nadeau
Ladislav Lhotka
J=C3=BCrgen Sch=C3=B6nw=C3=A4lder      keystore
Andy Bierman    Skip next time
Dean Bogdanovic ZT
Kent Watsen     Skip next time
Giles Heron
Reshad Rahman

Thanks,
Mehmet


_______________________________________________
yang-doctors mailing list
yang-doctors@ietf.org <mailto:yang-doctors@ietf.org>=20
https://www.ietf.org/mailman/listinfo/yang-doctors

=20


------=_NextPart_000_0079_01D312A6.5D007AE0
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 15 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
	{mso-style-name:msonormal;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
span.EmailStyle18
	{mso-style-type:personal-reply;
	font-family:"Calibri",sans-serif;
	color:#0000CC;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri",sans-serif;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-US link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal><span =
style=3D'color:#0000CC'>Fine. Thank you!<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span lang=3DDE =
style=3D'color:#0000CC'>Cheers,<o:p></o:p></span></p><p =
class=3DMsoNormal><span lang=3DDE =
style=3D'color:#0000CC'>Mehmet<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'color:#0000CC'><o:p>&nbsp;</o:p></span></p><div =
style=3D'border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm =
4.0pt'><div><div style=3D'border:none;border-top:solid #E1E1E1 =
1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=3DMsoNormal><b>From:</b> Andy =
Bierman [mailto:andy@yumaworks.com] <br><b>Sent:</b> Friday, August 11, =
2017 3:58 AM<br><b>To:</b> Mehmet Ersue =
&lt;mersue@gmail.com&gt;<br><b>Cc:</b> YANG Doctors =
&lt;yang-doctors@ietf.org&gt;<br><b>Subject:</b> Re: [yang-doctors] =
Summary of Open review assignments for YANG =
Doctors<o:p></o:p></p></div></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><p =
class=3DMsoNormal>Hi,<o:p></o:p></p><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>You don't need to skip next time for =
me.<o:p></o:p></p></div><div><p class=3DMsoNormal>It all averages out in =
the end. Maybe next time I will get an easy =
one<o:p></o:p></p></div><div><p class=3DMsoNormal>and somebody else will =
get a really big module.<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><p =
class=3DMsoNormal>Andy<o:p></o:p></p></div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div><div><div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><div><p class=3DMsoNormal>On Thu, =
Aug 10, 2017 at 9:37 AM, Mehmet Ersue &lt;<a =
href=3D"mailto:mersue@gmail.com" =
target=3D"_blank">mersue@gmail.com</a>&gt; =
wrote:<o:p></o:p></p><blockquote style=3D'border:none;border-left:solid =
#CCCCCC 1.0pt;padding:0cm 0cm 0cm =
6.0pt;margin-left:4.8pt;margin-right:0cm'><p class=3DMsoNormal =
style=3D'margin-bottom:12.0pt'>Dear YANG Doctors,<br><br>Following YANG =
module reviews are pending on YANG Doctors page.<br>As a few of them are =
on the list already a long time,<br>I would like to ask the reviewers to =
close the open reviews as soon as<br>possible.<br><br>Documents in Last =
call:<br><br>Reviewer&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;Draft<br>Dean Bogdanovic&nbsp; &nbsp; &nbsp; &nbsp; =
draft-ietf-netconf-zerotouch-14<br>Kent Watsen&nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; draft-ietf-netconf-rfc6536bis-04<br>Kent =
Watsen&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
draft-ietf-netmod-syslog-model-12<br><br>Early review =
requests:<br><br>Reviewer&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp;Due&nbsp; &nbsp; &nbsp; &nbsp; Draft<br>Dean =
Bogdanovic&nbsp; &nbsp; &nbsp; &nbsp; 2017-04-07 =
draft-ietf-mpls-ldp-yang-01<br>Giles Heron&nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; 2017-07-31 draft-ietf-i2rs-rib-info-model-11<br>Giles =
Heron&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2017-04-28 =
draft-ietf-rtgwg-device-model-02<br><br><br>Next in the reviewer =
rotation:<br><br>Martin Bjorklund&nbsp; &nbsp; &nbsp; &nbsp; (vac. till =
Aug 15)<br>Radek Krej=C4=8D=C3=AD<br>Carl Moberg<br>Mahesh =
Jethanandani<br>Jan Lindblad<br>Thomas Nadeau<br>Ladislav =
Lhotka<br>J=C3=BCrgen Sch=C3=B6nw=C3=A4lder&nbsp; &nbsp; &nbsp; =
keystore<br>Andy Bierman&nbsp; &nbsp; Skip next time<br>Dean Bogdanovic =
ZT<br>Kent Watsen&nbsp; &nbsp; &nbsp;Skip next time<br>Giles =
Heron<br>Reshad =
Rahman<br><br>Thanks,<br>Mehmet<br><br><br>______________________________=
_________________<br>yang-doctors mailing list<br><a =
href=3D"mailto:yang-doctors@ietf.org">yang-doctors@ietf.org</a><br><a =
href=3D"https://www.ietf.org/mailman/listinfo/yang-doctors" =
target=3D"_blank">https://www.ietf.org/mailman/listinfo/yang-doctors</a><=
o:p></o:p></p></blockquote></div><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></div></div></div></div></bo=
dy></html>
------=_NextPart_000_0079_01D312A6.5D007AE0--


From nobody Fri Aug 11 16:19:50 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F0C7E132426; Fri, 11 Aug 2017 16:19:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.021
X-Spam-Level: 
X-Spam-Status: No, score=-2.021 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id w1wDsf4CTZ_y; Fri, 11 Aug 2017 16:19:40 -0700 (PDT)
Received: from NAM03-CO1-obe.outbound.protection.outlook.com (mail-co1nam03on0097.outbound.protection.outlook.com [104.47.40.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 69269132431; Fri, 11 Aug 2017 16:19:40 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=TK97At6mTM/n02R60cCU3MPVnETa8fTNVdMcTFFp+uI=; b=VnMSk8ribVNXhAyGMAX4BX9moXS1Ifkm083dbi9RPihqPJUjTpgy/CuO4Naib7X3QH9QXpM70apCXR6s++KOvu2KsLVbRw9cX9hPwyT9uKi2xDq1Cc7byoFc2qsjBb0vLB2PdqMHes9rWAe6BPpOVgaEp9VzhLLj5z4zxoCiJ7M=
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com (10.160.117.151) by BN3PR0501MB1475.namprd05.prod.outlook.com (10.160.117.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1341.9; Fri, 11 Aug 2017 23:19:38 +0000
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) by BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) with mapi id 15.01.1341.010; Fri, 11 Aug 2017 23:19:38 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: t.petch <ietfc@btconnect.com>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
CC: "draft-ietf-netconf-keystore.all@ietf.org" <draft-ietf-netconf-keystore.all@ietf.org>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: [Netconf] last call review of draft-ietf-netconf-keystore-02
Thread-Index: AQHTCq8XkNqYUxlm6UGsbvnPncWRP6JvjmEAgAFOJnyAAHoOgIACygFtgAt3loA=
Date: Fri, 11 Aug 2017 23:19:38 +0000
Message-ID: <285887CC-3466-4FE9-BCC2-27EA13647C44@juniper.net>
References: <150028100874.32703.14161403810529927281@ietfa.amsl.com> <B1AC6895-5681-48F8-B7E7-418118120B4E@juniper.net> <20170720165942.GB21506@elstar.local> <F5E9973C-FCCD-4A96-B0D3-8C735CE911D3@juniper.net> <20170728073923.GA28870@elstar.local> <701F31A6-9941-4DE4-AE7E-00E859F103F8@juniper.net> <20170728154008.GA29865@elstar.local> <53886D3E-8A0C-4664-A7BD-1E708A80EE9D@juniper.net> <20170728170930.GA30054@elstar.local> <04f301d30aae$7482e900$4001a8c0@gateway.2wire.net> <7C4C9B41-7343-4FCD-AB0F-0131F64B45BF@juniper.net> <07d301d30b78$50b9a0c0$4001a8c0@gateway.2wire.net> <FE5D497F-2B78-4CFE-8517-6924C04FAD12@juniper.net> <042d01d30d1a$56e2eee0$4001a8c0@gateway.2wire.net>
In-Reply-To: <042d01d30d1a$56e2eee0$4001a8c0@gateway.2wire.net>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/f.20.0.170309
x-originating-ip: [66.129.241.14]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BN3PR0501MB1475; 6:E6u1XGaMiudRlP9F4DeDqmqSWHGDqnDofYpNJfjBQuhPExWxRr0pBsHx/JrK6UUKuCTLJ9ab8F9kYiGpqPhFAvmVOvtInE0l9sZDHEM5h3WYX7qdZDRvaILWaBy/y/1Jr5srY+7lp7w1Vy6y+h9nAe8CYNffYA1MYrpTWstIa4/0d5FsL9vaaKQ38ocd8qbbHtPaaRMNWSZtkMijtKfr5Gc83XiLxU5JUQqudKMJnSKmyUZpvScm4FGDqlhPiEhepa8DodMB0tt2jiVsJ0QqesfwGYLW6U6lglFdFGPzQhduA5Boe5BlFU/aMBYPyz+jLaf2t6UhMv0hTudO9Q97sQ==; 5:Xje+b9y7PfONCTBAPDsNGE8+JsJ2VRVpdVcxPqS2QE5uoWy+X08EUXFdKkm2wWYbTUO1pSpJB0Vm/JeTYeFBx1GoPYlJ7Iajm1Rn2EDCnoZNWFy1x/yOEh091pVkMa6lFLCr1P96L87PHO3rCLZ/sw==; 24:Lw5y+xJ6ndvT7ixlZsYYBZN+7tbe+lhSreqALrVfu9rNpS7r9Rxn5mHLf2PS27JtYHsYg1w4xUtur4L3cG97zGJJ5xHz8dZIjYWhprpn/cE=; 7:Yhsrw58N64onbN9dq08INZCeJVB1KNuPgRpF9BVehV2LClvydt+MPejZZiH1HTjDx0y8urYpLj4arcFSclsnB5qxrxMcetRaSjVyU1GdVzCCCdIP9IJyoVU4O4m/Bv8QvJeqUDe/R4Jd3xinyF4k2NJOD/KaB6WQPfrBllvCwEcetQROb5O8kOd/bW4LNhDfNZ4ZPFLNyhMOo3v140eAYdOHS0XMWxcAcfxAafjgT0k=
x-ms-office365-filtering-correlation-id: 09d28739-e005-497d-4bc6-08d4e10f6fde
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603124)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BN3PR0501MB1475; 
x-ms-traffictypediagnostic: BN3PR0501MB1475:
x-exchange-antispam-report-test: UriScan:(158342451672863);
x-microsoft-antispam-prvs: <BN3PR0501MB1475DB8BAE9296F924FC2BCBA5890@BN3PR0501MB1475.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(100000703101)(100105400095)(93006095)(93001095)(10201501046)(3002001)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123564025)(20161123558100)(20161123560025)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN3PR0501MB1475; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN3PR0501MB1475; 
x-forefront-prvs: 03965EFC76
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(39860400002)(199003)(51444003)(189002)(551544002)(2950100002)(3846002)(6116002)(6246003)(82746002)(102836003)(6506006)(77096006)(53936002)(93886004)(2900100001)(106356001)(76176999)(66066001)(14454004)(83506001)(97736004)(83716003)(54906002)(54356999)(50986999)(5660300001)(101416001)(6512007)(99286003)(230783001)(105586002)(189998001)(2906002)(33656002)(4326008)(68736007)(6436002)(8676002)(81156014)(8666007)(8936002)(81166006)(86362001)(36756003)(6486002)(25786009)(478600001)(4001350100001)(229853002)(7736002)(305945005)(3280700002)(3660700001); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR0501MB1475; H:BN3PR0501MB1442.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; 
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
authentication-results: spf=none (sender IP is ) smtp.mailfrom=kwatsen@juniper.net; 
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <0A2DE7606AC05E458CD7AD3BA8C6F2D6@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Aug 2017 23:19:38.2587 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0501MB1475
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/XwBMNjFF8BoCvYIzk4zNn2VRcK4>
Subject: Re: [yang-doctors] [Netconf] last call review of draft-ietf-netconf-keystore-02
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 11 Aug 2017 23:19:43 -0000

SGkgVG9tLA0KDQoNCj4gTXkgbW9kZWwgaXMgdGhhdCBhcmUgZGlmZmVyZW50IHdheXMgb2YgYXJy
aXZpbmcgYXQgYSBwdWJsaWMga2V5IGJ1dCB0aGF0DQo+IG9uY2UgeW91IGhhdmUsIHRoZW4gdGhl
IGNyeXB0b2dyYXBoeSBpcyB0aGUgc2FtZSwgd2l0aCBhIGNob2ljZSBvZg0KPiBhbGdvcml0aG1z
Lg0KDQpBIGdvb2QgZmlyc3QtYXBwcm94aW1hdGlvbiAgOikNCg0KDQo+IElmIHlvdSBhcmUgYSBT
U0ggY2xpZW50LCB0aGVuIGxpa2VseSB5b3UgaGF2ZSBhIHN0YXNoIG9mIHB1YmxpYyBob3N0DQo+
IGtleXMgYXNzb2NpYXRlZCB3aXRoIG9uZSBvciBtb3JlIFNTSCBzZXJ2ZXJzLCBhbmQsIGFwYXJ0
IGZyb20NCj4gYWxnb3JpdGhtcywgbm8gbW9yZS4NCj4NCj4NCj4gSWYgeW91IGFyZSBhIFRMUyBj
bGllbnQsIHRoZW4gbGlrZWx5IHlvdSBhcmUgdXNpbmcgWC41MDkgYW5kIHdpbGwgaGF2ZSBhDQo+
IHByZS1jb25maWd1cmVkIHRydXN0IGFuY2hvciwgaW4gdGhlIHNoYXBlIG9mIGEgcHVibGljIGtl
eSBvciBhDQo+IGNlcnRpZmljYXRlICh3aGljaCBtYXkgb3IgbWF5IG5vdCBiZSByb290KS4NCg0K
VGhlIGNsaWVudHMgYWxzbyBuZWVkIHRoZWlyIG93biBwcml2YXRlIGtleXMgKHdoaWNoIG1heSBi
ZSBhIHBhc3N3b3JkIGZvcg0KU1NIKSBhbmQgYXNzb2NpYXRlZCBwdWJsaWMta2V5L2NlcnRpZmlj
YXRlLg0KDQoNCj4gSWYgeW91IGFyZSBhIFNTSCBzZXJ2ZXIsIHRoZW4gbGlrZWx5IHlvdSB3aWxs
IGhhdmUgc3Rhc2ggb2YNCj4gcHJpdmF0ZS9wdWJsaWMga2V5IHBhaXJzLCBwZXJoYXBzIHdpdGgg
Y29uc3RyYWludHMgb24gdGhlaXIgdXNhZ2UsIGFuZA0KPiB0aGUgYWJpbGl0eSB0byBnZW5lcmF0
ZSBmdXJ0aGVyIHByaXZhdGUvcHVibGljIGtleSBwYWlycy4NCj4NCj4gSWYgeW91IGFyZSBhIFRM
UyBzZXJ2ZXIsIHRoZW4geW91IHdpbGwgaGF2ZSBvbmUgb3IgbW9yZSBYLjUwOQ0KPiBjZXJ0aWZp
Y2F0ZXMgd2l0aCB5b3VyIHB1YmxpYyBrZXlzLCBhIGNoYWluIG9mIFguNTA5IGNlcnRpZmljYXRl
cyBiYWNrDQo+IHRvIGFuIGFuY2hvciB0aGF0IHRoZSBjbGllbnQgd2lsbCB0cnVzdCwgdGhlIGNv
cnJlc3BvbmRpbmcgcHJpdmF0ZSBrZXlzDQo+IGFuZCBwZXJoYXBzIHRoZSBhYmlsaXR5IHRvIGdl
bmVyYXRlIGEgWC41MDkgY2VydGlmaWNhdGUgd2l0aCBhDQo+IHB1YmxpYy9wcml2YXRlIGtleSBw
YWlyOyB0aGlzIG1heSBvciBtYXkgbm90IGNoYWluIGJhY2sgdG8gYSB0cnVzdGVkDQo+IHJvb3Qu
DQoNClRoZSBzZXJ2ZXJzIGFsc28gbmVlZCBpbmZvcm1hdGlvbiBmb3IgaG93IHRvIGF1dGhlbnRp
Y2F0ZSB0aGUgY2xpZW50cw0KKGhhc2hlZCBwYXNzd29yZCwgcGlubmVkIHB1YmxpYy1rZXkgb3Ig
Y2VydCwgcGlubmVkIHRydXN0LWFuY2hvciwgZXRjLikNCmFuZCBob3cgdG8gbWFwIHRoZW0gdG8g
YXBwbGljYXRpb24tbGV2ZWwgdXNlcm5hbWVzIChlLmcuLCB2aWEgY2VydC1tYXBzKQ0KDQoNCj4g
VGhlcmUgYXJlIG90aGVyIFRMUyBvcHRpb25zIGJ1dCBJIHRoaW5rIHRoYXQgdGhlaXIgdXNhZ2Ug
aXMgbGltaXRlZCwgYnV0DQo+IGluIHRoZSBjb250ZXh0IG9mIG5ldHdvcmsgbWFuYWdlbWVudCwg
b25lIG9yIG1vcmUgY291bGQgYmUgc2lnbmlmaWNhbnQNCj4gYWx0aG91Z2ggSSBkb24ndCBoYXZl
IGEgc3BlY2lmaWMgZXhhbXBsZSBpbiBtaW5kICggSSBsaWtlIFBBS0UgYnV0IGRvDQo+IG5vdCBz
ZWUgaXQgaW4gdXNlKS4NCj4NCj4gU28gdGhlIG9ubHkgcGFydCBpbiBjb21tb24gaXMgd2hhdCB5
b3UgZG8gb25jZSB5b3UgaGF2ZSB0aGUgcHVibGljIGtleSwNCj4gd2hpY2ggaXMgbm90IG11Y2gu
DQoNCkknbSB1bnN1cmUgd2hhdCBjaGFuZ2UgeW91J3JlIGxvb2tpbmcgZm9yIHdpdGggdGhpcyBj
b21tZW50Lg0KDQoNClRoYW5rcywNCktlbnQNCg0KDQoNCg0K


From nobody Mon Aug 14 18:39:53 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7EABA132476; Mon, 14 Aug 2017 18:39:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.021
X-Spam-Level: 
X-Spam-Status: No, score=-2.021 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id A_cyiMO3-i71; Mon, 14 Aug 2017 18:39:50 -0700 (PDT)
Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0091.outbound.protection.outlook.com [104.47.42.91]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0AB571321B6; Mon, 14 Aug 2017 18:39:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=P+/8/1G5ClalWqrpKJ1CM90mq8OwbU2eEENuZRFSaLg=; b=ObWgrX/CdNyXbY3YV9MAKX3mvusKUQljsPwa0/eW8nH0TzwcSlsBKV8T7GhqP5ycEv6NixM6+Zn/UkiJOehsblkz3pacibSeWefpxkQUWDeyH+9u7WUnu9iMwUQX65SVFxO6lYD0MfDAz+o3TuIkerHtZPe7SJ0Jhw8JWybepHo=
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com (10.160.117.151) by BN3PR0501MB1108.namprd05.prod.outlook.com (10.160.113.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1362.12; Tue, 15 Aug 2017 01:39:47 +0000
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) by BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) with mapi id 15.01.1362.012; Tue, 15 Aug 2017 01:39:47 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: Andy Bierman <andy@yumaworks.com>
CC: "yang-doctors@ietf.org" <yang-doctors@ietf.org>, "draft-ietf-netconf-restconf-client-server.all@ietf.org" <draft-ietf-netconf-restconf-client-server.all@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: Yangdoctors last call review of draft-ietf-netconf-restconf-client-server-04
Thread-Index: AQHTB+8y29TveGyQA0qavQMqV/nni6JuTX8AgAGcVwCADGTdgIABkngAgAaaqAA=
Date: Tue, 15 Aug 2017 01:39:47 +0000
Message-ID: <C8D279C6-B735-453D-92BF-09886CAFF403@juniper.net>
References: <150128020275.20726.13027423171798327745@ietfa.amsl.com> <A9F2ED3F-6AC5-4AEF-8EBF-1C4F89A6F0F7@juniper.net> <CABCOCHTmNdi7ZGPL_R8vyZTOKeVwJgtrqsT0ZNBCbMUT4Qo9tA@mail.gmail.com> <30CD19F8-6441-4EA3-A340-8CEDD6D4FD6A@juniper.net> <CABCOCHQrgYOUGXo1g3LGn9t8rL3-MoJwNmSG2amgAkxMp_Prhw@mail.gmail.com>
In-Reply-To: <CABCOCHQrgYOUGXo1g3LGn9t8rL3-MoJwNmSG2amgAkxMp_Prhw@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/f.20.0.170309
x-originating-ip: [66.129.241.13]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BN3PR0501MB1108; 6:tVbaiDlhldiMbzgQ0ZO3OBdzz/yitgiZaJ4yfPLOjU+hiq8DqLE3kinjLtyQ8xSUfEcOWBKvOmFmCdPF9TmxJCyszgzu5XW/hR1u8Lf40uNSZ0dlynEbfhDlvQQN+JI13ss99HgODmEsAzRlYCq92S/yZ5l+/MLLt8tcwanWYuub+t1ueylJvItfeunDXZltTieaFdiJJp+g8pZIxl/WlQcLE1D8A61Iu4dz2RfTd7pClv11c+HFeuckoNt5ZUhUzg66a7EbPxoLp1aYDUn1ksxhadoUs5UrRiE04UTPVjsR3CD3d9KIxTYC9LlO8oSo0iicT5LEUAr6XRdB53Ot6g==; 5:gYW5VnVCveeMvSJ8EzR2fQYiMjW7eBQyEpF9eICdG8Bsb8coCyAZxqasnleR+UwsEz30G4NlK8FnMh1ljXubzPZHg6IX5sSwQq9YV2FSc8hJ0907CsAV8V7S6xHKcUOR4i9fMSrAG6U4RSJj+nxiow==; 24:c6cnSZTBt1Z07792PCdyWaVJkqTzmdE68rgtBB6B3/YQ7qcUzUNNj35oEUjgWCEz2BX3MsHjFxIHzrL9hd++TMwsNQWrkv7E/FndtwCRrTw=; 7:3W18SLtRuPAF+tq3UOkuZ3/DeiGg2lyXqyqOL7HejPcaxHniDuQVho+A2s1bi93YxZUn5ktyveBlJecqXQaHxmugTArmgCt+h3GBxEFJutWe27k2ROloMDS2rlwr/FOY+xCtJwqIhQ9/ePUyt9iU/GY8Mia2BxxBsTqmEDlGPFlES20q4Prcasv8dLjs52yy+P5y+RWye3IJCb9W2K+upL9m4QVboi/rnTTSvSXTmHI=
x-ms-office365-filtering-correlation-id: 0252ac68-1cf1-432f-17d9-08d4e37e8388
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(300000502095)(300135100095)(22001)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603143)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BN3PR0501MB1108; 
x-ms-traffictypediagnostic: BN3PR0501MB1108:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=kwatsen@juniper.net; 
x-exchange-antispam-report-test: UriScan:(158342451672863)(21532816269658)(17755550239193); 
x-microsoft-antispam-prvs: <BN3PR0501MB1108FB23B7FEBA1FDDF12BD2A58D0@BN3PR0501MB1108.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(100000703101)(100105400095)(10201501046)(93006095)(93001095)(3002001)(6055026)(6041248)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123560025)(20161123562025)(20161123564025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN3PR0501MB1108; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN3PR0501MB1108; 
x-forefront-prvs: 04004D94E2
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(39860400002)(189002)(199003)(76104003)(2950100002)(2900100001)(189998001)(6916009)(14454004)(3846002)(36756003)(106356001)(53936002)(6506006)(77096006)(478600001)(230783001)(6486002)(6246003)(86362001)(6116002)(102836003)(83716003)(105586002)(82746002)(97736004)(83506001)(8676002)(110136004)(76176999)(4001350100001)(54356999)(8936002)(6512007)(66066001)(50986999)(101416001)(93886004)(54906002)(3660700001)(81166006)(25786009)(68736007)(7736002)(3280700002)(305945005)(99286003)(2906002)(5660300001)(4326008)(81156014)(229853002)(6436002)(33656002); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR0501MB1108; H:BN3PR0501MB1442.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; 
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <CC07A8D290F0134ABCD48A4D702F69F7@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Aug 2017 01:39:47.6638 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0501MB1108
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/LHnQ6YO6mpBSzbhDiqzhqaDCQhE>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-netconf-restconf-client-server-04
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 15 Aug 2017 01:39:52 -0000

SGkgQW5keSwNCg0KPj4+PiBDMjoNCj4+Pj4NCj4+Pj4gKE0xKSBmZWF0dXJlIHRscy1pbml0aWF0
ZQ0KPj4+PiAoTTEpIGZlYXR1cmUgdGxzLWxpc3Rlbg0KPj4+PiAoTTIpIGZlYXR1cmUgdGxzLWxp
c3Rlbg0KPj4+PiAoTTIpIGZlYXR1cmUgdGxzLWNhbGwtaG9tZQ0KPj4+Pg0KPj4+PiBBcmUgdGhl
c2UgZmVhdHVyZXMgcmVhbGx5IG5lZWRlZCBzaW5jZSBhIFJFU1RDT05GIHNlcnZlciBNVVNUIHN1
cHBvcnQNCj4+Pj4gdGhlIFRMUyB0cmFuc3BvcnQ/DQo+Pj4NCj4+PiA8S0VOVD4gdGhlIGZlYXR1
cmVzIHRoZW1zZWx2ZXMgYXJlIG5lZWRlZCwgYXMgd2UgZG9uJ3Qga25vdyB3aGF0DQo+Pj4gY2xp
ZW50cy9zZXJ2ZXJzIG1heSBzdXBwb3J0Lg0KPj4+DQo+PiBPSyAtLSBUaGVzZSBmZWF0dXJlcyBh
cmUgbmVzdGVkIHdpdGhpbiBvdGhlciBmZWF0dXJlcyAoaW5pdGlhdGUsIGxpc3RlbikuDQo+PiBZ
b3Ugc2hvdWxkIGFkZCBhIGNvbW1lbnQgc29tZXdoZXJlIHRoYXQgVExTIGlzIG9wdGlvbmFsLXRv
LXN1cHBvcnQsDQo+PiBidXQgbWFuZGF0b3J5IHRvIHN1cHBvcnQgaWYgdGhlIFRMUyB0cmFuc3Bv
cnQgaXMgaW1wbGVtZW50ZWQuDQo+PiBDdXJyZW50bHkgUkVTVENPTkYgcmVxdWlyZXMgVExTIGJl
IHN1cHBvcnRlZCwgYnV0IGZ1dHVyZQ0KPj4gdmVyc2lvbnMgY291bGQgYmUgZGlmZmVyZW50Lg0K
Pg0KPiBJIGFkZGVkIHRoaXMgdG8gdGhlIGRlc2NyaXB0aW9uIHN0YXRlbWVudCBvZiB0aGUgJ3Rs
cy1saXN0ZW4nIGFuZA0KPiAndGxzLWluaXRpYXRlJyBmZWF0dXJlczoNCj4NCj7CoCDCoCDCoCBD
dXJyZW50bHkgVExTIGlzIHRoZSBvbmx5IHRyYW5zcG9ydCBzdXBwb3J0ZWQgYnkgUkVTVENPTkYs
DQo+wqAgwqAgwqAgdGhpcyBmZWF0dXJlIGhlbHBzIHN1cHBvcnQgcG9zc2libGUgZnV0dXJlIHRy
YW5zcG9ydHMuIjsNCj4NCj4NCj4gSWYgeW91IGFyZSB0cnlpbmcgdG8gc2F5IHRoYXQgVExTIG1p
Z2h0IG5vdCBiZSB0aGUgbWFuZGF0b3J5LXRvLWltcGxlbWVudA0KPiB0cmFuc3BvcnQsIHRoaXMg
c2VudGVuY2UgaXMgbm90IHF1aXRlIHJpZ2h0Lg0KDQpGaW5lLCBub3cgaXQgc2F5cyAiVGhpcyBm
ZWF0dXJlIGV4aXN0cyBhcyBUTFMgbWlnaHQgbm90IGJlIGEgDQptYW5kYXRvcnktdG8taW1wbGVt
ZW50IHRyYW5zcG9ydCBpbiB0aGUgZnV0dXJlLiINCg0KDQo+IFlvdSBrbm93IEkgYW0gbm90IGEg
YmlnIGZhbiBvZiBZQU5HIGNvbmZvcm1hbmNlLg0KPiBXZSBoYXZlIG5vdGhpbmcgaW4gYmV0d2Vl
biAiYWx3YXlzIG1hbmRhdG9yeSIgYW5kICJwdXJlbHkgb3B0aW9uYWwsDQo+IHNlcnZlciBkZXZl
bG9wZXIncyBjaG9pY2UiLsKgIFdlIGhhdmUgbm90aGluZyBsaWtlIGNvbmRpdGlvbmFsbHkNCj4g
bWFuZGF0b3J5ICJJZiB0aGUgUkVTVENPTkYgc2VydmVyIHN1cHBvcnRzIGxpc3RlbmluZyBvbiBU
TFMgLCB0aGVuDQo+IHRoZSBsaXN0ZW4tdGxzIGZlYXR1cmUgTVVTVCBiZSBzdXBwb3J0ZWQuIg0K
DQpUaGlzIHNlZW1zIHVubmVjZXNzYXJ5LiAgQWxyZWFkeSB0aGUgJ2lmLWZlYXR1cmUnIHN0YXRl
bWVudHMgd2lsbA0KZm9yY2UgdGhlIHNlcnZlciB0byBhZHZlcnRpc2UgdGhlIGZlYXR1cmVzIC0g
b3IgZWxzZSB0aGV5J3JlIG5vdA0KY29uZmlndXJhYmxlIQ0KDQoNCj4gVGhlIHdoZW4tc3RtdCBj
YW4gYmUgdXNlZCB0byBwcm92aWRlIHRoaXMgY29uZGl0aW9uYWxseS1tYW5kYXRvcnkNCj4gY29u
Zm9ybWFuY2UsIGJ1dCBpdCBoYXMgdG8gYmUgY3VzdG9taXplZCBmb3IgZWFjaCBkYXRhIHN1YnRy
ZWUuIEl0DQo+IGlzIG1vcmUgZXhwZW5zaXZlIHRoYW4gaWYtZmVhdHVyZSBvbiBtYW55IGxldmVs
cy4NCg0KTm8gdGhhbmsteW91LiAgTGV0J3Mgc3RpY2sgd2l0aCBqdXN0IHRoZSBmZWF0dXJlIHN0
YXRlbWVudHMuDQoNCg0KDQo+Pj4gQWxzbywgcmVjZW50IFlBTkcgMS4xIGRpc2N1c3Npb25zIGNv
bmNsdWRlZCAod3JvbmdseSBJTU8pIHRoYXQgbmVzdGVkDQo+Pj4gbm9kZXMgZG8gbm90IGluaGVy
aXQgdGhlIGlmLWZlYXR1cmUtc3RtdHMgb2YgYW5jZXN0b3JzLsKgIEl0IGlzIG5vdCBjbGVhcg0K
Pj4+IGhvdyBvbmUgd291bGQgYWNjZXNzIC9mb28vYmFyIGlmIC9mb28gd2FzIG5vdCBzdXBwb3J0
ZWQuDQo+Pg0KPj4gV2FpdCwgc2VyaW91c2x5PyBJIGRpZG4ndCBzZWUgdGhhdC7CoCBJIGRvbid0
IHVuZGVyc3RhbmQgaG93IGVsc2UgbmVzdGVkDQo+PiBpZi1mZWF0dXJlIHN0YXRlbWVudHMgY2Fu
IGJlIGludGVycHJldGVkLsKgIENhbiB5b3UgcG9pbnQgdG8gdGhlIHRocmVhZA0KPj4gd2hlcmUg
dGhpcyB3YXMgZGlzY3Vzc2VkPw0KPg0KPiBJIGNhbm5vdCBmaW5kIGl0IG5vdy4NCj4gRXNzZW50
aWFsbHksIGZlYXR1cmVzIGFyZSBub3QgY291cGxlZCB0byBvYmplY3RzOg0KPg0KPsKgIGNvbnRh
aW5lciBmb28gew0KPsKgIMKgIMKgaWYtZmVhdHVyZSBBOw0KPsKgIMKgIMKgY29udGFpbmVyIGZv
bzIgew0KPsKgIMKgIMKgIMKgIGlmLWZlYXR1cmUgQUE7DQo+wqAgwqAgwqB9DQo+wqAgfQ0KPg0K
PsKgIGNvbnRhaW5lciBiYXIgew0KPsKgIMKgIMKgaWYtZmVhdHVyZSBBQTsNCj7CoCDCoH0NCj4N
Cj4gVGhlIGRlc2lnbmVyIGhhcyB0byBkZWNpZGU6DQo+IERvZXMgZmVhdHVyZSBBQSBkZXBlbmQg
b24gQSwgb3IganVzdCBjb250YWluZXIgZm9vMiBkZXBlbmRzDQo+IG9uIGNvbnRhaW5lciBmb28/
ICBEb2VzIGFuIGV4dGVybmFsIHN1YnRyZWUgKGxpa2UgL2JhcikgZGVwZW5kDQo+IG9uIGJvdGgg
ZmVhdHVyZXMgb3IgY2FuIHRoZXkgYmUgdXNlZCBpbmRlcGVuZGVudGx5Pw0KDQpJIGRvbid0IHRo
aW5rIHRoZSBkZXNpZ25lciBoYXMgYW55IGNob2ljZSBpbiB0aGlzLiAgVGhlIGZlYXR1cmVzDQp0
aGVtc2VsdmVzIGhhdmUgbm8gaW5oZXJlbnQgZGVwZW5kZW5jeSAoaW4geW91ciBleGFtcGxlLCB3
ZSBjYW4ndA0Kc2VlIGlmIHRoZSBmZWF0dXJlIGRlZmluaXRpb25zIGFjdHVhbGx5IGRlZmluZSBh
IGRlcGVuZGVuY3kpLCBidXQNCnRoZSBjb250YWluZXJzIGNlcnRhaW5seSBkbyAoZS5nLiwgZm9v
MiBkZXBlbmRzIG9uIGZvbykuICBFeHRlcm5hbA0Kc3ViLXRyZWVzIChlLmcuLCBiYXIpIGNhbiBo
YXZlIGp1c3QgaWYtZmVhdHVyZSBBQSwgd2l0aG91dCBhbHNvDQpoYXZpbmcgYW4gaWYtZmVhdHVy
ZSBBIChhc3N1bWluZyB0aGF0IGRlcGVuZGVuY3kgZG9lc24ndCBleGlzdCkuDQoNCg0KPiBJbiB0
aGlzIGNhc2UgSSB0aGluayB0aGUgaW50ZW50IGlzIHRvIHN1cHBvcnQgZmVhdHVyZSBsaXN0ZW4g
aWYNCj4gYW55IHRyYW5zcG9ydCBpcyBzdXBwb3J0ZWQsIGFuZCBmZWF0dXJlIGxpc3Rlbi08dHJh
bnNwb3J0PiBpcw0KPiBhIHNwZWNpZmljIHRyYW5zcG9ydCBpcyBzdXBwb3J0ZWQsIHNvIHRoZSBp
Zi1mZWF0dXJlIGluc2lkZSB0aGUNCj4gMm5kIGZlYXR1cmUgaXMgY29ycmVjdC4NCg0KWWVzLg0K
DQoNCg0KPj4gU28gcGVyaGFwcyB5b3Ugc2hvdWxkIGFkZCBpZi1mZWF0dXJlLXN0bXRzOg0KPj4N
Cj4+wqAgZmVhdHVyZSB0bHMtbGlzdGVuIHsNCj4+wqAgwqAgwqBpZi1mZWF0dXJlIGxpc3RlbjsN
Cj4+wqAgwqAgwqAuLi4NCj4+wqAgfQ0KPj4NCj4+wqAgZmVhdHVyZSB0bHMtbGlzdGVuIHsNCj4+
wqAgwqAgaWYtZmVhdHVyZSBsaXN0ZW47DQo+PsKgIMKgIC4uLg0KPj7CoCB9DQo+DQo+IEkgd2Vu
dCBhaGVhZCBhbmQgbWFkZSB0aGlzIGNoYW5nZSwgaXQgc2VlbXMgYmV0dGVyLg0KDQpOb3RoaW5n
IHRvIGFkZCBoZXJlLCBidXQgSSdtIGxlYXZpbmcgaXQgZm9yIG5vdyBzaW5jZSBpdCBhZGRzDQp0
byB0aGUgYWJvdmUgZGlzY3Vzc2lvbi4NCg0KDQoNCg0KDQo+Pj4+IEM1Og0KPj4+DQo+Pj4gSXQg
c2hvdWxkIGJlIGNsZWFyIHRoYXQgdGhlIGNsaWVudCB3b3VsZCBoYXZlIHRvIGlzc3VlIGEgR0VU
DQo+Pj4gb3IgbWF5YmUgUE9TVCB0byBpbml0aWF0ZSB0aGUgc2VuZGluZyBvZiBzdG9yZWQgZGF0
YSBsaWtlIGxvZ3MNCj4+DQo+PiBPa2F5LCBob3cgYWJvdXQgdGhpcz8NCj4+DQo+PsKgIMKgIlBl
cmlvZGljYWxseSBjb25uZWN0IHRvIHRoZSBSRVNUQ09ORiBzZXJ2ZXIsIHNvIHRoYXQsDQo+PsKg
IMKgIGUuZy4sIHRoZSBSRVNUQ09ORiBjbGllbnQgY2FuIGNvbGxlY3QgZGF0YSAobG9ncykNCj4+
wqAgwqAgZnJvbSB0aGUgUkVTVENPTkYgc2VydmVyLsKgIFRoZSBSRVNUQ09ORiBjbGllbnQgbXVz
dA0KPj7CoCDCoCBjbG9zZSB0aGUgY29ubmVjdGlvbiB3aGVuIGl0IGlzIHJlYWR5IHRvIHJlbGVh
c2UgaXQuDQo+PsKgIMKgIE9uY2UgdGhlIGNvbm5lY3Rpb24gaXMgY2xvc2VkLCB0aGUgUkVTVENP
TkYgY2xpZW50DQo+PsKgIMKgIHJlc3RhcnRzIGl0cyB0aW1lciB1bnRpbCB0aGUgbmV4dCBjb25u
ZWN0aW9uLiI7DQo+DQo+IE5vdCBzdXJlIHRoaXMgaXMgbmVlZGVkLg0KPiBSRVNUQ09ORiBkb2Vz
IG5vdCBkZWZpbmUgYW55IGludGVyYWN0aW9ucyB0aGF0IGFyZSBub3QgaW5pdGlhdGVkDQo+IGJ5
IHRoZSBjbGllbnQsIGJ1dCBpZiB0aGF0IGNoYW5nZXMsIHRoZW4gbm8gcmVhc29uIHRvIGNvbnN0
cmFpbg0KPiB0aGlzIHRleHQuIEkgd291bGQgY2hhbmdlICdtdXN0JyB0byAnU0hPVUxEJyBpbiB0
aGUgMm5kIHNlbnRlbmNlLg0KDQpPaCwgbm93IEkgc2VlIHlvdXIgY29uY2VybiwgaG93IGFib3V0
IHRoaXM/ICAoSSByZW1vdmVkIHRoZSBzZW50ZW5jZQ0KYWx0b2dldGhlcik6DQoNCiAgICAgIlBl
cmlvZGljYWxseSBjb25uZWN0IHRvIHRoZSBSRVNUQ09ORiBjbGllbnQsIHNvIHRoYXQNCiAgICAg
IHRoZSBSRVNUQ09ORiBjbGllbnQgbWF5IGRlbGl2ZXIgbWVzc2FnZXMgcGVuZGluZyBmb3INCiAg
ICAgIHRoZSBSRVNUQ09ORiBzZXJ2ZXIuICBPbmNlIHRoZSBjb25uZWN0aW9uIGhhcyBiZWVuDQog
ICAgICBjbG9zZWQsIGZvciB3aGF0ZXZlciByZWFzb24sIHRoZSBzZXJ2ZXIgd2lsbCByZXN0YXJ0
DQogICAgICBpdHMgdGltZXIgdW50aWwgdGhlIG5leHQgY29ubmVjdGlvbi4iOw0KDQouLi5hbmQg
YnkgImZvciB3aGF0ZXZlciByZWFzb24iLCBJIG1lYW4sIGVpdGhlciBkdWUgdG8gdGhlDQpjbGll
bnQgY2xvc2luZyB0aGUgY29ubmVjdGlvbiwgb3IgZHVlIHRvIHJlYXNvbnMgc3VjaCBhcw0KYW4g
aWRsZSBvciBrZWVwLWFsaXZlIHRpbWVvdXQuDQoNCg0KPj4+PkM2Og0KPj4+Pg0KPj4+PiAoTTEp
wqAgL3Jlc3Rjb25mLWNsaWVudC9pbml0aWF0ZS9yZXN0Y29uZi1zZXJ2ZXIvcGVyaW9kaWMvDQo+
Pj4+IChNMinCoCAvcmVzdGNvbmYtc2VydmVyL2NhbGwtaG9tZS9yZXN0Y29uZi1jbGllbnQvY29u
bmVjdGlvbi10eXBlL3BlcmlvZGljLw0KPj4+Pg0KPj4+PiBUaGUgUkVTVENPTkYgbm90aWZpY2F0
aW9ucyB2aWEgU1NFIHNob3VsZCBiZSBleGVtcHQgZnJvbSB0aW1lb3V0cy4NCj4+Pj4gVGhlIFJF
U1RDT05GIGNsaWVudCBzaG91bGQgdGVybWluYXRlIGFuIFNTRSByZXF1ZXN0LiBUaGUgc2VydmVy
IHNob3VsZA0KPj4+PiBub3QgdGltZW91dCBhbiBTU0UgcmVzcG9uc2UgY29ubmVjdGlvbg0KPj4+
DQo+Pj4gPEtFTlQ+IEFncmVlZCwgYW5kIHRoZSBkZXNjcmlwdGlvbiBzdGF0ZW1lbnQgZm9yIHRo
ZSAnaWRsZS10aW1lb3V0JyBsZWFmDQo+Pj4gc2F5cyAiU2Vzc2lvbnMgdGhhdCBoYXZlIGEgbm90
aWZpY2F0aW9uIHN1YnNjcmlwdGlvbiBhY3RpdmUgYXJlIG5ldmVyDQo+Pj4gZHJvcHBlZC7CoCBC
dXQgaGVyZSwgdW5kZXIgJ3BlcmlvZGljJywgdGhlIHdob2xlIHBvaW50IGlzIHRvIHNoZWQgaWRs
ZQ0KPj4+IGNvbm5lY3Rpb25zLsKgIEZvciBpbnN0YW5jZSwgaW1hZ2luZSBhIGNsaWVudCB0aGF0
IHdhbnRzIHRvIGNvbGxlY3QgbG9ncw0KPj4+IGZyb20gYSBsb3ctcG93ZXJlZCBzZXJ2ZXIgb25j
ZSBhIGRheS7CoCBXaGF0IGRvIHlvdSB0aGluaz8NCj4+DQo+PiBOb3RpZmljYXRpb24gcmVwbGF5
IGhhcyBhIG1vZGUgd2hlcmUgaXQgaXMgdGVybWluYXRlZCAoaS5lLC4sIA0KPj4gZW5kLXRpbWUg
PnByb3ZpZGVkKSBJIHRoaW5rIHRoaXMgd291bGQgaGF2ZSB0byBiZSB1c2VkIGJ5IHRoZQ0KPj4g
Y2xpZW50LsKgIFRoaXMgdGVsbHMgdGhlIHNlcnZlciB0byBkcm9wIHRoZSBjb25uZWN0aW9uIHdo
ZW4gdGhlDQo+PiByZXBsYXkgaXMgY29tcGxldGUuDQo+DQo+IFN1cmUsIGJ1dCBrZWVwIGluIG1p
bmQgdGhhdCBsb2dzIGFyZSBqdXN0IGFuIGV4YW1wbGUsIHRoZXJlIGNvdWxkDQo+IGJlIG90aGVy
IGRhdGEtY29sbGVjdGlvbiBtZWNoYW5pc21zLsKgIFN0aWxsLCBub3RlIHRoYXQgd2hlbiBlbmQt
dGltZQ0KPiBwcm92aWRlZCBpcyByZWFjaGVkLCB0aGUgbGluZSB3b3VsZCBiZWNvbWUgaWRsZSwg
aWYgaXQgZGlkbid0IGRyb3AuDQo+wqBUaGlzIHNlZW1zIGxpa2UgYSBtb3JlIGdlbmVyaWMgbWVj
aGFuaXNtLg0KDQpJIGhhdmUgbm90aGluZyB0byBhZGQgaGVyZSwgYnV0IEknbSBrZWVwaW5nIGl0
IGhlcmUgc2luY2UgaXQncyANCmNvbm5lY3RlZCB0byB0aGUgYmVsb3cgY29tbWVudC4NCg0KDQo+
Pj4gVGhpcyBpcyAxIGV4Y2VwdGlvbiAtLSBhbm90aGVyIGlzIGNsb3NlLXNlc3Npb24uDQo+Pj4N
Cj4+PsKgIMKgUE9TVCAvcmVzdGNvbmYvb3BlcmF0aW9ucy9pZXRmLW5ldGNvbmY6Y2xvc2Utc2Vz
c2lvbg0KPj4+DQo+Pj4gSXMgdGhpcyBzdXBwb3NlZCB0byBkbyBhbnl0aGluZyBpbiBSRVNUQ09O
Rj8NCj4+DQo+PiBGaXJzdCwgSSBkb24ndCB2aWV3IHRoZSBhYm92ZSBhcyBhbiBleGNlcHRpb24u
wqAgV2l0aCByZWdhcmRzIHRvDQo+PiAnY2xvc2Utc2Vzc2lvbicsIGRvZXMgaXQgZXZlbiBoYXZl
IGEgbWVhbmluZyBpbiBSRVNUQ09ORj/CoCAtIGFuZA0KPj4gaXMgdGhpcyBhY3R1YWxseSBhbiBp
c3N1ZSBmb3IgUkZDIDgwNDA/DQo+DQo+IFJFU1RDT05GIGRvZXMgbm90IHNwZWNpZnkgYW55IGJl
aGF2aW9yIGZvciBzcGVjaWZpYyBvcGVyYXRpb24NCj4gcmVzb3VyY2VzLiAgSXQgaXMgbGVmdCBh
cyBhbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWwuwqAgT3VyIHNlcnZlcg0KPiB0cmVhdHMgZWFjaCBS
RVNUQ09ORiByZXF1ZXN0IGFzIGEgbmV3IG1hbmFnZW1lbnQgc2Vzc2lvbiwgc28gYQ0KPiBORVRD
T05GIG9wZXJhdGlvbiBsaWtlIDxsb2NrPiBpcyBncmFudGVkIGFuZCB0aGVuIHJlbGVhc2VkIHJp
Z2h0DQo+IGFmdGVyd2FyZHMgYnkgdGhlIHNlcnZlciBiZWNhdXNlIHRoZSBzZXNzaW9uIGlzIHRl
cm1pbmF0ZWQuICBJDQo+IHRoaW5rIGFueSBzdGFuZGFyZCBiZWhhdmlvciBmb3IgYXBwbGljYXRp
b24gbGF5ZXIgc2Vzc2lvbnMgd291bGQNCj4gbmVlZCB0byBiZSBkZWZpbmVkIGluIGEgbmV3IHZl
cnNpb25zIG9mIFJFU1RDT05GLg0KDQpPa2F5LCBidXQgY2FuIHlvdSBjb25uZWN0IHRoaXMgdG8g
dGhlIGRyYWZ0PyAgQXJlIHlvdSBhc2tpbmcgZm9yDQphIGNoYW5nZSwgb3IgYXJlIHlvdSBhY3R1
YWxseSB0aGlua2luZyBhYm91dCBhIGNsYXJpZmljYXRpb24gDQpuZWVkZWQgZm9yIFJGQyA4MDQw
Pw0KDQoNCg0KDQo+IEFuZHkNCg0KS2VudA0KDQoNCg0KDQo=


From nobody Mon Aug 14 19:03:07 2017
Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 030361324A1 for <yang-doctors@ietfa.amsl.com>; Mon, 14 Aug 2017 19:03:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level: 
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HVAHz-XVAnaz for <yang-doctors@ietfa.amsl.com>; Mon, 14 Aug 2017 19:02:58 -0700 (PDT)
Received: from mail-wm0-x234.google.com (mail-wm0-x234.google.com [IPv6:2a00:1450:400c:c09::234]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 81A71132499 for <yang-doctors@ietf.org>; Mon, 14 Aug 2017 19:02:55 -0700 (PDT)
Received: by mail-wm0-x234.google.com with SMTP id i66so98488wmg.0 for <yang-doctors@ietf.org>; Mon, 14 Aug 2017 19:02:55 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=z2nyGdf35l6sIUWsVJYTzwOjo2fgVlEU3hmM9EbAcVw=; b=xZ+nbTDaTvjT0zM38c1TnGDk70q+4wOEdElyilihvmxh56tXej0bVYndu6g4dPA09g sepidMeyXcSiJt8eeHqNEdME5PHKMNzRECG/CPcdCNYuxJGYzZM+VFY9E1P3Qc5XLxWT piqmf7tz4NeZRBZ/4EgHZXZqdwmuGkDeMtvA9Tq6by721GQOO+DM1VMk0onqVSRO5ua+ Tn52txUS3x2MV9b8Dm6ibZgHW3W3UYTnozS10g7vMJ0qq1i1xhK4nK23nVjCJbAG16wi V3ibFsJH2kfkzHSOxQH3dFyfeyIqqmHByUNDmqR9KQ+IvyOAY0PR/h+xIgZPrby0RwI2 lbYQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=z2nyGdf35l6sIUWsVJYTzwOjo2fgVlEU3hmM9EbAcVw=; b=pEveLIckfBNZum33AONPC2LcOQbxutwuzrIsNks+ZqrWKF9ZOyQbjmuLs9ym8dg8nH VOxTyO9/EBPT7BwFVvIyH33wDBRcJjieM/5bon+R8kEeFp58mQ8c4Z2kADkE/aUUVjB9 fklW4EiXaCjJm9Tf6xmagL+WuCUbxATN3j35+wCdtFramn4lmBNXS5GPd/AqCJH+7B58 1SaFjFxGv+JUrTVdt/loFYorE3HEwk2Au6hXJiVbJlewB2aapg2SrtnF+WX/sDnf9MbI /xApV3VgkjKKX+WUGZyNpa2j099LYwEIgUsv98ZmghVQfNLUz/LSJGkgSLPs06afQevH rDdA==
X-Gm-Message-State: AHYfb5g7H+4hoLjfU/73eYIq/2iSEzFzhGpYGQyRMy/tUqifeLfNc5yC HIKs+RMZdu00zka2T7nlc/8k5aa6tskt
X-Received: by 10.28.203.78 with SMTP id b75mr402432wmg.50.1502762573935; Mon, 14 Aug 2017 19:02:53 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.182.160 with HTTP; Mon, 14 Aug 2017 19:02:53 -0700 (PDT)
In-Reply-To: <C8D279C6-B735-453D-92BF-09886CAFF403@juniper.net>
References: <150128020275.20726.13027423171798327745@ietfa.amsl.com> <A9F2ED3F-6AC5-4AEF-8EBF-1C4F89A6F0F7@juniper.net> <CABCOCHTmNdi7ZGPL_R8vyZTOKeVwJgtrqsT0ZNBCbMUT4Qo9tA@mail.gmail.com> <30CD19F8-6441-4EA3-A340-8CEDD6D4FD6A@juniper.net> <CABCOCHQrgYOUGXo1g3LGn9t8rL3-MoJwNmSG2amgAkxMp_Prhw@mail.gmail.com> <C8D279C6-B735-453D-92BF-09886CAFF403@juniper.net>
From: Andy Bierman <andy@yumaworks.com>
Date: Mon, 14 Aug 2017 19:02:53 -0700
Message-ID: <CABCOCHTr_jd8FsfHBbOrCfQfoi-TZyPW2NxRNWjyFRG691_VaQ@mail.gmail.com>
To: Kent Watsen <kwatsen@juniper.net>
Cc: "yang-doctors@ietf.org" <yang-doctors@ietf.org>,  "draft-ietf-netconf-restconf-client-server.all@ietf.org" <draft-ietf-netconf-restconf-client-server.all@ietf.org>,  "netconf@ietf.org" <netconf@ietf.org>
Content-Type: multipart/alternative; boundary="94eb2c1308fe66cf070556c12de7"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/PqvcwkkTqcaqMlhKcKRq3QPiMNU>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-netconf-restconf-client-server-04
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 15 Aug 2017 02:03:01 -0000

--94eb2c1308fe66cf070556c12de7
Content-Type: text/plain; charset="UTF-8"

On Mon, Aug 14, 2017 at 6:39 PM, Kent Watsen <kwatsen@juniper.net> wrote:

> Hi Andy,
>
> >>>> C2:
> >>>>
> >>>> (M1) feature tls-initiate
> >>>> (M1) feature tls-listen
> >>>> (M2) feature tls-listen
> >>>> (M2) feature tls-call-home
> >>>>
> >>>> Are these features really needed since a RESTCONF server MUST support
> >>>> the TLS transport?
> >>>
> >>> <KENT> the features themselves are needed, as we don't know what
> >>> clients/servers may support.
> >>>
> >> OK -- These features are nested within other features (initiate,
> listen).
> >> You should add a comment somewhere that TLS is optional-to-support,
> >> but mandatory to support if the TLS transport is implemented.
> >> Currently RESTCONF requires TLS be supported, but future
> >> versions could be different.
> >
> > I added this to the description statement of the 'tls-listen' and
> > 'tls-initiate' features:
> >
> >      Currently TLS is the only transport supported by RESTCONF,
> >      this feature helps support possible future transports.";
> >
> >
> > If you are trying to say that TLS might not be the mandatory-to-implement
> > transport, this sentence is not quite right.
>
> Fine, now it says "This feature exists as TLS might not be a
> mandatory-to-implement transport in the future."
>
>
> > You know I am not a big fan of YANG conformance.
> > We have nothing in between "always mandatory" and "purely optional,
> > server developer's choice".  We have nothing like conditionally
> > mandatory "If the RESTCONF server supports listening on TLS , then
> > the listen-tls feature MUST be supported."
>
> This seems unnecessary.  Already the 'if-feature' statements will
> force the server to advertise the features - or else they're not
> configurable!
>
>
>

Nothing forces the server to developer to implement a particular object,
because features are purely optional. The description-stmt in the feature
can make this conditional requirement.  But not a big deal
because the IETF is too server-centric to care about the client POV
of YANG conformance.



> > The when-stmt can be used to provide this conditionally-mandatory
> > conformance, but it has to be customized for each data subtree. It
> > is more expensive than if-feature on many levels.
>
> No thank-you.  Let's stick with just the feature statements.
>
>
agreed



>
>
> >>> Also, recent YANG 1.1 discussions concluded (wrongly IMO) that nested
> >>> nodes do not inherit the if-feature-stmts of ancestors.  It is not
> clear
> >>> how one would access /foo/bar if /foo was not supported.
> >>
> >> Wait, seriously? I didn't see that.  I don't understand how else nested
> >> if-feature statements can be interpreted.  Can you point to the thread
> >> where this was discussed?
> >
> > I cannot find it now.
> > Essentially, features are not coupled to objects:
> >
> >  container foo {
> >     if-feature A;
> >     container foo2 {
> >        if-feature AA;
> >     }
> >  }
> >
> >  container bar {
> >     if-feature AA;
> >   }
> >
> > The designer has to decide:
> > Does feature AA depend on A, or just container foo2 depends
> > on container foo?  Does an external subtree (like /bar) depend
> > on both features or can they be used independently?
>
> I don't think the designer has any choice in this.  The features
> themselves have no inherent dependency (in your example, we can't
> see if the feature definitions actually define a dependency), but
> the containers certainly do (e.g., foo2 depends on foo).  External
> sub-trees (e.g., bar) can have just if-feature AA, without also
> having an if-feature A (assuming that dependency doesn't exist).
>
>
> > In this case I think the intent is to support feature listen if
> > any transport is supported, and feature listen-<transport> is
> > a specific transport is supported, so the if-feature inside the
> > 2nd feature is correct.
>
> Yes.
>
>
>
> >> So perhaps you should add if-feature-stmts:
> >>
> >>  feature tls-listen {
> >>     if-feature listen;
> >>     ...
> >>  }
> >>
> >>  feature tls-listen {
> >>    if-feature listen;
> >>    ...
> >>  }
> >
> > I went ahead and made this change, it seems better.
>
> Nothing to add here, but I'm leaving it for now since it adds
> to the above discussion.
>
>
>
>
>
> >>>> C5:
> >>>
> >>> It should be clear that the client would have to issue a GET
> >>> or maybe POST to initiate the sending of stored data like logs
> >>
> >> Okay, how about this?
> >>
> >>   "Periodically connect to the RESTCONF server, so that,
> >>    e.g., the RESTCONF client can collect data (logs)
> >>    from the RESTCONF server.  The RESTCONF client must
> >>    close the connection when it is ready to release it.
> >>    Once the connection is closed, the RESTCONF client
> >>    restarts its timer until the next connection.";
> >
> > Not sure this is needed.
> > RESTCONF does not define any interactions that are not initiated
> > by the client, but if that changes, then no reason to constrain
> > this text. I would change 'must' to 'SHOULD' in the 2nd sentence.
>
> Oh, now I see your concern, how about this?  (I removed the sentence
> altogether):
>
>      "Periodically connect to the RESTCONF client, so that
>       the RESTCONF client may deliver messages pending for
>       the RESTCONF server.  Once the connection has been
>       closed, for whatever reason, the server will restart
>       its timer until the next connection.";
>
>
I would change messages to requests



> ...and by "for whatever reason", I mean, either due to the
> client closing the connection, or due to reasons such as
> an idle or keep-alive timeout.
>
>
> >>>>C6:
> >>>>
> >>>> (M1)  /restconf-client/initiate/restconf-server/periodic/
> >>>> (M2)  /restconf-server/call-home/restconf-client/connection-
> type/periodic/
> >>>>
> >>>> The RESTCONF notifications via SSE should be exempt from timeouts.
> >>>> The RESTCONF client should terminate an SSE request. The server should
> >>>> not timeout an SSE response connection
> >>>
> >>> <KENT> Agreed, and the description statement for the 'idle-timeout'
> leaf
> >>> says "Sessions that have a notification subscription active are never
> >>> dropped.  But here, under 'periodic', the whole point is to shed idle
> >>> connections.  For instance, imagine a client that wants to collect logs
> >>> from a low-powered server once a day.  What do you think?
> >>
> >> Notification replay has a mode where it is terminated (i.e,.,
> >> end-time >provided) I think this would have to be used by the
> >> client.  This tells the server to drop the connection when the
> >> replay is complete.
> >
> > Sure, but keep in mind that logs are just an example, there could
> > be other data-collection mechanisms.  Still, note that when end-time
> > provided is reached, the line would become idle, if it didn't drop.
> > This seems like a more generic mechanism.
>
> I have nothing to add here, but I'm keeping it here since it's
> connected to the below comment.
>
>
> >>> This is 1 exception -- another is close-session.
> >>>
> >>>   POST /restconf/operations/ietf-netconf:close-session
> >>>
> >>> Is this supposed to do anything in RESTCONF?
> >>
> >> First, I don't view the above as an exception.  With regards to
> >> 'close-session', does it even have a meaning in RESTCONF?  - and
> >> is this actually an issue for RFC 8040?
> >
> > RESTCONF does not specify any behavior for specific operation
> > resources.  It is left as an implementation detail.  Our server
> > treats each RESTCONF request as a new management session, so a
> > NETCONF operation like <lock> is granted and then released right
> > afterwards by the server because the session is terminated.  I
> > think any standard behavior for application layer sessions would
> > need to be defined in a new versions of RESTCONF.
>
> Okay, but can you connect this to the draft?  Are you asking for
> a change, or are you actually thinking about a clarification
> needed for RFC 8040?
>
>

not asking for a change.
It is currently up to the implementation.
For example CGI will call the server once for each request but Fast-CGI
will call the thin-client once for each HTTP session and call the server
over and over for each request on that session.



>
>
> > Andy
>
> Kent
>
>
>
>
>
Andy

--94eb2c1308fe66cf070556c12de7
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Mon, Aug 14, 2017 at 6:39 PM, Kent Watsen <span dir=3D"ltr">&lt;<a h=
ref=3D"mailto:kwatsen@juniper.net" target=3D"_blank">kwatsen@juniper.net</a=
>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 =
0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Andy,<br>
<br>
&gt;&gt;&gt;&gt; C2:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; (M1) feature tls-initiate<br>
&gt;&gt;&gt;&gt; (M1) feature tls-listen<br>
&gt;&gt;&gt;&gt; (M2) feature tls-listen<br>
&gt;&gt;&gt;&gt; (M2) feature tls-call-home<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Are these features really needed since a RESTCONF server M=
UST support<br>
&gt;&gt;&gt;&gt; the TLS transport?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; &lt;KENT&gt; the features themselves are needed, as we don&#39=
;t know what<br>
&gt;&gt;&gt; clients/servers may support.<br>
&gt;&gt;&gt;<br>
&gt;&gt; OK -- These features are nested within other features (initiate, l=
isten).<br>
&gt;&gt; You should add a comment somewhere that TLS is optional-to-support=
,<br>
&gt;&gt; but mandatory to support if the TLS transport is implemented.<br>
&gt;&gt; Currently RESTCONF requires TLS be supported, but future<br>
&gt;&gt; versions could be different.<br>
&gt;<br>
&gt; I added this to the description statement of the &#39;tls-listen&#39; =
and<br>
&gt; &#39;tls-initiate&#39; features:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 Currently TLS is the only transport supported by R=
ESTCONF,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 this feature helps support possible future transpo=
rts.&quot;;<br>
&gt;<br>
&gt;<br>
&gt; If you are trying to say that TLS might not be the mandatory-to-implem=
ent<br>
&gt; transport, this sentence is not quite right.<br>
<br>
Fine, now it says &quot;This feature exists as TLS might not be a<br>
mandatory-to-implement transport in the future.&quot;<br>
<br>
<br>
&gt; You know I am not a big fan of YANG conformance.<br>
&gt; We have nothing in between &quot;always mandatory&quot; and &quot;pure=
ly optional,<br>
&gt; server developer&#39;s choice&quot;.=C2=A0 We have nothing like condit=
ionally<br>
&gt; mandatory &quot;If the RESTCONF server supports listening on TLS , the=
n<br>
&gt; the listen-tls feature MUST be supported.&quot;<br>
<br>
This seems unnecessary.=C2=A0 Already the &#39;if-feature&#39; statements w=
ill<br>
force the server to advertise the features - or else they&#39;re not<br>
configurable!<br>
<br>
<br></blockquote><div><br></div><div><br></div><div>Nothing forces the serv=
er to developer to implement a particular object,</div><div>because feature=
s are purely optional. The description-stmt in the feature</div><div>can ma=
ke this conditional requirement.=C2=A0 But not a big deal</div><div>because=
 the IETF is too server-centric to care about the client POV</div><div>of Y=
ANG conformance.</div><div><br></div><div>=C2=A0</div><blockquote class=3D"=
gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-=
left:1ex">
&gt; The when-stmt can be used to provide this conditionally-mandatory<br>
&gt; conformance, but it has to be customized for each data subtree. It<br>
&gt; is more expensive than if-feature on many levels.<br>
<br>
No thank-you.=C2=A0 Let&#39;s stick with just the feature statements.<br>
<br></blockquote><div><br></div><div>agreed</div><div><br></div><div>=C2=A0=
</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-l=
eft:1px #ccc solid;padding-left:1ex">
<br>
<br>
&gt;&gt;&gt; Also, recent YANG 1.1 discussions concluded (wrongly IMO) that=
 nested<br>
&gt;&gt;&gt; nodes do not inherit the if-feature-stmts of ancestors.=C2=A0 =
It is not clear<br>
&gt;&gt;&gt; how one would access /foo/bar if /foo was not supported.<br>
&gt;&gt;<br>
&gt;&gt; Wait, seriously? I didn&#39;t see that.=C2=A0 I don&#39;t understa=
nd how else nested<br>
&gt;&gt; if-feature statements can be interpreted.=C2=A0 Can you point to t=
he thread<br>
&gt;&gt; where this was discussed?<br>
&gt;<br>
&gt; I cannot find it now.<br>
&gt; Essentially, features are not coupled to objects:<br>
&gt;<br>
&gt;=C2=A0 container foo {<br>
&gt;=C2=A0 =C2=A0 =C2=A0if-feature A;<br>
&gt;=C2=A0 =C2=A0 =C2=A0container foo2 {<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 if-feature AA;<br>
&gt;=C2=A0 =C2=A0 =C2=A0}<br>
&gt;=C2=A0 }<br>
&gt;<br>
&gt;=C2=A0 container bar {<br>
&gt;=C2=A0 =C2=A0 =C2=A0if-feature AA;<br>
&gt;=C2=A0 =C2=A0}<br>
&gt;<br>
&gt; The designer has to decide:<br>
&gt; Does feature AA depend on A, or just container foo2 depends<br>
&gt; on container foo?=C2=A0 Does an external subtree (like /bar) depend<br=
>
&gt; on both features or can they be used independently?<br>
<br>
I don&#39;t think the designer has any choice in this.=C2=A0 The features<b=
r>
themselves have no inherent dependency (in your example, we can&#39;t<br>
see if the feature definitions actually define a dependency), but<br>
the containers certainly do (e.g., foo2 depends on foo).=C2=A0 External<br>
sub-trees (e.g., bar) can have just if-feature AA, without also<br>
having an if-feature A (assuming that dependency doesn&#39;t exist).<br>
<br>
<br>
&gt; In this case I think the intent is to support feature listen if<br>
&gt; any transport is supported, and feature listen-&lt;transport&gt; is<br=
>
&gt; a specific transport is supported, so the if-feature inside the<br>
&gt; 2nd feature is correct.<br>
<br>
Yes.<br>
<br>
<br>
<br>
&gt;&gt; So perhaps you should add if-feature-stmts:<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 feature tls-listen {<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0if-feature listen;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0...<br>
&gt;&gt;=C2=A0 }<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 feature tls-listen {<br>
&gt;&gt;=C2=A0 =C2=A0 if-feature listen;<br>
&gt;&gt;=C2=A0 =C2=A0 ...<br>
&gt;&gt;=C2=A0 }<br>
&gt;<br>
&gt; I went ahead and made this change, it seems better.<br>
<br>
Nothing to add here, but I&#39;m leaving it for now since it adds<br>
to the above discussion.<br>
<br>
<br>
<br>
<br>
<br>
&gt;&gt;&gt;&gt; C5:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; It should be clear that the client would have to issue a GET<b=
r>
&gt;&gt;&gt; or maybe POST to initiate the sending of stored data like logs=
<br>
&gt;&gt;<br>
&gt;&gt; Okay, how about this?<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0&quot;Periodically connect to the RESTCONF server, so =
that,<br>
&gt;&gt;=C2=A0 =C2=A0 e.g., the RESTCONF client can collect data (logs)<br>
&gt;&gt;=C2=A0 =C2=A0 from the RESTCONF server.=C2=A0 The RESTCONF client m=
ust<br>
&gt;&gt;=C2=A0 =C2=A0 close the connection when it is ready to release it.<=
br>
&gt;&gt;=C2=A0 =C2=A0 Once the connection is closed, the RESTCONF client<br=
>
&gt;&gt;=C2=A0 =C2=A0 restarts its timer until the next connection.&quot;;<=
br>
&gt;<br>
&gt; Not sure this is needed.<br>
&gt; RESTCONF does not define any interactions that are not initiated<br>
&gt; by the client, but if that changes, then no reason to constrain<br>
&gt; this text. I would change &#39;must&#39; to &#39;SHOULD&#39; in the 2n=
d sentence.<br>
<br>
Oh, now I see your concern, how about this?=C2=A0 (I removed the sentence<b=
r>
altogether):<br>
<br>
=C2=A0 =C2=A0 =C2=A0&quot;Periodically connect to the RESTCONF client, so t=
hat<br>
=C2=A0 =C2=A0 =C2=A0 the RESTCONF client may deliver messages pending for<b=
r>
=C2=A0 =C2=A0 =C2=A0 the RESTCONF server.=C2=A0 Once the connection has bee=
n<br>
=C2=A0 =C2=A0 =C2=A0 closed, for whatever reason, the server will restart<b=
r>
=C2=A0 =C2=A0 =C2=A0 its timer until the next connection.&quot;;<br>
<br></blockquote><div><br></div><div>I would change messages to requests</d=
iv><div><br></div><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=
=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
...and by &quot;for whatever reason&quot;, I mean, either due to the<br>
client closing the connection, or due to reasons such as<br>
an idle or keep-alive timeout.<br>
<br>
<br>
&gt;&gt;&gt;&gt;C6:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; (M1)=C2=A0 /restconf-client/initiate/<wbr>restconf-server/=
periodic/<br>
&gt;&gt;&gt;&gt; (M2)=C2=A0 /restconf-server/call-home/<wbr>restconf-client=
/connection-<wbr>type/periodic/<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; The RESTCONF notifications via SSE should be exempt from t=
imeouts.<br>
&gt;&gt;&gt;&gt; The RESTCONF client should terminate an SSE request. The s=
erver should<br>
&gt;&gt;&gt;&gt; not timeout an SSE response connection<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; &lt;KENT&gt; Agreed, and the description statement for the &#3=
9;idle-timeout&#39; leaf<br>
&gt;&gt;&gt; says &quot;Sessions that have a notification subscription acti=
ve are never<br>
&gt;&gt;&gt; dropped.=C2=A0 But here, under &#39;periodic&#39;, the whole p=
oint is to shed idle<br>
&gt;&gt;&gt; connections.=C2=A0 For instance, imagine a client that wants t=
o collect logs<br>
&gt;&gt;&gt; from a low-powered server once a day.=C2=A0 What do you think?=
<br>
&gt;&gt;<br>
&gt;&gt; Notification replay has a mode where it is terminated (i.e,.,<br>
&gt;&gt; end-time &gt;provided) I think this would have to be used by the<b=
r>
&gt;&gt; client.=C2=A0 This tells the server to drop the connection when th=
e<br>
&gt;&gt; replay is complete.<br>
&gt;<br>
&gt; Sure, but keep in mind that logs are just an example, there could<br>
&gt; be other data-collection mechanisms.=C2=A0 Still, note that when end-t=
ime<br>
&gt; provided is reached, the line would become idle, if it didn&#39;t drop=
.<br>
&gt;=C2=A0This seems like a more generic mechanism.<br>
<br>
I have nothing to add here, but I&#39;m keeping it here since it&#39;s<br>
connected to the below comment.<br>
<br>
<br>
&gt;&gt;&gt; This is 1 exception -- another is close-session.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;=C2=A0 =C2=A0POST /restconf/operations/ietf-<wbr>netconf:close-=
session<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Is this supposed to do anything in RESTCONF?<br>
&gt;&gt;<br>
&gt;&gt; First, I don&#39;t view the above as an exception.=C2=A0 With rega=
rds to<br>
&gt;&gt; &#39;close-session&#39;, does it even have a meaning in RESTCONF?=
=C2=A0 - and<br>
&gt;&gt; is this actually an issue for RFC 8040?<br>
&gt;<br>
&gt; RESTCONF does not specify any behavior for specific operation<br>
&gt; resources.=C2=A0 It is left as an implementation detail.=C2=A0 Our ser=
ver<br>
&gt; treats each RESTCONF request as a new management session, so a<br>
&gt; NETCONF operation like &lt;lock&gt; is granted and then released right=
<br>
&gt; afterwards by the server because the session is terminated.=C2=A0 I<br=
>
&gt; think any standard behavior for application layer sessions would<br>
&gt; need to be defined in a new versions of RESTCONF.<br>
<br>
Okay, but can you connect this to the draft?=C2=A0 Are you asking for<br>
a change, or are you actually thinking about a clarification<br>
needed for RFC 8040?<br>
<br></blockquote><div><br></div><div><br></div><div>not asking for a change=
.</div><div>It is currently up to the implementation.</div><div>For example=
 CGI will call the server once for each request but Fast-CGI</div><div>will=
 call the thin-client once for each HTTP session and call the server</div><=
div>over and over for each request on that session.</div><div><br></div><di=
v><br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bo=
rder-left:1px #ccc solid;padding-left:1ex">
<br>
<br>
<br>
&gt; Andy<br>
<span class=3D"HOEnZb"><font color=3D"#888888"><br>
Kent<br>
<br>
<br>
<br>
<br></font></span></blockquote><div><br></div><div>Andy</div><div>=C2=A0</d=
iv></div><br></div></div>

--94eb2c1308fe66cf070556c12de7--


From Orly.Kariv@ecitele.com  Tue Aug 15 07:43:32 2017
Return-Path: <Orly.Kariv@ecitele.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 52D401321CB for <yang-doctors@ietfa.amsl.com>; Tue, 15 Aug 2017 07:43:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.589
X-Spam-Level: 
X-Spam-Status: No, score=-4.589 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-2.8, SPF_PASS=-0.001, T_DKIM_INVALID=0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=fail (1024-bit key) reason="fail (body has been altered)" header.d=eci365.onmicrosoft.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Z6h9WNNNLoP0 for <yang-doctors@ietfa.amsl.com>; Tue, 15 Aug 2017 07:43:30 -0700 (PDT)
Received: from mail1.bemta3.messagelabs.com (mail1.bemta3.messagelabs.com [195.245.230.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DA98A1321D2 for <yang-doctors@ietfa.amsl.com>; Tue, 15 Aug 2017 07:43:28 -0700 (PDT)
Received: from [85.158.138.179] by server-9.bemta-3.messagelabs.com id BB/29-01995-F8803995; Tue, 15 Aug 2017 14:43:27 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrLJsWRWlGSWpSXmKPExsViougQq9vHMTn SYMJUXYu9B76wOTB6PHr2hjmAMYo1My8pvyKBNeP+z0WMBfOVK95t3cnUwNin0MXIxcEi0MYs MWfJJmYQR0hgCpPEkkUdLBDOA0aJ641nmLoYOTnYBDQlNv56ywpiiwjYSxxc/BUsLizgLrHsw CV2iLiHxMXVLxghbCOJOfdOMYPYLAKqEsuXf2YBsXkFYiS+HXsKVsMoICbx/dQasDnMAuISt5 7MB7MlBAQkluw5zwxhi0q8fPyPFaI+QqLl3idGiLiixIx7c9ghbFmJS/O7GUGOlhBoY5d4Ne8 V1CA9ia0T30I1+Eq8eXkbyOYAspUltryIhah/zyRxZUM3G0SNlkTjmR4o21tiwbJfUAuyJV59 mcAG0XCHVWLl+b9QRTISJ1c1s0IkHrJKfP42CWyzkECyxIk5EC8LC0hJ3L3SyQhhy0i8uLOXF eLlPInVp7+yTWBUn4UUArOQpGaBQ0xQ4uTMJywQcR2JBbs/sUHY2hLLFr5mhrHPHHjMhCy+gJ F9FaNGcWpRWWqRrqGBXlJRZnpGSW5iZg6QZ6yXm1pcnJiempOYVKyXnJ+7iRGYiOoZGBh3MG7 rcj7EKMnBpCTKu+jspEghvqT8lMqMxOKM+KLSnNTiQ4wyHBxKEryW7JMjhQSLUtNTK9Iyc4Ap ESYtwcGjJML7lA0ozVtckJhbnJkOkTrFaMxx6PeJ70wcx0CkEEtefl6qlDivLMgkAZDSjNI8u EGwVH2JUVZKmJeRgYFBiKcgtSg3swRV/hWjOAejkjDvApApPJl5JXD7XgGdwgR0ypX2SSCnlC QipKQaGPu/Kcf67lq0d9Px3crWmmEv+HIe2exk4eHWeRaZGz7tyf8Lbnwv1Xt6D3Y/cl4aOEN lNldvFvcv64jkPUsre76du5/+veWC05H+RDWx8xOMk/QFn6+p+rcvXYNLRNHj+L+vBU9PzD2l /eyWx/Rt3cc2iOcXt7+NaTqYvv6Ok/v30zcn7+Nx91ViKc5INNRiLipOBADbTY6r0AMAAA==
X-Env-Sender: Orly.Kariv@ecitele.com
X-Msg-Ref: server-13.tower-169.messagelabs.com!1502808203!120848984!1
X-Originating-IP: [52.33.64.93]
X-StarScan-Received: 
X-StarScan-Version: 9.4.45; banners=ecitele.com,-,-
X-VirusChecked: Checked
Received: (qmail 7401 invoked from network); 15 Aug 2017 14:43:25 -0000
Received: from ec2-52-33-64-93.us-west-2.compute.amazonaws.com (HELO EUR01-DB5-obe.outbound.protection.outlook.com) (52.33.64.93) by server-13.tower-169.messagelabs.com with AES256-SHA256 encrypted SMTP; 15 Aug 2017 14:43:25 -0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ECI365.onmicrosoft.com; s=selector1-ecitele-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=ktWvLmuqarNf3oMV9Khbc8bRbynPLIfLIQbM+QLRisU=; b=GHFvYaAH6VhS+mCDg43xVmuvJUkgYsl3ouLgr8vAaPeWfrDwREiIg5B6E6qTsyPmD3k9QAHQzSg/s4oymdELlbESih1FyJCOT0D4laTZZjLr0G6ieBwKtLjos/umJO4u45ozrSlxC8qYaYD65eAxKUWdjWtq/G0TRsHgjP+2kUA=
Received: from AM4PR03MB1697.eurprd03.prod.outlook.com (10.165.244.15) by AM4PR03MB1699.eurprd03.prod.outlook.com (10.165.244.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1341.21; Tue, 15 Aug 2017 14:43:22 +0000
Received: from AM4PR03MB1697.eurprd03.prod.outlook.com ([fe80::d55d:6e78:6995:31c3]) by AM4PR03MB1697.eurprd03.prod.outlook.com ([fe80::d55d:6e78:6995:31c3%13]) with mapi id 15.01.1341.020; Tue, 15 Aug 2017 14:43:22 +0000
From: Orly Kariv <Orly.Kariv@ecitele.com>
To: "yang-doctors@ietfa.amsl.com" <yang-doctors@ietfa.amsl.com>
Thread-Topic: How to inform that a device doesn't support RPC statement 
Thread-Index: AdMV1GT4Uu8o4FoWTXKzxd0Hv3H1ngAAGElQ
Date: Tue, 15 Aug 2017 14:43:22 +0000
Message-ID: <AM4PR03MB1697838E25993930A8F58D62838D0@AM4PR03MB1697.eurprd03.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [147.234.241.1]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; AM4PR03MB1699; 6:0wbxqmiHLZHUTLB+X6fVhVnUR27hKwXaozER0YU+YYsLrp6Umm66p8DD2P3oOSndQsncz7v2/gZVdgd+sjXqeEVJrzU1am5YMCUK4GHpGbO4pyw6aJcoKNN7YtNqTMvIa1agv4v+BRJcXsitfq9FZ6AS2jf+z9uBnSgDrU/QVT22wt6JXBWxZxihwdhzAmczU6U91Q/tvjzm85IQbGAClnK3MTaWsGxCYx2btyvytxx32kgmACHBjU+z2KVX7crwD7xsg1RfsvmWP/2NQKBxLzKBDyPElbzeSuUhWk+fkB70lnJ+G1WDh+Zp9RO6XRUFx+W/HHVeKVRV99kOBlBhZQ==; 5:Yf9GACfDiEc6A9Rij1QkAVvB2fx8VOTSH3Jgvx0u6iEpJ8y+DRVhAbVWtUHeGgOubK2TA+XLVsQpJxZTxzfYyL6Oc6NPohSdtJfTbgCqpZrHtoDNWuxfJP7/WzVFKYzi8UJpvqQf0J/nFPpiYNQ6Fg==; 24:vuFNsNPKSqMx+l16FGg0tRwpgeppcrWapRyZadJTkq25AF+JxIM3wCkGCEIpZKEw/ipxxHU0378cLxB20Ty7lpLiAhPrFh0VkMpBLVTr4nI=; 7:zXE70l3SalYi+dZo3b6dlwhBOsOOg4OGzRTDwkiFGknKrE7EapzGm1lRQWLSb9Mfo7h5kjBKFZZMK2xRqz4QgeuAcHW+MjKHFmaKHDoU9RE0WmDO9ImyypZCOJNgXS/eu2IYBpIQpj5PwCQ+wOVkbLiQKQr2O0k7+dtfPWQilA/qwjiGOJtIYroceNkwaPTh3raj6ToKreTNYZTdLHmvMU4/ev34U2DecqtHT7ka+7M=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;
x-ms-office365-filtering-correlation-id: 633342c6-5d1c-4381-27ad-08d4e3ebfa40
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(48565401081)(2017052603031)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:AM4PR03MB1699; 
x-ms-traffictypediagnostic: AM4PR03MB1699:
x-exchange-antispam-report-test: UriScan:(21748063052155)(279101305709854);
x-microsoft-antispam-prvs: <AM4PR03MB1699C5F02B482662AF05BC18838D0@AM4PR03MB1699.eurprd03.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(93006095)(93001095)(100000703101)(100105400095)(3002001)(10201501046)(6055026)(6041248)(20161123560025)(20161123564025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:AM4PR03MB1699; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:AM4PR03MB1699; 
x-forefront-prvs: 04004D94E2
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(189002)(199003)(252514010)(99286003)(7696004)(6246003)(106356001)(6306002)(33656002)(54896002)(110136004)(2906002)(6916009)(9686003)(102836003)(6116002)(5660300001)(790700001)(3846002)(25786009)(236005)(2351001)(97736004)(5250100002)(74316002)(189998001)(7736002)(5640700003)(2501003)(4743002)(14454004)(86362001)(6506006)(229853002)(55016002)(53936002)(3660700001)(3280700002)(6436002)(2900100001)(81166006)(81156014)(66066001)(68736007)(8936002)(8676002)(101416001)(54356999)(50986999)(478600001)(105586002)(9326002)(72206003)(555904003)(404664003); DIR:OUT; SFP:1102; SCL:1; SRVR:AM4PR03MB1699; H:AM4PR03MB1697.eurprd03.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords;  MX:1; A:1; LANG:en; 
received-spf: None (protection.outlook.com: ecitele.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_AM4PR03MB1697838E25993930A8F58D62838D0AM4PR03MB1697eurp_"
MIME-Version: 1.0
X-OriginatorOrg: ecitele.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Aug 2017 14:43:22.0316 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 2c514a61-08de-4519-b4c0-921fef62c42a
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR03MB1699
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/E5tx7HJuuCCzG5HIQWWNL7D6lPQ>
X-Mailman-Approved-At: Tue, 15 Aug 2017 15:44:15 -0700
Subject: Re: [yang-doctors] How to inform that a device doesn't support RPC statement
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 15 Aug 2017 14:46:57 -0000

--_000_AM4PR03MB1697838E25993930A8F58D62838D0AM4PR03MB1697eurp_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hello,
My name is Orly Kariv and I'm system architect in ECI.
If I understand correctly deviation is done on nodes.
RPC and Notifications are not treated as node. Correct ?

Ietf-isis.yang introduces two RPC statements.

rpc clear-adjacency
rcp clear-databse

Our device doesn't support one of the RPC statements.
How to inform netconf client that our device doesn't support this RPC ?
I prefer not to respond to the rpc call with rpc-reply-error.


Please your advice
Regards,
Orly Kariv

Office: +972-39287714
Cell:      +972-549287714
Email: Orly.Kariv@ecitele.com<mailto:Orly.Kariv@ecitele.com>



__________________________________________________________________________=
_

This e-mail message is intended for the recipient only and contains inform=
ation which is=20
CONFIDENTIAL and which may be proprietary to ECI Telecom. If you have rece=
ived this=20
transmission in error, please inform us by e-mail, phone or fax, and then =
delete the original=20
and all copies thereof.
__________________________________________________________________________=
_
--_000_AM4PR03MB1697838E25993930A8F58D62838D0AM4PR03MB1697eurp_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-mic=
rosoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word=
" xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"ht=
tp://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii=
">
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
=09{font-family:"Cambria Math";
=09panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
=09{font-family:Calibri;
=09panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
=09{margin:0cm;
=09margin-bottom:.0001pt;
=09font-size:11.0pt;
=09font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
=09{mso-style-priority:99;
=09color:#0563C1;
=09text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
=09{mso-style-priority:99;
=09color:#954F72;
=09text-decoration:underline;}
span.EmailStyle17
=09{mso-style-type:personal;
=09font-family:"Calibri",sans-serif;
=09color:windowtext;}
span.EmailStyle18
=09{mso-style-type:personal-reply;
=09font-family:"Calibri",sans-serif;
=09color:#1F497D;}
.MsoChpDefault
=09{mso-style-type:export-only;
=09font-size:10.0pt;}
@page WordSection1
=09{size:612.0pt 792.0pt;
=09margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
=09{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"#0563C1" vlink=3D"#954F72">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Hello,<o:p></o:p></sp=
an></p>
<p class=3D"MsoNormal">My name is Orly Kariv and I&#8217;m system architec=
t in ECI.<o:p></o:p></p>
<p class=3D"MsoNormal">If I understand correctly deviation is done on node=
s.<o:p></o:p></p>
<p class=3D"MsoNormal">RPC and Notifications are not treated as node. Corr=
ect ?<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Ietf-isis.yang introduces two RPC statements.<o:p><=
/o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">rpc clear-adjacency<o:p></o:p></p>
<p class=3D"MsoNormal">rcp clear-databse<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Our device doesn&#8217;t support one of the RPC sta=
tements. <o:p></o:p></p>
<p class=3D"MsoNormal">How to inform netconf client that our device doesn&=
#8217;t support this RPC ?<o:p></o:p></p>
<p class=3D"MsoNormal">I prefer not to respond to the rpc call with rpc-re=
ply-error.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Please your advice<o:p></o:p></p>
<p class=3D"MsoNormal">Regards,<o:p></o:p></p>
<p class=3D"MsoNormal">Orly Kariv<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><span style=3D"color:#44546A">Office: &#43;972-3928=
7714<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#44546A">Cell:&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp; &#43;972-549287714 <o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#44546A">Email: <a href=3D"mai=
lto:Orly.Kariv@ecitele.com">
Orly.Kariv@ecitele.com</a><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#44546A"><o:p>&nbsp;</o:p></sp=
an></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<br clear=3D"both">
__________________________________________________________________________=
_<BR>
<BR>
This e-mail message is intended for the recipient only and contains inform=
ation which is <BR>
CONFIDENTIAL and which may be proprietary to ECI Telecom. If you have rece=
ived this <BR>
transmission in error, please inform us by e-mail, phone or fax, and then =
delete the original <BR>
and all copies thereof.<BR>
__________________________________________________________________________=
_<BR>
</body>
</html>

--_000_AM4PR03MB1697838E25993930A8F58D62838D0AM4PR03MB1697eurp_--


From nobody Tue Aug 15 17:05:05 2017
Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C18BF1323BE for <yang-doctors@ietfa.amsl.com>; Tue, 15 Aug 2017 17:05:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level: 
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id CeHLHQTiukof for <yang-doctors@ietfa.amsl.com>; Tue, 15 Aug 2017 17:05:01 -0700 (PDT)
Received: from mail-wm0-x235.google.com (mail-wm0-x235.google.com [IPv6:2a00:1450:400c:c09::235]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6971C1323AC for <yang-doctors@ietfa.amsl.com>; Tue, 15 Aug 2017 17:05:01 -0700 (PDT)
Received: by mail-wm0-x235.google.com with SMTP id t138so26732976wmt.1 for <yang-doctors@ietfa.amsl.com>; Tue, 15 Aug 2017 17:05:01 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=wk5FLc9hh1USkCmyTeuvLd6MYofNvMDxbTo39nIp/1I=; b=jLIYHsj/VzaqovUNVrhaAtf0DsbF1HeWNfuWKKrFYw5QNv8FCoU/hiHv0CrpVseeV4 rLbaAkcE2beGj19NsP0xFgOtBLFh746IC3kVPj75gOSU9l8OyJmj3Gnbciu1WV8pXV8G ZOlK2pFA4mC3I55zt+XUpzJCE1th1PzU1jmrTV/IrxjySSCXqXFlDbwPSdLVDdiJ9+xd efOg3Gdt5xSRoPchVb2lLTWcClqB18t5ADdnCyTjnQI8tvGQw42se3LQYT2coOU9IlWM 1ROhXTqg7taNVlq/u3nW90zY7mC7Ux9a8GiIyl7HWPAb2o1MOKD2SIm6rDtMIaJg7oJ6 zlaA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=wk5FLc9hh1USkCmyTeuvLd6MYofNvMDxbTo39nIp/1I=; b=lN+p+1YVJQpzNpMIKOiV4JGMddrPI8dOTc7lFvNJQZd0+YH8LAsU6ly/YgfkB1mWLz 8fqFrONLqpH+AGy8ajSlXHKIaoVa3H7wDrqZG8EmVBgSN1caH8044gXDcjijpZMTxxPQ b3Ym/nA4RG7OlnbzeAbzUIUaKnMxHOiPcAl865+J8Y0SSIgwqHw8gMDQl3IetBTstsbE ZmkbdLImE8VIPOn0d/Rx1NX9eeLP4uONF1t+FBKULtqbP/Q6oy6pM+eNZ0qq69ue2lfH QmC4HsyxCY3kMPnm5fmM2OrJan4nZhmCJRO1loR32dxZKugp69QcvC6T5PY6ksKkKyec ovyw==
X-Gm-Message-State: AHYfb5hq6nG9rcUVGJ813krKBC0jpzHvUx6QQexeIQgfEjJQ2DbQD8ri 5hpseoURQ6TYJzjnvthMlNYnWAZX56oe
X-Received: by 10.28.203.78 with SMTP id b75mr122285wmg.50.1502841899726; Tue, 15 Aug 2017 17:04:59 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.182.160 with HTTP; Tue, 15 Aug 2017 17:04:59 -0700 (PDT)
In-Reply-To: <AM4PR03MB1697838E25993930A8F58D62838D0@AM4PR03MB1697.eurprd03.prod.outlook.com>
References: <AM4PR03MB1697838E25993930A8F58D62838D0@AM4PR03MB1697.eurprd03.prod.outlook.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Tue, 15 Aug 2017 17:04:59 -0700
Message-ID: <CABCOCHSwgSatbxmBHCFNrEsjjsad9yBzyeeCh-v96y1=ATKt0Q@mail.gmail.com>
To: Orly Kariv <Orly.Kariv@ecitele.com>
Cc: "yang-doctors@ietfa.amsl.com" <yang-doctors@ietfa.amsl.com>
Content-Type: multipart/alternative; boundary="94eb2c1308fe965aab0556d3a592"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/h3Fewkt3tbWSEw5dtGCFfO6PME4>
Subject: Re: [yang-doctors] How to inform that a device doesn't support RPC statement
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 16 Aug 2017 00:05:04 -0000

--94eb2c1308fe965aab0556d3a592
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi,

Look at the YANG deviation-stmt.
Your server can advertise a deviation for the RFC to indicate it is not
supported.
You also need to return rpc-error 'operation-not-supported' if a client
tries it.


Andy


On Tue, Aug 15, 2017 at 7:43 AM, Orly Kariv <Orly.Kariv@ecitele.com> wrote:

> Hello,
>
> My name is Orly Kariv and I=E2=80=99m system architect in ECI.
>
> If I understand correctly deviation is done on nodes.
>
> RPC and Notifications are not treated as node. Correct ?
>
>
>
> Ietf-isis.yang introduces two RPC statements.
>
>
>
> rpc clear-adjacency
>
> rcp clear-databse
>
>
>
> Our device doesn=E2=80=99t support one of the RPC statements.
>
> How to inform netconf client that our device doesn=E2=80=99t support this=
 RPC ?
>
> I prefer not to respond to the rpc call with rpc-reply-error.
>
>
>
>
>
> Please your advice
>
> Regards,
>
> Orly Kariv
>
>
>
> Office: +972-39287714
>
> Cell:      +972-549287714
>
> Email: Orly.Kariv@ecitele.com
>
>
>
>
>
> ____________________________________________________________
> _______________
>
> This e-mail message is intended for the recipient only and contains
> information which is
> CONFIDENTIAL and which may be proprietary to ECI Telecom. If you have
> received this
> transmission in error, please inform us by e-mail, phone or fax, and then
> delete the original
> and all copies thereof.
> ____________________________________________________________
> _______________
>
> _______________________________________________
> yang-doctors mailing list
> yang-doctors@ietf.org
> https://www.ietf.org/mailman/listinfo/yang-doctors
>
>

--94eb2c1308fe965aab0556d3a592
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi,<div><br></div><div>Look at the YANG deviation-stmt.</d=
iv><div>Your server can advertise a deviation for the RFC to indicate it is=
 not supported.</div><div>You also need to return rpc-error &#39;operation-=
not-supported&#39; if a client tries it.</div><div><br></div><div><br></div=
><div>Andy</div><div><br></div></div><div class=3D"gmail_extra"><br><div cl=
ass=3D"gmail_quote">On Tue, Aug 15, 2017 at 7:43 AM, Orly Kariv <span dir=
=3D"ltr">&lt;<a href=3D"mailto:Orly.Kariv@ecitele.com" target=3D"_blank">Or=
ly.Kariv@ecitele.com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_qu=
ote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex=
">





<div lang=3D"EN-US" link=3D"#0563C1" vlink=3D"#954F72">
<div class=3D"m_1583407225006376350WordSection1">
<p class=3D"MsoNormal"><span style=3D"color:#1f497d">Hello,<u></u><u></u></=
span></p>
<p class=3D"MsoNormal">My name is Orly Kariv and I=E2=80=99m system archite=
ct in ECI.<u></u><u></u></p>
<p class=3D"MsoNormal">If I understand correctly deviation is done on nodes=
.<u></u><u></u></p>
<p class=3D"MsoNormal">RPC and Notifications are not treated as node. Corre=
ct ?<u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal">Ietf-isis.yang introduces two RPC statements.<u></u>=
<u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal">rpc clear-adjacency<u></u><u></u></p>
<p class=3D"MsoNormal">rcp clear-databse<u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal">Our device doesn=E2=80=99t support one of the RPC st=
atements. <u></u><u></u></p>
<p class=3D"MsoNormal">How to inform netconf client that our device doesn=
=E2=80=99t support this RPC ?<u></u><u></u></p>
<p class=3D"MsoNormal">I prefer not to respond to the rpc call with rpc-rep=
ly-error.<u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal">Please your advice<u></u><u></u></p>
<p class=3D"MsoNormal">Regards,<u></u><u></u></p>
<p class=3D"MsoNormal">Orly Kariv<u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal"><span style=3D"color:#44546a">Office: +972-39287714<=
u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#44546a">Cell:=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 +972-549287714 <u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#44546a">Email: <a href=3D"mail=
to:Orly.Kariv@ecitele.com" target=3D"_blank">
Orly.Kariv@ecitele.com</a><u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#44546a"><u></u>=C2=A0<u></u></=
span></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<br clear=3D"both">
______________________________<wbr>______________________________<wbr>_____=
__________<br>
<br>
This e-mail message is intended for the recipient only and contains informa=
tion which is <br>
CONFIDENTIAL and which may be proprietary to ECI Telecom. If you have recei=
ved this <br>
transmission in error, please inform us by e-mail, phone or fax, and then d=
elete the original <br>
and all copies thereof.<br>
______________________________<wbr>______________________________<wbr>_____=
__________<br>
</div>

<br>______________________________<wbr>_________________<br>
yang-doctors mailing list<br>
<a href=3D"mailto:yang-doctors@ietf.org">yang-doctors@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/yang-doctors" rel=3D"noref=
errer" target=3D"_blank">https://www.ietf.org/mailman/<wbr>listinfo/yang-do=
ctors</a><br>
<br></blockquote></div><br></div>

--94eb2c1308fe965aab0556d3a592--


From nobody Tue Aug 15 17:48:04 2017
Return-Path: <mjethanandani@gmail.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A096C132414 for <yang-doctors@ietfa.amsl.com>; Tue, 15 Aug 2017 17:48:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level: 
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id aUqGFcGOi2qj for <yang-doctors@ietfa.amsl.com>; Tue, 15 Aug 2017 17:47:54 -0700 (PDT)
Received: from mail-pg0-x244.google.com (mail-pg0-x244.google.com [IPv6:2607:f8b0:400e:c05::244]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BC28713226B for <yang-doctors@ietfa.amsl.com>; Tue, 15 Aug 2017 17:47:52 -0700 (PDT)
Received: by mail-pg0-x244.google.com with SMTP id y129so3791313pgy.3 for <yang-doctors@ietfa.amsl.com>; Tue, 15 Aug 2017 17:47:52 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;  h=mime-version:subject:from:in-reply-to:date:cc:message-id:references :to; bh=AK68iqrMKELIzDxpPpMP9YBfDV+VjPJbG022JB+73h4=; b=b7FKJFkT8TCdbWFqEhodJfKdldt+7fNbDmC9u4ADT7J54MC7B04Qw+qfo20zw8Qo8z TRjvqMcEYmXPf7FFPpoc92piTevWbvq/t1eeSHlGvvCQmDILt4AnGEZOlRDoPzoW8efg kBx7Y5+/9ZdrscNdrHLSqJnpqTFlOTohmIOlcCsFuqGLr2ieoyxPiCh4HEfaA8a3Sv0g NJl9zlBEPfvYj0tNfRpNDcEVs1+VMvuQfh0IZMOD1DkdvXYbfzvIHs2KRqR11Fs3aBhV LXDFoYMTx2fwrUUWES64DLdzRPp5/H7pNDEgQBOsdMFzU4paAug1ugbtlM1cjPV1+PmD 2ZiQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=AK68iqrMKELIzDxpPpMP9YBfDV+VjPJbG022JB+73h4=; b=exV20gC1sMRc4TxGbsV1ghtH4rmTGFMmCtO4uHUt2p7Xkk1CDo1K9pZPHt3MU5xwu1 qIbjl9yV7sH6J+yjcGF+YFFCcbj0gKr+6smvEXKpzBhydLVjJIYgw81/CeswATlM2A8S awBRnp2COSWg9/ymcaLwaXU5LEXxV32ptRoSVjezVBjbyhFURJlYOGv3jOQ9T+FI7lDW R4xjgQ4bE9hLjNEE1XFObXBCwPqZ4fmHrjJIk+Sb8y/maRstyKgnnx3HwFEzm20rhKNX BS/VBynCPwTa/vkGrcHxr8C/BUDNGNVlSpt1JlcnHQ9ycUIHUzoDLLkVIEtFJWhoFaGy w03Q==
X-Gm-Message-State: AHYfb5h+as91FuDSoDP1pXZVgE0BmGIeS0ljYAqXZKilCyBf3N1CwVz5 zam1tneD6L2K8w==
X-Received: by 10.84.210.40 with SMTP id z37mr32883281plh.265.1502844472160; Tue, 15 Aug 2017 17:47:52 -0700 (PDT)
Received: from ?IPv6:2001:420:30d:1320:6933:43bd:6dda:3dd8? ([2001:420:30d:1320:6933:43bd:6dda:3dd8]) by smtp.gmail.com with ESMTPSA id n11sm21715292pfg.15.2017.08.15.17.47.50 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 15 Aug 2017 17:47:51 -0700 (PDT)
Content-Type: multipart/alternative; boundary="Apple-Mail=_1BE6E032-4D7F-4612-B852-1A82D46F7801"
Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\))
From: Mahesh Jethanandani <mjethanandani@gmail.com>
In-Reply-To: <CABCOCHSwgSatbxmBHCFNrEsjjsad9yBzyeeCh-v96y1=ATKt0Q@mail.gmail.com>
Date: Tue, 15 Aug 2017 17:47:58 -0700
Cc: Orly Kariv <Orly.Kariv@ecitele.com>, "yang-doctors@ietfa.amsl.com" <yang-doctors@ietfa.amsl.com>
Message-Id: <192DBA73-3FE4-4E99-BA9E-40664B91B563@gmail.com>
References: <AM4PR03MB1697838E25993930A8F58D62838D0@AM4PR03MB1697.eurprd03.prod.outlook.com> <CABCOCHSwgSatbxmBHCFNrEsjjsad9yBzyeeCh-v96y1=ATKt0Q@mail.gmail.com>
To: Andy Bierman <andy@yumaworks.com>
X-Mailer: Apple Mail (2.3124)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/ZyGNeaxnUfn_kMyEYZ9fsdbCMos>
Subject: Re: [yang-doctors] How to inform that a device doesn't support RPC statement
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 16 Aug 2017 00:48:03 -0000

--Apple-Mail=_1BE6E032-4D7F-4612-B852-1A82D46F7801
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Thanks Andy. I have gone ahead and added this to the YANG doctors FAQ =
here:

=
https://trac.ietf.org/trac/ops/wiki/YANGDoctorsFAQ#HowdoesaNETCONFserverin=
formaclientthattheserverdoesnotsupportRPCstatement =
<https://trac.ietf.org/trac/ops/wiki/YANGDoctorsFAQ#HowdoesaNETCONFserveri=
nformaclientthattheserverdoesnotsupportRPCstatement>

> On Aug 15, 2017, at 5:04 PM, Andy Bierman <andy@yumaworks.com> wrote:
>=20
> Hi,
>=20
> Look at the YANG deviation-stmt.
> Your server can advertise a deviation for the RFC to indicate it is =
not supported.
> You also need to return rpc-error 'operation-not-supported' if a =
client tries it.
>=20
>=20
> Andy
>=20
>=20
> On Tue, Aug 15, 2017 at 7:43 AM, Orly Kariv <Orly.Kariv@ecitele.com =
<mailto:Orly.Kariv@ecitele.com>> wrote:
> Hello,
>=20
> My name is Orly Kariv and I=E2=80=99m system architect in ECI.
>=20
> If I understand correctly deviation is done on nodes.
>=20
> RPC and Notifications are not treated as node. Correct ?
>=20
> =20
>=20
> Ietf-isis.yang introduces two RPC statements.
>=20
> =20
>=20
> rpc clear-adjacency
>=20
> rcp clear-databse
>=20
> =20
>=20
> Our device doesn=E2=80=99t support one of the RPC statements.
>=20
> How to inform netconf client that our device doesn=E2=80=99t support =
this RPC ?
>=20
> I prefer not to respond to the rpc call with rpc-reply-error.
>=20
> =20
>=20
> =20
>=20
> Please your advice
>=20
> Regards,
>=20
> Orly Kariv
>=20
> =20
>=20
> Office: +972-39287714
>=20
> Cell:      +972-549287714
>=20
> Email: Orly.Kariv@ecitele.com <mailto:Orly.Kariv@ecitele.com>
> =20
>=20
> =20
>=20
>=20
> =
__________________________________________________________________________=
_
>=20
> This e-mail message is intended for the recipient only and contains =
information which is=20
> CONFIDENTIAL and which may be proprietary to ECI Telecom. If you have =
received this=20
> transmission in error, please inform us by e-mail, phone or fax, and =
then delete the original=20
> and all copies thereof.
> =
__________________________________________________________________________=
_
>=20
> _______________________________________________
> yang-doctors mailing list
> yang-doctors@ietf.org <mailto:yang-doctors@ietf.org>
> https://www.ietf.org/mailman/listinfo/yang-doctors =
<https://www.ietf.org/mailman/listinfo/yang-doctors>
>=20
>=20
> _______________________________________________
> yang-doctors mailing list
> yang-doctors@ietf.org
> https://www.ietf.org/mailman/listinfo/yang-doctors

Mahesh Jethanandani
mjethanandani@gmail.com




--Apple-Mail=_1BE6E032-4D7F-4612-B852-1A82D46F7801
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D"">Thanks Andy. I have gone ahead and added this to the YANG =
doctors FAQ here:<div class=3D""><br class=3D""></div><div class=3D""><a =
href=3D"https://trac.ietf.org/trac/ops/wiki/YANGDoctorsFAQ#HowdoesaNETCONF=
serverinformaclientthattheserverdoesnotsupportRPCstatement" =
class=3D"">https://trac.ietf.org/trac/ops/wiki/YANGDoctorsFAQ#HowdoesaNETC=
ONFserverinformaclientthattheserverdoesnotsupportRPCstatement</a></div><di=
v class=3D""><br class=3D""></div><div class=3D""><div><blockquote =
type=3D"cite" class=3D""><div class=3D"">On Aug 15, 2017, at 5:04 PM, =
Andy Bierman &lt;<a href=3D"mailto:andy@yumaworks.com" =
class=3D"">andy@yumaworks.com</a>&gt; wrote:</div><br =
class=3D"Apple-interchange-newline"><div class=3D""><div dir=3D"ltr" =
class=3D"">Hi,<div class=3D""><br class=3D""></div><div class=3D"">Look =
at the YANG deviation-stmt.</div><div class=3D"">Your server can =
advertise a deviation for the RFC to indicate it is not =
supported.</div><div class=3D"">You also need to return rpc-error =
'operation-not-supported' if a client tries it.</div><div class=3D""><br =
class=3D""></div><div class=3D""><br class=3D""></div><div =
class=3D"">Andy</div><div class=3D""><br class=3D""></div></div><div =
class=3D"gmail_extra"><br class=3D""><div class=3D"gmail_quote">On Tue, =
Aug 15, 2017 at 7:43 AM, Orly Kariv <span dir=3D"ltr" class=3D"">&lt;<a =
href=3D"mailto:Orly.Kariv@ecitele.com" target=3D"_blank" =
class=3D"">Orly.Kariv@ecitele.com</a>&gt;</span> wrote:<br =
class=3D""><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 =
.8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang=3D"EN-US" link=3D"#0563C1" vlink=3D"#954F72" class=3D"">
<div class=3D"m_1583407225006376350WordSection1"><p =
class=3D"MsoNormal"><span style=3D"color:#1f497d" class=3D"">Hello,<u =
class=3D""></u><u class=3D""></u></span></p><p class=3D"MsoNormal">My =
name is Orly Kariv and I=E2=80=99m system architect in ECI.<u =
class=3D""></u><u class=3D""></u></p><p class=3D"MsoNormal">If I =
understand correctly deviation is done on nodes.<u class=3D""></u><u =
class=3D""></u></p><p class=3D"MsoNormal">RPC and Notifications are not =
treated as node. Correct ?<u class=3D""></u><u class=3D""></u></p><p =
class=3D"MsoNormal"><u class=3D""></u>&nbsp;<u class=3D""></u></p><p =
class=3D"MsoNormal">Ietf-isis.yang introduces two RPC statements.<u =
class=3D""></u><u class=3D""></u></p><p class=3D"MsoNormal"><u =
class=3D""></u>&nbsp;<u class=3D""></u></p><p class=3D"MsoNormal">rpc =
clear-adjacency<u class=3D""></u><u class=3D""></u></p><p =
class=3D"MsoNormal">rcp clear-databse<u class=3D""></u><u =
class=3D""></u></p><p class=3D"MsoNormal"><u class=3D""></u>&nbsp;<u =
class=3D""></u></p><p class=3D"MsoNormal">Our device doesn=E2=80=99t =
support one of the RPC statements. <u class=3D""></u><u =
class=3D""></u></p><p class=3D"MsoNormal">How to inform netconf client =
that our device doesn=E2=80=99t support this RPC ?<u class=3D""></u><u =
class=3D""></u></p><p class=3D"MsoNormal">I prefer not to respond to the =
rpc call with rpc-reply-error.<u class=3D""></u><u class=3D""></u></p><p =
class=3D"MsoNormal"><u class=3D""></u>&nbsp;<u class=3D""></u></p><p =
class=3D"MsoNormal"><u class=3D""></u>&nbsp;<u class=3D""></u></p><p =
class=3D"MsoNormal">Please your advice<u class=3D""></u><u =
class=3D""></u></p><p class=3D"MsoNormal">Regards,<u class=3D""></u><u =
class=3D""></u></p><p class=3D"MsoNormal">Orly Kariv<u class=3D""></u><u =
class=3D""></u></p><p class=3D"MsoNormal"><u class=3D""></u>&nbsp;<u =
class=3D""></u></p><p class=3D"MsoNormal"><span style=3D"color:#44546a" =
class=3D"">Office: +972-39287714<u class=3D""></u><u =
class=3D""></u></span></p><p class=3D"MsoNormal"><span =
style=3D"color:#44546a" class=3D"">Cell:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
+972-549287714 <u class=3D""></u><u class=3D""></u></span></p><p =
class=3D"MsoNormal"><span style=3D"color:#44546a" class=3D"">Email: <a =
href=3D"mailto:Orly.Kariv@ecitele.com" target=3D"_blank" class=3D"">
Orly.Kariv@ecitele.com</a><u class=3D""></u><u =
class=3D""></u></span></p><p class=3D"MsoNormal"><span =
style=3D"color:#44546a" class=3D""><u class=3D""></u>&nbsp;<u =
class=3D""></u></span></p><p class=3D"MsoNormal"><u =
class=3D""></u>&nbsp;<u class=3D""></u></p>
</div>
<br clear=3D"both" class=3D"">
______________________________<wbr =
class=3D"">______________________________<wbr =
class=3D"">_______________<br class=3D"">
<br class=3D"">
This e-mail message is intended for the recipient only and contains =
information which is <br class=3D"">
CONFIDENTIAL and which may be proprietary to ECI Telecom. If you have =
received this <br class=3D"">
transmission in error, please inform us by e-mail, phone or fax, and =
then delete the original <br class=3D"">
and all copies thereof.<br class=3D"">
______________________________<wbr =
class=3D"">______________________________<wbr =
class=3D"">_______________<br class=3D"">
</div>

<br class=3D"">______________________________<wbr =
class=3D"">_________________<br class=3D"">
yang-doctors mailing list<br class=3D"">
<a href=3D"mailto:yang-doctors@ietf.org" =
class=3D"">yang-doctors@ietf.org</a><br class=3D"">
<a href=3D"https://www.ietf.org/mailman/listinfo/yang-doctors" =
rel=3D"noreferrer" target=3D"_blank" =
class=3D"">https://www.ietf.org/mailman/<wbr =
class=3D"">listinfo/yang-doctors</a><br class=3D"">
<br class=3D""></blockquote></div><br class=3D""></div>
_______________________________________________<br class=3D"">yang-doctors=
 mailing list<br class=3D""><a href=3D"mailto:yang-doctors@ietf.org" =
class=3D"">yang-doctors@ietf.org</a><br =
class=3D"">https://www.ietf.org/mailman/listinfo/yang-doctors<br =
class=3D""></div></blockquote></div><br class=3D""><div class=3D"">
<div class=3D"">Mahesh Jethanandani</div><div class=3D""><a =
href=3D"mailto:mjethanandani@gmail.com" =
class=3D"">mjethanandani@gmail.com</a></div><div class=3D""><br =
class=3D""></div><br class=3D"Apple-interchange-newline">

</div>
<br class=3D""></div></body></html>=

--Apple-Mail=_1BE6E032-4D7F-4612-B852-1A82D46F7801--


From nobody Wed Aug 16 00:07:34 2017
Return-Path: <Orly.Kariv@ecitele.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C76F7124B0A for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 00:07:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.59
X-Spam-Level: 
X-Spam-Status: No, score=-4.59 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-2.8, SPF_PASS=-0.001, T_DKIM_INVALID=0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=fail (1024-bit key) reason="fail (body has been altered)" header.d=eci365.onmicrosoft.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id rVLO5tUtlutX for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 00:07:30 -0700 (PDT)
Received: from mail1.bemta3.messagelabs.com (mail1.bemta3.messagelabs.com [195.245.230.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B9C50120713 for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 00:07:29 -0700 (PDT)
Received: from [195.245.230.51] by server-13.bemta-3.messagelabs.com id 80/FE-01862-F2FE3995; Wed, 16 Aug 2017 07:07:27 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA2VTfUyMcRy/3z3P3fM4PfbrKn2lxl1DFx0tw2z G+EPzMmwmWcYTj+7m7so9l+UvaclEVBLOFTWMqzE5MdYQkvNWmJe0XrghipFYXso9z++8zX+f 3+ft+3x/+z0spa1gIlghyyHYbbxFr9bQk3WzVsZNfL8neVL3FdW0jmtOZlrd5U/qWcrE5y+7q cTc3c30YuUKldmWmp61WmV63Tc842qrJqt/9zsqG+33avKRhqVxHgXfbjYg6aDFJUroLfEy5N CBoKq7jspHQ1g1NsDprz0qCYfiMdBUVuTnWZbCM+FJ1QSJDsHL4MCD52piSYLWtgGG4NlwdDB X5ml/tPtSr1LCHE6B2v5+isyqRHC4wiObhuAl8OSLT8YID4cv3mo5QOFwaPEdkjHgUOhsvqUm OAy6XgyoiH855LZ9RITXwf42F0NwFNw/tEPeEnAeA4+cFYEiI5wt6gkEFoLnUo1SWgxwNHher yT+fiXUX7xBE08slLhKA9kUeOz+HviI9XDseBFDAq9UUJdfESiNhKbcu4HJ5Wpo6qqXm7R4DT S6eulCFOv8azuCTeAbPE455WsKhpsHfDThbdB4MAc55Zs3wKkLEwmtg5IdnQzBMbDVVcb8y0v 2+eBxjyR0PDTkSI0aPz6HoLHns/r/nkQ4UeUN8EZ49eErRQK1CNxXnfTfgcMIu9E4UbBvFOxx U4ypdnOayWHlzZa4+EkJRqsginyaYOFTReOadGsN8j/dzQoFOo8e5s2pRyNYpT6Mq7xTnKwdl pq+dpOJF02r7JkWQaxHkSyrB27suz3J2mC7kCZkrTNb/O//lwxskD6Um9vjlzkxg7eK5jQieZ EuIpwzSDksCaZM2+/Yrz/nPoqKCOGQQqHQBmUIdqvZ8a/+BoWzSB/CRUstQWab43f7G/9gpX/ ww23F0mAH/0eKyEaRq9bFij+ogpih7WJt1fV2bu/tk9GZ7ux75WE+3VN9cdn00reF59SGqKnz rs/ewBqy63Z2NYxaOqMwIWq0uU+74Uzn+/JdgwMXxJwUb8HnvgVJHm1p+6LB2pjgI4+tva1t4 5MTjq6frKi82Ly9ALc0uO7u63jWNHXYlpa1xprqFW/H6GnRxMfHUnaR/wkKgoJ6NAQAAA==
X-Env-Sender: Orly.Kariv@ecitele.com
X-Msg-Ref: server-8.tower-33.messagelabs.com!1502867242!100707541!1
X-Originating-IP: [52.33.64.93]
X-StarScan-Received: 
X-StarScan-Version: 9.4.45; banners=ecitele.com,-,-
X-VirusChecked: Checked
Received: (qmail 14018 invoked from network); 16 Aug 2017 07:07:25 -0000
Received: from ec2-52-33-64-93.us-west-2.compute.amazonaws.com (HELO EUR02-HE1-obe.outbound.protection.outlook.com) (52.33.64.93) by server-8.tower-33.messagelabs.com with AES256-SHA256 encrypted SMTP; 16 Aug 2017 07:07:25 -0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ECI365.onmicrosoft.com; s=selector1-ecitele-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=0vINGqWQIrGbTqhZftYhaGYfWh9i9y/+SOtwL3k/PLA=; b=MYQXRX0fpy1jS5kFXGXfXo9CCFv9JSsFHO2nGCmUo37dDnxts2j5MXvGg0XSsfSBY7D1stSQWsbQkKskMLB78Z7wezPkDKP4hJM2dKrWt+TDanCChK4nMt7TlyEdJDlEM3hrOmbtn086+RaUtniYPKz/oVj+5z0RBCMaxTbJtj0=
Received: from AM4PR03MB1697.eurprd03.prod.outlook.com (10.165.244.15) by AM4PR03MB1700.eurprd03.prod.outlook.com (10.165.244.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1341.21; Wed, 16 Aug 2017 07:07:20 +0000
Received: from AM4PR03MB1697.eurprd03.prod.outlook.com ([fe80::d55d:6e78:6995:31c3]) by AM4PR03MB1697.eurprd03.prod.outlook.com ([fe80::d55d:6e78:6995:31c3%13]) with mapi id 15.01.1341.023; Wed, 16 Aug 2017 07:07:20 +0000
From: Orly Kariv <Orly.Kariv@ecitele.com>
To: Andy Bierman <andy@yumaworks.com>
CC: "yang-doctors@ietfa.amsl.com" <yang-doctors@ietfa.amsl.com>
Thread-Topic: [yang-doctors] How to inform that a device doesn't support RPC statement
Thread-Index: AdMV1GT4Uu8o4FoWTXKzxd0Hv3H1ngAAGElQABOhpIAADhcjMA==
Date: Wed, 16 Aug 2017 07:07:20 +0000
Message-ID: <AM4PR03MB1697E87C582AAC85398F158183820@AM4PR03MB1697.eurprd03.prod.outlook.com>
References: <AM4PR03MB1697838E25993930A8F58D62838D0@AM4PR03MB1697.eurprd03.prod.outlook.com> <CABCOCHSwgSatbxmBHCFNrEsjjsad9yBzyeeCh-v96y1=ATKt0Q@mail.gmail.com>
In-Reply-To: <CABCOCHSwgSatbxmBHCFNrEsjjsad9yBzyeeCh-v96y1=ATKt0Q@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator: 
x-originating-ip: [147.234.241.1]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; AM4PR03MB1700; 6:yhe0+0Iz74EvueU3tsty44FXKpFZox8aVMl7FsyGtXl6WjHlxAhZGP8ik+8e2gndZPLzn5wyyfPTxem5zfTztnR5a5+tJYkmAQVSo4rLMhNp/GfLid4ODTEz35Vdn897vTWgm+MWn74FZUe2ewWdpsF02dzy6GyK25QYPcIPkmGyFruh1RVclcpZCZhxRqxtUf09yGfb1/DJ3bfCinvRzIJcX1r6l88VYaOWLorU6F/bRi+74wx4A6Fa7S8lOvxkASapxIsvqkruOZXb4RyM42Bh9JJ9R0IOwM5nEWbGx6XF47a1jdT1N8bLDKuvihXFHxKOb2iwGkp5tu8/Z+OatQ==; 5:Y59B8zuM8/zfKZXCJlQ/e+Q5PAK0hJEovctT09sSXMmP6DjyJa6oV7RxVzvT3y8qMPzhSubQPFHlXcdQXLAW2Es9A8esScrCN56fBqA9bflEaCElZhWjWWAhiLP4rA4p4MMmsTJPgbd+N9dPhgQUyg==; 24:b2rpvyc+WhlJJm7y2Q2krNC8YEE8tbLM5TZDLB7Vo9jntfLqu+tuaqGi27lA+dq037X0eud3/pqrcPxcWxoFeZNTWWc5KwfFmI1UwT2fv+4=; 7:JSJW2mtv3uljjeKWPXrJjNAHvcsbeaGIuREOFkWW3MNEvPyW1OEjxBYWyVlJ6HthDAdtmZfW8uxX9RqTJUcwQ7qV7zSva5nL6MWpdIWbcidZTJeSS/SaCXzmfkUlaB6tLusrU8maVwaPJJ82pVZRYAX1wD3V8dAb84I+Zc8PTbxGO5pPJGUh7H4hxtksPcUqzHjpgAy/P/cORHgzth3tbk2rpQOR1kHRPYclNMXBGBE=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;
x-ms-office365-filtering-correlation-id: 4ada25e1-8a66-40cb-c2eb-08d4e4756fba
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(48565401081)(2017052603031)(49563074)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:AM4PR03MB1700; 
x-ms-traffictypediagnostic: AM4PR03MB1700:
x-exchange-antispam-report-test: UriScan:(158342451672863)(21748063052155)(279101305709854); 
x-microsoft-antispam-prvs: <AM4PR03MB1700FD65920F1D009EA807EA83820@AM4PR03MB1700.eurprd03.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(102415395)(6040450)(601004)(2401047)(8121501046)(5005006)(100000703101)(100105400095)(93006095)(93001095)(10201501046)(3002001)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123560025)(20161123562025)(20161123555025)(20161123564025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:AM4PR03MB1700; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:AM4PR03MB1700; 
x-forefront-prvs: 0401647B7F
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(252514010)(24454002)(51914003)(189002)(377454003)(199003)(101416001)(66066001)(2900100001)(555904003)(50986999)(76176999)(966005)(99936001)(54356999)(72206003)(19609705001)(3660700001)(6436002)(14454004)(478600001)(106356001)(33656002)(81166006)(81156014)(7696004)(8936002)(68736007)(105586002)(53546010)(8676002)(606006)(53936002)(5660300001)(86362001)(9686003)(9326002)(6306002)(54896002)(102836003)(3846002)(74316002)(99286003)(55016002)(790700001)(6116002)(3280700002)(236005)(6916009)(2950100002)(2906002)(5250100002)(6506006)(25786009)(97736004)(7736002)(229853002)(110136004)(189998001)(4326008)(6246003); DIR:OUT; SFP:1102; SCL:1; SRVR:AM4PR03MB1700; H:AM4PR03MB1697.eurprd03.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords;  MX:1; A:1; LANG:en; 
received-spf: None (protection.outlook.com: ecitele.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/mixed; boundary="_005_AM4PR03MB1697E87C582AAC85398F158183820AM4PR03MB1697eurp_"
MIME-Version: 1.0
X-OriginatorOrg: ecitele.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Aug 2017 07:07:20.1493 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 2c514a61-08de-4519-b4c0-921fef62c42a
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR03MB1700
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/BlPq36nU-tH1LR-hGEncGek1-DE>
Subject: Re: [yang-doctors] How to inform that a device doesn't support RPC statement
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 16 Aug 2017 07:07:34 -0000

--_005_AM4PR03MB1697E87C582AAC85398F158183820AM4PR03MB1697eurp_
Content-Type: multipart/alternative;
	boundary="_000_AM4PR03MB1697E87C582AAC85398F158183820AM4PR03MB1697eurp_"

--_000_AM4PR03MB1697E87C582AAC85398F158183820AM4PR03MB1697eurp_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGkgQW5keSwKVGhhbmtzIGZvciB0aGUgcXVpY2sgcmVzcG9uc2UuCkFjdHVhbGx5IEkgdHJpZWQg
dG8gZm9sbG93IFJGQzYwMjAgYW5kIFJGQzc5NTAgd2l0aCBubyBzdWNjZXNzLgpJIHRyaWVkIHVz
aW5nIHRoZSBkZXZpYXRpb24gc3RhdGVtZW50IGZvciBSUEMgYW5kIE5vdGlmaWNhdGlvbnMgYW5k
IGZhaWxlZCBvbiBjb21waWxhdGlvbiB2aWEgY29uZmRjIGFuZCBweWFuZy4KClRoZSByZWxldmFu
dCBSRkMgSSB3YW50IHRvIGRldmlhdGUgaXM6IGlldGYtaXNpc0AyMDE3MDUyNy55YW5nPG1haWx0
bzppZXRmLWlzaXNAMjAxNzA1MjcueWFuZz46CgpFbmNsb3NlZCBkZXZpYXRpb24gc3RhdGVtZW50
cyBmb3IgUlBDIGFuZCBOb3RpZmljYXRpb24gKG1hcmtlZCk6Ci8qIEV2ZW50IGNvdW50ZXJzIG5v
dCBzdXBwb3J0ZWQgKi8KICAgICAgICAgICAgICAgIGRldmlhdGlvbiAiL3J0OnJvdXRpbmcvIgog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyJydDpjb250cm9sLXBsYW5lLXByb3RvY29s
cy9ydDpjb250cm9sLXBsYW5lLXByb3RvY29sIgogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICsiL2lzaXM6aXNpcy9pc2lzOmludGVyZmFjZXMvaXNpczppbnRlcmZhY2UvaXNpczpldmVu
dC1jb3VudGVycy9pc2lzOmluaXQtZmFpbHMiIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBkZXZpYXRlIG5vdC1zdXBwb3J0ZWQ7CiAgICAgICAgICAgICAgICB9CgoKICAvKiBSUEMg
IERldmlhdGlvbiAqLwogICAgICAgICAgICAgICAgZGV2aWF0aW9uICIvaXNpczpycGMvaXNpczpj
bGVhci1hZGphY2VuY3kiIHsKICAgICAgICAgICAgICAgIGRldmlhdGUgbm90LXN1cHBvcnRlZDsK
ICB9CgoKCgogIC8qIG5vdGlmaWNhdGlvbiBkZXZpYXRpb24gKi8KCiAgICAgICAgICAgICAgICBk
ZXZpYXRpb24gIi9pc2lzOm5vdGlmaWNhdGlvbi9pc2lzOmNvcnJ1cHRlZC1sc3AtZGV0ZWN0ZWQi
IHsKICAgICAgICAgICAgICAgIGRldmlhdGUgbm90LXN1cHBvcnRlZDsKICAgICAgICAgICAgICAg
IH0KCiAgICAgICAgICAgICAgICBkZXZpYXRpb24gIi9pc2lzOm5vdGlmaWNhdGlvbi9pc2lzOmRh
dGFiYXNlLW92ZXJsb2FkIiB7CiAgICAgICAgICAgICAgICBkZXZpYXRlIG5vdC1zdXBwb3J0ZWQ7
CiAgICAgICAgICAgICAgICB9CgoKClJ1bm5pbmcgcHlhbmcKcHlhbmcgLS1zdHJpY3QgZWNpLWlz
aXMtZGV2XEAyMDE3LTA3LTE5LnlhbmcgLWYgdHJlZSAtbyByZXN1bHQudHh0CmVjaS1pc2lzLWRl
dkAyMDE3LTA3LTE5Lnlhbmc6MTU2OiBlcnJvcjogbm9kZSBpZXRmLWlzaXM6OnJwYyBpcyBub3Qg
Zm91bmQKZWNpLWlzaXMtZGV2QDIwMTctMDctMTkueWFuZzoxNjU6IGVycm9yOiBub2RlIGlldGYt
aXNpczo6bm90aWZpY2F0aW9uIGlzIG5vdCBmb3VuZAplY2ktaXNpcy1kZXZAMjAxNy0wNy0xOS55
YW5nOjE2OTogZXJyb3I6IG5vZGUgaWV0Zi1pc2lzOjpub3RpZmljYXRpb24gaXMgbm90IGZvdW5k
CgpSdW5uaW5nIGNvbmZkYwoKL3UvbG5pL0NvbmZkXzYuNF94ODZfNjQvYmluL2NvbmZkYyAtLWZh
aWwtb24td2FybmluZ3MgLWMgLW8gZWNpLWlzaXMtZGV2QDIwMTctMDctMTkuZnhzIGVjaS1pc2lz
LWRldkAyMDE3LTA3LTE5LnlhbmcKZWNpLWlzaXMtZGV2QDIwMTctMDctMTkueWFuZzoxNTY6IGVy
cm9yOiBub2RlICdycGMnIG5vdCBmb3VuZAplY2ktaXNpcy1kZXZAMjAxNy0wNy0xOS55YW5nOjE2
NTogZXJyb3I6IG5vZGUgJ25vdGlmaWNhdGlvbicgbm90IGZvdW5kCmVjaS1pc2lzLWRldkAyMDE3
LTA3LTE5Lnlhbmc6MTY5OiBlcnJvcjogbm9kZSAnbm90aWZpY2F0aW9uJyBub3QgZm91bmQKCgpS
ZWdhcmRzCk9ybHkgS2FyaXYKCkZyb206IEFuZHkgQmllcm1hbiBbbWFpbHRvOmFuZHlAeXVtYXdv
cmtzLmNvbV0KU2VudDogV2VkbmVzZGF5LCBBdWd1c3QgMTYsIDIwMTcgMzowNSBBTQpUbzogT3Js
eSBLYXJpdiA8T3JseS5LYXJpdkBlY2l0ZWxlLmNvbT4KQ2M6IHlhbmctZG9jdG9yc0BpZXRmYS5h
bXNsLmNvbQpTdWJqZWN0OiBSZTogW3lhbmctZG9jdG9yc10gSG93IHRvIGluZm9ybSB0aGF0IGEg
ZGV2aWNlIGRvZXNuJ3Qgc3VwcG9ydCBSUEMgc3RhdGVtZW50CgpIaSwKCkxvb2sgYXQgdGhlIFlB
TkcgZGV2aWF0aW9uLXN0bXQuCllvdXIgc2VydmVyIGNhbiBhZHZlcnRpc2UgYSBkZXZpYXRpb24g
Zm9yIHRoZSBSRkMgdG8gaW5kaWNhdGUgaXQgaXMgbm90IHN1cHBvcnRlZC4KWW91IGFsc28gbmVl
ZCB0byByZXR1cm4gcnBjLWVycm9yICdvcGVyYXRpb24tbm90LXN1cHBvcnRlZCcgaWYgYSBjbGll
bnQgdHJpZXMgaXQuCgoKQW5keQoKCk9uIFR1ZSwgQXVnIDE1LCAyMDE3IGF0IDc6NDMgQU0sIE9y
bHkgS2FyaXYgPE9ybHkuS2FyaXZAZWNpdGVsZS5jb208bWFpbHRvOk9ybHkuS2FyaXZAZWNpdGVs
ZS5jb20+PiB3cm90ZToKSGVsbG8sCk15IG5hbWUgaXMgT3JseSBLYXJpdiBhbmQgSeKAmW0gc3lz
dGVtIGFyY2hpdGVjdCBpbiBFQ0kuCklmIEkgdW5kZXJzdGFuZCBjb3JyZWN0bHkgZGV2aWF0aW9u
IGlzIGRvbmUgb24gbm9kZXMuClJQQyBhbmQgTm90aWZpY2F0aW9ucyBhcmUgbm90IHRyZWF0ZWQg
YXMgbm9kZS4gQ29ycmVjdCA/CgpJZXRmLWlzaXMueWFuZyBpbnRyb2R1Y2VzIHR3byBSUEMgc3Rh
dGVtZW50cy4KCnJwYyBjbGVhci1hZGphY2VuY3kKcmNwIGNsZWFyLWRhdGFic2UKCk91ciBkZXZp
Y2UgZG9lc27igJl0IHN1cHBvcnQgb25lIG9mIHRoZSBSUEMgc3RhdGVtZW50cy4KSG93IHRvIGlu
Zm9ybSBuZXRjb25mIGNsaWVudCB0aGF0IG91ciBkZXZpY2UgZG9lc27igJl0IHN1cHBvcnQgdGhp
cyBSUEMgPwpJIHByZWZlciBub3QgdG8gcmVzcG9uZCB0byB0aGUgcnBjIGNhbGwgd2l0aCBycGMt
cmVwbHktZXJyb3IuCgoKUGxlYXNlIHlvdXIgYWR2aWNlClJlZ2FyZHMsCk9ybHkgS2FyaXYKCk9m
ZmljZTogKzk3Mi0zOTI4NzcxNApDZWxsOiAgICAgICs5NzItNTQ5Mjg3NzE0CkVtYWlsOiBPcmx5
Lkthcml2QGVjaXRlbGUuY29tPG1haWx0bzpPcmx5Lkthcml2QGVjaXRlbGUuY29tPgoKCgpfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX18KClRoaXMgZS1tYWlsIG1lc3NhZ2UgaXMgaW50ZW5kZWQgZm9yIHRoZSBy
ZWNpcGllbnQgb25seSBhbmQgY29udGFpbnMgaW5mb3JtYXRpb24gd2hpY2ggaXMKQ09ORklERU5U
SUFMIGFuZCB3aGljaCBtYXkgYmUgcHJvcHJpZXRhcnkgdG8gRUNJIFRlbGVjb20uIElmIHlvdSBo
YXZlIHJlY2VpdmVkIHRoaXMKdHJhbnNtaXNzaW9uIGluIGVycm9yLCBwbGVhc2UgaW5mb3JtIHVz
IGJ5IGUtbWFpbCwgcGhvbmUgb3IgZmF4LCBhbmQgdGhlbiBkZWxldGUgdGhlIG9yaWdpbmFsCmFu
ZCBhbGwgY29waWVzIHRoZXJlb2YuCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwoKX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KeWFuZy1kb2N0b3JzIG1haWxpbmcgbGlz
dAp5YW5nLWRvY3RvcnNAaWV0Zi5vcmc8bWFpbHRvOnlhbmctZG9jdG9yc0BpZXRmLm9yZz4KaHR0
cHM6Ly93d3cuaWV0Zi5vcmcvbWFpbG1hbi9saXN0aW5mby95YW5nLWRvY3RvcnMKCgpfX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX18KClRoaXMgZS1tYWlsIG1lc3NhZ2UgaXMgaW50ZW5kZWQgZm9yIHRoZSByZWNp
cGllbnQgb25seSBhbmQgY29udGFpbnMgaW5mb3JtYXRpb24gd2hpY2ggaXMgCkNPTkZJREVOVElB
TCBhbmQgd2hpY2ggbWF5IGJlIHByb3ByaWV0YXJ5IHRvIEVDSSBUZWxlY29tLiBJZiB5b3UgaGF2
ZSByZWNlaXZlZCB0aGlzIAp0cmFuc21pc3Npb24gaW4gZXJyb3IsIHBsZWFzZSBpbmZvcm0gdXMg
YnkgZS1tYWlsLCBwaG9uZSBvciBmYXgsIGFuZCB0aGVuIGRlbGV0ZSB0aGUgb3JpZ2luYWwgCmFu
ZCBhbGwgY29waWVzIHRoZXJlb2YuCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo=

--_000_AM4PR03MB1697E87C582AAC85398F158183820AM4PR03MB1697eurp_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+CjxoZWFkPgo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNv
bnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCI+CjxtZXRhIG5hbWU9IkdlbmVyYXRvciIg
Y29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUgKGZpbHRlcmVkIG1lZGl1bSkiPgo8c3R5bGU+PCEt
LQovKiBGb250IERlZmluaXRpb25zICovCkBmb250LWZhY2UKCXtmb250LWZhbWlseToiQ2FtYnJp
YSBNYXRoIjsKCXBhbm9zZS0xOjIgNCA1IDMgNSA0IDYgMyAyIDQ7fQpAZm9udC1mYWNlCgl7Zm9u
dC1mYW1pbHk6Q2FsaWJyaTsKCXBhbm9zZS0xOjIgMTUgNSAyIDIgMiA0IDMgMiA0O30KLyogU3R5
bGUgRGVmaW5pdGlvbnMgKi8KcC5Nc29Ob3JtYWwsIGxpLk1zb05vcm1hbCwgZGl2Lk1zb05vcm1h
bAoJe21hcmdpbjowY207CgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7Cglmb250LXNpemU6MTIuMHB0
OwoJZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiIsc2VyaWY7fQphOmxpbmssIHNwYW4uTXNv
SHlwZXJsaW5rCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5OwoJY29sb3I6Ymx1ZTsKCXRleHQtZGVj
b3JhdGlvbjp1bmRlcmxpbmU7fQphOnZpc2l0ZWQsIHNwYW4uTXNvSHlwZXJsaW5rRm9sbG93ZWQK
CXttc28tc3R5bGUtcHJpb3JpdHk6OTk7Cgljb2xvcjpwdXJwbGU7Cgl0ZXh0LWRlY29yYXRpb246
dW5kZXJsaW5lO30Kc3Bhbi5FbWFpbFN0eWxlMTcKCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbC1y
ZXBseTsKCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmOwoJY29sb3I6IzFGNDk3RDt9
Ci5Nc29DaHBEZWZhdWx0Cgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7Cglmb250LWZhbWls
eToiQ2FsaWJyaSIsc2Fucy1zZXJpZjt9CkBwYWdlIFdvcmRTZWN0aW9uMQoJe3NpemU6NjEyLjBw
dCA3OTIuMHB0OwoJbWFyZ2luOjcyLjBwdCA5MC4wcHQgNzIuMHB0IDkwLjBwdDt9CmRpdi5Xb3Jk
U2VjdGlvbjEKCXtwYWdlOldvcmRTZWN0aW9uMTt9Ci0tPjwvc3R5bGU+PCEtLVtpZiBndGUgbXNv
IDldPjx4bWw+CjxvOnNoYXBlZGVmYXVsdHMgdjpleHQ9ImVkaXQiIHNwaWRtYXg9IjEwMjYiIC8+
CjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPgo8bzpzaGFwZWxheW91
dCB2OmV4dD0iZWRpdCI+CjxvOmlkbWFwIHY6ZXh0PSJlZGl0IiBkYXRhPSIxIiAvPgo8L286c2hh
cGVsYXlvdXQ+PC94bWw+PCFbZW5kaWZdLS0+CjwvaGVhZD4KPGJvZHkgbGFuZz0iRU4tVVMiIGxp
bms9ImJsdWUiIHZsaW5rPSJwdXJwbGUiPgo8ZGl2IGNsYXNzPSJXb3JkU2VjdGlvbjEiPgo8cCBj
bGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWls
eTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+SGkgQW5keSw8
bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJm
b250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJp
Zjtjb2xvcjojMUY0OTdEIj5UaGFua3MgZm9yIHRoZSBxdWljayByZXNwb25zZS48bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6
MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjoj
MUY0OTdEIj5BY3R1YWxseSBJIHRyaWVkIHRvIGZvbGxvdyBSRkM2MDIwIGFuZCBSRkM3OTUwIHdp
dGggbm8gc3VjY2Vzcy48bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwi
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkm
cXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj5JIHRyaWVkIHVzaW5nIHRoZSBkZXZpYXRp
b24gc3RhdGVtZW50IGZvciBSUEMgYW5kIE5vdGlmaWNhdGlvbnMgYW5kIGZhaWxlZCBvbiBjb21w
aWxhdGlvbiB2aWEgY29uZmRjIGFuZCBweWFuZy48bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNw
OzwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250
LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtj
b2xvcjojMUY0OTdEIj5UaGUgcmVsZXZhbnQgUkZDIEkgd2FudCB0byBkZXZpYXRlIGlzOgo8YSBo
cmVmPSJtYWlsdG86aWV0Zi1pc2lzQDIwMTcwNTI3LnlhbmciPmlldGYtaXNpc0AyMDE3MDUyNy55
YW5nPC9hPjo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDss
c2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+Cjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFt
aWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj5FbmNsb3Nl
ZCBkZXZpYXRpb24gc3RhdGVtZW50cyBmb3IgUlBDIGFuZCBOb3RpZmljYXRpb24gKDxzcGFuIHN0
eWxlPSJiYWNrZ3JvdW5kOnllbGxvdzttc28taGlnaGxpZ2h0OnllbGxvdyI+bWFya2VkPC9zcGFu
Pik6ICZuYnNwOzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNw
YW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90
OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPi8qIEV2ZW50IGNvdW50ZXJzIG5vdCBzdXBwb3J0
ZWQgKi88bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fu
cy1zZXJpZjtjb2xvcjojMUY0OTdEIj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
ZGV2aWF0aW9uICZxdW90Oy9ydDpyb3V0aW5nLyZxdW90OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPiZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
JiM0MzsmcXVvdDtydDpjb250cm9sLXBsYW5lLXByb3RvY29scy9ydDpjb250cm9sLXBsYW5lLXBy
b3RvY29sJnF1b3Q7PG86cD48L286cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1
b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmIzQzOyZxdW90Oy9pc2lz
OmlzaXMvaXNpczppbnRlcmZhY2VzL2lzaXM6aW50ZXJmYWNlL2lzaXM6ZXZlbnQtY291bnRlcnMv
aXNpczppbml0LWZhaWxzJnF1b3Q7IHs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJN
c29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90
O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj4mbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
ZGV2aWF0ZSBub3Qtc3VwcG9ydGVkOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOwo8
bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJm
b250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJp
Zjtjb2xvcjojMUY0OTdEIj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfTxvOnA+
PC9vOnA+PC9zcGFuPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQt
c2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2Nv
bG9yOiMxRjQ5N0QiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPiZuYnNwOzxvOnA+PC9vOnA+PC9zcGFuPjwv
cD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPiZu
YnNwOzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5
bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5z
LXNlcmlmO2NvbG9yOiMxRjQ5N0QiPiZuYnNwOyZuYnNwOzxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5k
OnllbGxvdzttc28taGlnaGxpZ2h0OnllbGxvdyI+LyogUlBDJm5ic3A7IERldmlhdGlvbiAqLwo8
bzpwPjwvbzpwPjwvc3Bhbj48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBz
dHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNh
bnMtc2VyaWY7Y29sb3I6IzFGNDk3RDtiYWNrZ3JvdW5kOnllbGxvdzttc28taGlnaGxpZ2h0Onll
bGxvdyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGRldmlhdGlvbiAmcXVvdDsv
aXNpczpycGMvaXNpczpjbGVhci1hZGphY2VuY3kmcXVvdDsgezxvOnA+PC9vOnA+PC9zcGFuPjwv
cD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0Q7YmFj
a2dyb3VuZDp5ZWxsb3c7bXNvLWhpZ2hsaWdodDp5ZWxsb3ciPiZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyBkZXZpYXRlIG5vdC1zdXBwb3J0ZWQ7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7CjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCIg
c3R5bGU9InRleHQtaW5kZW50OjM2LjBwdCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0Q7
YmFja2dyb3VuZDp5ZWxsb3c7bXNvLWhpZ2hsaWdodDp5ZWxsb3ciPiZuYnNwOyB9PC9zcGFuPjxz
cGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVv
dDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5
OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj4mbmJzcDsKPG86
cD48L286cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9u
dC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7
Y29sb3I6IzFGNDk3RCI+Jm5ic3A7PG86cD48L286cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+Jm5ic3A7Jm5ic3A7PG86cD48
L286cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1z
aXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29s
b3I6IzFGNDk3RCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PG86cD48L286cD48L3NwYW4+PC9w
Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250
LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+Jm5i
c3A7Jm5ic3A7PHNwYW4gc3R5bGU9ImJhY2tncm91bmQ6eWVsbG93O21zby1oaWdobGlnaHQ6eWVs
bG93Ij4vKiBub3RpZmljYXRpb24gZGV2aWF0aW9uICovPG86cD48L286cD48L3NwYW4+PC9zcGFu
PjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0Q7
YmFja2dyb3VuZDp5ZWxsb3c7bXNvLWhpZ2hsaWdodDp5ZWxsb3ciPiZuYnNwOwo8bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6
MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjoj
MUY0OTdEO2JhY2tncm91bmQ6eWVsbG93O21zby1oaWdobGlnaHQ6eWVsbG93Ij4mbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZGV2aWF0aW9uICZxdW90Oy9pc2lzOm5vdGlmaWNhdGlv
bi9pc2lzOmNvcnJ1cHRlZC1sc3AtZGV0ZWN0ZWQmcXVvdDsgeyZuYnNwOwo8bzpwPjwvbzpwPjwv
c3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEu
MHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0
OTdEO2JhY2tncm91bmQ6eWVsbG93O21zby1oaWdobGlnaHQ6eWVsbG93Ij4mbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsgZGV2aWF0ZSBub3Qtc3VwcG9ydGVkOyZuYnNwOwo8bzpwPjwv
bzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNp
emU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xv
cjojMUY0OTdEO2JhY2tncm91bmQ6eWVsbG93O21zby1oaWdobGlnaHQ6eWVsbG93Ij4mbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6
JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0Q7YmFja2dyb3VuZDp5
ZWxsb3c7bXNvLWhpZ2hsaWdodDp5ZWxsb3ciPiZuYnNwOwo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQt
ZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEO2JhY2tn
cm91bmQ6eWVsbG93O21zby1oaWdobGlnaHQ6eWVsbG93Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsgZGV2aWF0aW9uICZxdW90Oy9pc2lzOm5vdGlmaWNhdGlvbi9pc2lzOmRhdGFi
YXNlLW92ZXJsb2FkJnF1b3Q7IHs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29O
b3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0Nh
bGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEO2JhY2tncm91bmQ6eWVsbG93O21z
by1oaWdobGlnaHQ6eWVsbG93Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZGV2
aWF0ZSBub3Qtc3VwcG9ydGVkOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOwo8bzpw
PjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250
LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtj
b2xvcjojMUY0OTdEO2JhY2tncm91bmQ6eWVsbG93O21zby1oaWdobGlnaHQ6eWVsbG93Ij4mbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfTwvc3Bhbj48c3BhbiBzdHlsZT0iZm9udC1z
aXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29s
b3I6IzFGNDk3RCI+PG86cD48L286cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1
b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9w
Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250
LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+PG86
cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMt
c2VyaWY7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgo8cCBjbGFz
cz0iTXNvTm9ybWFsIj48Yj48dT48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZh
bWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+UnVubmlu
ZyBweWFuZzxvOnA+PC9vOnA+PC9zcGFuPjwvdT48L2I+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJp
JnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+cHlhbmcgLS1zdHJpY3QgZWNpLWlzaXMt
ZGV2XEAyMDE3LTA3LTE5LnlhbmcgLWYgdHJlZSAtbyByZXN1bHQudHh0PG86cD48L286cD48L3Nw
YW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBw
dDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3
RCI+ZWNpLWlzaXMtZGV2QDIwMTctMDctMTkueWFuZzoxNTY6IGVycm9yOiBub2RlIGlldGYtaXNp
czo6cnBjIGlzIG5vdCBmb3VuZDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KPHAgY2xhc3M9Ik1zb05v
cm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2Fs
aWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPmVjaS1pc2lzLWRldkAyMDE3LTA3
LTE5Lnlhbmc6MTY1OiBlcnJvcjogbm9kZSBpZXRmLWlzaXM6Om5vdGlmaWNhdGlvbiBpcyBub3Qg
Zm91bmQ8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fu
cy1zZXJpZjtjb2xvcjojMUY0OTdEIj5lY2ktaXNpcy1kZXZAMjAxNy0wNy0xOS55YW5nOjE2OTog
ZXJyb3I6IG5vZGUgaWV0Zi1pc2lzOjpub3RpZmljYXRpb24gaXMgbm90IGZvdW5kPG86cD48L286
cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6
IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48Yj48dT48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+UnVubmluZyBjb25mZGM8bzpw
PjwvbzpwPjwvc3Bhbj48L3U+PC9iPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5
bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5z
LXNlcmlmO2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6
JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPi91L2xuaS9Db25m
ZF82LjRfeDg2XzY0L2Jpbi9jb25mZGMgLS1mYWlsLW9uLXdhcm5pbmdzIC1jIC1vIGVjaS1pc2lz
LWRldkAyMDE3LTA3LTE5LmZ4cyBlY2ktaXNpcy1kZXZAMjAxNy0wNy0xOS55YW5nPG86cD48L286
cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6
IzFGNDk3RCI+ZWNpLWlzaXMtZGV2QDIwMTctMDctMTkueWFuZzoxNTY6IGVycm9yOiBub2RlICdy
cGMnIG5vdCBmb3VuZDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZx
dW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPmVjaS1pc2lzLWRldkAyMDE3LTA3LTE5Lnlh
bmc6MTY1OiBlcnJvcjogbm9kZSAnbm90aWZpY2F0aW9uJyBub3QgZm91bmQ8bzpwPjwvbzpwPjwv
c3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEu
MHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0
OTdEIj5lY2ktaXNpcy1kZXZAMjAxNy0wNy0xOS55YW5nOjE2OTogZXJyb3I6IG5vZGUgJ25vdGlm
aWNhdGlvbicgbm90IGZvdW5kPG86cD48L286cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9y
bWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxp
YnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3Nw
YW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBw
dDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3
RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3Bh
biBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7
LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+UmVnYXJkczxvOnA+PC9vOnA+PC9zcGFuPjwvcD4K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPk9ybHkg
S2FyaXY8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fu
cy1zZXJpZjtjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFt
aWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZiI+RnJvbTo8L3NwYW4+PC9iPjxzcGFu
IHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDss
c2Fucy1zZXJpZiI+IEFuZHkgQmllcm1hbiBbbWFpbHRvOmFuZHlAeXVtYXdvcmtzLmNvbV0KPGJy
Pgo8Yj5TZW50OjwvYj4gV2VkbmVzZGF5LCBBdWd1c3QgMTYsIDIwMTcgMzowNSBBTTxicj4KPGI+
VG86PC9iPiBPcmx5IEthcml2ICZsdDtPcmx5Lkthcml2QGVjaXRlbGUuY29tJmd0Ozxicj4KPGI+
Q2M6PC9iPiB5YW5nLWRvY3RvcnNAaWV0ZmEuYW1zbC5jb208YnI+CjxiPlN1YmplY3Q6PC9iPiBS
ZTogW3lhbmctZG9jdG9yc10gSG93IHRvIGluZm9ybSB0aGF0IGEgZGV2aWNlIGRvZXNuJ3Qgc3Vw
cG9ydCBSUEMgc3RhdGVtZW50PG86cD48L286cD48L3NwYW4+PC9wPgo8cCBjbGFzcz0iTXNvTm9y
bWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+SGks
PG86cD48L286cD48L3A+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9v
OnA+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+TG9vayBhdCB0aGUgWUFO
RyBkZXZpYXRpb24tc3RtdC48bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJN
c29Ob3JtYWwiPllvdXIgc2VydmVyIGNhbiBhZHZlcnRpc2UgYSBkZXZpYXRpb24gZm9yIHRoZSBS
RkMgdG8gaW5kaWNhdGUgaXQgaXMgbm90IHN1cHBvcnRlZC48bzpwPjwvbzpwPjwvcD4KPC9kaXY+
CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPllvdSBhbHNvIG5lZWQgdG8gcmV0dXJuIHJwYy1l
cnJvciAnb3BlcmF0aW9uLW5vdC1zdXBwb3J0ZWQnIGlmIGEgY2xpZW50IHRyaWVzIGl0LjxvOnA+
PC9vOnA+PC9wPgo8L2Rpdj4KPGRpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8
L286cD48L3A+CjwvZGl2Pgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwv
bzpwPjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPkFuZHk8bzpwPjwvbzpw
PjwvcD4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+
PC9wPgo8L2Rpdj4KPC9kaXY+CjxkaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7
PC9vOnA+PC9wPgo8ZGl2Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5PbiBUdWUsIEF1ZyAxNSwgMjAx
NyBhdCA3OjQzIEFNLCBPcmx5IEthcml2ICZsdDs8YSBocmVmPSJtYWlsdG86T3JseS5LYXJpdkBl
Y2l0ZWxlLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPk9ybHkuS2FyaXZAZWNpdGVsZS5jb208L2E+Jmd0
OyB3cm90ZTo8bzpwPjwvbzpwPjwvcD4KPGJsb2NrcXVvdGUgc3R5bGU9ImJvcmRlcjpub25lO2Jv
cmRlci1sZWZ0OnNvbGlkICNDQ0NDQ0MgMS4wcHQ7cGFkZGluZzowY20gMGNtIDBjbSA2LjBwdDtt
YXJnaW4tbGVmdDo0LjhwdDttYXJnaW4tcmlnaHQ6MGNtIj4KPGRpdj4KPGRpdj4KPHAgY2xhc3M9
Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90
dG9tLWFsdDphdXRvIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+SGVsbG8sPC9zcGFuPjxv
OnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3At
YWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPk15IG5hbWUgaXMgT3JseSBLYXJp
diBhbmQgSeKAmW0gc3lzdGVtIGFyY2hpdGVjdCBpbiBFQ0kuPG86cD48L286cD48L3A+CjxwIGNs
YXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2lu
LWJvdHRvbS1hbHQ6YXV0byI+SWYgSSB1bmRlcnN0YW5kIGNvcnJlY3RseSBkZXZpYXRpb24gaXMg
ZG9uZSBvbiBub2Rlcy48bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9
Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj5SUEMg
YW5kIE5vdGlmaWNhdGlvbnMgYXJlIG5vdCB0cmVhdGVkIGFzIG5vZGUuIENvcnJlY3QgPzxvOnA+
PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0
OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPiZuYnNwOzxvOnA+PC9vOnA+PC9wPgo8
cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1h
cmdpbi1ib3R0b20tYWx0OmF1dG8iPklldGYtaXNpcy55YW5nIGludHJvZHVjZXMgdHdvIFJQQyBz
dGF0ZW1lbnRzLjxvOnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNv
LW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPiZuYnNwOzxv
OnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3At
YWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPnJwYyBjbGVhci1hZGphY2VuY3k8
bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9w
LWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj5yY3AgY2xlYXItZGF0YWJzZTxv
OnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3At
YWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPiZuYnNwOzxvOnA+PC9vOnA+PC9w
Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNv
LW1hcmdpbi1ib3R0b20tYWx0OmF1dG8iPk91ciBkZXZpY2UgZG9lc27igJl0IHN1cHBvcnQgb25l
IG9mIHRoZSBSUEMgc3RhdGVtZW50cy4KPG86cD48L286cD48L3A+CjxwIGNsYXNzPSJNc29Ob3Jt
YWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6
YXV0byI+SG93IHRvIGluZm9ybSBuZXRjb25mIGNsaWVudCB0aGF0IG91ciBkZXZpY2UgZG9lc27i
gJl0IHN1cHBvcnQgdGhpcyBSUEMgPzxvOnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFs
IiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1
dG8iPkkgcHJlZmVyIG5vdCB0byByZXNwb25kIHRvIHRoZSBycGMgY2FsbCB3aXRoIHJwYy1yZXBs
eS1lcnJvci48bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1t
YXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj4mbmJzcDs8bzpw
PjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFs
dDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4K
PHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1t
YXJnaW4tYm90dG9tLWFsdDphdXRvIj5QbGVhc2UgeW91ciBhZHZpY2U8bzpwPjwvbzpwPjwvcD4K
PHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1t
YXJnaW4tYm90dG9tLWFsdDphdXRvIj5SZWdhcmRzLDxvOnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0i
TXNvTm9ybWFsIiBzdHlsZT0ibXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0
b20tYWx0OmF1dG8iPk9ybHkgS2FyaXY8bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1h
bCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDph
dXRvIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1z
by1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBz
dHlsZT0iY29sb3I6IzQ0NTQ2QSI+T2ZmaWNlOiAmIzQzOzk3Mi0zOTI4NzcxNDwvc3Bhbj48bzpw
PjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFs
dDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBzdHlsZT0iY29sb3I6IzQ0
NTQ2QSI+Q2VsbDombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJiM0Mzs5NzItNTQ5Mjg3
NzE0Cjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1z
by1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvIj48c3BhbiBz
dHlsZT0iY29sb3I6IzQ0NTQ2QSI+RW1haWw6CjxhIGhyZWY9Im1haWx0bzpPcmx5Lkthcml2QGVj
aXRlbGUuY29tIiB0YXJnZXQ9Il9ibGFuayI+T3JseS5LYXJpdkBlY2l0ZWxlLmNvbTwvYT48L3Nw
YW4+PG86cD48L286cD48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2lu
LXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byI+PHNwYW4gc3R5bGU9ImNv
bG9yOiM0NDU0NkEiPiZuYnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05v
cm1hbCIgc3R5bGU9Im1zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFs
dDphdXRvIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjxwIGNsYXNzPSJNc29Ob3JtYWwi
Pjxicj4KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fPGJyPgo8YnI+ClRoaXMgZS1tYWlsIG1lc3NhZ2UgaXMg
aW50ZW5kZWQgZm9yIHRoZSByZWNpcGllbnQgb25seSBhbmQgY29udGFpbnMgaW5mb3JtYXRpb24g
d2hpY2ggaXMKPGJyPgpDT05GSURFTlRJQUwgYW5kIHdoaWNoIG1heSBiZSBwcm9wcmlldGFyeSB0
byBFQ0kgVGVsZWNvbS4gSWYgeW91IGhhdmUgcmVjZWl2ZWQgdGhpcwo8YnI+CnRyYW5zbWlzc2lv
biBpbiBlcnJvciwgcGxlYXNlIGluZm9ybSB1cyBieSBlLW1haWwsIHBob25lIG9yIGZheCwgYW5k
IHRoZW4gZGVsZXRlIHRoZSBvcmlnaW5hbAo8YnI+CmFuZCBhbGwgY29waWVzIHRoZXJlb2YuPGJy
PgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX188bzpwPjwvbzpwPjwvcD4KPC9kaXY+CjxwIGNsYXNzPSJNc29O
b3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+PGJyPgpfX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzxicj4KeWFuZy1kb2N0b3JzIG1haWxpbmcg
bGlzdDxicj4KPGEgaHJlZj0ibWFpbHRvOnlhbmctZG9jdG9yc0BpZXRmLm9yZyI+eWFuZy1kb2N0
b3JzQGlldGYub3JnPC9hPjxicj4KPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWV0Zi5vcmcvbWFpbG1h
bi9saXN0aW5mby95YW5nLWRvY3RvcnMiIHRhcmdldD0iX2JsYW5rIj5odHRwczovL3d3dy5pZXRm
Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3lhbmctZG9jdG9yczwvYT48bzpwPjwvbzpwPjwvcD4KPC9i
bG9ja3F1b3RlPgo8L2Rpdj4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48
L3A+CjwvZGl2Pgo8L2Rpdj4KPGJyIGNsZWFyPSJib3RoIj4KX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fPEJS
Pgo8QlI+ClRoaXMgZS1tYWlsIG1lc3NhZ2UgaXMgaW50ZW5kZWQgZm9yIHRoZSByZWNpcGllbnQg
b25seSBhbmQgY29udGFpbnMgaW5mb3JtYXRpb24gd2hpY2ggaXMgPEJSPgpDT05GSURFTlRJQUwg
YW5kIHdoaWNoIG1heSBiZSBwcm9wcmlldGFyeSB0byBFQ0kgVGVsZWNvbS4gSWYgeW91IGhhdmUg
cmVjZWl2ZWQgdGhpcyA8QlI+CnRyYW5zbWlzc2lvbiBpbiBlcnJvciwgcGxlYXNlIGluZm9ybSB1
cyBieSBlLW1haWwsIHBob25lIG9yIGZheCwgYW5kIHRoZW4gZGVsZXRlIHRoZSBvcmlnaW5hbCA8
QlI+CmFuZCBhbGwgY29waWVzIHRoZXJlb2YuPEJSPgpfX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX188QlI+Cjwv
Ym9keT4KPC9odG1sPgoK

--_000_AM4PR03MB1697E87C582AAC85398F158183820AM4PR03MB1697eurp_--

--_005_AM4PR03MB1697E87C582AAC85398F158183820AM4PR03MB1697eurp_
Content-Type: application/octet-stream; name="eci-isis-dev@2017-07-19.yang"
Content-Description: eci-isis-dev@2017-07-19.yang
Content-Disposition: attachment; filename="eci-isis-dev@2017-07-19.yang";
	size=4510; creation-date="Wed, 16 Aug 2017 07:02:44 GMT";
	modification-date="Wed, 16 Aug 2017 06:57:03 GMT"
Content-Transfer-Encoding: base64

IA0KICBtb2R1bGUgZWNpLWlzaXMtZGV2IHsNCiAgICB5YW5nLXZlcnNpb24gIjEuMSI7DQogICAg
bmFtZXNwYWNlICJ1cm46ZWNpOnBhcmFtczp4bWw6bnM6eWFuZzplY2ktaXNpcy1kZXYiOw0KICAg
IHByZWZpeCBlY2ktaXNpcy1kZXY7DQoJDQoJDQoJaW1wb3J0IGlldGYtcm91dGluZyB7DQogICAg
ICBwcmVmaXggInJ0IjsNCiAgICB9DQoNCgkvKiBTcGVjaWZ5IGlldGYgbW9kdWxlIHRvIGRldmlh
dGUgKi8NCiAgICBpbXBvcnQgaWV0Zi1pc2lzICB7DQoJICAgcHJlZml4IGlzaXM7DQoJICAgcmV2
aXNpb24tZGF0ZSAyMDE3LTA3LTI1OyAgLyogc2luY2UgaXQgaXMgc3RpbGwgZHJhZnQgKi8NCgkg
IA0KICAgIH0NCg0KCW9yZ2FuaXphdGlvbiAiRUNJIFRlbGVjb20gTHRkLiI7DQogICAgY29udGFj
dCANCiAgICAgIkF1dGhvcnM6DQogICAgICAJT3JseSBLYXJpdiA8bWFpbHRvOm9ybHkua2FyaXZA
ZWNpdGVsZS5jb20+DQogICAgICBBZGRyZXNzOg0KICAgICAgICAgICAgCTMwIEhhc2l2aW0gU3Ry
ZWV0DQogICAgICAgICAgICAJUGV0YWNoIFRpa3ZhaCwgNDk1OTM4OA0KICAgICAgICAgICAgCUlz
cmFlbA0KICAgICAgVGVsOg0KICAgICAgICAgICAgCSs5NzItMy05MjYtNjUwMCI7DQogICAgZGVz
Y3JpcHRpb24gDQogICAgICJUaGlzIG1vZHVsZSBwcm92aWRlcyBOUFQgZGV2aWF0aW9ucyBmcm9t
ICdpZXRmLWlzaXMnLiAgDQoJICBObyBuZWVkIHRvIGluY2x1ZGUgaW4gdGhlIGZpbGUgY29udGFp
bmVycyB0aGF0IGFyZSBkZWZpbmVkIGNvbmRpdGlvbmFsbHkgdmlhIHVzYWdlIG9mIGlmLWZlYXR1
cmUuIA0KCSAgUmVsZXZhbnQgU1JRIGluY2x1ZGVzIHRoZSBsaXN0IG9mIGZlYXR1cmVzIHRvIGFk
dmVydGl6ZS4gICAgICANCiAgICAgIENvcHlyaWdodCAoYykgMjAxNCBFQ0kgVGVsZWNvbSBMdGQu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuDQogICAgICAiOw0KICAgIHJldmlzaW9uIDIwMTctMDctMTl7
DQogICAgICAgIGRlc2NyaXB0aW9uICJhZGRlZCB1bnN1cHBvcnRlZCBZQU5HIGRlZmluaXRpb25z
IGluIE5QVFY3LjAiOw0KICAgICAgICB9DQogICAgDQoJDQogICAgIA0KICAgLyogSWRlbnRpdGll
cyAqLw0KDQoNCg0KICAgIC8qIEZlYXR1cmUgZGVmaW5pdGlvbnMgKi8NCg0KICAgIA0KDQogICAg
LyogVHlwZSBkZWZpbml0aW9ucyAqLw0KDQoNCg0KICAgIC8qIEdyb3VwaW5nIGRlZmluaXRpb25z
ICAqLw0KCQ0KCQkNCiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqDQoJKiAgQ29uZmlndXJhdGlvbiBhbmQgU3RhdHVzIGNvbnRhaW5lcnMgRGV2
aWF0aW9ucyAgKg0KCSoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKi8NCgkNCiAgICAvKiBpc2lzLWdsb2JhbCBDb25maWd1cmF0aW9uIERldmlhdGlvbnMg
ICovDQoNCgkvKiBTdXBwb3J0aW5nIG9ubHkgbGV2ZWwtMiAgb24gSVMtSVMgaW5zdGFuY2UgKi8g
DQoJZGV2aWF0aW9uIAkiL3J0OnJvdXRpbmcvcnQ6Y29udHJvbC1wbGFuZS1wcm90b2NvbHMvIg0K
CQkJICAgKyJydDpjb250cm9sLXBsYW5lLXByb3RvY29sIiAgDQoJCQkgICArIi9pc2lzOmlzaXMv
aXNpczpsZXZlbC10eXBlIiB7DQoJCWRldmlhdGUgcmVwbGFjZSB7DQoJCQl0eXBlIGVudW1lcmF0
aW9uIHsNCgkJCQllbnVtICJsZXZlbC0yIiB7DQoJCQkJIGRlc2NyaXB0aW9uDQoJCQkJICAgIlRo
aXMgZW51bSBkZXNjcmliZXMgTDIgb25seSBjYXBhYmlsaXR5LiI7DQoJCQkJfQ0KCQkJfQ0KCQkJ
ZGVmYXVsdCAibGV2ZWwtMiI7DQoJCX0gIA0KCX0NCiAJDQoJDQogIAkvKiBkZWZhdWx0LW1ldHJp
YyB1bmRlciBpc2lzLWdsb2JhbCBjZmcgRGV2aWF0aW9uICovDQoNCglkZXZpYXRpb24gIi9ydDpy
b3V0aW5nL3J0OmNvbnRyb2wtcGxhbmUtcHJvdG9jb2xzLyINCgkJCSAgICsicnQ6Y29udHJvbC1w
bGFuZS1wcm90b2NvbCIgIA0KCQkJICAgKyIvaXNpczppc2lzL2lzaXM6dG9wb2xvZ2llcy9pc2lz
OnRvcG9sb2d5L2lzaXM6ZGVmYXVsdC1tZXRyaWMiIHsgDQoJCWRldmlhdGUgbm90LXN1cHBvcnRl
ZDsgIA0KCX0gIA0KCQ0KDQogICAgICAgDQoJLyogaXNpcyBsaWYgY29uZmlndXJhdGlvbiBkZXZp
YXRpb24gKi8NCg0KCS8qIFN1cHBvcnRpbmcgb25seSBsZXZlbC0yICBvbiBJUy1JUyBpbnRlcmZh
Y2UgICovIA0KCWRldmlhdGlvbiAJIi9ydDpyb3V0aW5nL3J0OmNvbnRyb2wtcGxhbmUtcHJvdG9j
b2xzLyINCgkJCSAgICsicnQ6Y29udHJvbC1wbGFuZS1wcm90b2NvbCIgIA0KCQkJICAgKyIvaXNp
czppc2lzL2lzaXM6aW50ZXJmYWNlcy9pc2lzOmludGVyZmFjZS9pc2lzOmxldmVsLXR5cGUiIHsN
CgkJZGV2aWF0ZSByZXBsYWNlIHsNCgkJCXR5cGUgZW51bWVyYXRpb24gew0KCQkJCWVudW0gImxl
dmVsLTIiIHsNCgkJCQkgZGVzY3JpcHRpb24NCgkJCQkgICAiVGhpcyBlbnVtIGRlc2NyaWJlcyBM
MiBvbmx5IGNhcGFiaWxpdHkuIjsNCgkJCQl9DQoJCQl9DQoJCQlkZWZhdWx0ICJsZXZlbC0yIjsN
CgkJfSAgDQoJfQ0KIAkNCgkNCgkNCgkNCgkvKiAiTWVzaCBncm91cC1lbmFibGUiIGRvZXNuJ3Qg
dXNlIGZlYXR1cmUgc3RhdGVtZW50LCB0aHVzIHJlcXVpcmVkIHRvIGRldmlhdGUgaXQgZXhwbGlj
aXRseSAqLw0KCWRldmlhdGlvbiAiL3J0OnJvdXRpbmcvcnQ6Y29udHJvbC1wbGFuZS1wcm90b2Nv
bHMvIg0KCQkJICAgKyJydDpjb250cm9sLXBsYW5lLXByb3RvY29sIiAgDQoJCQkgICArIi9pc2lz
OmlzaXMvaXNpczppbnRlcmZhY2VzL2lzaXM6aW50ZXJmYWNlL2lzaXM6bWVzaC1ncm91cC1lbmFi
bGUiIHsNCgkJCSAgIAlkZXZpYXRlIG5vdC1zdXBwb3J0ZWQ7ICANCgl9DQogDQogCS8qICJNZXNo
LWdyb3VwIiBkb2Vzbid0IHVzZSBmZWF0dXJlIHN0YXRlbWVudCwgdGh1cyByZXF1aXJlZCB0byBk
ZXZpYXRlIGl0IGV4cGxpY2l0bHkgKi8NCglkZXZpYXRpb24gIi9ydDpyb3V0aW5nL3J0OmNvbnRy
b2wtcGxhbmUtcHJvdG9jb2xzLyINCgkJCSAgICsicnQ6Y29udHJvbC1wbGFuZS1wcm90b2NvbCIg
IA0KCQkJICAgKyIvaXNpczppc2lzL2lzaXM6aW50ZXJmYWNlcy9pc2lzOmludGVyZmFjZS9pc2lz
Om1lc2gtZ3JvdXAiICB7IA0KCQkJICAgCWRldmlhdGUgbm90LXN1cHBvcnRlZDsgIA0KCX0NCg0K
CS8qIHNwZi1sb2cgZG9lc24ndCB1c2UgZmVhdHVyZSBzdGF0ZW1lbnQsIHRodXMgcmVxdWlyZWQg
dG8gZGV2aWF0ZSBpdCBleHBsaWNpdGx5ICovIA0KCWRldmlhdGlvbiAiL3J0OnJvdXRpbmcvIg0K
CQkJCSsicnQ6Y29udHJvbC1wbGFuZS1wcm90b2NvbHMvcnQ6Y29udHJvbC1wbGFuZS1wcm90b2Nv
bCINCgkJCQkrIi9pc2lzOmlzaXMvaXNpczpzcGYtbG9nIiB7IA0KCQkJCWRldmlhdGUgbm90LXN1
cHBvcnRlZDsgIA0KCX0NCgkvKiBsc3AtbG9nIGRvZXNuJ3QgdXNlIGZlYXR1cmUgc3RhdGVtZW50
LCB0aHVzIHJlcXVpcmVkIHRvIGRldmlhdGUgaXQgZXhwbGljaXRseSAqLyANCglkZXZpYXRpb24g
Ii9ydDpyb3V0aW5nLyINCgkJCQkrInJ0OmNvbnRyb2wtcGxhbmUtcHJvdG9jb2xzL3J0OmNvbnRy
b2wtcGxhbmUtcHJvdG9jb2wiDQoJCQkJKyIvaXNpczppc2lzL2lzaXM6bHNwLWxvZyIgeyANCgkJ
CQlkZXZpYXRlIG5vdC1zdXBwb3J0ZWQ7ICANCgl9DQoNCiAgDQoNCg0KIC8qIGNvdW50ZXJzIGRl
dmlhdGlvbiAqLw0KIC8qIFN5c3RlbSBjb3VudGVycyBub3Qgc3VwcG9ydGVkICovDQoJZGV2aWF0
aW9uICIvcnQ6cm91dGluZy8iDQoJCQkJKyJydDpjb250cm9sLXBsYW5lLXByb3RvY29scy9ydDpj
b250cm9sLXBsYW5lLXByb3RvY29sIg0KCQkJCSsiL2lzaXM6aXNpcy9pc2lzOnN5c3RlbS1jb3Vu
dGVycy9pc2lzOmxldmVsL2lzaXM6cGFydGl0aW9uLWNoYW5nZXMiIHsNCgkJZGV2aWF0ZSBub3Qt
c3VwcG9ydGVkOwkJDQoJfQ0KDQogLyogRXZlbnQgY291bnRlcnMgbm90IHN1cHBvcnRlZCAqLw0K
CWRldmlhdGlvbiAiL3J0OnJvdXRpbmcvIg0KCQkJCSsicnQ6Y29udHJvbC1wbGFuZS1wcm90b2Nv
bHMvcnQ6Y29udHJvbC1wbGFuZS1wcm90b2NvbCINCgkJCQkrIi9pc2lzOmlzaXMvaXNpczppbnRl
cmZhY2VzL2lzaXM6aW50ZXJmYWNlL2lzaXM6ZXZlbnQtY291bnRlcnMvaXNpczppbml0LWZhaWxz
IiB7DQoJCWRldmlhdGUgbm90LXN1cHBvcnRlZDsJCQ0KCX0NCiANCiANCiANCiAgLyogUlBDICBE
ZXZpYXRpb24gKi8gDQoJZGV2aWF0aW9uICIvaXNpczpycGMvaXNpczpjbGVhci1hZGphY2VuY3ki
IHsNCgkJCWRldmlhdGUgbm90LXN1cHBvcnRlZDsJCQ0KICB9DQogIA0KIA0KICANCiAgICANCiAg
Lyogbm90aWZpY2F0aW9uIGRldmlhdGlvbiAqLw0KICANCiAgCWRldmlhdGlvbiAiL2lzaXM6bm90
aWZpY2F0aW9uL2lzaXM6Y29ycnVwdGVkLWxzcC1kZXRlY3RlZCIgeyAgDQoJCQkJZGV2aWF0ZSBu
b3Qtc3VwcG9ydGVkOyAgDQoJCX0NCiAgDQoJZGV2aWF0aW9uICIvaXNpczpub3RpZmljYXRpb24v
aXNpczpkYXRhYmFzZS1vdmVybG9hZCIgew0KCQkJZGV2aWF0ZSBub3Qtc3VwcG9ydGVkOwkJDQoJ
fQ0KIA0KfQ==

--_005_AM4PR03MB1697E87C582AAC85398F158183820AM4PR03MB1697eurp_
Content-Type: application/octet-stream; name="ietf-isis@2017-07-25.yang"
Content-Description: ietf-isis@2017-07-25.yang
Content-Disposition: attachment; filename="ietf-isis@2017-07-25.yang";
	size=101753; creation-date="Wed, 16 Aug 2017 07:03:04 GMT";
	modification-date="Mon, 07 Aug 2017 05:51:08 GMT"
Content-Transfer-Encoding: base64

Ly8gPENPREUgQkVHSU5TPiBmaWxlICJpZXRmLWlzaXNAMjAxNy0wNy0yNS55YW5nIg0KDQogIG1v
ZHVsZSBpZXRmLWlzaXMgew0KICAgIG5hbWVzcGFjZSAidXJuOmlldGY6cGFyYW1zOnhtbDpuczp5
YW5nOmlldGYtaXNpcyI7DQoNCiAgICBwcmVmaXggaXNpczsNCg0KICAgIGltcG9ydCBpZXRmLXJv
dXRpbmcgew0KICAgICAgcHJlZml4ICJydCI7DQogICAgfQ0KDQogICAgaW1wb3J0IGlldGYtaW5l
dC10eXBlcyB7DQogICAgICBwcmVmaXggaW5ldDsNCiAgICB9DQoNCiAgICBpbXBvcnQgaWV0Zi15
YW5nLXR5cGVzIHsNCiAgICAgIHByZWZpeCB5YW5nOw0KICAgIH0NCg0KICAgIGltcG9ydCBpZXRm
LWludGVyZmFjZXMgew0KICAgICAgcHJlZml4ICJpZiI7DQogICAgfQ0KDQogICAgaW1wb3J0IGll
dGYta2V5LWNoYWluIHsNCiAgICAgIHByZWZpeCAia2V5LWNoYWluIjsNCiAgICB9DQoNCiAgICBp
bXBvcnQgaWV0Zi1yb3V0aW5nLXR5cGVzIHsNCiAgICAgIHByZWZpeCAicnQtdHlwZXMiOw0KICAg
IH0NCg0KICAgIGltcG9ydCBpYW5hLXJvdXRpbmctdHlwZXMgew0KICAgICAgcHJlZml4ICJpYW5h
LXJ0LXR5cGVzIjsNCiAgICB9DQoNCiAgICBvcmdhbml6YXRpb24NCiAgICAgIklFVEYgSVNJUyBX
b3JraW5nIEdyb3VwIjsNCg0KICAgIGNvbnRhY3QNCiAgICAgICJXRyBMaXN0OiAgJmx0O21haWx0
bzppc2lzLXdnQGlldGYub3JnJmd0Ow0KDQogICAgICBFZGl0b3I6ICAgIFN0ZXBoYW5lIExpdGtv
d3NraQ0KICAgICAgICAgICAgJmx0O21haWx0bzpzdGVwaGFuZS5saXRrb3dza2lAb3JhbmdlLmNv
bSZndDsNCg0KICAgICAgICAgIERlcmVrIFlldW5nDQogICAgICAgICAgICAmbHQ7bWFpbHRvOmRl
cmVrQGFycmN1cy5jb20mZ3Q7DQogICAgICAgICAgQWNlZSBMaW5kZW0NCiAgICAgICAgICAgICZs
dDttYWlsdG86YWNlZUBjaXNjby5jb20mZ3Q7DQogICAgICAgICAgSmVmZnJleSBaaGFuZw0KICAg
ICAgICAgICAgJmx0O21haWx0bzp6emhhbmdAanVuaXBlci5uZXQmZ3Q7DQogICAgICAgICAgTGFk
aXNsYXYgTGhvdGthDQogICAgICAgICAgICAmbHQ7bWFpbHRvOmxsaG90a2FAbmljLmN6Jmd0Ow0K
ICAgICAgICAgIFlpIFlhbmcNCiAgICAgICAgICAgICZsdDttYWlsdG86eWl5YUBjaXNjby5jb20m
Z3Q7DQogICAgICAgICAgRGVhbiBCb2dkYW5vdmljDQogICAgICAgICAgICAmbHQ7bWFpbHRvOmRl
YW5iQGp1bmlwZXIubmV0Jmd0Ow0KICAgICAgICAgIEtpcmFuIEFncmFoYXJhIFNyZWVuaXZhc2EN
CiAgICAgICAgICAgICZsdDttYWlsdG86a2tvdXNoaWtAYnJvY2FkZS5jb20mZ3Q7DQogICAgICAg
ICAgWWluZ3poZW4gUXUNCiAgICAgICAgICAgICZsdDttYWlsdG86eWlxdUBjaXNjby5jb20mZ3Q7
DQogICAgICAgICAgSmVmZiBUYW50c3VyYQ0KICAgICAgICAgICAgJmx0O21haWx0bzpqZWZmdGFu
dC5pZXRmQGdtYWlsLmNvbSZndDsNCiAgICAgICI7DQoNCiAgICBkZXNjcmlwdGlvbg0KICAgICAg
IlRoZSBZQU5HIG1vZHVsZSBkZWZpbmVzIGEgZ2VuZXJpYyBjb25maWd1cmF0aW9uIG1vZGVsIGZv
cg0KICAgICAgSVNJUyBjb21tb24gYWNyb3NzIGFsbCBvZiB0aGUgdmVuZG9yIGltcGxlbWVudGF0
aW9ucy4iOw0KDQogICAgcmV2aXNpb24gMjAxNy0wNy0yNSB7DQogICAgICBkZXNjcmlwdGlvbg0K
ICAgICAgICJJbml0aWFsIHJldmlzaW9uLiI7DQogICAgICAgcmVmZXJlbmNlICJSRkMgWFhYWCI7
DQogICAgfQ0KDQogICAvKiBJZGVudGl0aWVzICovDQoNCiAgICBpZGVudGl0eSBpc2lzIHsNCiAg
ICAgIGJhc2UgcnQ6cm91dGluZy1wcm90b2NvbDsNCiAgICAgIGRlc2NyaXB0aW9uICJJZGVudGl0
eSBmb3IgdGhlIElTSVMgcm91dGluZyBwcm90b2NvbC4iOw0KICAgIH0NCg0KICAgIGlkZW50aXR5
IGlzaXMtYWRqYWNlbmN5LWNoYW5nZSB7DQogICAgICBkZXNjcmlwdGlvbiAiSWRlbnRpdHkgZm9y
IHRoZSBJU0lTIHJvdXRpbmcgcHJvdG9jb2wNCiAgICAgICAgYWRqYWNlbmN5IHN0YXRlLiI7DQog
ICAgfQ0KDQogICAgaWRlbnRpdHkgY2xlYXItaXNpcy1kYXRhYmFzZSB7DQogICAgICBkZXNjcmlw
dGlvbiAiSWRlbnRpdHkgZm9yIHRoZSBJU0lTIHJvdXRpbmcgcHJvdG9jb2wNCiAgICAgICAgZGF0
YWJhc2UgcmVzZXQgYWN0aW9uLiI7DQogICAgfQ0KDQogICAgaWRlbnRpdHkgY2xlYXItaXNpcy1h
ZGphY2VuY3kgew0KICAgICAgZGVzY3JpcHRpb24gIklkZW50aXR5IGZvciB0aGUgSVNJUyByb3V0
aW5nIHByb3RvY29sDQogICAgICAgIGFkamFjZW5jeSByZXNldCBhY3Rpb24uIjsNCiAgICB9DQoN
CiAgICBpZGVudGl0eSBsc3AtbG9nLXJlYXNvbiB7DQogICAgICBkZXNjcmlwdGlvbiAiQmFzZSBp
ZGVudGl0eSBmb3IgYW4gTFNQIGNoYW5nZQ0KICAgICAgICAgICAgICBsb2cgcmVhc29uLiI7DQog
ICAgfQ0KDQogICAgaWRlbnRpdHkgcmVmcmVzaCB7DQogICAgICBiYXNlIGxzcC1sb2ctcmVhc29u
Ow0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiSWRlbnRpdHkgdXNlZCB3aGVuIHRoZSBMU1Ag
bG9nIHJlYXNvbiBpcw0KICAgICAgIGEgcmVmcmVzaCBMU1AgcmVjZWl2ZWQuIjsNCiAgICB9DQoN
CiAgICBpZGVudGl0eSBjb250ZW50LWNoYW5nZSB7DQogICAgICBiYXNlIGxzcC1sb2ctcmVhc29u
Ow0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiSWRlbnRpdHkgdXNlZCB3aGVuIHRoZSBMU1Ag
bG9nIHJlYXNvbiBpcw0KICAgICAgIGEgY2hhbmdlIGluIHRoZSBjb250ZW50IG9mIHRoZSBMU1Au
IjsNCiAgICB9DQoNCg0KICAgIC8qIEZlYXR1cmUgZGVmaW5pdGlvbnMgKi8NCg0KICAgIGZlYXR1
cmUgaWV0Zi1zcGYtZGVsYXkgew0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiU3VwcG9ydCBv
ZiBJRVRGIFNQRiBkZWxheSBhbGdvcml0aG0uIjsNCiAgICB9DQogICAgZmVhdHVyZSBiZmQgew0K
ICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiU3VwcG9ydCBvZiBCRkQgZm9yIElTLUlTIGxpbmtz
LiI7DQogICAgfQ0KICAgIGZlYXR1cmUga2V5LWNoYWluIHsNCiAgICAgIGRlc2NyaXB0aW9uDQog
ICAgICAgICJTdXBwb3J0IG9mIGtleWNoYWluIGZvciBhdXRoZW50aWNhdGlvbi4iOw0KICAgIH0N
CiAgICBmZWF0dXJlIHNlZ21lbnQtcm91dGluZyB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICJTdXBwb3J0IG9mIHNlZ21lbnQtcm91dGluZy4iOw0KICAgIH0NCiAgICBmZWF0dXJlIG5vZGUt
ZmxhZyB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJTdXBwb3J0IG9mIG5vZGUtZmxhZyBh
ZHZlcnRpc2VtZW50DQogICAgICAgYXMgcHJlZml4IGF0dHJpYnV0ZSI7DQogICAgfQ0KICAgIGZl
YXR1cmUgbm9kZS10YWcgew0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgIlN1cHBvcnQgb2Yg
bm9kZSB0YWcuIjsNCiAgICB9DQogICAgZmVhdHVyZSBsZHAtaWdwLXN5bmMgew0KICAgICAgZGVz
Y3JpcHRpb24NCiAgICAgICAgIlN1cHBvcnQgb2YgUkZDNTQ0My4iOw0KICAgIH0NCiAgICBmZWF0
dXJlIGZhc3QtcmVyb3V0ZSB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAiU3VwcG9ydCBv
ZiBJUEZSUi4iOw0KICAgIH0NCiAgICBmZWF0dXJlIG5zciB7DQogICAgICBkZXNjcmlwdGlvbg0K
ICAgICAgICJTdXBwb3J0IG9mDQogICAgICAgICAgTm9uIFN0b3AgUm91dGluZy4iOw0KICAgIH0N
CiAgICBmZWF0dXJlICBsZmEgew0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgIlN1cHBvcnQg
b2YgTG9vcCBGcmVlIEFsdGVybmF0ZXMuIjsNCiAgICB9DQogICAgZmVhdHVyZSByZW1vdGUtbGZh
IHsNCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICJTdXBwb3J0IG9mIHJlbW90ZSBMb29wIEZy
ZWUgQWx0ZXJuYXRlcy4iOw0KICAgIH0NCg0KICAgIGZlYXR1cmUgb3ZlcmxvYWQtbWF4LW1ldHJp
YyB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAiU3VwcG9ydCBvZiBvdmVybG9hZCBieSBz
ZXR0aW5nDQogICAgICAgICBhbGwgbGlua3MgdG8gbWF4IG1ldHJpYy4iOw0KICAgIH0NCiAgICBm
ZWF0dXJlIHByZWZpeC10YWcgew0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgIkFkZCAzMmJp
dCB0YWcgdG8gcHJlZml4ZXMiOw0KICAgIH0NCiAgICBmZWF0dXJlIHByZWZpeC10YWc2NCB7DQog
ICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAiQWRkIDY0Yml0IHRhZyB0byBwcmVmaXhlcyI7DQog
ICAgfQ0KICAgIGZlYXR1cmUgYXV0by1jb3N0IHsNCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAg
ICJVc2UgYW4gYXV0b21hdGVkIGFzc2lnbm1lbnQgb2YgbWV0cmljcy4iOw0KICAgIH0NCiAgICBm
ZWF0dXJlIGlwdjQtcm91dGVyLWlkIHsNCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgIlN1cHBv
cnQgb2YgSVB2NCByb3V0ZXIgSUQgY29uZmlndXJhdGlvbiB1bmRlciBJU0lTLiI7DQogICAgfQ0K
DQogICAgZmVhdHVyZSBpcHY2LXJvdXRlci1pZCB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICJTdXBwb3J0IG9mIElQdjYgcm91dGVyIElEIGNvbmZpZ3VyYXRpb24gdW5kZXIgSVNJUy4iOw0K
ICAgIH0NCg0KICAgIGZlYXR1cmUgbXVsdGktdG9wb2xvZ3kgew0KICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAiTXVsdGl0b3BvbG9neSByb3V0aW5nIHN1cHBvcnQuIjsNCiAgICB9DQogICAgZmVh
dHVyZSBubHBpZC1jb250cm9sIHsNCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgIlRoaXMgZmVh
dHVyZSBjb250cm9scyB0aGUgYWR2ZXJ0aXNlbWVudA0KICAgICAgICBvZiBzdXBwb3J0IE5MUElE
IHdpdGhpbiBJU0lTIGNvbmZpZ3VyYXRpb24uIjsNCiAgICB9DQogICAgZmVhdHVyZSBncmFjZWZ1
bC1yZXN0YXJ0IHsNCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICJHcmFjZWZ1bCByZXN0YXJ0
IHN1cHBvcnQgYXMgcGVyIFJGQzUzMDYuIjsNCiAgICB9DQogICAgZmVhdHVyZSBsc3AtcmVmcmVz
aCB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAiQ29uZmlndXJhdGlvbiBvZiBMU1AgcmVm
cmVzaCBpbnRlcnZhbC4iOw0KICAgIH0NCg0KICAgIGZlYXR1cmUgbWF4aW11bS1hcmVhLWFkZHJl
c3NlcyB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAiU3VwcG9ydCBvZiBtYXhpbXVtLWFy
ZWEtYWRkcmVzc2VzIGNvbmZpZy4iOw0KICAgIH0NCg0KICAgIGZlYXR1cmUgYWRtaW4tY29udHJv
bCB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJDb250cm9sIGFkbWluaXN0cmF0aXZlIHN0
YXRlIG9mIElTSVMuIjsNCiAgICB9DQoNCiAgICAvKiBUeXBlIGRlZmluaXRpb25zICovDQoNCg0K
ICAgIHR5cGVkZWYgaW5zdGFuY2Utc3RhdGUtcmVmIHsNCiAgICAgIHR5cGUgbGVhZnJlZiB7DQog
ICAgICAgIHBhdGggIi9ydDpyb3V0aW5nLXN0YXRlLyINCiAgICAgICAgKyJydDpjb250cm9sLXBs
YW5lLXByb3RvY29scy9ydDpjb250cm9sLXBsYW5lLXByb3RvY29sLyINCiAgICAgICAgKyJydDpu
YW1lIjsNCiAgICAgIH0NCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyB0eXBlIGlz
IHVzZWQgZm9yIGxlYXZlcyB0aGF0IHJlZmVyZW5jZSBzdGF0ZSBkYXRhIG9mDQogICAgICAgICAg
YW4gSVNJUyBwcm90b2NvbCBpbnN0YW5jZS4iOw0KICAgIH0NCg0KICAgIHR5cGVkZWYgY2lyY3Vp
dC1pZCB7DQogICAgICB0eXBlIHVpbnQ4Ow0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiVGhp
cyB0eXBlIGRlZmluZXMgdGhlIGNpcmN1aXQgSUQNCiAgICAgICBhc3NvY2lhdGVkIHdpdGggYW4g
aW50ZXJmYWNlLiI7DQogICAgfQ0KDQogICAgdHlwZWRlZiBleHRlbmRlZC1jaXJjdWl0LWlkIHsN
CiAgICAgIHR5cGUgdWludDMyOw0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiVGhpcyB0eXBl
IGRlZmluZXMgdGhlIGV4dGVuZGVkIGNpcmN1aXQgSUQNCiAgICAgICBhc3NvY2lhdGVkIHdpdGgg
YW4gaW50ZXJmYWNlLiI7DQogICAgfQ0KDQogICAgdHlwZWRlZiBpbnRlcmZhY2UtdHlwZSB7DQog
ICAgICB0eXBlIGVudW1lcmF0aW9uIHsNCiAgICAgICAgZW51bSBicm9hZGNhc3Qgew0KICAgICAg
ICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgIkJyb2FkY2FzdCBpbnRlcmZhY2UgdHlwZS4iOw0K
ICAgICAgICB9DQogICAgICAgIGVudW0gcG9pbnQtdG8tcG9pbnQgew0KICAgICAgICAgIGRlc2Ny
aXB0aW9uDQogICAgICAgICAgICJQb2ludCB0byBwb2ludCBpbnRlcmZhY2UgdHlwZS4iOw0KICAg
ICAgICB9DQogICAgICB9DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJUaGlzIHR5cGUgZGVm
aW5lcyB0aGUgdHlwZSBvZiBhZGphY2VuY3kNCiAgICAgICB0byBiZSBlc3RhYmxpc2hlZCBvbiB0
aGUgaW50ZXJmYWNlLg0KICAgICAgIFRoaXMgaXMgYWZmZWN0aW5nIHRoZSB0eXBlIG9mIGhlbGxv
DQogICAgICAgbWVzc2FnZSB0aGF0IHdvdWxkIGJlIHVzZWQuIjsNCg0KICAgIH0NCg0KICAgIHR5
cGVkZWYgbGV2ZWwgew0KICAgICAgdHlwZSBlbnVtZXJhdGlvbiB7DQogICAgICAgIGVudW0gImxl
dmVsLTEiIHsNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiVGhpcyBlbnVtIGRl
c2NyaWJlcyBMMSBvbmx5IGNhcGFiaWxpdHkuIjsNCiAgICAgICAgfQ0KICAgICAgICBlbnVtICJs
ZXZlbC0yIiB7DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgIlRoaXMgZW51bSBk
ZXNjcmliZXMgTDIgb25seSBjYXBhYmlsaXR5LiI7DQogICAgICAgIH0NCiAgICAgICAgZW51bSAi
bGV2ZWwtYWxsIiB7DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgIlRoaXMgZW51
bSBkZXNjcmliZXMgYm90aCBsZXZlbHMgY2FwYWJpbGl0eS4iOw0KICAgICAgICB9DQogICAgICB9
DQogICAgICBkZWZhdWx0ICJsZXZlbC1hbGwiOw0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAi
VGhpcyB0eXBlIGRlZmluZXMgSVNJUyBsZXZlbCBvZiBhbiBvYmplY3QuIjsNCg0KICAgIH0NCg0K
ICAgIHR5cGVkZWYgYWRqLXN0YXRlLXR5cGUgew0KICAgICAgIHR5cGUgZW51bWVyYXRpb24gew0K
ICAgICAgICAgIGVudW0gIlVwIiB7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAg
ICAgICJUaGlzIHN0YXRlIGRlc2NyaWJlcyB0aGF0DQogICAgICAgICAgICAgIGFkamFjZW5jeSBp
cyBlc3RhYmxpc2hlZC4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBlbnVtICJEb3duIiB7DQog
ICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGlzIHN0YXRlIGRlc2NyaWJl
cyB0aGF0DQogICAgICAgICAgICAgIGFkamFjZW5jeSBpcyBOT1QgZXN0YWJsaXNoZWQuIjsNCiAg
ICAgICAgICB9DQogICAgICAgICAgZW51bSAiSW5pdCIgew0KICAgICAgICAgICAgZGVzY3JpcHRp
b24NCiAgICAgICAgICAgICAiVGhpcyBzdGF0ZSBkZXNjcmliZXMgdGhhdA0KICAgICAgICAgICAg
ICBhZGphY2VuY3kgaXMgZXN0YWJsaXNoaW5nLiI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGVu
dW0gIkZhaWxlZCIgew0KICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAiVGhp
cyBzdGF0ZSBkZXNjcmliZXMgdGhhdA0KICAgICAgICAgICAgICBhZGphY2VuY3kgaXMgZmFpbGVk
LiI7DQogICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAg
ICJUaGlzIHR5cGUgZGVmaW5lcyBzdGF0ZXMgb2YgYW4gYWRqYWNlbmN5IjsNCiAgICB9DQoNCiAg
ICB0eXBlZGVmIGlmLXN0YXRlLXR5cGUgew0KICAgICAgIHR5cGUgZW51bWVyYXRpb24gew0KICAg
ICAgICAgIGVudW0gIlVwIiB7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAg
ICJVcCBzdGF0ZS4iOw0KDQogICAgICAgICAgfQ0KICAgICAgICAgIGVudW0gIkRvd24iIHsNCiAg
ICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgIkRvd24gc3RhdGUiOw0KICAgICAg
ICAgIH0NCiAgICAgICAgfQ0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAiVGhpcyB0eXBl
IGRlZmluZXMgc3RhdGVzIG9mIGFuIGludGVyZmFjZSI7DQogICAgfQ0KDQogICAgdHlwZWRlZiBs
ZXZlbC1udW1iZXIgew0KICAgICAgdHlwZSB1aW50OCB7DQogICAgICAgIHJhbmdlICIxIC4uIDIi
Ow0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiVGhpcyB0eXBlIGRlZmluZXMg
YSBjdXJyZW50IElTSVMgbGV2ZWwuIjsNCiAgICB9DQoNCiAgICB0eXBlZGVmIGxzcC1pZCB7DQog
ICAgICB0eXBlIHN0cmluZyB7DQogICAgICAgIHBhdHRlcm4NCiAgICAgICAgICdbMC05QS1GYS1m
XXs0fVwuWzAtOUEtRmEtZl17NH1cLlswLTlBLUZhLWZdJw0KICAgICAgICAgICAgICAgKyd7NH1c
LlswLTldWzAtOV0tWzAtOV1bMC05XSc7DQogICAgICB9DQogICAgICBkZXNjcmlwdGlvbg0KICAg
ICAgICJUaGlzIHR5cGUgZGVmaW5lcyBJU0lTIExTUCBJRCB1c2luZyBwYXR0ZXJuLA0KICAgICAg
ICBzeXN0ZW0gaWQgbG9va3MgbGlrZSA6IDAxNDMuMDQzOC5BZUYwLjAyLTAxIjsNCiAgICB9DQoN
CiAgICB0eXBlZGVmIGFyZWEtYWRkcmVzcyB7DQogICAgICB0eXBlIHN0cmluZyB7DQogICAgICAg
IHBhdHRlcm4gJ1swLTlBLUZhLWZdezJ9XC4oWzAtOUEtRmEtZl17NH1cLil7MCwzfSc7DQogICAg
ICB9DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJUaGlzIHR5cGUgZGVmaW5lcyB0aGUgYXJl
YSBhZGRyZXNzIGZvcm1hdC4iOw0KICAgIH0NCg0KICAgIHR5cGVkZWYgc25wYSB7DQogICAgICB0
eXBlIHN0cmluZyB7DQogICAgICAgIGxlbmd0aCAiMCAuLiAyMCI7DQogICAgICB9DQogICAgICBk
ZXNjcmlwdGlvbg0KICAgICAgICJUaGlzIHR5cGUgZGVmaW5lcyBTdWJuZXR3b3JrIFBvaW50DQog
ICAgICAgIG9mIEF0dGFjaGVtZW50IGZvcm1hdC4iOw0KICAgIH0NCg0KICAgIHR5cGVkZWYgc3lz
dGVtLWlkIHsNCiAgICAgIHR5cGUgc3RyaW5nIHsNCiAgICAgICAgcGF0dGVybg0KICAgICAgICAg
J1swLTlBLUZhLWZdezR9XC5bMC05QS1GYS1mXXs0fVwuWzAtOUEtRmEtZl17NH0nOw0KICAgICAg
fQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiVGhpcyB0eXBlIGRlZmluZXMgSVNJUyBzeXN0
ZW0gaWQgdXNpbmcgcGF0dGVybiwNCiAgICAgICAgc3lzdGVtIGlkIGxvb2tzIGxpa2UgOiAwMTQz
LjA0MzguQWVGMCI7DQogICAgfQ0KDQogICAgdHlwZWRlZiB3aWRlLW1ldHJpYyB7DQogICAgICB0
eXBlIHVpbnQzMiB7DQogICAgICAgIHJhbmdlICIwIC4uIDE2Nzc3MjE1IjsNCiAgICAgIH0NCiAg
ICAgIGRlc2NyaXB0aW9uDQogICAgICAgIlRoaXMgdHlwZSBkZWZpbmVzIHdpZGUgc3R5bGUgZm9y
bWF0DQogICAgICAgIG9mIElTSVMgbWV0cmljLiI7DQogICAgfQ0KDQogICAgdHlwZWRlZiBzdGQt
bWV0cmljIHsNCiAgICAgIHR5cGUgdWludDggew0KICAgICAgICByYW5nZSAiMCAuLiA2MyI7DQog
ICAgICB9DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJUaGlzIHR5cGUgZGVmaW5lcyBvbGQg
c3R5bGUgZm9ybWF0DQogICAgICAgIG9mIElTSVMgbWV0cmljLiI7DQogICAgfQ0KDQogICAgdHlw
ZWRlZiBtZXNoLWdyb3VwLXN0YXRlIHsNCiAgICAgIHR5cGUgZW51bWVyYXRpb24gew0KICAgICAg
ICBlbnVtICJtZXNoSW5hY3RpdmUiIHsNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAg
ICAiSW50ZXJmYWNlIGlzIG5vdCBwYXJ0IG9mIGEgbWVzaCBncm91cC4iOw0KICAgICAgICB9DQog
ICAgICAgIGVudW0gIm1lc2hTZXQiIHsNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAg
ICAiSW50ZXJmYWNlIGlzIHBhcnQgb2YgYSBtZXNoIGdyb3VwLiI7DQogICAgICAgIH0NCiAgICAg
ICAgZW51bSAibWVzaEJsb2NrZWQiIHsNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAg
ICAiTFNQcyBtdXN0IG5vdCBiZSBmbG9vZGVkIG92ZXIgdGhhdCBpbnRlcmZhY2UuIjsNCiAgICAg
ICAgfQ0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiVGhpcyB0eXBlIGRlc2Ny
aWJlcyBtZXNoZ3JvdXAgc3RhdGUgb2YgYW4gaW50ZXJmYWNlIjsNCiAgICB9DQoNCg0KICAgIC8q
IEdyb3VwaW5nIGRlZmluaXRpb25zIGZvciBjb25maWd1cmF0aW9uIGFuZCBvcHMgc3RhdGUgKi8N
Cg0KDQogICAgZ3JvdXBpbmcgYWRqYWNlbmN5LXN0YXRlIHsNCiAgICAgY29udGFpbmVyIGFkamFj
ZW5jaWVzIHsNCiAgICAgICAgY29uZmlnIGZhbHNlOw0KICAgICAgICBsaXN0IGFkamFjZW5jeSB7
DQogICAgICAgICAgbGVhZiBuZWlnaGJvci1zeXN0eXBlIHsNCiAgICAgICAgICAgIHR5cGUgbGV2
ZWw7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUeXBlIG9mIG5laWdo
Ym9yaW5nIHN5c3RlbSI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGxlYWYgbmVpZ2hib3Itc3lz
aWQgew0KICAgICAgICAgICAgdHlwZSBzeXN0ZW0taWQ7DQogICAgICAgICAgICBkZXNjcmlwdGlv
bg0KICAgICAgICAgICAgICJUaGUgc3lzdGVtLWlkIG9mIHRoZSBuZWlnaGJvciI7DQogICAgICAg
ICAgfQ0KICAgICAgICAgIGxlYWYgbmVpZ2hib3ItZXh0ZW5kZWQtY2lyY3VpdC1pZCB7DQogICAg
ICAgICAgICB0eXBlIGV4dGVuZGVkLWNpcmN1aXQtaWQ7DQogICAgICAgICAgICBkZXNjcmlwdGlv
bg0KICAgICAgICAgICAgICJDaXJjdWl0IElEIG9mIHRoZSBuZWlnaGJvciI7DQogICAgICAgICAg
fQ0KICAgICAgICAgIGxlYWYgbmVpZ2hib3Itc25wYSB7DQogICAgICAgICAgICB0eXBlIHNucGE7
DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJTTlBBIG9mIHRoZSBuZWln
aGJvciI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGxlYWYgdXNhZ2Ugew0KICAgICAgICAgICAg
dHlwZSBsZXZlbDsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAiSG93IGlz
IHRoZSBhZGphY2VuY3kgdXNlZCA/DQogICAgICAgICAgICBPbiBhIHAycCBsaW5rIHRoaXMgbWln
aHQgYmUgbGV2ZWwgMSBhbmQgMiwNCiAgICAgICAgICAgIGJ1dCBvbiBhIExBTiwgdGhlIHVzYWdl
IHdpbGwgYmUgbGV2ZWwgMQ0KICAgICAgICAgICAgYmV0d2VlbiBwZWVycyBhdCBMMSBvciBsZXZl
bCAyIGJldHdlZW4NCiAgICAgICAgICAgIHBlZXJzIGF0IEwyLiI7DQogICAgICAgICAgfQ0KICAg
ICAgICAgIGxlYWYgaG9sZC10aW1lciB7DQogICAgICAgICAgICB0eXBlIHJ0LXR5cGVzOnRpbWVy
LXZhbHVlLXNlY29uZHMxNjsNCiAgICAgICAgICAgIHVuaXRzIHNlY29uZHM7DQogICAgICAgICAg
ICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGUgaG9sZGluZyB0aW1lIGluIHNlY29uZHMg
Zm9yIHRoaXMNCiAgICAgICAgICAgICAgYWRqYWNlbmN5LiBUaGlzIHZhbHVlIGlzIGJhc2VkIG9u
DQogICAgICAgICAgICAgIHJlY2VpdmVkIGhlbGxvIFBEVXMgYW5kIHRoZSBlbGFwc2VkDQogICAg
ICAgICAgICAgIHRpbWUgc2luY2UgcmVjZWlwdC4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBs
ZWFmIG5laWdoYm9yLXByaW9yaXR5IHsNCiAgICAgICAgICAgIHR5cGUgdWludDggew0KICAgICAg
ICAgICAgICByYW5nZSAiMCAuLiAxMjciOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZGVz
Y3JpcHRpb24NCiAgICAgICAgICAgICAiUHJpb3JpdHkgb2YgdGhlIG5laWdoYm9yaW5nIElTIGZv
ciBiZWNvbWluZw0KICAgICAgICAgICAgICB0aGUgRElTLiI7DQogICAgICAgICAgfQ0KICAgICAg
ICAgIGxlYWYgbGFzdHVwdGltZSB7DQogICAgICAgICAgICB0eXBlIHlhbmc6dGltZXN0YW1wOw0K
ICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAiV2hlbiB0aGUgYWRqYWNlbmN5
IG1vc3QgcmVjZW50bHkgZW50ZXJlZA0KICAgICAgICAgICAgICBzdGF0ZSAndXAnLCBtZWFzdXJl
ZCBpbiBodW5kcmVkdGhzIG9mIGENCiAgICAgICAgICAgICAgc2Vjb25kIHNpbmNlIHRoZSBsYXN0
IHJlaW5pdGlhbGl6YXRpb24gb2YNCiAgICAgICAgICAgICAgdGhlIG5ldHdvcmsgbWFuYWdlbWVu
dCBzdWJzeXN0ZW0uDQogICAgICAgICAgICAgIFRoZSB2YWx1ZSBpcyAwIGlmIHRoZSBhZGphY2Vu
Y3kgaGFzIG5ldmVyDQogICAgICAgICAgICAgIGJlZW4gaW4gc3RhdGUgJ3VwJy4iOw0KICAgICAg
ICAgIH0NCiAgICAgICAgICBsZWFmIHN0YXRlIHsNCiAgICAgICAgICAgIHR5cGUgYWRqLXN0YXRl
LXR5cGU7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGlzIGxlYWYg
ZGVzY3JpYmVzIHRoZSBzdGF0ZSBvZiB0aGUNCiAgICAgICAgICAgICBpbnRlcmZhY2UuIjsNCiAg
ICAgICAgICB9DQoNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiTGlzdCBvZiBv
cGVyYXRpb25hbCBhZGphY2VuY2llcy4iOw0KICAgICAgICB9DQogICAgICAgIGRlc2NyaXB0aW9u
DQogICAgICAgICAiVGhpcyBjb250YWluZXIgbGlzdHMgdGhlIGFkamFjZW5jaWVzIG9mDQogICAg
ICAgICB0aGUgbG9jYWwgbm9kZS4iOw0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAg
ICAiQWRqYWNlbmN5IHN0YXRlIjsNCiAgICB9DQoNCiAgICBncm91cGluZyBmYXN0LXJlcm91dGUt
Z2xvYmFsLXN0YXRlIHsNCiAgICAgICAgY29udGFpbmVyIHByb3RlY3RlZC1yb3V0ZXMgew0KICAg
ICAgICAgIGNvbmZpZyBmYWxzZTsNCiAgICAgICAgICBsaXN0IGFmLXN0YXRzIHsNCiAgICAgICAg
ICAgIGtleSAiYWYgcHJlZml4IGFsdGVybmF0ZSI7DQoNCiAgICAgICAgICAgIGxlYWYgYWYgew0K
ICAgICAgICAgICAgICB0eXBlIGlkZW50aXR5cmVmIHsNCiAgICAgICAgICAgICAgICBiYXNlIGlh
bmEtcnQtdHlwZXM6YWRkcmVzcy1mYW1pbHk7DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAg
ICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJBZGRyZXNzLWZhbWlseSI7DQogICAgICAg
ICAgICB9DQogICAgICAgICAgICBsZWFmIHByZWZpeCB7DQogICAgICAgICAgICAgIHR5cGUgc3Ry
aW5nOw0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgIlByb3RlY3Rl
ZCBwcmVmaXguIjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGxlYWYgYWx0ZXJuYXRlIHsN
CiAgICAgICAgICAgICAgdHlwZSBzdHJpbmc7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQog
ICAgICAgICAgICAgICAiQWx0ZXJuYXRlIG5leHRob3AgZm9yIHRoZSBwcmVmaXguIjsNCiAgICAg
ICAgICAgIH0NCiAgICAgICAgICAgIGxlYWYgYWx0ZXJuYXRlLXR5cGUgew0KICAgICAgICAgICAg
ICB0eXBlIGVudW1lcmF0aW9uIHsNCiAgICAgICAgICAgICAgICBlbnVtIGVxdWFsY29zdCB7DQog
ICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgICAgICJFQ01QIGFs
dGVybmF0ZS4iOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICBlbnVtIGxmYSB7
DQogICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgICAgICJMRkEg
YWx0ZXJuYXRlLiI7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGVudW0gcmVt
b3RlLWxmYSB7DQogICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAg
ICAgICJSZW1vdGUgTEZBIGFsdGVybmF0ZS4iOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAg
ICAgICAgICBlbnVtIHR1bm5lbCB7DQogICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAg
ICAgICAgICAgICAgICAgICJUdW5uZWwgYmFzZWQgYWx0ZXJuYXRlDQogICAgICAgICAgICAgICAg
ICAgKGxpa2UgUlNWUC1URSBvciBHUkUpLiI7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAg
ICAgICAgIGVudW0gdGktbGZhIHsNCiAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAg
ICAgICAgICAgICAgICAgIlRJIExGQSBhbHRlcm5hdGUuIjsNCiAgICAgICAgICAgICAgICB9DQog
ICAgICAgICAgICAgICAgZW51bSBtcnQgew0KICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICAgICAgICAgICAiTVJUIGFsdGVybmF0ZS4iOw0KICAgICAgICAgICAgICAgIH0N
CiAgICAgICAgICAgICAgICBlbnVtIG90aGVyIHsNCiAgICAgICAgICAgICAgICAgIGRlc2NyaXB0
aW9uDQogICAgICAgICAgICAgICAgICAgIlVua25vd24gYWx0ZXJuYXRlIHR5cGUuIjsNCiAgICAg
ICAgICAgICAgICB9DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICAgICAgICJUeXBlIG9mIGFsdGVybmF0ZS4iOw0KICAgICAgICAgICAgfQ0KICAg
ICAgICAgICAgbGVhZiBiZXN0IHsNCiAgICAgICAgICAgICAgdHlwZSBib29sZWFuOw0KICAgICAg
ICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgImRlc2NyaWJlcyBpZiB0aGUgYWx0
ZXJuYXRlIGlzIHRoZSBiZXN0IG9uZS4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgbGVh
ZiBub24tYmVzdC1yZWFzb24gew0KICAgICAgICAgICAgICB0eXBlIHN0cmluZzsNCiAgICAgICAg
ICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJJbmZvcm1hdGlvbiBmaWVsZCB0byBk
ZXNjcmliZSB3aHkgdGhlIGFsdGVybmF0ZQ0KICAgICAgICAgICAgICAgaXMgbm90IGJlc3QuIjsN
CiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGxlYWYgcHJvdGVjdGlvbi1hdmFpbGFibGUgew0K
ICAgICAgICAgICAgICB0eXBlIGJpdHMgew0KICAgICAgICAgICAgICAgIGJpdCBub2RlcHJvdGVj
dCB7DQogICAgICAgICAgICAgICAgICBwb3NpdGlvbiAwOw0KICAgICAgICAgICAgICAgICAgZGVz
Y3JpcHRpb24NCiAgICAgICAgICAgICAgICAgICJOb2RlIHByb3RlY3Rpb24gYXZhaWxhYmxlLiI7
DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGJpdCBsaW5rcHJvdGVjdCB7DQog
ICAgICAgICAgICAgICAgICBwb3NpdGlvbiAxOw0KICAgICAgICAgICAgICAgICAgZGVzY3JpcHRp
b24NCiAgICAgICAgICAgICAgICAgICJMaW5rIHByb3RlY3Rpb24gYXZhaWxhYmxlLiI7DQogICAg
ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGJpdCBzcmxncHJvdGVjdCB7DQogICAgICAg
ICAgICAgICAgICBwb3NpdGlvbiAyOw0KICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICAgICAgICAgICJTUkxHIHByb3RlY3Rpb24gYXZhaWxhYmxlLiI7DQogICAgICAgICAg
ICAgICAgfQ0KICAgICAgICAgICAgICAgIGJpdCBkb3duc3RyZWFtcHJvdGVjdCB7DQogICAgICAg
ICAgICAgICAgICBwb3NpdGlvbiAzOw0KICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICAgICAgICAgICJEb3duc3RyZWFtIHByb3RlY3Rpb24gYXZhaWxhYmxlLiI7DQogICAg
ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGJpdCBvdGhlciB7DQogICAgICAgICAgICAg
ICAgICBwb3NpdGlvbiA0Ow0KICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAg
ICAgICAgICAgICJPdGhlciBwcm90ZWN0aW9uIGF2YWlsYWJsZS4iOw0KICAgICAgICAgICAgICAg
IH0NCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAg
ICAgICAiRGVzY3JpYmVzIHByb3RlY3Rpb24gcHJvdmlkZWQgYnkgdGhlIGFsdGVybmF0ZS4iOw0K
ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgbGVhZiBhbHRlcm5hdGUtbWV0cmljMSB7DQogICAg
ICAgICAgICAgIHR5cGUgdWludDMyOw0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICAgICAgICAgIk1ldHJpYyBmcm9tIFBMUiB0byBkZXN0aW5hdGlvbg0KICAgICAgICAgICAgICAg
IHRocm91Z2ggdGhlIGFsdGVybmF0ZSBwYXRoLiI7DQogICAgICAgICAgICB9DQogICAgICAgICAg
ICBsZWFmIGFsdGVybmF0ZS1tZXRyaWMyIHsNCiAgICAgICAgICAgICAgdHlwZSB1aW50MzI7DQog
ICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiTWV0cmljIGZyb20gUExS
IHRvIHRoZSBhbHRlcm5hdGUgbm9kZSI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBsZWFm
IGFsdGVybmF0ZS1tZXRyaWMzIHsNCiAgICAgICAgICAgICAgdHlwZSB1aW50MzI7DQogICAgICAg
ICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiTWV0cmljIGZyb20gYWx0ZXJuYXRl
IG5vZGUgdG8gdGhlIGRlc3RpbmF0aW9uIjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGRl
c2NyaXB0aW9uDQogICAgICAgICAgICAgIlBlciBBRiBzdGF0aXN0aWNzLiI7DQogICAgICAgICAg
fQ0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJMaXN0IG9mIHByZWZpeGVzIHRo
YXQgYXJlIHByb3RlY3RlZC4iOw0KICAgICAgICB9DQoNCiAgICAgICAgY29udGFpbmVyIG5vbnBy
b3RlY3RlZC1yb3V0ZXMgew0KICAgICAgICAgICBjb25maWcgZmFsc2U7DQogICAgICAgICAgIGxp
c3QgYWYtc3RhdHMgew0KICAgICAgICAgICAga2V5ICJhZiBwcmVmaXgiOw0KDQogICAgICAgICAg
ICBsZWFmIGFmIHsNCiAgICAgICAgICAgICAgdHlwZSBpZGVudGl0eXJlZiB7DQogICAgICAgICAg
ICAgICAgYmFzZSBpYW5hLXJ0LXR5cGVzOmFkZHJlc3MtZmFtaWx5Ow0KICAgICAgICAgICAgICB9
DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiQWRkcmVzcy1mYW1p
bHkiOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgbGVhZiBwcmVmaXggew0KICAgICAgICAg
ICAgICB0eXBlIHN0cmluZzsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAg
ICAgICJQcm90ZWN0ZWQgcHJlZml4LiI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBkZXNj
cmlwdGlvbg0KICAgICAgICAgICAgICJQZXIgQUYgc3RhdGlzdGljcy4iOw0KICAgICAgICAgIH0N
CiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiTGlzdCBvZiBwcmVmaXhlcyB0aGF0
IGFyZSBub3QgcHJvdGVjdGVkLiI7DQogICAgICAgIH0NCg0KICAgICAgICBsaXN0IHByb3RlY3Rp
b24tc3RhdGlzdGljcyB7DQogICAgICAgICAga2V5IGZyci1wcm90ZWN0aW9uLW1ldGhvZDsNCiAg
ICAgICAgICBjb25maWcgZmFsc2U7DQogICAgICAgICAgbGVhZiBmcnItcHJvdGVjdGlvbi1tZXRo
b2Qgew0KICAgICAgICAgICAgdHlwZSBzdHJpbmc7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0K
ICAgICAgICAgICAgICJQcm90ZWN0aW9uIG1ldGhvZCB1c2VkLiI7DQogICAgICAgICAgfQ0KICAg
ICAgICAgIGxpc3QgYWYtc3RhdHMgew0KICAgICAgICAgICAga2V5IGFmOw0KDQogICAgICAgICAg
ICBsZWFmIGFmIHsNCiAgICAgICAgICAgICAgdHlwZSBpZGVudGl0eXJlZiB7DQogICAgICAgICAg
ICAgICAgYmFzZSBpYW5hLXJ0LXR5cGVzOmFkZHJlc3MtZmFtaWx5Ow0KICAgICAgICAgICAgICB9
DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiQWRkcmVzcy1mYW1p
bHkiOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgbGVhZiB0b3RhbC1yb3V0ZXMgew0KICAg
ICAgICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAg
ICAgICAgICAgICJUb3RhbCBwcmVmaXhlcy4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAg
bGVhZiB1bnByb3RlY3RlZC1yb3V0ZXMgew0KICAgICAgICAgICAgICB0eXBlIHVpbnQzMjsNCiAg
ICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICAiVG90YWwgb2YgcHJlZml4
ZXMgd2hvIGFyZQ0KICAgICAgICAgICAgICAgIG5vdCBwcm90ZWN0ZWQuIjsNCiAgICAgICAgICAg
IH0NCiAgICAgICAgICAgIGxlYWYgcHJvdGVjdGVkLXJvdXRlcyB7DQogICAgICAgICAgICAgIHR5
cGUgdWludDMyOw0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgICJU
b3RhbCBvZiBwcmVmaXhlcyB3aG8gYXJlDQogICAgICAgICAgICAgICAgcHJvdGVjdGVkLiI7DQog
ICAgICAgICAgICB9DQogICAgICAgICAgICBsZWFmIGxpbmtwcm90ZWN0ZWQtcm91dGVzIHsNCiAg
ICAgICAgICAgICAgdHlwZSB1aW50MzI7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAg
ICAgICAgICAgICAgIlRvdGFsIG9mIHByZWZpeGVzIHdobyBhcmUNCiAgICAgICAgICAgICAgICBs
aW5rIHByb3RlY3RlZC4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgbGVhZiBub2RlcHJv
dGVjdGVkLXJvdXRlcyB7DQogICAgICAgICAgICAgIHR5cGUgdWludDMyOw0KICAgICAgICAgICAg
ICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgICJUb3RhbCBvZiBwcmVmaXhlcyB3aG8gYXJl
DQogICAgICAgICAgICAgICAgbm9kZSBwcm90ZWN0ZWQuIjsNCiAgICAgICAgICAgIH0NCiAgICAg
ICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgIlBlciBBRiBzdGF0aXN0aWNzLiI7DQog
ICAgICAgICAgfQ0KDQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgIkdsb2JhbCBw
cm90ZWN0aW9uIHN0YXRpc3RpY3MuIjsNCiAgICAgICAgfQ0KICAgICAgICBkZXNjcmlwdGlvbg0K
ICAgICAgICAgIklQRlJSIHN0YXRlcy4iOw0KICAgIH0NCg0KICAgIGdyb3VwaW5nIG5vdGlmaWNh
dGlvbi1pbnN0YW5jZS1oZHIgew0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiVGhpcyBncm91
cCBkZXNjcmliZXMgY29tbW9uIGluc3RhbmNlIHNwZWNpZmljDQogICAgICAgIGRhdGEgZm9yIG5v
dGlmaWNhdGlvbnMuIjsNCiAgICAgIGxlYWYgcm91dGluZy1pbnN0YW5jZSB7DQogICAgICAgIHR5
cGUgc3RyaW5nOw0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIkRlc2NyaWJlcyB0aGUg
bmFtZSBvZiB0aGUgcm91dGluZy1pbnN0YW5jZSBpbnN0YW5jZS4iOw0KICAgICAgfQ0KICAgICAg
bGVhZiByb3V0aW5nLXByb3RvY29sLW5hbWUgew0KICAgICAgICB0eXBlIHN0cmluZzsNCiAgICAg
ICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJEZXNjcmliZXMgdGhlIG5hbWUgb2YgdGhlIElTSVMg
aW5zdGFuY2UuIjsNCiAgICAgIH0NCiAgICAgIGxlYWYgaXNpcy1sZXZlbCB7DQogICAgICAgIHR5
cGUgbGV2ZWw7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiRGVzY3JpYmVzIHRoZSBJ
U0lTIGxldmVsIG9mIHRoZSBpbnN0YW5jZS4iOw0KICAgICAgfQ0KICAgIH0NCg0KICAgIGdyb3Vw
aW5nIG5vdGlmaWNhdGlvbi1pbnRlcmZhY2UtaGRyIHsNCiAgICAgIGRlc2NyaXB0aW9uDQogICAg
ICAgIlRoaXMgZ3JvdXAgZGVzY3JpYmVzIGNvbW1vbiBpbnRlcmZhY2Ugc3BlY2lmaWMNCiAgICAg
ICAgZGF0YSBmb3Igbm90aWZpY2F0aW9ucy4iOw0KICAgICAgbGVhZiBpbnRlcmZhY2UtbmFtZSB7
DQogICAgICAgIHR5cGUgc3RyaW5nOw0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIkRl
c2NyaWJlcyB0aGUgbmFtZSBvZiB0aGUgSVNJUyBpbnRlcmZhY2UuIjsNCiAgICAgIH0NCiAgICAg
IGxlYWYgaW50ZXJmYWNlLWxldmVsIHsNCiAgICAgICAgdHlwZSBsZXZlbDsNCiAgICAgICAgZGVz
Y3JpcHRpb24NCiAgICAgICAgICJEZXNjcmliZXMgdGhlIElTSVMgbGV2ZWwgb2YgdGhlIGludGVy
ZmFjZS4iOw0KICAgICAgfQ0KICAgICAgbGVhZiBleHRlbmRlZC1jaXJjdWl0LWlkIHsNCiAgICAg
ICAgdHlwZSBleHRlbmRlZC1jaXJjdWl0LWlkOw0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICAgIkRlc2NyaWJlcyB0aGUgZXh0ZW5kZWQgY2lyY3VpdC1pZCBvZiB0aGUgaW50ZXJmYWNlLiI7
DQogICAgICB9DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgcm91dGUtY29udGVudCB7DQogICAgICBk
ZXNjcmlwdGlvbg0KICAgICAgICJUaGlzIGdyb3VwIGFkZCBpc2lzLXNwZWNpZmljIHJvdXRlIHBy
b3BlcnRpZXMuIjsNCiAgICAgIGxlYWYgbWV0cmljIHsNCiAgICAgICAgdHlwZSB1aW50MzI7DQog
ICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyBJU0lTIG1l
dHJpYyBvZiBhIHJvdXRlLiI7DQogICAgICB9DQogICAgICBsZWFmLWxpc3QgdGFnIHsNCiAgICAg
ICAgdHlwZSB1aW50NjQ7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBsZWFm
IGRlc2NyaWJlcyBsaXN0IG9mIHRhZ3MgYXNzb2NpYXRlZA0KICAgICAgICAgIHdpdGggdGhlIHJv
dXRlLiBUaGUgbGVhZiBkZXNjcmliZXMgYm90aA0KICAgICAgICAgIDMyYml0cyBhbmQgNjRiaXRz
IHRhZ3MuIjsNCiAgICAgIH0NCiAgICAgIGxlYWYgcm91dGUtdHlwZSB7DQogICAgICAgIHR5cGUg
ZW51bWVyYXRpb24gew0KICAgICAgICAgIGVudW0gbDItdXAtaW50ZXJuYWwgew0KICAgICAgICAg
ICAgZGVzY3JpcHRpb24gIkxldmVsIDIgaW50ZXJuYWwgcm91dGUNCiAgICAgICAgICAgICBhbmQg
bm90IGxlYWtlZCB0byBhIGxvd2VyIGxldmVsIjsNCiAgICAgICAgICB9DQogICAgICAgICAgZW51
bSBsMS11cC1pbnRlcm5hbCB7DQogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTGV2ZWwgMSBpbnRl
cm5hbCByb3V0ZQ0KICAgICAgICAgICAgIGFuZCBub3QgbGVha2VkIHRvIGEgbG93ZXIgbGV2ZWwi
Ow0KICAgICAgICAgIH0NCiAgICAgICAgICBlbnVtIGwyLXVwLWV4dGVybmFsIHsNCiAgICAgICAg
ICAgIGRlc2NyaXB0aW9uICJMZXZlbCAyIGV4dGVybmFsIHJvdXRlDQogICAgICAgICAgICAgYW5k
IG5vdCBsZWFrZWQgdG8gYSBsb3dlciBsZXZlbCI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGVu
dW0gbDEtdXAtZXh0ZXJuYWwgew0KICAgICAgICAgICAgZGVzY3JpcHRpb24gIkxldmVsIDEgZXh0
ZXJuYWwgcm91dGUNCiAgICAgICAgICAgICBhbmQgbm90IGxlYWtlZCB0byBhIGxvd2VyIGxldmVs
IjsNCiAgICAgICAgICB9DQogICAgICAgICAgZW51bSBsMi1kb3duLWludGVybmFsIHsNCiAgICAg
ICAgICAgIGRlc2NyaXB0aW9uICJMZXZlbCAyIGludGVybmFsIHJvdXRlDQogICAgICAgICAgICAg
YW5kIGxlYWtlZCB0byBhIGxvd2VyIGxldmVsIjsNCiAgICAgICAgICB9DQogICAgICAgICAgZW51
bSBsMS1kb3duLWludGVybmFsIHsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJMZXZlbCAxIGlu
dGVybmFsIHJvdXRlDQogICAgICAgICAgICAgYW5kIGxlYWtlZCB0byBhIGxvd2VyIGxldmVsIjsN
CiAgICAgICAgICB9DQogICAgICAgICAgZW51bSBsMi1kb3duLWV4dGVybmFsIHsNCiAgICAgICAg
ICAgIGRlc2NyaXB0aW9uICJMZXZlbCAyIGV4dGVybmFsIHJvdXRlDQogICAgICAgICAgICAgYW5k
IGxlYWtlZCB0byBhIGxvd2VyIGxldmVsIjsNCiAgICAgICAgICB9DQogICAgICAgICAgZW51bSBs
MS1kb3duLWV4dGVybmFsIHsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJMZXZlbCAxIGV4dGVy
bmFsIHJvdXRlDQogICAgICAgICAgICAgYW5kIGxlYWtlZCB0byBhIGxvd2VyIGxldmVsIjsNCiAg
ICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlz
IGxlYWYgZGVzY3JpYmVzIHRoZSB0eXBlIG9mIElTSVMgcm91dGUuIjsNCiAgICAgIH0NCiAgICB9
DQoNCiAgICBncm91cGluZyBhZG1pbi1jb250cm9sIHsNCiAgICAgIGxlYWYgZW5hYmxlIHsNCiAg
ICAgICAgICBpZi1mZWF0dXJlIGFkbWluLWNvbnRyb2w7DQogICAgICAgICAgdHlwZSBib29sZWFu
Ow0KICAgICAgICAgIGRlZmF1bHQgdHJ1ZTsNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICAgICAgICAgIkNvbnRyb2wgdGhlIGFkbWluaXN0cmF0aXZlDQogICAgICAgICAgICAgICBzdGF0
ZS4iOw0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiR3JvdXBpbmcgZm9yIGFk
bWluIGNvbnRyb2wuIjsNCiAgICB9DQoNCiAgICBncm91cGluZyBmYXN0LXJlcm91dGUtZ2xvYmFs
LWNmZyB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJUaGlzIGdyb3VwIGRlZmluZXMgZ2xv
YmFsDQogICAgICAgY29uZmlndXJhdGlvbiBvZiBJUEZSUi4iOw0KICAgICAgY29udGFpbmVyIGxm
YSB7DQogICAgICAgIGlmLWZlYXR1cmUgbGZhOw0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICAgICJUaGlzIGNvbnRhaW5lciBtYXkgYmUNCiAgICAgICAgICBhdWdtZW50ZWQgd2l0aCBnbG9i
YWwgcGFyYW1ldGVycw0KICAgICAgICAgIGZvciBMRkEuDQogICAgICAgICAgQ3JlYXRpbmcgdGhl
IGNvbnRhaW5lciBoYXMgbm8gZWZmZWN0IG9uDQogICAgICAgICAgTEZBIGFjdGl2YXRpb24uIjsN
CiAgICAgIH0NCiAgICB9DQoNCiAgICBncm91cGluZyBmYXN0LXJlcm91dGUtaWYtY2ZnIHsNCiAg
ICAgIGRlc2NyaXB0aW9uDQogICAgICAgIlRoaXMgZ3JvdXAgZGVmaW5lcyBpbnRlcmZhY2UNCiAg
ICAgICBjb25maWd1cmF0aW9uIG9mIElQRlJSLiI7DQogICAgICAgIGNvbnRhaW5lciBsZmEgew0K
ICAgICAgICAgIGlmLWZlYXR1cmUgbGZhOw0KICAgICAgICAgIHVzZXMgbGZhLWlmLWNmZzsNCiAg
ICAgICAgICBjb250YWluZXIgbGV2ZWwtMSB7DQogICAgICAgICAgICAgIHVzZXMgbGZhLWlmLWNm
ZzsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJMRkEgbGV2ZWwg
MSBjb25maWciOw0KICAgICAgICAgIH0NCiAgICAgICAgICBjb250YWluZXIgbGV2ZWwtMiB7DQog
ICAgICAgICAgICAgIHVzZXMgbGZhLWlmLWNmZzsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICAgICAgICJMRkEgbGV2ZWwgMiBjb25maWciOw0KICAgICAgICAgIH0NCiAgICAg
ICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAiTEZBIGNvbmZpZyI7DQogICAgICAgIH0N
CiAgICB9DQoNCiAgICBncm91cGluZyBpZXRmLXNwZi1kZWxheS1jZmcgew0KICAgICAgbGVhZiBp
bml0aWFsLWRlbGF5IHsNCiAgICAgICAgICB0eXBlIHJ0LXR5cGVzOnRpbWVyLXZhbHVlLW1pbGxp
c2Vjb25kczsNCiAgICAgICAgICB1bml0cyBtc2VjOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQog
ICAgICAgICAgICJEZWxheSB1c2VkIHdoaWxlIGluIFFVSUVUIHN0YXRlLiI7DQogICAgICB9DQog
ICAgICBsZWFmIHNob3J0LWRlbGF5IHsNCiAgICAgICAgICB0eXBlIHJ0LXR5cGVzOnRpbWVyLXZh
bHVlLW1pbGxpc2Vjb25kczsNCiAgICAgICAgICB1bml0cyBtc2VjOw0KICAgICAgICAgIGRlc2Ny
aXB0aW9uDQogICAgICAgICAgICJEZWxheSB1c2VkIHdoaWxlIGluIFNIT1JUX1dBSVQgc3RhdGUu
IjsNCiAgICAgIH0NCiAgICAgIGxlYWYgbG9uZy1kZWxheSB7DQogICAgICAgICAgdHlwZSBydC10
eXBlczp0aW1lci12YWx1ZS1taWxsaXNlY29uZHM7DQogICAgICAgICAgdW5pdHMgbXNlYzsNCiAg
ICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiRGVsYXkgdXNlZCB3aGlsZSBpbiBMT05H
X1dBSVQgc3RhdGUuIjsNCiAgICAgIH0NCg0KICAgICAgbGVhZiBob2xkLWRvd24gew0KICAgICAg
ICAgIHR5cGUgcnQtdHlwZXM6dGltZXItdmFsdWUtbWlsbGlzZWNvbmRzOw0KICAgICAgICAgIHVu
aXRzIG1zZWM7DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgIlRpbWVyIHVzZWQg
dG8gY29uc2lkZXIgYW4gSUdQIHN0YWJpbGl0eSBwZXJpb2QuIjsNCiAgICAgIH0NCiAgICAgIGxl
YWYgdGltZS10by1sZWFybiB7DQogICAgICAgICAgdHlwZSBydC10eXBlczp0aW1lci12YWx1ZS1t
aWxsaXNlY29uZHM7DQogICAgICAgICAgdW5pdHMgbXNlYzsNCiAgICAgICAgICBkZXNjcmlwdGlv
bg0KICAgICAgICAgICAiRHVyYXRpb24gdXNlZCB0byBsZWFybiBhbGwgdGhlIElHUCBldmVudHMN
CiAgICAgICAgICAgcmVsYXRlZCB0byBhIHNpbmdsZSBjb21wb25lbnQgZmFpbHVyZS4iOw0KICAg
ICAgfQ0KDQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJHcm91cGluZyBmb3IgSUVURiBTUEYg
ZGVsYXkgY29uZmlndXJhdGlvbi4iOw0KICAgIH0NCg0KICAgIGdyb3VwaW5nIGlldGYtc3BmLWRl
bGF5LXN0YXRlIHsNCiAgICAgIGxlYWYgY3VycmVudC1zdGF0ZSB7DQogICAgICAgICAgdHlwZSBl
bnVtZXJhdGlvbiB7DQogICAgICAgICAgICAgIGVudW0gIlFVSUVUIiB7DQogICAgICAgICAgICAg
ICAgICBkZXNjcmlwdGlvbiAiUVVJRVQgc3RhdGUiOw0KICAgICAgICAgICAgICB9DQogICAgICAg
ICAgICAgIGVudW0gIlNIT1JUX1dBSVQiIHsNCiAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9u
ICJTSE9SVF9XQUlUIHN0YXRlIjsNCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICBlbnVt
ICJMT05HX1dBSVQiIHsNCiAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJMT05HX1dBSVQg
c3RhdGUiOw0KICAgICAgICAgICAgICB9DQogICAgICAgICAgfQ0KICAgICAgICAgIGNvbmZpZyBm
YWxzZTsNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiQ3VycmVudCBzdGF0ZSBv
ZiB0aGUgYWxnb3JpdGhtLiI7DQogICAgICB9DQogICAgICBsZWFmIHJlbWFpbmluZy10aW1lLXRv
LWxlYXJuIHsNCiAgICAgICAgICB0eXBlIHJ0LXR5cGVzOnRpbWVyLXZhbHVlLW1pbGxpc2Vjb25k
czsNCiAgICAgICAgICB1bml0cyAibXNlYyI7DQogICAgICAgICAgY29uZmlnIGZhbHNlOw0KICAg
ICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJSZW1haW5pbmcgdGltZSB1bnRpbCB0aW1l
LXRvLWxlYXJuIHRpbWVyIGZpcmVzLiI7DQogICAgICB9DQogICAgICBsZWFmIHJlbWFpbmluZy1o
b2xkLWRvd24gew0KICAgICAgICAgIHR5cGUgcnQtdHlwZXM6dGltZXItdmFsdWUtbWlsbGlzZWNv
bmRzOw0KICAgICAgICAgIHVuaXRzICJtc2VjIjsNCiAgICAgICAgICBjb25maWcgZmFsc2U7DQog
ICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgIlJlbWFpbmluZyB0aW1lIHVudGlsIGhv
bGQtZG93biB0aW1lciBmaXJlcy4iOw0KICAgICAgfQ0KICAgICAgbGVhZiBsYXN0LWV2ZW50LXJl
Y2VpdmVkIHsNCiAgICAgICAgICB0eXBlIHlhbmc6dGltZXN0YW1wOw0KICAgICAgICAgIGNvbmZp
ZyBmYWxzZTsNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiVGltZSBvZiBsYXN0
IElHUCBldmVudCByZWNlaXZlZCI7DQogICAgICB9DQogICAgICBsZWFmIG5leHQtc3BmLXRpbWUg
ew0KICAgICAgICAgIHR5cGUgeWFuZzp0aW1lc3RhbXA7DQogICAgICAgICAgY29uZmlnIGZhbHNl
Ow0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJUaW1lIHdoZW4gbmV4dCBTUEYg
aGFzIGJlZW4gc2NoZWR1bGVkLiI7DQogICAgICB9DQogICAgICBsZWFmIGxhc3Qtc3BmLXRpbWUg
ew0KICAgICAgICAgIHR5cGUgeWFuZzp0aW1lc3RhbXA7DQogICAgICAgICAgY29uZmlnIGZhbHNl
Ow0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJUaW1lIG9mIGxhc3QgU1BGIGNv
bXB1dGF0aW9uLiI7DQogICAgICB9DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJHcm91cGlu
ZyBmb3IgSUVURiBTUEYgZGVsYXkgb3BlcmF0aW9uYWwgc3RhdGVzLiI7DQogICAgfQ0KDQogICAg
IGdyb3VwaW5nIGxvY2FsLXJpYiB7DQogICAgICBkZXNjcmlwdGlvbiAiTG9jYWwtcmliIGdyb3Vw
aW5nLiI7DQogICAgICBjb250YWluZXIgbG9jYWwtcmliIHsNCiAgICAgICAgY29uZmlnIGZhbHNl
Ow0KICAgICAgICBkZXNjcmlwdGlvbiAiTG9jYWwtcmliLiI7DQogICAgICAgIGxpc3Qgcm91dGUg
ew0KICAgICAgICAgIGtleSAicHJlZml4IjsNCiAgICAgICAgICBkZXNjcmlwdGlvbiAiUm91dGVz
IjsNCiAgICAgICAgICBsZWFmIHByZWZpeCB7DQogICAgICAgICAgICB0eXBlIGluZXQ6aXAtcHJl
Zml4Ow0KICAgICAgICAgICAgZGVzY3JpcHRpb24gIkRlc3RpbmF0aW9uIHByZWZpeC4iOw0KICAg
ICAgICAgIH0NCiAgICAgICAgICBjb250YWluZXIgbmV4dC1ob3BzIHsNCiAgICAgICAgICAgIGRl
c2NyaXB0aW9uICJBbGwgbmV4dCBob3BzIGZvciB0aGUgcm91dGUuIjsNCiAgICAgICAgICAgIGxp
c3QgbmV4dC1ob3Agew0KICAgICAgICAgICAgICBrZXkgIm5leHQtaG9wIjsNCiAgICAgICAgICAg
ICAgZGVzY3JpcHRpb24gIkxpc3Qgb2YgbmV4dCBob3AgZm9yIHRoZSByb3V0ZSI7DQogICAgICAg
ICAgICAgIGxlYWYgb3V0Z29pbmctaW50ZXJmYWNlIHsNCiAgICAgICAgICAgICAgICB0eXBlIGlm
OmludGVyZmFjZS1yZWY7DQogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAg
ICAgICAgICJOYW1lIG9mIHRoZSBvdXRnb2luZyBpbnRlcmZhY2UuIjsNCiAgICAgICAgICAgICAg
fQ0KICAgICAgICAgICAgICBsZWFmIG5leHQtaG9wIHsNCiAgICAgICAgICAgICAgIHR5cGUgaW5l
dDppcC1hZGRyZXNzOw0KICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5leHRob3AgYWRkcmVz
cy4iOw0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgfQ0KICAgICAg
ICAgIGxlYWYgbWV0cmljIHsNCiAgICAgICAgICAgIHR5cGUgdWludDMyOw0KICAgICAgICAgICAg
ZGVzY3JpcHRpb24gIk1ldHJpYyBmb3IgdGhpcyByb3V0ZS4iOw0KICAgICAgICAgIH0NCiAgICAg
ICAgICBsZWFmIGxldmVsIHsNCiAgICAgICAgICAgIHR5cGUgbGV2ZWwtbnVtYmVyOw0KICAgICAg
ICAgICAgZGVzY3JpcHRpb24gIkxldmVsIG51bWJlciBmb3IgdGhpcyByb3V0ZS4iOw0KICAgICAg
ICAgIH0NCiAgICAgICAgICBsZWFmIHJvdXRlLXRhZyB7DQogICAgICAgICAgICB0eXBlIHVpbnQz
MjsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJSb3V0ZSB0YWcgZm9yIHRoaXMgcm91dGUuIjsN
CiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9DQoNCiAgICBncm91cGluZyBp
c2lzLW5vZGUtdGFnLWNmZyB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJJU0lTIG5vZGUg
dGFnIGNvbmZpZy4iOw0KICAgICAgY29udGFpbmVyIG5vZGUtdGFncyB7DQogICAgICAgICAgaWYt
ZmVhdHVyZSBub2RlLXRhZzsNCiAgICAgICAgICBsaXN0IG5vZGUtdGFnIHsNCiAgICAgICAgICAg
IGtleSB0YWc7DQogICAgICAgICAgICBsZWFmIHRhZyB7DQogICAgICAgICAgICAgIHR5cGUgdWlu
dDMyOw0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgIk5vZGUgdGFn
IHZhbHVlLiI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICAgICAgICJMaXN0IG9mIHRhZ3MuIjsNCiAgICAgICAgICB9DQogICAgICAgICAgZGVzY3JpcHRp
b24NCiAgICAgICAgICAgICJDb250YWluZXIgZm9yIG5vZGUgdGFncy4iOw0KICAgICAgICB9DQog
ICAgfQ0KDQogICAgZ3JvdXBpbmcgYXV0aGVudGljYXRpb24tZ2xvYmFsLWNmZyB7DQogICAgICBj
aG9pY2UgYXV0aGVudGljYXRpb24tdHlwZSB7DQogICAgICAgICAgY2FzZSBrZXktY2hhaW4gew0K
ICAgICAgICAgICAgaWYtZmVhdHVyZSBrZXktY2hhaW47DQogICAgICAgICAgICBsZWFmIGtleS1j
aGFpbiB7DQogICAgICAgICAgICAgIHR5cGUga2V5LWNoYWluOmtleS1jaGFpbi1yZWY7DQogICAg
ICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAgIlJlZmVyZW5jZSB0byBhIGtl
eS1jaGFpbi4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0NCiAgICAgICAgICBjYXNlIHBh
c3N3b3JkIHsNCiAgICAgICAgICAgIGxlYWYga2V5IHsNCiAgICAgICAgICAgICAgdHlwZSBzdHJp
bmc7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiVGhpcyBsZWFm
IGRlc2NyaWJlcyB0aGUNCiAgICAgICAgICAgICAgICAgYXV0aGVudGljYXRpb24ga2V5LiI7DQog
ICAgICAgICAgICB9DQogICAgICAgICAgICBsZWFmIGNyeXB0by1hbGdvcml0aG0gew0KICAgICAg
ICAgICAgICB0eXBlIGlkZW50aXR5cmVmIHsNCiAgICAgICAgICAgICAgICAgIGJhc2Uga2V5LWNo
YWluOmNyeXB0by1hbGdvcml0aG07DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgZGVz
Y3JpcHRpb24NCiAgICAgICAgICAgICAgICAiQ3J5cHRvZ3JhcGhpYyBhbGdvcml0aG0gYXNzb2Np
YXRlZCB3aXRoIGtleS4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0NCiAgICAgICAgICBk
ZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJDaG9pY2Ugb2YgYXV0aGVudGljYXRpb24uIjsNCiAg
ICAgICAgfQ0KICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICJHcm91cGluZyBmb3IgZ2xvYmFs
IGF1dGggY29uZmlnLiI7DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgbWV0cmljLXR5cGUtZ2xvYmFs
LWNmZyB7DQogICAgICBsZWFmIHZhbHVlIHsNCiAgICAgICAgICB0eXBlIGVudW1lcmF0aW9uIHsN
CiAgICAgICAgICAgIGVudW0gd2lkZS1vbmx5IHsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICAgICAgICJBZHZlcnRpc2UgbmV3IG1ldHJpYyBzdHlsZSBvbmx5DQogICAgICAg
ICAgICAgICAoUkZDNTMwNSkiOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZW51bSBvbGQt
b25seSB7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiQWR2ZXJ0
aXNlIG9sZCBtZXRyaWMgc3R5bGUgb25seQ0KICAgICAgICAgICAgICAgKFJGQzExOTUpIjsNCiAg
ICAgICAgICAgIH0NCiAgICAgICAgICAgIGVudW0gYm90aCB7DQogICAgICAgICAgICAgIGRlc2Ny
aXB0aW9uICJBZHZlcnRpc2UgYm90aCBtZXRyaWMNCiAgICAgICAgICAgICAgc3R5bGVzIjsNCiAg
ICAgICAgICAgIH0NCiAgICAgICAgICB9DQogICAgICAgICAgZGVmYXVsdCB3aWRlLW9ubHk7DQog
ICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgIlRoaXMgbGVhZiBkZXNjcmliZXMgdGhl
IHR5cGUgb2YgbWV0cmljDQogICAgICAgICAgIHRvIGJlIGdlbmVyYXRlZC4NCiAgICAgICAgICAg
V2lkZS1vbmx5IG1lYW5zIG9ubHkgbmV3IG1ldHJpYyBzdHlsZQ0KICAgICAgICAgICBpcyBnZW5l
cmF0ZWQsDQogICAgICAgICAgIG9sZC1vbmx5IG1lYW5zIHRoYXQgb25seSBvbGQgc3R5bGUgbWV0
cmljDQogICAgICAgICAgIGlzIGdlbmVyYXRlZCwNCiAgICAgICAgICAgYW5kIGJvdGggbWVhbnMg
dGhhdCBib3RoIGFyZSBhZHZlcnRpc2VkLg0KICAgICAgICAgICBUaGlzIGxlYWYgaXMgb25seSBh
ZmZlY3RpbmcgSVB2NCBtZXRyaWNzLiI7DQogICAgICAgIH0NCiAgICAgICAgIGRlc2NyaXB0aW9u
DQogICAgICAgICJHcm91cGluZyBmb3IgZ2xvYmFsIG1ldHJpYyBzdHlsZSBjb25maWcuIjsNCiAg
ICB9DQoNCiAgICBncm91cGluZyBkZWZhdWx0LW1ldHJpYy1nbG9iYWwtY2ZnIHsNCiAgICAgIGxl
YWYgdmFsdWUgew0KICAgICAgICAgIHR5cGUgd2lkZS1tZXRyaWM7DQogICAgICAgICAgZGVmYXVs
dCAiMTAiOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAiVmFsdWUgb2YgdGhl
IG1ldHJpYyI7DQogICAgICB9DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgIkdyb3Vw
aW5nIGZvciBnbG9iYWwgZGVmYXVsdCBtZXRyaWMgY29uZmlnLiI7DQogICAgfQ0KDQoNCiAgICBn
cm91cGluZyBvdmVybG9hZC1nbG9iYWwtY2ZnIHsNCiAgICAgIGxlYWYgc3RhdHVzIHsNCiAgICAg
ICAgICB0eXBlIGJvb2xlYW47DQogICAgICAgICAgZGVmYXVsdCBmYWxzZTsNCiAgICAgICAgICBk
ZXNjcmlwdGlvbg0KICAgICAgICAgICAiVGhpcyBsZWFmIGRlZmluZXMgdGhlIG92ZXJsb2FkIHN0
YXR1cy4iOw0KICAgICAgfQ0KICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgIkdyb3Vw
aW5nIGZvciBvdmVybG9hZCBiaXQgY29uZmlnLiI7DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgb3Zl
cmxvYWQtbWF4LW1ldHJpYy1nbG9iYWwtY2ZnIHsNCiAgICAgIGxlYWYgdGltZW91dCB7DQogICAg
ICAgICAgdHlwZSBydC10eXBlczp0aW1lci12YWx1ZS1zZWNvbmRzMTY7DQogICAgICAgICAgdW5p
dHMgInNlY29uZHMiOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJUaGlzIGxl
YWYgZGVmaW5lcyB0aGUgdGltZW91dCBpbiBzZWNvbmRzDQogICAgICAgICAgICBvZiB0aGUgb3Zl
cmxvYWQgY29uZGl0aW9uLiI7DQogICAgICAgIH0NCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAg
ICAgIkdyb3VwaW5nIGZvciBvdmVybG9hZC1tYXgtbWV0cmljIGNvbmZpZy4iOw0KICAgIH0NCg0K
ICAgIGdyb3VwaW5nIHJvdXRlLXByZWZlcmVuY2UtZ2xvYmFsLWNmZyB7DQogICAgICBjaG9pY2Ug
Z3JhbnVsYXJpdHkgew0KICAgICAgICAgICAgICBjYXNlIGRldGFpbCB7DQogICAgICAgICAgICAg
ICAgbGVhZiBpbnRlcm5hbCB7DQogICAgICAgICAgICAgICAgICB0eXBlIHVpbnQ4Ow0KICAgICAg
ICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICAgICAgIlRoaXMgbGVhZiBk
ZWZpbmVzIHRoZSBwcm90b2NvbA0KICAgICAgICAgICAgICAgICAgICAgcHJlZmVyZW5jZSBmb3Ig
aW50ZXJuYWwgcm91dGVzLiI7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGxl
YWYgZXh0ZXJuYWwgew0KICAgICAgICAgICAgICAgICAgdHlwZSB1aW50ODsNCiAgICAgICAgICAg
ICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAgICAgICJUaGlzIGxlYWYgZGVmaW5l
cyB0aGUgcHJvdG9jb2wNCiAgICAgICAgICAgICAgICAgICAgIHByZWZlcmVuY2UgZm9yIGV4dGVy
bmFsIHJvdXRlcy4iOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgfQ0KICAgICAg
ICAgICAgICBjYXNlIGNvYXJzZSB7DQogICAgICAgICAgICAgICAgbGVhZiBkZWZhdWx0IHsNCiAg
ICAgICAgICAgICAgICAgIHR5cGUgdWludDg7DQogICAgICAgICAgICAgICAgICBkZXNjcmlwdGlv
bg0KICAgICAgICAgICAgICAgICAgICAiVGhpcyBsZWFmIGRlZmluZXMgdGhlIHByb3RvY29sDQog
ICAgICAgICAgICAgICAgICAgICBwcmVmZXJlbmNlIGZvciBhbGwgSVNJUyByb3V0ZXMuIjsNCiAg
ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgZGVzY3JpcHRp
b24NCiAgICAgICAgICAgICAgICJDaG9pY2UgZm9yIGltcGxlbWVudGF0aW9uIG9mIHJvdXRlIHBy
ZWZlcmVuY2UuIjsNCiAgICAgICAgICAgIH0NCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgIlRo
aXMgZ3JvdXBpbmcgZGVmaW5lcyBob3cgcm91dGUgcHJlZmVyZW5jZSBpcyBjb25maWd1cmVkLiI7
DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgaGVsbG8tYXV0aGVudGljYXRpb24tY2ZnIHsNCiAgICAg
IGNob2ljZSBhdXRoZW50aWNhdGlvbi10eXBlIHsNCiAgICAgICAgICBjYXNlIGtleS1jaGFpbiB7
DQogICAgICAgICAgICBpZi1mZWF0dXJlIGtleS1jaGFpbjsNCiAgICAgICAgICAgIGxlYWYga2V5
LWNoYWluIHsNCiAgICAgICAgICAgICAgdHlwZSBrZXktY2hhaW46a2V5LWNoYWluLXJlZjsNCiAg
ICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICAiUmVmZXJlbmNlIHRvIGEg
a2V5LWNoYWluLiI7DQogICAgICAgICAgICB9DQogICAgICAgICAgfQ0KICAgICAgICAgIGNhc2Ug
cGFzc3dvcmQgew0KICAgICAgICAgICAgbGVhZiBrZXkgew0KICAgICAgICAgICAgICB0eXBlIHN0
cmluZzsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJUaGlzIGxl
YWYgZGVzY3JpYmVzIHRoZQ0KICAgICAgICAgICAgICAgICBhdXRoZW50aWNhdGlvbiBrZXkuIjsN
CiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGxlYWYgY3J5cHRvLWFsZ29yaXRobSB7DQogICAg
ICAgICAgICAgIHR5cGUgaWRlbnRpdHlyZWYgew0KICAgICAgICAgICAgICAgICAgYmFzZSBrZXkt
Y2hhaW46Y3J5cHRvLWFsZ29yaXRobTsNCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICBk
ZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgICJDcnlwdG9ncmFwaGljIGFsZ29yaXRobSBhc3Nv
Y2lhdGVkIHdpdGgga2V5LiI7DQogICAgICAgICAgICB9DQogICAgICAgICAgfQ0KICAgICAgICAg
IGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgIkNob2ljZSBvZiBhdXRoZW50aWNhdGlvbi4iOw0K
ICAgICAgICB9DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiR3JvdXBpbmcgZm9yIGhl
bGxvIGF1dGhlbnRpY2F0aW9uLiI7DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgaGVsbG8taW50ZXJ2
YWwtY2ZnIHsNCiAgICAgIGxlYWYgdmFsdWUgew0KICAgICAgdHlwZSBydC10eXBlczp0aW1lci12
YWx1ZS1zZWNvbmRzMTY7DQogICAgICB1bml0cyAic2Vjb25kcyI7DQogICAgICBkZWZhdWx0IDEw
Ow0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiVGhpcyBsZWFmIGRlZmluZXMgdGhlIGludGVy
dmFsIG9mDQogICAgICAgaGVsbG8gbWVzc2FnZXMuIjsNCiAgICAgIH0NCg0KICAgICAgZGVzY3Jp
cHRpb24NCiAgICAgICAiSW50ZXJ2YWwgYmV0d2Vlbg0KICAgICAgIGhlbGxvIG1lc3NhZ2VzLiI7
DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgaGVsbG8tbXVsdGlwbGllci1jZmcgew0KICAgICAgbGVh
ZiB2YWx1ZSB7DQogICAgICB0eXBlIHVpbnQxNjsNCiAgICAgIGRlZmF1bHQgMzsNCiAgICAgIGRl
c2NyaXB0aW9uDQogICAgICAgIlRoaXMgbGVhZiBkZWZpbmVzIHRoZSBudW1iZXIgb2YNCiAgICAg
ICBoZWxsbyBmYWlsZWQgdG8gYmUgcmVjZWl2ZWQgYmVmb3JlDQogICAgICAgZGVjbGFyaW5nIHRo
ZSBhZGphY2VuY3kgZG93bi4iOw0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAi
VGhpcyBncm91cGluZyBkZWZpbmVzIHRoZSBudW1iZXIgb2YNCiAgICAgICAgaGVsbG8gZmFpbGVk
IHRvIGJlIHJlY2VpdmVkIGJlZm9yZQ0KICAgICAgICBkZWNsYXJpbmcgdGhlIGFkamFjZW5jeSBk
b3duLiI7DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgcHJpb3JpdHktY2ZnIHsNCiAgICAgIGxlYWYg
dmFsdWUgew0KICAgICAgICAgIHR5cGUgdWludDggew0KICAgICAgICAgICAgcmFuZ2UgIjAgLi4g
MTI3IjsNCiAgICAgIH0NCiAgICAgIGRlZmF1bHQgNjQ7DQogICAgICBkZXNjcmlwdGlvbg0KICAg
ICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRoZSBwcmlvcml0eSBvZg0KICAgICAgIHRoZSBpbnRl
cmZhY2UNCiAgICAgICBmb3IgRElTIGVsZWN0aW9uLiI7DQogICAgICB9DQoNCiAgICAgIGRlc2Ny
aXB0aW9uDQogICAgICAgIlRoaXMgZ3JvdXBpbmcgbGVhZiBkZXNjcmliZXMgdGhlDQogICAgICAg
cHJpb3JpdHkgb2YNCiAgICAgICB0aGUgaW50ZXJmYWNlDQogICAgICAgZm9yIERJUyBlbGVjdGlv
bi4iOw0KICAgIH0NCg0KICAgIGdyb3VwaW5nIG1ldHJpYy1jZmcgew0KICAgICAgICBsZWFmIHZh
bHVlIHsNCiAgICAgICAgICB0eXBlIHdpZGUtbWV0cmljOw0KICAgICAgICAgIGRlZmF1bHQgIjEw
IjsNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiTWV0cmljIHZhbHVlLiI7DQog
ICAgICAgIH0NCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJHcm91cGluZyBmb3IgaW50
ZXJmYWNlIG1ldHJpYyI7DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgbGZhLWlmLWNmZyB7DQogICAg
ICBsZWFmIGNhbmRpZGF0ZS1kaXNhYmxlZCB7DQogICAgICAgIHR5cGUgYm9vbGVhbjsNCiAgICAg
ICAgZGVmYXVsdCBmYWxzZTsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJQcmV2ZW50
IHRoZSBpbnRlcmZhY2UgdG8gYmUgdXNlZCBhcyBiYWNrdXAuIjsNCiAgICAgIH0NCiAgICAgIGxl
YWYgZW5hYmxlIHsNCiAgICAgICAgdHlwZSBib29sZWFuOw0KICAgICAgICBkZWZhdWx0IGZhbHNl
Ow0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIkFjdGl2YXRlcyBMRkEuDQogICAgICAg
ICBUaGlzIG1vZGVsIGFzc3VtZXMgYWN0aXZhdGlvbg0KICAgICAgICAgb2YgcGVyLXByZWZpeCBM
RkEuIjsNCiAgICAgIH0NCg0KICAgICAgY29udGFpbmVyIHJlbW90ZS1sZmEgew0KICAgICAgICBp
Zi1mZWF0dXJlIHJlbW90ZS1sZmE7DQogICAgICAgIGxlYWYgZW5hYmxlIHsNCiAgICAgICAgICB0
eXBlIGJvb2xlYW47DQogICAgICAgICAgZGVmYXVsdCBmYWxzZTsNCiAgICAgICAgICBkZXNjcmlw
dGlvbg0KICAgICAgICAgICJBY3RpdmF0ZXMgckxGQS4iOw0KICAgICAgICB9DQogICAgICAgIGRl
c2NyaXB0aW9uDQogICAgICAgICAicmVtb3RlIExGQSBjb25maWd1cmF0aW9uLiI7DQogICAgICB9
DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJHcm91cGluZyBmb3IgTEZBDQogICAgICAgaW50
ZXJmYWNlIGNvbmZpZ3VyYXRpb24iOw0KICAgIH0NCg0KICAgIGdyb3VwaW5nIGlzaXMtZ2xvYmFs
LWNmZyB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJEZWZpbmVzIHRoZSBJU0lTIGdsb2Jh
bCBjb25maWd1cmF0aW9uLiI7DQoNCiAgICAgICAgICB1c2VzIGFkbWluLWNvbnRyb2w7DQoNCiAg
ICAgICAgICBsZWFmIGxldmVsLXR5cGUgew0KICAgICAgICAgICAgdHlwZSBsZXZlbDsNCiAgICAg
ICAgICAgIGRlZmF1bHQgImxldmVsLWFsbCI7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAg
ICAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRoZSB0eXBlIG9mIElTSVMgbm9kZS4NCiAg
ICAgICAgICAgICBBIG5vZGUgY2FuIGJlIGxldmVsLTEtb25seSwgbGV2ZWwtMi1vbmx5DQogICAg
ICAgICAgICAgb3IgbGV2ZWwtMS0yLg0KICAgICAgICAgICAgICI7DQogICAgICAgICAgfQ0KDQog
ICAgICAgICAgbGVhZiBzeXN0ZW0taWQgew0KICAgICAgICAgICAgdHlwZSBzeXN0ZW0taWQ7DQog
ICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGlzIGxlYWYgZGVmaW5lcyB0
aGUgc3lzdGVtLWlkIG9mIHRoZSBub2RlLiI7DQogICAgICAgICAgfQ0KDQogICAgICAgICAgbGVh
ZiBtYXhpbXVtLWFyZWEtYWRkcmVzc2VzIHsNCiAgICAgICAgICAgIGlmLWZlYXR1cmUgbWF4aW11
bS1hcmVhLWFkZHJlc3NlczsNCiAgICAgICAgICAgIHR5cGUgdWludDg7DQogICAgICAgICAgICBk
ZWZhdWx0IDM7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJEZWZpbmVz
IHRoZSBtYXhpbXVtIGFyZWFzIHN1cHBvcnRlZC4iOw0KICAgICAgICAgIH0NCg0KICAgICAgICAg
IGxlYWYtbGlzdCBhcmVhLWFkZHJlc3Mgew0KICAgICAgICAgICAgdHlwZSBhcmVhLWFkZHJlc3M7
DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJMaXN0IG9mIGFyZWFzIHN1
cHBvcnRlZCBieSB0aGUNCiAgICAgICAgICAgICBwcm90b2NvbCBpbnN0YW5jZS4iOw0KICAgICAg
ICAgIH0NCg0KICAgICAgICAgIGNvbnRhaW5lciBtcGxzIHsNCiAgICAgICAgICAgIGxlYWYgaXB2
NC1yb3V0ZXItaWQgew0KICAgICAgICAgICAgICBpZi1mZWF0dXJlIGlwdjQtcm91dGVyLWlkOw0K
ICAgICAgICAgICAgICB0eXBlIGluZXQ6aXB2NC1hZGRyZXNzOw0KICAgICAgICAgICAgICBkZXNj
cmlwdGlvbg0KICAgICAgICAgICAgICAgIlJvdXRlciBJRCB2YWx1ZSB0aGF0IHdvdWxkIGJlIHVz
ZWQgaW4NCiAgICAgICAgICAgICAgIFRMViAxMzQuIjsNCiAgICAgICAgICAgIH0NCiAgICAgICAg
ICAgIGxlYWYgaXB2Ni1yb3V0ZXItaWQgew0KICAgICAgICAgICAgICBpZi1mZWF0dXJlIGlwdjYt
cm91dGVyLWlkOw0KICAgICAgICAgICAgICB0eXBlIGluZXQ6aXB2Ni1hZGRyZXNzOw0KICAgICAg
ICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgIlJvdXRlciBJRCB2YWx1ZSB0aGF0
IHdvdWxkIGJlIHVzZWQgaW4NCiAgICAgICAgICAgICAgIFRMViAxNDAuIjsNCiAgICAgICAgICAg
IH0NCiAgICAgICAgICAgIGNvbnRhaW5lciBsZHAgew0KICAgICAgICAgICAgICBjb250YWluZXIg
aWdwLXN5bmMgew0KICAgICAgICAgICAgICAgICAgaWYtZmVhdHVyZSBsZHAtaWdwLXN5bmM7DQog
ICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgICAgIlRoaXMgY29u
dGFpbmVyIG1heSBiZSBhdWdtZW50ZWQNCiAgICAgICAgICAgICAgICAgIHdpdGggZ2xvYmFsIHBh
cmFtZXRlcnMgZm9yIGlncC1sZHAtc3luYy4iOw0KICAgICAgICAgICAgICB9DQogICAgICAgICAg
ICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiTERQIHJlbGF0ZWQgY29uZmlndXJhdGlv
bi4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAg
ICAgIlRoaXMgY29udGFpbmVyIGhhbmRsZXMgbXBscyBjb25maWcuIjsNCiAgICAgICAgICB9DQog
ICAgICAgICAgY29udGFpbmVyIGF1dG8tY29zdCB7DQogICAgICAgICAgICAgIGlmLWZlYXR1cmUg
YXV0by1jb3N0Ow0KICAgICAgICAgICAgICBsZWFmIHJlZmVyZW5jZS1iYW5kd2lkdGggew0KICAg
ICAgICAgICAgICAgIHR5cGUgdWludDMyOw0KICAgICAgICAgICAgICAgIHVuaXRzICJicHMiOw0K
ICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAgICJUaGlzIGxlYWYg
ZGVmaW5lcyB0aGUgYmFuZHdpZHRoIGZvciBjYWxjdWxhdGluZw0KICAgICAgICAgICAgICAgICAg
bWV0cmljLiI7DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgbGVhZiBlbmFibGUgew0K
ICAgICAgICAgICAgICAgICAgdHlwZSBib29sZWFuOw0KICAgICAgICAgICAgICAgICAgZGVmYXVs
dCBmYWxzZTsNCiAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAg
ICAiRW5hYmxlL2Rpc2FibGUgYXV0by1jb3N0LiI7DQogICAgICAgICAgICAgIH0NCiAgICAgICAg
ICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJUaGlzIGNvbnRhaW5lciBkZWZpbmVz
IHRoZSBhdXRvLWNvc3QgY29uZmlndXJhdGlvbi4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBs
ZWFmIGxzcC1tdHUgew0KICAgICAgICAgICAgdHlwZSB1aW50MTY7DQogICAgICAgICAgICB1bml0
cyAiYnl0ZXMiOw0KICAgICAgICAgICAgZGVmYXVsdCAxNDkyOw0KICAgICAgICAgICAgZGVzY3Jp
cHRpb24NCiAgICAgICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgbWF4aW11bSBzaXpl
IG9mIGENCiAgICAgICAgICAgICAgTFNQIFBEVSBpbiBieXRlcy4iOw0KICAgICAgICAgIH0NCiAg
ICAgICAgICBsZWFmIGxzcC1saWZldGltZSB7DQogICAgICAgICAgICB0eXBlIHVpbnQxNiB7DQog
ICAgICAgICAgICAgIHJhbmdlICIxLi42NTUzNSI7DQogICAgICAgICAgICAgIH0NCiAgICAgICAg
ICAgIHVuaXRzICJzZWNvbmRzIjsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAg
ICAgIlRoaXMgbGVhZiBkZXNjcmliZXMgdGhlIGxpZmV0aW1lIG9mIHRoZSByb3V0ZXINCiAgICAg
ICAgICAgICAgTFNQIGluIHNlY29uZHMuIjsNCiAgICAgICAgICB9DQogICAgICAgICAgbGVhZiBs
c3AtcmVmcmVzaCB7DQogICAgICAgICAgICBpZi1mZWF0dXJlIGxzcC1yZWZyZXNoOw0KICAgICAg
ICAgICAgdHlwZSBydC10eXBlczp0aW1lci12YWx1ZS1zZWNvbmRzMTY7DQogICAgICAgICAgICB1
bml0cyAic2Vjb25kcyI7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJU
aGlzIGxlYWYgZGVzY3JpYmVzIHRoZSByZWZyZXNoIGludGVydmFsIG9mIHRoZQ0KICAgICAgICAg
ICAgICByb3V0ZXIgTFNQIGluIHNlY29uZHMuIjsNCiAgICAgICAgICB9DQogICAgICAgICAgY29u
dGFpbmVyIGdyYWNlZnVsLXJlc3RhcnQgew0KICAgICAgICAgICAgaWYtZmVhdHVyZSBncmFjZWZ1
bC1yZXN0YXJ0Ow0KICAgICAgICAgICAgbGVhZiBlbmFibGUgew0KICAgICAgICAgICAgICB0eXBl
IGJvb2xlYW47DQogICAgICAgICAgICAgIGRlZmF1bHQgZmFsc2U7DQogICAgICAgICAgICAgIGRl
c2NyaXB0aW9uDQogICAgICAgICAgICAgICAiQ29udHJvbCBlbmFibGluZyB0aGUgZmVhdHVyZS4i
Ow0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgbGVhZiByZXN0YXJ0LWludGVydmFsIHsNCiAg
ICAgICAgICAgICAgdHlwZSBydC10eXBlczp0aW1lci12YWx1ZS1zZWNvbmRzMTY7DQogICAgICAg
ICAgICAgIHVuaXRzICJzZWNvbmRzIjsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAg
ICAgICAgICAgIkludGVydmFsIGluIHNlY29uZHMgdG8gYXR0ZW1wdCBncmFjZWZ1bCByZXN0YXJ0
IHByaW9yDQogICAgICAgICAgICAgdG8gZmFpbGluZyI7DQogICAgICAgICAgICB9DQogICAgICAg
ICAgICBsZWFmIGhlbHBlci1lbmFibGUgew0KICAgICAgICAgICAgICB0eXBlIGJvb2xlYW47DQog
ICAgICAgICAgICAgIGRlZmF1bHQgdHJ1ZTsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICAgICAgIklmIGVuYWJsZWQsIHRoZSBsb2NhbCByb3V0ZXIgY2FuIGFjdCBhcyByZXN0
YXJ0IGhlbHBlci4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICAgICAiVGhpcyBjb250YWluZXIgYWN0aXZhdGVzIGdyYWNlZnVsIHJlc3RhcnQuIjsN
CiAgICAgICAgICB9DQoNCiAgICAgICAgICBjb250YWluZXIgbnNyIHsNCiAgICAgICAgICAgICAg
aWYtZmVhdHVyZSBuc3I7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAg
ICJOb24tU3RvcCBSb3V0aW5nIChOU1IpIGNvbmZpZyBzdGF0ZS4iOw0KICAgICAgICAgICAgICBs
ZWFmIGVuYWJsZSB7DQogICAgICAgICAgICAgICAgICB0eXBlIGJvb2xlYW47DQogICAgICAgICAg
ICAgICAgICBkZWZhdWx0IGZhbHNlOw0KICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICAgICAgICAgICAiRW5hYmxlL0Rpc2FibGUgTlNSLiI7DQogICAgICAgICAgICAgIH0N
CiAgICAgICAgICB9DQoNCiAgICAgICAgICB1c2VzIGlzaXMtbm9kZS10YWctY2ZnOw0KDQogICAg
ICAgICAgY29udGFpbmVyIGF1dGhlbnRpY2F0aW9uIHsNCiAgICAgICAgICAgICAgdXNlcyBhdXRo
ZW50aWNhdGlvbi1nbG9iYWwtY2ZnOw0KICAgICAgICAgICAgICBjb250YWluZXIgbGV2ZWwtMSB7
DQogICAgICAgICAgICAgICAgICB1c2VzIGF1dGhlbnRpY2F0aW9uLWdsb2JhbC1jZmc7DQogICAg
ICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAibGV2ZWwtMSBzcGVjaWZpYyBjZmciOw0KICAgICAg
ICAgICAgICB9DQogICAgICAgICAgICAgIGNvbnRhaW5lciBsZXZlbC0yIHsNCiAgICAgICAgICAg
ICAgICAgIHVzZXMgYXV0aGVudGljYXRpb24tZ2xvYmFsLWNmZzsNCiAgICAgICAgICAgICAgICAg
IGRlc2NyaXB0aW9uICJsZXZlbC0yIHNwZWNpZmljIGNmZyI7DQogICAgICAgICAgICAgIH0NCiAg
ICAgICAgICAgICAgZGVzY3JpcHRpb24gImF1dGhlbnRpY2F0aW9uIGdsb2JhbCBjZmcuDQogICAg
ICAgICAgICAgIEl0IGNvdmVycyBib3RoIExTUHMgYW5kIFNOUHMuIjsNCiAgICAgICAgICB9DQoN
CiAgICAgICAgICBjb250YWluZXIgbWV0cmljLXR5cGUgew0KICAgICAgICAgICAgICB1c2VzIG1l
dHJpYy10eXBlLWdsb2JhbC1jZmc7DQogICAgICAgICAgICAgIGNvbnRhaW5lciBsZXZlbC0xIHsN
CiAgICAgICAgICAgICAgICAgIHVzZXMgbWV0cmljLXR5cGUtZ2xvYmFsLWNmZzsNCiAgICAgICAg
ICAgICAgICAgIGRlc2NyaXB0aW9uICJsZXZlbC0xIHNwZWNpZmljIGNmZyI7DQogICAgICAgICAg
ICAgIH0NCiAgICAgICAgICAgICAgY29udGFpbmVyIGxldmVsLTIgew0KICAgICAgICAgICAgICAg
ICAgdXNlcyBtZXRyaWMtdHlwZS1nbG9iYWwtY2ZnOw0KICAgICAgICAgICAgICAgICAgZGVzY3Jp
cHRpb24gImxldmVsLTIgc3BlY2lmaWMgY2ZnIjsNCiAgICAgICAgICAgICAgfQ0KICAgICAgICAg
ICAgICBkZXNjcmlwdGlvbiAiTWV0cmljIHN0eWxlIGdsb2JhbCBjZmcuIjsNCiAgICAgICAgICB9
DQoNCiAgICAgICAgICBjb250YWluZXIgZGVmYXVsdC1tZXRyaWMgew0KICAgICAgICAgICAgICB1
c2VzIGRlZmF1bHQtbWV0cmljLWdsb2JhbC1jZmc7DQogICAgICAgICAgICAgIGNvbnRhaW5lciBs
ZXZlbC0xIHsNCiAgICAgICAgICAgICAgICAgIHVzZXMgZGVmYXVsdC1tZXRyaWMtZ2xvYmFsLWNm
ZzsNCiAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJsZXZlbC0xIHNwZWNpZmljIGNmZyI7
DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgY29udGFpbmVyIGxldmVsLTIgew0KICAg
ICAgICAgICAgICAgICAgdXNlcyBkZWZhdWx0LW1ldHJpYy1nbG9iYWwtY2ZnOw0KICAgICAgICAg
ICAgICAgICAgZGVzY3JpcHRpb24gImxldmVsLTIgc3BlY2lmaWMgY2ZnIjsNCiAgICAgICAgICAg
ICAgfQ0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiRGVmYXVsdCBtZXRyaWMgZ2xvYmFsIGNm
Zy4iOw0KICAgICAgICAgIH0NCg0KICAgICAgICAgIGNvbnRhaW5lciBhZnMgew0KICAgICAgICAg
ICAgICBpZi1mZWF0dXJlIG5scGlkLWNvbnRyb2w7DQogICAgICAgICAgICAgIGxpc3QgYWYgew0K
ICAgICAgICAgICAgICAgIGtleSBhZjsNCiAgICAgICAgICAgICAgICBsZWFmIGFmIHsNCiAgICAg
ICAgICAgICAgICAgIHR5cGUgaWRlbnRpdHlyZWYgew0KICAgICAgICAgICAgICAgICAgICBiYXNl
IGlhbmEtcnQtdHlwZXM6YWRkcmVzcy1mYW1pbHk7DQogICAgICAgICAgICAgICAgICB9DQogICAg
ICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgICAgICJBZGRyZXNzLWZh
bWlseSI7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGxlYWYgZW5hYmxlIHsN
CiAgICAgICAgICAgICAgICAgIHR5cGUgYm9vbGVhbjsNCiAgICAgICAgICAgICAgICAgIGRlc2Ny
aXB0aW9uDQogICAgICAgICAgICAgICAgICAgICJEZXNjcmliZXMgdGhlIGFjdGl2YXRpb24gc3Rh
dGUgb2YgdGhlDQogICAgICAgICAgICAgICAgICAgICBBRi4iOw0KICAgICAgICAgICAgICAgIH0N
CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgICAiVGhpcyBsaXN0
IHBlcm1pdHMgYWN0aXZhdGlvbg0KICAgICAgICAgICAgICAgICBvZiBuZXcgYWRkcmVzcyBmYW1p
bGllcy4iOw0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAg
ICAgICAgICAgICAiQ29udGFpbmVyIGZvciBhZGRyZXNzLWZhbWlsaWVzIjsNCiAgICAgICAgICB9
DQoNCiAgICAgICAgICBjb250YWluZXIgcHJlZmVyZW5jZSB7DQogICAgICAgICAgICAgIHVzZXMg
cm91dGUtcHJlZmVyZW5jZS1nbG9iYWwtY2ZnOw0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0K
ICAgICAgICAgICAgICAgIlRoaXMgY29udGFpbmVyIGRlZmluZXMgdGhlIHByb3RvY29sIHByZWZl
cmVuY2UuIjsNCiAgICAgICAgICB9DQoNCiAgICAgICAgICBjb250YWluZXIgb3ZlcmxvYWQgew0K
ICAgICAgICAgICAgICB1c2VzIG92ZXJsb2FkLWdsb2JhbC1jZmc7DQogICAgICAgICAgICAgIGRl
c2NyaXB0aW9uDQogICAgICAgICAgICAgIlRoaXMgY29udGFpbmVyIGRlc2NyaWJlcyBpZiB0aGUg
cm91dGVyIGlzDQogICAgICAgICAgICAgIHNldCB0byBvdmVybG9hZCBzdGF0ZS4iOw0KICAgICAg
ICAgIH0NCg0KICAgICAgICAgIGNvbnRhaW5lciBvdmVybG9hZC1tYXgtbWV0cmljIHsNCiAgICAg
ICAgICAgICAgaWYtZmVhdHVyZSBvdmVybG9hZC1tYXgtbWV0cmljOw0KICAgICAgICAgICAgICB1
c2VzIG92ZXJsb2FkLW1heC1tZXRyaWMtZ2xvYmFsLWNmZzsNCiAgICAgICAgICAgICAgZGVzY3Jp
cHRpb24NCiAgICAgICAgICAgICAiVGhpcyBjb250YWluZXIgZGVzY3JpYmVzIGlmIHRoZSByb3V0
ZXIgaXMNCiAgICAgICAgICAgICAgc2V0IHRvIG92ZXJsb2FkIHN0YXRlIHVzaW5nIG1heC1tZXRy
aWMNCiAgICAgICAgICAgICAgYWR2ZXJ0aXNlbWVudC4iOw0KICAgICAgICAgIH0NCiAgICB9DQoN
CiAgICBncm91cGluZyBpc2lzLWdsb2JhbC10b3BvbG9naWVzLWNmZyB7DQogICAgIGRlc2NyaXB0
aW9uDQogICAgICAiUGVyIHRvcG9sb2d5IGNvbmZpZy4iOw0KICAgICAgY29udGFpbmVyIGRlZmF1
bHQtbWV0cmljIHsNCiAgICAgICAgICB1c2VzIGRlZmF1bHQtbWV0cmljLWdsb2JhbC1jZmc7DQog
ICAgICAgICAgY29udGFpbmVyIGxldmVsLTEgew0KICAgICAgICAgICAgICB1c2VzIGRlZmF1bHQt
bWV0cmljLWdsb2JhbC1jZmc7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJsZXZlbC0xIHNw
ZWNpZmljIGNmZyI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGNvbnRhaW5lciBsZXZlbC0yIHsN
CiAgICAgICAgICAgICAgdXNlcyBkZWZhdWx0LW1ldHJpYy1nbG9iYWwtY2ZnOw0KICAgICAgICAg
ICAgICBkZXNjcmlwdGlvbiAibGV2ZWwtMiBzcGVjaWZpYyBjZmciOw0KICAgICAgICAgIH0NCiAg
ICAgICAgICBkZXNjcmlwdGlvbiAiRGVmYXVsdCBtZXRyaWMgcGVyDQogICAgICAgICAgdG9wb2xv
Z3kgY2ZnLiI7DQogICAgICB9DQogICAgICB1c2VzIGlzaXMtbm9kZS10YWctY2ZnOw0KICAgIH0N
Cg0KICAgIGdyb3VwaW5nIGlzaXMtaWYtY2ZnIHsNCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAg
Ikdyb3VwaW5nIGZvciBpbnRlcmZhY2UgY2ZnLiI7DQoNCiAgICAgIGxlYWYgbGV2ZWwtdHlwZSB7
DQogICAgICAgIHR5cGUgbGV2ZWw7DQogICAgICAgIGRlZmF1bHQgImxldmVsLWFsbCI7DQogICAg
ICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBsZWFmIGRlZmluZXMgdGhlIGFzc29jaWF0
ZWQgSVNJUw0KICAgICAgICAgbGV2ZWwgb2YgdGhlIGludGVyZmFjZS4iOw0KICAgICAgfQ0KICAg
ICAgbGVhZiBsc3AtcGFjaW5nLWludGVydmFsIHsNCiAgICAgICAgdHlwZSBydC10eXBlczp0aW1l
ci12YWx1ZS1taWxsaXNlY29uZHM7DQogICAgICAgIHVuaXRzICJtaWxsaXNlY29uZHMiOw0KICAg
ICAgICBkZWZhdWx0IDMzOw0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRoaXMgbGVh
ZiBkZWZpbmVzIHRoZSBpbnRlcnZhbCBiZXR3ZWVuDQogICAgICAgICAgTFNQIHRyYW5zbWlzc2lv
bnMgaW4gbWlsbGktc2Vjb25kcyI7DQogICAgICB9DQogICAgICBsZWFmIGxzcC1yZXRyYW5zbWl0
LWludGVydmFsIHsNCiAgICAgICAgdHlwZSBydC10eXBlczp0aW1lci12YWx1ZS1zZWNvbmRzMTY7
DQogICAgICAgIHVuaXRzICJzZWNvbmRzIjsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAg
ICJUaGlzIGxlYWYgZGVmaW5lcyB0aGUgaW50ZXJ2YWwgYmV0d2Vlbg0KICAgICAgICAgcmV0cmFu
c21pc3Npb24gb2YgTFNQIjsNCiAgICAgIH0NCiAgICAgIGxlYWYgcGFzc2l2ZSB7DQogICAgICAg
IHR5cGUgYm9vbGVhbjsNCiAgICAgICAgZGVmYXVsdCAiZmFsc2UiOw0KICAgICAgICBkZXNjcmlw
dGlvbg0KICAgICAgICAgIlRoaXMgbGVhZiBkZWZpbmVzIGlmIGludGVyZmFjZSBpcyBpbg0KICAg
ICAgICAgIHBhc3NpdmUgbW9kZSAoSVNJUyBub3QgcnVubmluZywNCiAgICAgICAgICBidXQgbmV0
d29yayBpcyBhZHZlcnRpc2VkKS4iOw0KICAgICAgfQ0KICAgICAgbGVhZiBjc25wLWludGVydmFs
IHsNCiAgICAgICAgdHlwZSBydC10eXBlczp0aW1lci12YWx1ZS1zZWNvbmRzMTY7DQogICAgICAg
IHVuaXRzICJzZWNvbmRzIjsNCiAgICAgICAgZGVmYXVsdCAxMDsNCiAgICAgICAgZGVzY3JpcHRp
b24NCiAgICAgICAgICJUaGlzIGxlYWYgZGVmaW5lcyB0aGUgaW50ZXJ2YWwgb2YgQ1NOUA0KICAg
ICAgICAgIG1lc3NhZ2VzLiI7DQogICAgICB9DQogICAgICBjb250YWluZXIgaGVsbG8tcGFkZGlu
ZyB7DQogICAgICAgIGxlYWYgZW5hYmxlIHsNCiAgICAgICAgICB0eXBlIGJvb2xlYW47DQogICAg
ICAgICAgZGVmYXVsdCAidHJ1ZSI7DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAg
IlN0YXR1cyBvZiBIZWxsby1wYWRkaW5nIGFjdGl2YXRpb24uDQogICAgICAgICAgICBCeSBkZWZh
dWx0LCB0aGUgaW1wbGVtZW50YXRpb24gc2hhbGwNCiAgICAgICAgICAgIHBhZCBIRUxMT3MuIjsN
CiAgICAgICAgfQ0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRoaXMgY29udGFpbmVy
IGhhbmRsZXMgSVNJUyBoZWxsbyBwYWRkaW5nDQogICAgICAgICAgY29uZmlndXJhdGlvbi4iOw0K
ICAgICAgfQ0KICAgICAgbGVhZiBtZXNoLWdyb3VwLWVuYWJsZSB7DQogICAgICAgIHR5cGUgbWVz
aC1ncm91cC1zdGF0ZTsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJEZXNjcmliZXMg
dGhlIG1lc2ggZ3JvdXAgc3RhdGUgb2YNCiAgICAgICAgICB0aGUgaW50ZXJmYWNlLiI7DQogICAg
ICB9DQogICAgICBsZWFmIG1lc2gtZ3JvdXAgew0KICAgICAgICB3aGVuICIuLi9tZXNoLWdyb3Vw
LWVuYWJsZSA9ICdtZXNoU2V0JyIgew0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAg
ICJPbmx5IHZhbGlkIHdoZW4gbWVzaC1ncm91cC1lbmFibGUNCiAgICAgICAgICAgIGVxdWFscyBt
ZXNoU2V0IjsNCiAgICAgICAgfQ0KICAgICAgICB0eXBlIHVpbnQ4Ow0KICAgICAgICBkZXNjcmlw
dGlvbg0KICAgICAgICAgIkRlc2NyaWJlcyB0aGUgbWVzaCBncm91cCBJRCBvZg0KICAgICAgICAg
IHRoZSBpbnRlcmZhY2UuIjsNCiAgICAgIH0NCiAgICAgIGxlYWYgaW50ZXJmYWNlLXR5cGUgew0K
ICAgICAgICB0eXBlIGludGVyZmFjZS10eXBlOw0KICAgICAgICBkZWZhdWx0ICJicm9hZGNhc3Qi
Ow0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRoaXMgbGVhZiBkZWZpbmVzIHRoZSB0
eXBlIG9mIGFkamFjZW5jeQ0KICAgICAgICAgdG8gYmUgZXN0YWJsaXNoZWQgb24gdGhlIGludGVy
ZmFjZS4NCiAgICAgICAgIFRoaXMgaXMgYWZmZWN0aW5nIHRoZSB0eXBlIG9mIGhlbGxvDQogICAg
ICAgICBtZXNzYWdlIHRoYXQgd291bGQgYmUgdXNlZC4iOw0KICAgICAgfQ0KDQogICAgICB1c2Vz
IGFkbWluLWNvbnRyb2w7DQoNCiAgICAgIGxlYWYtbGlzdCB0YWcgew0KICAgICAgICBpZi1mZWF0
dXJlIHByZWZpeC10YWc7DQogICAgICAgIHR5cGUgdWludDMyOw0KICAgICAgICBkZXNjcmlwdGlv
bg0KICAgICAgICAgIlRoaXMgbGVhZiBkZWZpbmVzIGxpc3Qgb2YgdGFncyBhc3NvY2lhdGVkDQog
ICAgICAgICAgd2l0aCB0aGUgaW50ZXJmYWNlLiI7DQogICAgICB9DQogICAgICBsZWFmLWxpc3Qg
dGFnNjQgew0KICAgICAgICBpZi1mZWF0dXJlIHByZWZpeC10YWc2NDsNCiAgICAgICAgdHlwZSB1
aW50NjQ7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBsZWFmIGRlZmluZXMg
bGlzdCBvZiA2NGJpdHMgdGFncw0KICAgICAgICAgYXNzb2NpYXRlZCB3aXRoIHRoZSBpbnRlcmZh
Y2UuIjsNCiAgICAgIH0NCiAgICAgIGxlYWYgbm9kZS1mbGFnIHsNCiAgICAgICAgICBpZi1mZWF0
dXJlIG5vZGUtZmxhZzsNCiAgICAgICAgICB0eXBlIGJvb2xlYW47DQogICAgICAgICAgZGVmYXVs
dCBmYWxzZTsNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiU2V0IHByZWZpeCBh
cyBhIG5vZGUNCiAgICAgICAgICAgcmVwcmVzZW50YXRpdmUgcHJlZml4LiI7DQogICAgICB9DQog
ICAgICBjb250YWluZXIgaGVsbG8tYXV0aGVudGljYXRpb24gew0KICAgICAgICAgIHVzZXMgaGVs
bG8tYXV0aGVudGljYXRpb24tY2ZnOw0KICAgICAgICAgIGNvbnRhaW5lciBsZXZlbC0xIHsNCiAg
ICAgICAgICAgICAgdXNlcyBoZWxsby1hdXRoZW50aWNhdGlvbi1jZmc7DQogICAgICAgICAgICAg
IGRlc2NyaXB0aW9uICJsZXZlbC0xIHNwZWNpZmljIGNmZyI7DQogICAgICAgICAgfQ0KICAgICAg
ICAgIGNvbnRhaW5lciBsZXZlbC0yIHsNCiAgICAgICAgICAgICAgdXNlcyBoZWxsby1hdXRoZW50
aWNhdGlvbi1jZmc7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJsZXZlbC0yIHNwZWNpZmlj
IGNmZyI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGRlc2NyaXB0aW9uICJBdXRoZW50aWNhdGlv
biB0eXBlDQogICAgICAgICB0byBiZSB1c2VkIGluIGhlbGxvIG1lc3NhZ2VzLiI7DQogICAgICB9
DQogICAgICBjb250YWluZXIgaGVsbG8taW50ZXJ2YWwgew0KICAgICAgICAgIHVzZXMgaGVsbG8t
aW50ZXJ2YWwtY2ZnOw0KICAgICAgICAgIGNvbnRhaW5lciBsZXZlbC0xIHsNCiAgICAgICAgICAg
ICAgdXNlcyBoZWxsby1pbnRlcnZhbC1jZmc7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJs
ZXZlbC0xIHNwZWNpZmljIGNmZyI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGNvbnRhaW5lciBs
ZXZlbC0yIHsNCiAgICAgICAgICAgICAgdXNlcyBoZWxsby1pbnRlcnZhbC1jZmc7DQogICAgICAg
ICAgICAgIGRlc2NyaXB0aW9uICJsZXZlbC0yIHNwZWNpZmljIGNmZyI7DQogICAgICAgICAgfQ0K
ICAgICAgICAgIGRlc2NyaXB0aW9uICJJbnRlcnZhbCBiZXR3ZWVuDQogICAgICAgICAgIGhlbGxv
IG1lc3NhZ2VzLiI7DQogICAgICB9DQogICAgICBjb250YWluZXIgaGVsbG8tbXVsdGlwbGllciB7
DQogICAgICAgICAgdXNlcyBoZWxsby1tdWx0aXBsaWVyLWNmZzsNCiAgICAgICAgICBjb250YWlu
ZXIgbGV2ZWwtMSB7DQogICAgICAgICAgICAgIHVzZXMgaGVsbG8tbXVsdGlwbGllci1jZmc7DQog
ICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJsZXZlbC0xIHNwZWNpZmljIGNmZyI7DQogICAgICAg
ICAgfQ0KICAgICAgICAgIGNvbnRhaW5lciBsZXZlbC0yIHsNCiAgICAgICAgICAgICAgdXNlcyBo
ZWxsby1tdWx0aXBsaWVyLWNmZzsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24gImxldmVsLTIg
c3BlY2lmaWMgY2ZnIjsNCiAgICAgICAgICB9DQogICAgICAgICAgZGVzY3JpcHRpb24gIkhlbGxv
IG11bHRpcGxpZXINCiAgICAgICAgICBjb25maWd1cmF0aW9uLiI7DQogICAgICB9DQogICAgICBj
b250YWluZXIgcHJpb3JpdHkgew0KICAgICAgICAgIG11c3QgJy4uL2ludGVyZmFjZS10eXBlID0g
ImJyb2FkY2FzdCInIHsNCiAgICAgICAgICAgICAgZXJyb3ItbWVzc2FnZQ0KICAgICAgICAgICAg
ICAgIlByaW9yaXR5IG9ubHkgYXBwbGllcyB0byBicm9hZGNhc3QNCiAgICAgICAgICAgICAgIGlu
dGVyZmFjZXMuIjsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJD
aGVjayBmb3IgYnJvYWRjYXN0IGludGVyZmFjZS4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICB1
c2VzIHByaW9yaXR5LWNmZzsNCiAgICAgICAgICBjb250YWluZXIgbGV2ZWwtMSB7DQogICAgICAg
ICAgICAgIHVzZXMgcHJpb3JpdHktY2ZnOw0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAibGV2
ZWwtMSBzcGVjaWZpYyBjZmciOw0KICAgICAgICAgIH0NCiAgICAgICAgICBjb250YWluZXIgbGV2
ZWwtMiB7DQogICAgICAgICAgICAgIHVzZXMgcHJpb3JpdHktY2ZnOw0KICAgICAgICAgICAgICBk
ZXNjcmlwdGlvbiAibGV2ZWwtMiBzcGVjaWZpYyBjZmciOw0KICAgICAgICAgIH0NCiAgICAgICAg
ICBkZXNjcmlwdGlvbiAiUHJpb3JpdHkgZm9yIERJUyBlbGVjdGlvbi4iOw0KICAgICAgfQ0KICAg
ICAgY29udGFpbmVyIG1ldHJpYyB7DQogICAgICAgICAgdXNlcyBtZXRyaWMtY2ZnOw0KICAgICAg
ICAgIGNvbnRhaW5lciBsZXZlbC0xIHsNCiAgICAgICAgICAgICAgdXNlcyBtZXRyaWMtY2ZnOw0K
ICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAibGV2ZWwtMSBzcGVjaWZpYyBjZmciOw0KICAgICAg
ICAgIH0NCiAgICAgICAgICBjb250YWluZXIgbGV2ZWwtMiB7DQogICAgICAgICAgICAgIHVzZXMg
bWV0cmljLWNmZzsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24gImxldmVsLTIgc3BlY2lmaWMg
Y2ZnIjsNCiAgICAgICAgICB9DQogICAgICAgICAgZGVzY3JpcHRpb24gIk1ldHJpYyBjb25maWd1
cmF0aW9uLiI7DQogICAgICB9DQogICAgICBjb250YWluZXIgYmZkIHsNCiAgICAgICAgICBpZi1m
ZWF0dXJlIGJmZDsNCiAgICAgICAgICBsZWFmIGVuYWJsZSB7DQogICAgICAgICAgICAgIHR5cGUg
Ym9vbGVhbjsNCiAgICAgICAgICAgICAgZGVmYXVsdCBmYWxzZTsNCiAgICAgICAgICAgICAgZGVz
Y3JpcHRpb24gIg0KICAgICAgICAgICAgICAgICAgRW5hYmxlcyBCRkQgb24gdGhlIGludGVyZmFj
ZQ0KICAgICAgICAgICAgICAiOw0KICAgICAgICAgIH0NCiAgICAgICAgICBkZXNjcmlwdGlvbg0K
ICAgICAgICAgICAiQkZEIGNvbmZpZ3VyYXRpb24uIjsNCiAgICAgIH0NCiAgICAgIGNvbnRhaW5l
ciBhZnMgew0KICAgICAgICAgIGlmLWZlYXR1cmUgbmxwaWQtY29udHJvbDsNCiAgICAgICAgICBs
aXN0IGFmIHsNCiAgICAgICAgICAgIGtleSBhZjsNCiAgICAgICAgICAgIGxlYWYgYWYgew0KICAg
ICAgICAgICAgICB0eXBlIGlkZW50aXR5cmVmIHsNCiAgICAgICAgICAgICAgICBiYXNlIGlhbmEt
cnQtdHlwZXM6YWRkcmVzcy1mYW1pbHk7DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg
ZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICAiQWRkcmVzcy1mYW1pbHkiOw0KICAgICAgICAg
ICAgfQ0KICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAiTGlzdCBvZiBBRnMu
IjsNCiAgICAgICAgICB9DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJD
b250YWluZXIgZm9yIGFkZHJlc3MtZmFtaWxpZXMiOw0KICAgICAgfQ0KICAgICAgY29udGFpbmVy
IG1wbHMgew0KICAgICAgICBjb250YWluZXIgbGRwIHsNCiAgICAgICAgICBsZWFmIGlncC1zeW5j
IHsNCiAgICAgICAgICAgICAgaWYtZmVhdHVyZSBsZHAtaWdwLXN5bmM7DQogICAgICAgICAgICAg
IHR5cGUgYm9vbGVhbjsNCiAgICAgICAgICAgICAgZGVmYXVsdCBmYWxzZTsNCiAgICAgICAgICAg
ICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJFbmFibGVzIElHUC9MRFAgc3luYy4iOw0K
ICAgICAgICAgIH0NCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiTERQIHByb3Rv
Y29sIHJlbGF0ZWQgY29uZmlndXJhdGlvbnMuIjsNCiAgICAgICAgfQ0KICAgICAgICBkZXNjcmlw
dGlvbg0KICAgICAgICAgIkNvbnRhaW5lciBmb3IgTVBMUyBzcGVjaWZpYyBjb25maWd1cmF0aW9u
DQogICAgICAgICBmb3IgSVNJUy4iOw0KICAgICAgfQ0KICAgIH0NCg0KICAgIGdyb3VwaW5nIGlz
aXMtaWYtdG9wb2xvZ2llcy1jZmcgew0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiSVNJUyBp
bnRlcmZhY2UgdG9wb2xvZ3kgY2ZnLiI7DQogICAgICBjb250YWluZXIgbWV0cmljIHsNCiAgICAg
ICAgICB1c2VzIG1ldHJpYy1jZmc7DQogICAgICAgICAgY29udGFpbmVyIGxldmVsLTEgew0KICAg
ICAgICAgICAgICB1c2VzIG1ldHJpYy1jZmc7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJs
ZXZlbC0xIHNwZWNpZmljIGNmZyI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGNvbnRhaW5lciBs
ZXZlbC0yIHsNCiAgICAgICAgICAgICAgdXNlcyBtZXRyaWMtY2ZnOw0KICAgICAgICAgICAgICBk
ZXNjcmlwdGlvbiAibGV2ZWwtMiBzcGVjaWZpYyBjZmciOw0KICAgICAgICAgIH0NCiAgICAgICAg
ICBkZXNjcmlwdGlvbiAiTWV0cmljIGNvbmZpZ3VyYXRpb24uIjsNCiAgICAgIH0NCiAgICB9DQoN
CiAgICBncm91cGluZyBzeXN0ZW0tY291bnRlcnMgew0KICAgICBjb250YWluZXIgc3lzdGVtLWNv
dW50ZXJzIHsNCiAgICAgICAgY29uZmlnIGZhbHNlOw0KICAgICAgICBsaXN0IGxldmVsIHsNCiAg
ICAgICAgICBrZXkgbGV2ZWw7DQoNCiAgICAgICAgICBsZWFmIGxldmVsIHsNCiAgICAgICAgICAg
IHR5cGUgbGV2ZWwtbnVtYmVyOw0KICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAg
ICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgSVNJUyBsZXZlbC4iOw0KICAgICAgICAgIH0NCiAg
ICAgICAgICBsZWFmIGNvcnJ1cHRlZC1sc3BzIHsNCiAgICAgICAgICAgIHR5cGUgdWludDMyOw0K
ICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAiTnVtYmVyIG9mIGNvcnJ1cHRl
ZCBpbi1tZW1vcnkgTFNQcyBkZXRlY3RlZC4NCiAgICAgICAgICAgICBMU1BzIHJlY2VpdmVkIGZy
b20gdGhlIHdpcmUgd2l0aCBhIGJhZA0KICAgICAgICAgICAgIGNoZWNrc3VtIGFyZSBzaWxlbnRs
eSBkcm9wcGVkIGFuZCBub3QgY291bnRlZC4NCiAgICAgICAgICAgICBMU1BzIHJlY2VpdmVkIGZy
b20gdGhlIHdpcmUgd2l0aCBwYXJzZSBlcnJvcnMNCiAgICAgICAgICAgICBhcmUgY291bnRlZCBi
eSBsc3AtZXJyb3JzLiI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGxlYWYgYXV0aGVudGljYXRp
b24tdHlwZS1mYWlscyB7DQogICAgICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAgIGRl
c2NyaXB0aW9uDQogICAgICAgICAgICAgIk51bWJlciBvZiBhdXRoZW50aWNhdGlvbiB0eXBlIG1p
c21hdGNoZXMuIjsNCiAgICAgICAgICB9DQogICAgICAgICAgbGVhZiBhdXRoZW50aWNhdGlvbi1m
YWlscyB7DQogICAgICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9u
DQogICAgICAgICAgICAgIk51bWJlciBvZiBhdXRoZW50aWNhdGlvbiBrZXkgZmFpbHVyZXMuIjsN
CiAgICAgICAgICB9DQogICAgICAgICAgbGVhZiBkYXRhYmFzZS1vdmVybG9hZCB7DQogICAgICAg
ICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAg
Ik51bWJlciBvZiB0aW1lcyB0aGUgZGF0YWJhc2UgaGFzIGJlY29tZQ0KICAgICAgICAgICAgIG92
ZXJsb2FkZWQuIjsNCiAgICAgICAgICB9DQogICAgICAgICAgbGVhZiBvd24tbHNwLXB1cmdlIHsN
CiAgICAgICAgICAgIHR5cGUgdWludDMyOw0KICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAg
ICAgICAgICAiTnVtYmVyIG9mIHRpbWVzIGEgemVyby1hZ2VkIGNvcHkgb2YgdGhlDQogICAgICAg
ICAgICAgc3lzdGVtJ3Mgb3duIExTUCBpcyByZWNlaXZlZCBmcm9tIHNvbWUNCiAgICAgICAgICAg
ICBvdGhlciBub2RlLiI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGxlYWYgbWFudWFsLWFkZHJl
c3MtZHJvcC1mcm9tLWFyZWEgew0KICAgICAgICAgICAgdHlwZSB1aW50MzI7DQogICAgICAgICAg
ICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJOdW1iZXIgb2YgdGltZXMgYSBtYW51YWwgYWRk
cmVzcw0KICAgICAgICAgICAgICBoYXMgYmVlbiBkcm9wcGVkIGZyb20gdGhlIGFyZWEuIjsNCiAg
ICAgICAgICB9DQogICAgICAgICAgbGVhZiBtYXgtc2VxdWVuY2Ugew0KICAgICAgICAgICAgdHlw
ZSB1aW50MzI7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJOdW1iZXIg
b2YgdGltZXMgdGhlIHN5c3RlbSBoYXMgYXR0ZW1wdGVkDQogICAgICAgICAgICAgIHRvIGV4Y2Vl
ZCB0aGUgbWF4aW11bSBzZXF1ZW5jZSBudW1iZXIuIjsNCiAgICAgICAgICB9DQogICAgICAgICAg
bGVhZiBzZXF1ZW5jZS1udW1iZXItc2tpcHBlZCB7DQogICAgICAgICAgICB0eXBlIHVpbnQzMjsN
CiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgIk51bWJlciBvZiB0aW1lcyBh
IHNlcXVlbmNlIG51bWJlciBza2lwIGhhcw0KICAgICAgICAgICAgIG9jY3VyZWQuIjsNCiAgICAg
ICAgICB9DQogICAgICAgICAgbGVhZiBpZC1sZW4tbWlzbWF0Y2ggew0KICAgICAgICAgICAgdHlw
ZSB1aW50MzI7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJOdW1iZXIg
b2YgdGltZXMgYSBQRFUgaXMgcmVjZWl2ZWQgd2l0aA0KICAgICAgICAgICAgICBhIGRpZmZlcmVu
dCB2YWx1ZSBmb3IgSUQgZmllbGQgbGVuZ3RoDQogICAgICAgICAgICAgIGZyb20gdGhhdCBvZiB0
aGUgcmVjZWl2aW5nIHN5c3RlbS4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBsZWFmIHBhcnRp
dGlvbi1jaGFuZ2VzIHsNCiAgICAgICAgICAgIHR5cGUgdWludDMyOw0KICAgICAgICAgICAgZGVz
Y3JpcHRpb24NCiAgICAgICAgICAgICAiTnVtYmVyIG9mIHBhcnRpdGlvbiBjaGFuZ2VzIGRldGVj
dGVkLiI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGxlYWYgbHNwLWVycm9ycyB7DQogICAgICAg
ICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAg
Ik51bWJlciBvZiBMU1BzIHdpdGggZXJyb3JzIHdlIGhhdmUNCiAgICAgICAgICAgICByZWNlaXZl
ZC4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBsZWFmIHNwZi1ydW5zIHsNCiAgICAgICAgICAg
IHR5cGUgdWludDMyOw0KICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAiTnVt
YmVyIG9mIHRpbWVzIHdlIHJhbiBTUEYgYXQgdGhpcyBsZXZlbC4iOw0KICAgICAgICAgIH0NCiAg
ICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiTGlzdCBvZiBzdXBwb3J0ZWQgbGV2ZWxz
LiI7DQogICAgICAgIH0NCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGUgY29udGFp
bmVyIGRlZmluZXMgYSBsaXN0IG9mIGNvdW50ZXJzDQogICAgICAgICAgZm9yIHRoZSBJUy4iOw0K
ICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiR3JvdXBpbmcgZm9yIHN5c3RlbSBj
b3VudGVycy4iOw0KICAgIH0NCg0KICAgIGdyb3VwaW5nIGV2ZW50LWNvdW50ZXJzIHsNCiAgICAg
ICAgY29udGFpbmVyIGV2ZW50LWNvdW50ZXJzIHsNCiAgICAgICAgICAgIGNvbmZpZyBmYWxzZTsN
CiAgICAgICAgICAgIGxlYWYgYWRqYWNlbmN5LWNoYW5nZXMgew0KICAgICAgICAgICAgICB0eXBl
IHVpbnQzMjsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJUaGUg
bnVtYmVyIG9mIHRpbWVzIGFuIGFkamFjZW5jeSBzdGF0ZQ0KICAgICAgICAgICAgICAgIGNoYW5n
ZSBoYXMgb2NjdXJlZCBvbiB0aGlzIGludGVyZmFjZS4iOw0KICAgICAgICAgICAgfQ0KICAgICAg
ICAgICAgbGVhZiBhZGphY2VuY3ktbnVtYmVyIHsNCiAgICAgICAgICAgICAgdHlwZSB1aW50MzI7
DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiVGhlIG51bWJlciBv
ZiBhZGphY2VuY2llcyBvbiB0aGlzDQogICAgICAgICAgICAgICAgaW50ZXJmYWNlLiI7DQogICAg
ICAgICAgICB9DQogICAgICAgICAgICBsZWFmIGluaXQtZmFpbHMgew0KICAgICAgICAgICAgICB0
eXBlIHVpbnQzMjsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJU
aGUgbnVtYmVyIG9mIHRpbWVzIGluaXRpYWxpemF0aW9uIG9mDQogICAgICAgICAgICAgICAgdGhp
cyBpbnRlcmZhY2UgaGFzIGZhaWxlZC4gVGhpcyBjb3VudHMNCiAgICAgICAgICAgICAgICBldmVu
dHMgc3VjaCBhcyBQUFAgTkNQIGZhaWx1cmVzLg0KICAgICAgICAgICAgICAgIEZhaWx1cmVzIHRv
IGZvcm0gYW4gYWRqYWNlbmN5IGFyZSBjb3VudGVkDQogICAgICAgICAgICAgICAgYnkgYWRqYWNl
bmN5LXJlamVjdHMuIjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGxlYWYgYWRqYWNlbmN5
LXJlamVjdHMgew0KICAgICAgICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAgICAgZGVz
Y3JpcHRpb24NCiAgICAgICAgICAgICAgICJUaGUgbnVtYmVyIG9mIHRpbWVzIGFuIGFkamFjZW5j
eSBoYXMgYmVlbg0KICAgICAgICAgICAgICAgIHJlamVjdGVkIG9uIHRoaXMgaW50ZXJmYWNlLiI7
DQogICAgICAgICAgICB9DQogICAgICAgICAgICBsZWFmIGlkLWxlbi1taXNtYXRjaCB7DQogICAg
ICAgICAgICAgIHR5cGUgdWludDMyOw0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICAgICAgICAgIlRoZSBudW1iZXIgb2YgdGltZXMgYW4gSVMtSVMgUERVIHdpdGggYW4gSUQNCiAg
ICAgICAgICAgICAgICBmaWVsZCBsZW5ndGggZGlmZmVyZW50IGZyb20gdGhhdCBmb3IgdGhpcw0K
ICAgICAgICAgICAgICAgIHN5c3RlbSBoYXMgYmVlbiByZWNlaXZlZCBvbiB0aGlzIGludGVyZmFj
ZS4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgbGVhZiBtYXgtYXJlYS1hZGRyZXNzZXMt
bWlzbWF0Y2ggew0KICAgICAgICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAgICAgZGVz
Y3JpcHRpb24NCiAgICAgICAgICAgICAgICJUaGUgbnVtYmVyIG9mIHRpbWVzIGFuIElTLUlTIFBE
VSB3aXRoDQogICAgICAgICAgICAgICAgYWNjb3JkaW5nIG1heCBhcmVhIGFkZHJlc3MgZmllbGQN
CiAgICAgICAgICAgICAgICBkaWZmZXJzIGZyb20gdGhhdCBmb3INCiAgICAgICAgICAgICAgICB0
aGlzIHN5c3RlbSBoYXMgYmVlbiByZWNlaXZlZCBvbiB0aGlzDQogICAgICAgICAgICAgICAgaW50
ZXJmYWNlLiI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBsZWFmIGF1dGhlbnRpY2F0aW9u
LXR5cGUtZmFpbHMgew0KICAgICAgICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAgICAg
ZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJOdW1iZXIgb2YgYXV0aGVudGljYXRpb24gdHlw
ZSBtaXNtYXRjaGVzLiI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBsZWFmIGF1dGhlbnRp
Y2F0aW9uLWZhaWxzIHsNCiAgICAgICAgICAgICAgdHlwZSB1aW50MzI7DQogICAgICAgICAgICAg
IGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiTnVtYmVyIG9mIGF1dGhlbnRpY2F0aW9uIGtl
eSBmYWlsdXJlcy4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgbGVhZiBsYW4tZGlzLWNo
YW5nZXMgew0KICAgICAgICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAgICAgZGVzY3Jp
cHRpb24NCiAgICAgICAgICAgICAgICJUaGUgbnVtYmVyIG9mIHRpbWVzIHRoZSBESVMgaGFzIGNo
YW5nZWQNCiAgICAgICAgICAgICAgICBvbiB0aGlzIGludGVyZmFjZSBhdCB0aGlzIGxldmVsLg0K
ICAgICAgICAgICAgICAgIElmIHRoZSBpbnRlcmZhY2UgdHlwZSBpcyBwb2ludCB0byBwb2ludCwN
CiAgICAgICAgICAgICAgICB0aGUgY291bnQgaXMgemVyby4iOw0KICAgICAgICAgICAgfQ0KICAg
ICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAiUHJvdmlkZXMgcHJvdG9jb2wgZXZl
bnQgY291bnRlcnMuIjsNCiAgICAgICAgfQ0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAg
Ikdyb3VwaW5nIGZvciBldmVudCBjb3VudGVycyI7DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgcGFj
a2V0LWNvdW50ZXJzIHsNCiAgICAgIGNvbnRhaW5lciBwYWNrZXQtY291bnRlcnMgew0KICAgICAg
ICBjb25maWcgZmFsc2U7DQogICAgICAgIGxpc3QgbGV2ZWwgew0KICAgICAgICAgIGtleSBsZXZl
bDsNCg0KICAgICAgICAgIGxlYWYgbGV2ZWwgew0KICAgICAgICAgICAgdHlwZSBsZXZlbC1udW1i
ZXI7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGlzIGxlYWYgZGVz
Y3JpYmVzIHRoZSBJU0lTIGxldmVsLiI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGNvbnRhaW5l
ciBpaWggew0KICAgICAgICAgICAgbGVhZiBpbiB7DQogICAgICAgICAgICAgIHR5cGUgdWludDMy
Ow0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgIlJlY2VpdmVkIFBE
VXMuIjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGxlYWYgb3V0IHsNCiAgICAgICAgICAg
ICAgdHlwZSB1aW50MzI7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAg
ICAiU2VudCBQRFVzLiI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0K
ICAgICAgICAgICAgICJUaGUgbnVtYmVyIG9mIElJSCBQRFVzIHJlY2VpdmVkL3NlbnQuIjsNCiAg
ICAgICAgICB9DQogICAgICAgICAgY29udGFpbmVyIGlzaCB7DQogICAgICAgICAgICBsZWFmIGlu
IHsNCiAgICAgICAgICAgICAgdHlwZSB1aW50MzI7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9u
DQogICAgICAgICAgICAgICAiUmVjZWl2ZWQgUERVcy4iOw0KICAgICAgICAgICAgfQ0KICAgICAg
ICAgICAgbGVhZiBvdXQgew0KICAgICAgICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAg
ICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJTZW50IFBEVXMuIjsNCiAgICAgICAgICAg
IH0NCiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgIlRoZSBudW1iZXIgb2Yg
SVNIIFBEVXMgcmVjZWl2ZWQvc2VudC4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBjb250YWlu
ZXIgZXNoIHsNCiAgICAgICAgICAgIGxlYWYgaW4gew0KICAgICAgICAgICAgICB0eXBlIHVpbnQz
MjsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJSZWNlaXZlZCBQ
RFVzLiI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBsZWFmIG91dCB7DQogICAgICAgICAg
ICAgIHR5cGUgdWludDMyOw0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAg
ICAgIlNlbnQgUERVcy4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICAgICAiVGhlIG51bWJlciBvZiBFU0ggUERVcyByZWNlaXZlZC9zZW50LiI7DQog
ICAgICAgICAgfQ0KICAgICAgICAgIGNvbnRhaW5lciBsc3Agew0KICAgICAgICAgICAgbGVhZiBp
biB7DQogICAgICAgICAgICAgIHR5cGUgdWludDMyOw0KICAgICAgICAgICAgICBkZXNjcmlwdGlv
bg0KICAgICAgICAgICAgICAgIlJlY2VpdmVkIFBEVXMuIjsNCiAgICAgICAgICAgIH0NCiAgICAg
ICAgICAgIGxlYWYgb3V0IHsNCiAgICAgICAgICAgICAgdHlwZSB1aW50MzI7DQogICAgICAgICAg
ICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiU2VudCBQRFVzLiI7DQogICAgICAgICAg
ICB9DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGUgbnVtYmVyIG9m
IExTUCBQRFVzIHJlY2VpdmVkL3NlbnQuIjsNCiAgICAgICAgICB9DQogICAgICAgICAgY29udGFp
bmVyIHBzbnAgew0KICAgICAgICAgICAgbGVhZiBpbiB7DQogICAgICAgICAgICAgIHR5cGUgdWlu
dDMyOw0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgIlJlY2VpdmVk
IFBEVXMuIjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGxlYWYgb3V0IHsNCiAgICAgICAg
ICAgICAgdHlwZSB1aW50MzI7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAg
ICAgICAiU2VudCBQRFVzLiI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBkZXNjcmlwdGlv
bg0KICAgICAgICAgICAgICJUaGUgbnVtYmVyIG9mIFBTTlAgUERVcyByZWNlaXZlZC9zZW50LiI7
DQogICAgICAgICAgfQ0KICAgICAgICAgIGNvbnRhaW5lciBjc25wIHsNCiAgICAgICAgICAgIGxl
YWYgaW4gew0KICAgICAgICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAgICAgZGVzY3Jp
cHRpb24NCiAgICAgICAgICAgICAgICJSZWNlaXZlZCBQRFVzLiI7DQogICAgICAgICAgICB9DQog
ICAgICAgICAgICBsZWFmIG91dCB7DQogICAgICAgICAgICAgIHR5cGUgdWludDMyOw0KICAgICAg
ICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgIlNlbnQgUERVcy4iOw0KICAgICAg
ICAgICAgfQ0KICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAiVGhlIG51bWJl
ciBvZiBDU05QIFBEVXMgcmVjZWl2ZWQvc2VudC4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBj
b250YWluZXIgdW5rbm93biB7DQogICAgICAgICAgICBsZWFmIGluIHsNCiAgICAgICAgICAgICAg
dHlwZSB1aW50MzI7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAi
UmVjZWl2ZWQgUERVcy4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgbGVhZiBvdXQgew0K
ICAgICAgICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICAgICAgICJTZW50IFBEVXMuIjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGRl
c2NyaXB0aW9uDQogICAgICAgICAgICAgIlRoZSBudW1iZXIgb2YgdW5rbm93biBQRFVzIHJlY2Vp
dmVkL3NlbnQuIjsNCiAgICAgICAgICB9DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAg
ICAgIkxpc3Qgb2Ygc3VwcG9ydGVkIGxldmVscy4iOw0KICAgICAgICB9DQogICAgICAgIGRlc2Ny
aXB0aW9uDQogICAgICAgICAiUHJvdmlkZXMgcGFja2V0IGNvdW50ZXJzIHBlciBsZXZlbC4iOw0K
ICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiR3JvdXBpbmcgZm9yIHBhY2tldCBj
b3VudGVycy4iOw0KICAgIH0NCg0KICAgIGdyb3VwaW5nIHNwZi1sb2cgew0KICAgICAgY29udGFp
bmVyIHNwZi1sb2cgew0KICAgICAgICBjb25maWcgZmFsc2U7DQogICAgICAgIGxpc3QgZXZlbnQg
ew0KICAgICAgICAgIGtleSBpZDsNCg0KICAgICAgICAgIGxlYWYgaWQgew0KICAgICAgICAgICAg
dHlwZSB1aW50MzI7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGlz
IGxlYWYgZGVmaW5lcyB0aGUgZXZlbnQgaWRlbnRpZmllci4NCiAgICAgICAgICAgICAgVGhpcyBp
cyBhIHB1cmVseSBpbnRlcm5hbCB2YWx1ZS4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBsZWFm
IHNwZi10eXBlIHsNCiAgICAgICAgICAgIHR5cGUgZW51bWVyYXRpb24gew0KICAgICAgICAgICAg
ICBlbnVtIGZ1bGwgew0KICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAg
ICAgICJDb21wdXRhdGlvbiBkb25lIGlzIGEgRnVsbCBTUEYuIjsNCiAgICAgICAgICAgICAgfQ0K
ICAgICAgICAgICAgICBlbnVtIHJvdXRlLW9ubHkgew0KICAgICAgICAgICAgICAgIGRlc2NyaXB0
aW9uDQogICAgICAgICAgICAgICAgICJDb21wdXRhdGlvbiBkb25lIGlzIGENCiAgICAgICAgICAg
ICAgICAgIHJlYWNoYWJpbGl0eSBjb21wdXRhdGlvbg0KICAgICAgICAgICAgICAgICAgb25seS4i
Ow0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgICBkZXNjcmlwdGlv
bg0KICAgICAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRoZSB0eXBlIG9mIGNvbXB1dGF0
aW9uDQogICAgICAgICAgICAgdXNlZC4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBsZWFmIGxl
dmVsIHsNCiAgICAgICAgICAgIHR5cGUgbGV2ZWwtbnVtYmVyOw0KICAgICAgICAgICAgZGVzY3Jp
cHRpb24NCiAgICAgICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgbGV2ZWwgYWZmZWN0
ZWQgYnkgdGhlDQogICAgICAgICAgICAgdGhlIGNvbXB1dGF0aW9uLiI7DQogICAgICAgICAgfQ0K
ICAgICAgICAgIGxlYWYgc2NoZWR1bGUtdGltZXN0YW1wIHsNCiAgICAgICAgICAgIHR5cGUgeWFu
Zzp0aW1lc3RhbXA7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGlz
IGxlYWYgZGVzY3JpYmVzIHRoZSB0aW1lc3RhbXANCiAgICAgICAgICAgICAgd2hlbiB0aGUgY29t
cHV0YXRpb24gd2FzIHNjaGVkdWxlZC4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBsZWFmIHN0
YXJ0LXRpbWVzdGFtcCB7DQogICAgICAgICAgICB0eXBlIHlhbmc6dGltZXN0YW1wOw0KICAgICAg
ICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUg
dGltZXN0YW1wDQogICAgICAgICAgICAgIHdoZW4gdGhlIGNvbXB1dGF0aW9uIHdhcyBzdGFydGVk
LiI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGxlYWYgZW5kLXRpbWVzdGFtcCB7DQogICAgICAg
ICAgICB0eXBlIHlhbmc6dGltZXN0YW1wOw0KICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAg
ICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgdGltZXN0YW1wDQogICAgICAgICAgICAg
IHdoZW4gdGhlIGNvbXB1dGF0aW9uIHdhcyBlbmRlZC4iOw0KICAgICAgICAgIH0NCiAgICAgICAg
ICBsaXN0IHRyaWdnZXItbHNwIHsNCiAgICAgICAgICAgIGtleSAibHNwIjsNCiAgICAgICAgICAg
IGxlYWYgbHNwIHsNCiAgICAgICAgICAgICAgdHlwZSBsc3AtaWQ7DQogICAgICAgICAgICAgIGRl
c2NyaXB0aW9uDQogICAgICAgICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgTFNQSUQN
CiAgICAgICAgICAgICAgICBvZiB0aGUgTFNQLiI7DQogICAgICAgICAgICB9DQogICAgICAgICAg
ICBsZWFmIHNlcXVlbmNlIHsNCiAgICAgICAgICAgICAgdHlwZSB1aW50MzI7DQogICAgICAgICAg
ICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUg
c2VxdWVuY2UNCiAgICAgICAgICAgICAgICBudW1iZXIgb2YgdGhlIExTUC4iOw0KICAgICAgICAg
ICAgfQ0KICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAiVGhpcyBsZWFmIGRl
c2NyaWJlcyBsaXN0IG9mIExTUHMNCiAgICAgICAgICAgICAgdGhhdCB0cmlnZ2VyZWQgdGhlIGNv
bXB1dGF0aW9uLiI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAg
ICAgICJMaXN0IG9mIGNvbXB1dGF0aW9uIGV2ZW50cy4NCiAgICAgICAgICAgSXQgaXMgdXNlZCBh
cyBhIHdyYXBwaW5nIGJ1ZmZlci4iOw0KICAgICAgICB9DQoNCiAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICJUaGlzIGNvbnRhaW5lciBsaXN0cyB0aGUgU1BGIGNvbXB1dGF0aW9uIGV2ZW50
cy4iOw0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiR3JvdXBpbmcgZm9yIHNw
Zi1sb2cgZXZlbnRzLiI7DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgbHNwLWxvZyB7DQogICAgICBj
b250YWluZXIgbHNwLWxvZyB7DQogICAgICAgIGNvbmZpZyBmYWxzZTsNCiAgICAgICAgbGlzdCBl
dmVudCB7DQogICAgICAgICAga2V5IGlkOw0KDQogICAgICAgICAgbGVhZiBpZCB7DQogICAgICAg
ICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAg
IlRoaXMgbGVhZiBkZWZpbmVzIHRoZSBldmVudCBpZGVudGlmaWVyLg0KICAgICAgICAgICAgICBU
aGlzIGlzIGEgcHVyZWx5IGludGVybmFsIHZhbHVlLiI7DQogICAgICAgICAgfQ0KICAgICAgICAg
IGxlYWYgbGV2ZWwgew0KICAgICAgICAgICAgdHlwZSBsZXZlbC1udW1iZXI7DQogICAgICAgICAg
ICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRoZSBsZXZl
bCBhZmZlY3RlZCBieSB0aGUNCiAgICAgICAgICAgICB0aGUgY29tcHV0YXRpb24uIjsNCiAgICAg
ICAgICB9DQogICAgICAgICAgY29udGFpbmVyIGxzcCB7DQogICAgICAgICAgICBsZWFmIGxzcCB7
DQoNCiAgICAgICAgICAgICAgdHlwZSBsc3AtaWQ7DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9u
DQogICAgICAgICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgTFNQSUQNCiAgICAgICAg
ICAgICAgICBvZiB0aGUgTFNQLiI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBsZWFmIHNl
cXVlbmNlIHsNCiAgICAgICAgICAgICAgdHlwZSB1aW50MzI7DQogICAgICAgICAgICAgIGRlc2Ny
aXB0aW9uDQogICAgICAgICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgc2VxdWVuY2UN
CiAgICAgICAgICAgICAgICBudW1iZXIgb2YgdGhlIExTUC4iOw0KICAgICAgICAgICAgfQ0KICAg
ICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAiVGhpcyBjb250YWluZXIgZGVzY3Jp
YmVzIHRoZSByZWNlaXZlZCBMU1ANCiAgICAgICAgICAgICAsIGluIGNhc2Ugb2YgbG9jYWwgTFNQ
IHVwZGF0ZSB0aGUgbG9jYWwNCiAgICAgICAgICAgICBMU1AgSUQgaXMgcmVmZXJlbmNlZC4iOw0K
ICAgICAgICAgIH0NCg0KICAgICAgICAgIGxlYWYgcmVjZWl2ZWQtdGltZXN0YW1wIHsNCiAgICAg
ICAgICAgIHR5cGUgeWFuZzp0aW1lc3RhbXA7DQoNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQog
ICAgICAgICAgICAgIlRoaXMgbGVhZiBkZXNjcmliZXMgdGhlIHRpbWVzdGFtcA0KICAgICAgICAg
ICAgIHdoZW4gdGhlIExTUCB3YXMgcmVjZWl2ZWQuIEluIGNhc2Ugb2YNCiAgICAgICAgICAgICBs
b2NhbCBMU1AgdXBkYXRlLCB0aGUgdGltZXN0YW1wIHJlZmVycw0KICAgICAgICAgICAgIHRvIHRo
ZSBsb2NhbCBMU1AgdXBkYXRlIHRpbWUuIjsNCiAgICAgICAgICB9DQoNCiAgICAgICAgICBsZWFm
IGNoYW5nZSB7DQogICAgICAgICAgICB0eXBlIGlkZW50aXR5cmVmIHsNCiAgICAgICAgICAgICAg
YmFzZSBsc3AtbG9nLXJlYXNvbjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGRlc2NyaXB0
aW9uDQogICAgICAgICAgICAgIlRoaXMgbGVhZiBkZXNjcmliZXMgdGhlIHR5cGUgb2YgY2hhbmdl
DQogICAgICAgICAgICAgaW4gdGhlIExTUC4iOw0KICAgICAgICAgIH0NCg0KICAgICAgICAgIGRl
c2NyaXB0aW9uDQogICAgICAgICAgICJMaXN0IG9mIExTUCBldmVudHMuDQogICAgICAgICAgIEl0
IGlzIHVzZWQgYXMgYSB3cmFwcGluZyBidWZmZXIuIjsNCiAgICAgICAgfQ0KDQogICAgICAgIGRl
c2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBjb250YWluZXIgbGlzdHMgdGhlIExTUCByZWNlcHRp
b24gZXZlbnRzLg0KICAgICAgICAgTG9jYWwgTFNQIG1vZGlmaWNhdGlvbiBhcmUgYWxzbyBjb250
YWluZWQgaW4gdGhlDQogICAgICAgICBsaXN0LiI7DQogICAgICB9DQogICAgICBkZXNjcmlwdGlv
bg0KICAgICAgICJHcm91cGluZyBmb3IgTFNQIGxvZy4iOw0KICAgIH0NCg0KICAgIGdyb3VwaW5n
IGhvc3RuYW1lLWRiIHsNCiAgICAgIGNvbnRhaW5lciBob3N0bmFtZXMgew0KICAgICAgICBjb25m
aWcgZmFsc2U7DQogICAgICAgIGxpc3QgaG9zdG5hbWUgew0KICAgICAgICAgIGtleSBzeXN0ZW0t
aWQ7DQogICAgICAgICAgbGVhZiBzeXN0ZW0taWQgew0KICAgICAgICAgICAgdHlwZSBzeXN0ZW0t
aWQ7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGlzIGxlYWYgZGVz
Y3JpYmVzIHRoZSBzeXN0ZW0taWQNCiAgICAgICAgICAgICBhc3NvY2lhdGVkIHdpdGggdGhlIGhv
c3RuYW1lLiI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGxlYWYgaG9zdG5hbWUgew0KICAgICAg
ICAgICAgdHlwZSBzdHJpbmc7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAg
ICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRoZSBob3N0bmFtZQ0KICAgICAgICAgICAgICBhc3NvY2lh
dGVkIHdpdGggdGhlIHN5c3RlbSBJRC4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBkZXNjcmlw
dGlvbg0KICAgICAgICAgICAiTGlzdCBvZiBzeXN0ZW0taWQvaG9zdG5hbWUgYXNzb2NpYXRpb25z
IjsNCiAgICAgICAgfQ0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRoaXMgY29udGFp
bmVyIGRlc2NyaWJlcyB0aGUgbGlzdA0KICAgICAgICAgb2YgYmluZGluZyBiZXR3ZWVuIHN5c3Rl
bS1pZCBhbmQNCiAgICAgICAgIGhvc3RuYW1lcy4iOw0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRp
b24NCiAgICAgICAiR3JvdXBpbmcgZm9yIGhvc3RuYW1lIHRvIHN5c3RlbWlkIG1hcHBpbmcgZGF0
YWJhc2UuIjsNCiAgICB9DQoNCiAgICAvKiBHcm91cGluZ3MgZm9yIHRoZSBMU0RCIGRlc2NyaXB0
aW9uICovDQoNCiAgICBncm91cGluZyBwcmVmaXgtcmVhY2hhYmlsaXR5LWF0dHJpYnV0ZXMgew0K
ICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiVGhpcyBncm91cCBkZWZpbmVzIGV4dGVuZGVkIHJl
YWNoYWJpbGl0eSBhdHRyaWJ1dGVzIG9mIGFuDQogICAgICAgIElQdjQgb3IgSVB2NiBwcmVmaXgu
IjsNCg0KICAgICAgbGVhZiBleHRlcm5hbC1wcmVmaXgtZmxhZyB7DQogICAgICAgICAgdHlwZSBi
b29sZWFuOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJFeHRlcm5hbCBwcmVm
aXggZmxhZy4iOw0KICAgICAgfQ0KICAgICAgbGVhZiByZWFkdmVydGlzZW1lbnQtZmxhZyB7DQog
ICAgICAgICAgdHlwZSBib29sZWFuOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAg
ICJSZWFkdmVydGlzZW1lbnQgZmxhZy4iOw0KICAgICAgfQ0KICAgICAgbGVhZiBub2RlLWZsYWcg
ew0KICAgICAgICAgIHR5cGUgYm9vbGVhbjsNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICAgICAiTm9kZSBmbGFnLiI7DQogICAgICB9DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgcHJlZml4
LWlwdjQtc291cmNlLXJvdXRlci1pZCB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJUaGlz
IGdyb3VwIGRlZmluZXMgdGhlIElQdjQgc291cmNlIHJvdXRlciBJRCBvZg0KICAgICAgIGEgcHJl
Zml4IGFkdmVydGlzZW1lbnQuIjsNCg0KICAgICAgbGVhZiBpcHY0LXNvdXJjZS1yb3V0ZXItaWQg
ew0KICAgICAgICAgIHR5cGUgaW5ldDppcHY0LWFkZHJlc3M7DQogICAgICAgICAgZGVzY3JpcHRp
b24NCiAgICAgICAgICAgIklQdjQgU291cmNlIHJvdXRlciBJRCBhZGRyZXNzLiI7DQogICAgICB9
DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgcHJlZml4LWlwdjYtc291cmNlLXJvdXRlci1pZCB7DQog
ICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJUaGlzIGdyb3VwIGRlZmluZXMgdGhlIElQdjYgc291
cmNlIHJvdXRlciBJRCBvZg0KICAgICAgIGEgcHJlZml4IGFkdmVydGlzZW1lbnQuIjsNCg0KICAg
ICAgbGVhZiBpcHY2LXNvdXJjZS1yb3V0ZXItaWQgew0KICAgICAgICAgIHR5cGUgaW5ldDppcHY2
LWFkZHJlc3M7DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgIklQdjYgU291cmNl
IHJvdXRlciBJRCBhZGRyZXNzLiI7DQogICAgICB9DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgcHJl
Zml4LWF0dHJpYnV0ZXMtZXh0ZW5zaW9uIHsNCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgIlBy
ZWZpeCBleHRlbmRlZCBhdHRyaWJ1dGVzLiI7DQoNCiAgICAgIHVzZXMgcHJlZml4LXJlYWNoYWJp
bGl0eS1hdHRyaWJ1dGVzOw0KICAgICAgdXNlcyBwcmVmaXgtaXB2NC1zb3VyY2Utcm91dGVyLWlk
Ow0KICAgICAgdXNlcyBwcmVmaXgtaXB2Ni1zb3VyY2Utcm91dGVyLWlkOw0KICAgIH0NCg0KICAg
IGdyb3VwaW5nIHByZWZpeC1pcHY0LXN0ZCB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJU
aGlzIGdyb3VwIGRlZmluZXMgYXR0cmlidXRlcyBvZiBhbg0KICAgICAgICBJUHY0IHN0YW5kYXJk
IHByZWZpeC4iOw0KICAgICAgbGVhZiB1cC1kb3duIHsNCiAgICAgICAgdHlwZSBib29sZWFuOw0K
ICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRoaXMgbGVhZiBleHByZXNzZXMgdGhlIHZh
bHVlIG9mIHVwL2Rvd24gYml0LiI7DQogICAgICB9DQogICAgICBsZWFmIGktZSB7DQogICAgICAg
IHR5cGUgYm9vbGVhbjsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlzIGxlYWYg
ZXhwcmVzc2VzIHRoZSB2YWx1ZSBvZiBJL0UgYml0LiI7DQogICAgICB9DQogICAgICBsZWFmIGlw
LXByZWZpeCB7DQogICAgICAgIHR5cGUgaW5ldDppcHY0LWFkZHJlc3M7DQogICAgICAgIGRlc2Ny
aXB0aW9uDQogICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgSVB2NCBwcmVmaXgiOw0K
ICAgICAgfQ0KICAgICAgbGVhZiBwcmVmaXgtbGVuIHsNCiAgICAgICAgdHlwZSB1aW50ODsNCiAg
ICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRoZSBJUHY0
IHByZWZpeCBsZW4gaW4gYml0cyI7DQogICAgICB9DQogICAgICBsZWFmIGRlZmF1bHQtbWV0cmlj
IHsNCiAgICAgICAgdHlwZSBzdGQtbWV0cmljOw0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICAgIlRoaXMgbGVhZiBkZXNjcmliZXMgdGhlIElTSVMgZGVmYXVsdCBtZXRyaWMgdmFsdWUiOw0K
ICAgICAgfQ0KICAgICAgY29udGFpbmVyIGRlbGF5LW1ldHJpYyB7DQogICAgICAgIGxlYWYgbWV0
cmljIHsNCiAgICAgICAgICB0eXBlIHN0ZC1tZXRyaWM7DQogICAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICAgIlRoaXMgbGVhZiBkZXNjcmliZXMgdGhlIElTSVMgZGVsYXkgbWV0cmljIHZh
bHVlIjsNCiAgICAgICAgfQ0KICAgICAgICBsZWFmIHN1cHBvcnRlZCB7DQogICAgICAgICAgdHlw
ZSBib29sZWFuOw0KICAgICAgICAgIGRlZmF1bHQgImZhbHNlIjsNCiAgICAgICAgICBkZXNjcmlw
dGlvbg0KICAgICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyBpZiB0aGUgbWV0cmljIGlzIHN1
cHBvcnRlZC4iOw0KICAgICAgICB9DQoNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJU
aGlzIGNvbnRhaW5lciBkZWZpbmVzIHRoZSBJU0lTIGRlbGF5IG1ldHJpYy4iOw0KICAgICAgfQ0K
ICAgICAgY29udGFpbmVyIGV4cGVuc2UtbWV0cmljIHsNCiAgICAgICAgbGVhZiBtZXRyaWMgew0K
ICAgICAgICAgIHR5cGUgc3RkLW1ldHJpYzsNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgSVNJUyBleHBlbnNlIG1ldHJpYyB2YWx1ZSI7
DQogICAgICAgIH0NCiAgICAgICAgbGVhZiBzdXBwb3J0ZWQgew0KICAgICAgICAgIHR5cGUgYm9v
bGVhbjsNCiAgICAgICAgICBkZWZhdWx0ICJmYWxzZSI7DQogICAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICAgIlRoaXMgbGVhZiBkZXNjcmliZXMgaWYgdGhlIG1ldHJpYyBpcyBzdXBwb3J0
ZWQuIjsNCiAgICAgICAgfQ0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRoaXMgY29u
dGFpbmVyIGRlZmluZXMgdGhlIElTSVMgZXhwZW5zZSBtZXRyaWMuIjsNCiAgICAgIH0NCiAgICAg
IGNvbnRhaW5lciBlcnJvci1tZXRyaWMgew0KICAgICAgICBsZWFmIG1ldHJpYyB7DQogICAgICAg
ICAgdHlwZSBzdGQtbWV0cmljOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJU
aGlzIGxlYWYgZGVzY3JpYmVzIHRoZSBJU0lTIGVycm9yIG1ldHJpYyB2YWx1ZSI7DQogICAgICAg
IH0NCiAgICAgICAgbGVhZiBzdXBwb3J0ZWQgew0KICAgICAgICAgIHR5cGUgYm9vbGVhbjsNCiAg
ICAgICAgICBkZWZhdWx0ICJmYWxzZSI7DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAg
ICAgIlRoaXMgbGVhZiBkZXNjcmliZXMgaWYgdGhlIG1ldHJpYyBpcyBzdXBwb3J0ZWQuIjsNCiAg
ICAgICAgfQ0KDQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBjb250YWluZXIg
ZGVmaW5lcyB0aGUgSVNJUyBlcnJvciBtZXRyaWMuIjsNCiAgICAgIH0NCiAgICB9DQoNCiAgICBn
cm91cGluZyBwcmVmaXgtaXB2NC1leHRlbmRlZCB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICJUaGlzIGdyb3VwIGRlZmluZXMgYXR0cmlidXRlcyBvZiBhbg0KICAgICAgICBJUHY0IGV4dGVu
ZGVkIHByZWZpeC4iOw0KICAgICAgbGVhZiB1cC1kb3duIHsNCiAgICAgICAgdHlwZSBib29sZWFu
Ow0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRoaXMgbGVhZiBleHByZXNzZXMgdGhl
IHZhbHVlIG9mIHVwL2Rvd24gYml0LiI7DQogICAgICB9DQogICAgICBsZWFmIGlwLXByZWZpeCB7
DQogICAgICAgIHR5cGUgaW5ldDppcHY0LWFkZHJlc3M7DQogICAgICAgIGRlc2NyaXB0aW9uDQog
ICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgSVB2NCBwcmVmaXgiOw0KICAgICAgfQ0K
ICAgICAgbGVhZiBwcmVmaXgtbGVuIHsNCiAgICAgICAgdHlwZSB1aW50ODsNCiAgICAgICAgZGVz
Y3JpcHRpb24NCiAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRoZSBJUHY0IHByZWZpeCBs
ZW4gaW4gYml0cyI7DQogICAgICB9DQoNCiAgICAgIGxlYWYgbWV0cmljIHsNCiAgICAgICAgdHlw
ZSB3aWRlLW1ldHJpYzsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlzIGxlYWYg
ZGVzY3JpYmVzIHRoZSBJU0lTIG1ldHJpYyB2YWx1ZSI7DQogICAgICB9DQogICAgICBsZWFmLWxp
c3QgdGFnIHsNCiAgICAgICAgdHlwZSB1aW50MzI7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAg
ICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyBhIGxpc3Qgb2YgdGFncyBhc3NvY2lhdGVkIHdpdGgN
CiAgICAgICAgIHRoZSBwcmVmaXguIjsNCiAgICAgIH0NCiAgICAgIGxlYWYtbGlzdCB0YWc2NCB7
DQogICAgICAgIHR5cGUgdWludDY0Ow0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRo
aXMgbGVhZiBkZXNjcmliZXMgYSBsaXN0IG9mIDY0LWJpdCB0YWdzIGFzc29jaWF0ZWQgd2l0aA0K
ICAgICAgICAgdGhlIHByZWZpeC4iOw0KICAgICAgfQ0KICAgICAgdXNlcyBwcmVmaXgtYXR0cmli
dXRlcy1leHRlbnNpb247DQogICAgfQ0KDQogICAgZ3JvdXBpbmcgcHJlZml4LWlwdjYtZXh0ZW5k
ZWQgew0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAiVGhpcyBncm91cCBkZWZpbmVzIGF0dHJp
YnV0ZXMgb2YgYW4NCiAgICAgICAgSVB2NiBwcmVmaXguIjsNCiAgICAgIGxlYWYgdXAtZG93biB7
DQogICAgICAgIHR5cGUgYm9vbGVhbjsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJU
aGlzIGxlYWYgZXhwcmVzc2VzIHRoZSB2YWx1ZSBvZiB1cC9kb3duIGJpdC4iOw0KICAgICAgfQ0K
ICAgICAgbGVhZiBpcC1wcmVmaXggew0KICAgICAgICB0eXBlIGluZXQ6aXB2Ni1hZGRyZXNzOw0K
ICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRoaXMgbGVhZiBkZXNjcmliZXMgdGhlIElQ
djYgcHJlZml4IjsNCiAgICAgIH0NCiAgICAgIGxlYWYgcHJlZml4LWxlbiB7DQogICAgICAgIHR5
cGUgdWludDg7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBsZWFmIGRlc2Ny
aWJlcyB0aGUgSVB2NCBwcmVmaXggbGVuIGluIGJpdHMiOw0KICAgICAgfQ0KICAgICAgbGVhZiBt
ZXRyaWMgew0KICAgICAgICB0eXBlIHdpZGUtbWV0cmljOw0KICAgICAgICBkZXNjcmlwdGlvbg0K
ICAgICAgICAgIlRoaXMgbGVhZiBkZXNjcmliZXMgdGhlIElTSVMgbWV0cmljIHZhbHVlIjsNCiAg
ICAgIH0NCiAgICAgIGxlYWYtbGlzdCB0YWcgew0KICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAg
ICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIGEgbGlzdCBvZiB0
YWdzIGFzc29jaWF0ZWQgd2l0aA0KICAgICAgICAgdGhlIHByZWZpeC4iOw0KICAgICAgfQ0KICAg
ICAgbGVhZi1saXN0IHRhZzY0IHsNCiAgICAgICAgdHlwZSB1aW50NjQ7DQogICAgICAgIGRlc2Ny
aXB0aW9uDQogICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyBhIGxpc3Qgb2YgNjQtYml0IHRh
Z3MgYXNzb2NpYXRlZCB3aXRoDQogICAgICAgICB0aGUgcHJlZml4LiI7DQogICAgICB9DQogICAg
ICB1c2VzIHByZWZpeC1hdHRyaWJ1dGVzLWV4dGVuc2lvbjsNCiAgICB9DQoNCiAgICBncm91cGlu
ZyBuZWlnaGJvci1leHRlbmRlZCB7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJUaGlzIGdy
b3VwIGRlZmluZXMgYXR0cmlidXRlcyBvZiBhbg0KICAgICAgICBJU0lTIGV4dGVuZGVkIG5laWdo
Ym9yLiI7DQogICAgICBsZWFmIG5laWdoYm9yLWlkIHsNCiAgICAgICAgdHlwZSBzeXN0ZW0taWQ7
DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUg
c3lzdGVtLWlkIG9mIHRoZSBuZWlnaGJvci4iOw0KICAgICAgfQ0KICAgICAgbGVhZiBtZXRyaWMg
ew0KICAgICAgICB0eXBlIHdpZGUtbWV0cmljOw0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICAgIlRoaXMgbGVhZiBkZXNjcmliZXMgdGhlIElTSVMgbWV0cmljIHZhbHVlIjsNCiAgICAgIH0N
CiAgICB9DQoNCiAgICBncm91cGluZyBuZWlnaGJvciB7DQogICAgICBkZXNjcmlwdGlvbg0KICAg
ICAgICJUaGlzIGdyb3VwIGRlZmluZXMgYXR0cmlidXRlcyBvZiBhbg0KICAgICAgICBJU0lTIHN0
YW5kYXJkIG5laWdoYm9yLiI7DQogICAgICBsZWFmIG5laWdoYm9yLWlkIHsNCiAgICAgICAgdHlw
ZSBzeXN0ZW0taWQ7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBsZWFmIGRl
c2NyaWJlcyB0aGUgc3lzdGVtLWlkIG9mIHRoZSBuZWlnaGJvci4iOw0KICAgICAgfQ0KICAgICAg
bGVhZiBpLWUgew0KICAgICAgICB0eXBlIGJvb2xlYW47DQogICAgICAgIGRlc2NyaXB0aW9uDQog
ICAgICAgICAiVGhpcyBsZWFmIGV4cHJlc3NlcyB0aGUgdmFsdWUgb2YgSS9FIGJpdC4iOw0KICAg
ICAgfQ0KICAgICAgbGVhZiBkZWZhdWx0LW1ldHJpYyB7DQogICAgICAgIHR5cGUgc3RkLW1ldHJp
YzsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRo
ZSBJU0lTIGRlZmF1bHQgbWV0cmljIHZhbHVlIjsNCiAgICAgIH0NCiAgICAgIGNvbnRhaW5lciBk
ZWxheS1tZXRyaWMgew0KICAgICAgICBsZWFmIG1ldHJpYyB7DQogICAgICAgICAgdHlwZSBzdGQt
bWV0cmljOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJUaGlzIGxlYWYgZGVz
Y3JpYmVzIHRoZSBJU0lTIGRlbGF5IG1ldHJpYyB2YWx1ZSI7DQogICAgICAgIH0NCiAgICAgICAg
bGVhZiBzdXBwb3J0ZWQgew0KICAgICAgICAgIHR5cGUgYm9vbGVhbjsNCiAgICAgICAgICBkZWZh
dWx0ICJmYWxzZSI7DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgIlRoaXMgbGVh
ZiBkZXNjcmliZXMgaWYgdGhlIG1ldHJpYyBpcyBzdXBwb3J0ZWQuIjsNCiAgICAgICAgfQ0KICAg
ICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRoaXMgY29udGFpbmVyIGRlZmluZXMgdGhlIElT
SVMgZGVsYXkgbWV0cmljLiI7DQogICAgICB9DQogICAgICBjb250YWluZXIgZXhwZW5zZS1tZXRy
aWMgew0KICAgICAgICBsZWFmIG1ldHJpYyB7DQogICAgICAgICAgdHlwZSBzdGQtbWV0cmljOw0K
ICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRo
ZSBJU0lTIGRlbGF5IGV4cGVuc2UgdmFsdWUiOw0KICAgICAgICB9DQogICAgICAgIGxlYWYgc3Vw
cG9ydGVkIHsNCiAgICAgICAgICB0eXBlIGJvb2xlYW47DQogICAgICAgICAgZGVmYXVsdCAiZmFs
c2UiOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJUaGlzIGxlYWYgZGVzY3Jp
YmVzIGlmIHRoZSBtZXRyaWMgaXMgc3VwcG9ydGVkLiI7DQogICAgICAgIH0NCiAgICAgICAgZGVz
Y3JpcHRpb24NCiAgICAgICAgICJUaGlzIGNvbnRhaW5lciBkZWZpbmVzIHRoZSBJU0lTIGV4cGVu
c2UgbWV0cmljLiI7DQogICAgICB9DQogICAgICBjb250YWluZXIgZXJyb3ItbWV0cmljIHsNCiAg
ICAgICAgbGVhZiBtZXRyaWMgew0KICAgICAgICAgIHR5cGUgc3RkLW1ldHJpYzsNCiAgICAgICAg
ICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgSVNJUyBl
cnJvciBtZXRyaWMgdmFsdWUiOw0KICAgICAgICB9DQogICAgICAgIGxlYWYgc3VwcG9ydGVkIHsN
CiAgICAgICAgICB0eXBlIGJvb2xlYW47DQogICAgICAgICAgZGVmYXVsdCAiZmFsc2UiOw0KICAg
ICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIGlmIHRo
ZSBtZXRyaWMgaXMgc3VwcG9ydGVkLiI7DQogICAgICAgIH0NCiAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICJUaGlzIGNvbnRhaW5lciBkZWZpbmVzIHRoZSBJU0lTIGVycm9yIG1ldHJpYy4i
Ow0KICAgICAgfQ0KICAgIH0NCg0KICAgIGdyb3VwaW5nIGxzcC1lbnRyeSB7DQogICAgIGRlc2Ny
aXB0aW9uDQogICAgICAgIlRoaXMgZ3JvdXAgZGVmaW5lcyBhdHRyaWJ1dGVzIG9mIGFuDQogICAg
ICAgIElTSVMgTFNQIGRhdGFiYXNlIGVudHJ5LiI7DQoNCiAgICAgIGxlYWYgZGVjb2RlZC1jb21w
bGV0ZWQgew0KICAgICAgICB0eXBlIGJvb2xlYW47DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAg
ICAgICAgIlRoZSBJUy1JUyBib2R5IGlzIGZ1bGx5IGRlY29kZWQuIjsNCiAgICAgIH0NCiAgICAg
IGxlYWYgcmF3LWRhdGEgew0KICAgICAgICB0eXBlIHlhbmc6aGV4LXN0cmluZzsNCiAgICAgICAg
ZGVzY3JpcHRpb24NCiAgICAgICAgICAiVGhlIGNvbXBsZXRlIExTUCBpbiBuZXR3b3JrIGJ5dGUN
CiAgICAgICAgICAgb3JkZXIgaGV4YWRlY2ltYWwgYXMgcmVjZWl2ZWQgb3Igb3JpZ2luYXRlZC4i
Ow0KICAgICAgfQ0KICAgICAgbGVhZiBsc3AtaWQgew0KICAgICAgICB0eXBlIGxzcC1pZDsNCiAg
ICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRoZSBMU1Ag
SUQgb2YgdGhlIExTUC4iOw0KICAgICAgfQ0KICAgICAgbGVhZiBjaGVja3N1bSB7DQogICAgICAg
IHR5cGUgdWludDE2Ow0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRoaXMgbGVhZiBk
ZXNjcmliZXMgdGhlIGNoZWNrc3VtIG9mIHRoZSBMU1AuIjsNCiAgICAgIH0NCiAgICAgIGxlYWYg
cmVtYWluaW5nLWxpZmV0aW1lIHsNCiAgICAgICAgdHlwZSB1aW50MTY7DQogICAgICAgIHVuaXRz
ICJzZWNvbmRzIjsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlzIGxlYWYgZGVz
Y3JpYmVzIHRoZSByZW1haW5pbmcgbGlmZXRpbWUNCiAgICAgICAgICBpbiBzZWNvbmRzIGJlZm9y
ZSB0aGUgTFNQIGV4cGlyYXRpb24uIjsNCiAgICAgIH0NCiAgICAgIGxlYWYgc2VxdWVuY2Ugew0K
ICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlz
IGxlYWYgZGVzY3JpYmVzIHRoZSBzZXF1ZW5jZSBudW1iZXIgb2YgdGhlIExTUC4iOw0KICAgICAg
fQ0KICAgICAgbGVhZiBhdHRyaWJ1dGVzIHsNCiAgICAgICAgdHlwZSBiaXRzIHsNCiAgICAgICAg
ICBiaXQgUEFSVElUSU9OTkVEIHsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAg
ICAgIklmIHNldCwgdGhlIG9yaWdpbmF0b3Igc3VwcG9ydHMgcGFydGl0aW9uDQogICAgICAgICAg
ICAgIHJlcGFpci4iOw0KDQogICAgICAgICAgfQ0KICAgICAgICAgIGJpdCBBVFRBQ0hFRC1FUlJP
UiB7DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJJZiBzZXQsIHRoZSBv
cmlnaW5hdG9yIGlzIGF0dGFjaGVkIHRvDQogICAgICAgICAgICAgIGFub3RoZXIgYXJlYSB1c2lu
ZyB0aGUgcmVmZXJyZWQgbWV0cmljLiI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGJpdCBBVFRB
Q0hFRC1FWFBFTlNFIHsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgIklm
IHNldCwgdGhlIG9yaWdpbmF0b3IgaXMgYXR0YWNoZWQgdG8NCiAgICAgICAgICAgICAgYW5vdGhl
ciBhcmVhIHVzaW5nIHRoZSByZWZlcnJlZCBtZXRyaWMuIjsNCiAgICAgICAgICB9DQogICAgICAg
ICAgYml0IEFUVEFDSEVELURFTEFZIHsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAg
ICAgICAgIklmIHNldCwgdGhlIG9yaWdpbmF0b3IgaXMgYXR0YWNoZWQgdG8NCiAgICAgICAgICAg
ICAgYW5vdGhlciBhcmVhIHVzaW5nIHRoZSByZWZlcnJlZCBtZXRyaWMuIjsNCiAgICAgICAgICB9
DQogICAgICAgICAgYml0IEFUVEFDSEVELURFRkFVTFQgew0KICAgICAgICAgICAgZGVzY3JpcHRp
b24NCiAgICAgICAgICAgICAiSWYgc2V0LCB0aGUgb3JpZ2luYXRvciBpcyBhdHRhY2hlZCB0bw0K
ICAgICAgICAgICAgICBhbm90aGVyIGFyZWEgdXNpbmcgdGhlIHJlZmVycmVkIG1ldHJpYy4iOw0K
ICAgICAgICAgIH0NCiAgICAgICAgICBiaXQgT1ZFUkxPQUQgew0KICAgICAgICAgICAgZGVzY3Jp
cHRpb24NCiAgICAgICAgICAgICAiSWYgc2V0LCB0aGUgb3JpZ2luYXRvciBpcyBvdmVybG9hZGVk
LA0KICAgICAgICAgICAgICBhbmQgbXVzdCBiZSBhdm9pZGVkIGluIHBhdGggY2FsY3VsYXRpb24u
IjsNCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAg
ICJUaGlzIGxlYWYgZGVzY3JpYmVzIGF0dHJpYnV0ZXMgb2YgdGhlIExTUC4iOw0KICAgICAgfQ0K
DQogICAgICBsZWFmLWxpc3QgaXB2NC1hZGRyZXNzZXMgew0KICAgICAgICB0eXBlIGluZXQ6aXB2
NC1hZGRyZXNzOw0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICJUaGlzIGxlYWYgZGVz
Y3JpYmVzIHRoZSBJUHY0IGFkZHJlc3NlcyBvZiB0aGUgbm9kZS4NCiAgICAgICAgICBJU0lTIHJl
ZmVyZW5jZSBpcyBUTFYgMTMyLiI7DQogICAgICB9DQoNCiAgICAgIGxlYWYtbGlzdCBpcHY2LWFk
ZHJlc3NlcyB7DQogICAgICAgIHR5cGUgaW5ldDppcHY2LWFkZHJlc3M7DQogICAgICAgIGRlc2Ny
aXB0aW9uDQogICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgSVB2NiBpbnRlcmZhY2UN
CiAgICAgICAgIGFkZHJlc3NlcyBvZiB0aGUgbm9kZS4NCiAgICAgICAgIElTSVMgcmVmZXJlbmNl
IGlzIFRMViAyMzIuIjsNCiAgICAgIH0NCg0KICAgICAgbGVhZiBpcHY0LXRlLXJvdXRlcmlkIHsN
CiAgICAgICAgdHlwZSBpbmV0OmlwdjQtYWRkcmVzczsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgSVB2NCBUcmFmZmljIEVuZ2luZWVyaW5n
DQogICAgICAgICAgcm91dGVyIElEIG9mIHRoZSBub2RlLg0KICAgICAgICAgIElTSVMgcmVmZXJl
bmNlIGlzIFRMViAxMzQuIjsNCiAgICAgIH0NCg0KICAgICAgbGVhZiBpcHY2LXRlLXJvdXRlcmlk
IHsNCiAgICAgICAgdHlwZSBpbmV0OmlwdjYtYWRkcmVzczsNCiAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRoZSBJUHY2IFRyYWZmaWMgRW5naW5lZXJp
bmcNCiAgICAgICAgICByb3V0ZXIgSUQgb2YgdGhlIG5vZGUuDQogICAgICAgICAgSVNJUyByZWZl
cmVuY2UgaXMgVExWIDE0MC4iOw0KICAgICAgfQ0KDQogICAgICBsZWFmLWxpc3QgcHJvdG9jb2wt
c3VwcG9ydGVkIHsNCiAgICAgICAgdHlwZSB1aW50ODsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRoZSBsaXN0IG9mDQogICAgICAgICBzdXBwb3J0
ZWQgcHJvdG9jb2xzLg0KICAgICAgICAgSVNJUyByZWZlcmVuY2UgaXMgVExWIDEyOS4iOw0KICAg
ICAgfQ0KDQogICAgICBsZWFmIGR5bmFtaWMtaG9zdG5hbWUgew0KICAgICAgICB0eXBlIHN0cmlu
ZzsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRo
ZSBuYW1lIG9mIHRoZSBub2RlLg0KICAgICAgICAgSVNJUyByZWZlcmVuY2UgaXMgVExWIDEzNy4i
Ow0KICAgICAgfQ0KDQogICAgICBjb250YWluZXIgYXV0aGVudGljYXRpb24gew0KICAgICAgICBs
ZWFmIGF1dGhlbnRpY2F0aW9uLXR5cGUgew0KICAgICAgICAgIHR5cGUgc3RyaW5nOw0KICAgICAg
ICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRoZSBhdXRo
ZW50aWNhdGlvbiB0eXBlDQogICAgICAgICAgICB0byBiZSB1c2VkLiI7DQogICAgICAgIH0NCiAg
ICAgICAgbGVhZiBhdXRoZW50aWNhdGlvbi1rZXkgew0KICAgICAgICAgIHR5cGUgc3RyaW5nOw0K
ICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIHRo
ZSBhdXRoZW50aWNhdGlvbiBrZXkNCiAgICAgICAgICAgIHRvIGJlIHVzZWQuIEZvciBzZWN1cml0
eSByZWFzb24sIHRoZQ0KICAgICAgICAgICAgYXV0aGVudGljYXRpb24ga2V5IE1VU1QgTk9UIGJl
IHByZXNlbnRlZA0KICAgICAgICAgICAgaW4gcGxhaW50ZXh0IGZvcm1hdC4gQXV0aG9ycyByZWNv
bW1lbmRzDQogICAgICAgICAgICB0byB1c2UgTUQ1IGhhc2ggdG8gcHJlc2VudCB0aGUgYXV0aGVu
dGljYXRpb24ta2V5LiI7DQogICAgICAgIH0NCiAgICAgICAgZGVzY3JpcHRpb24gIlRoaXMgY29u
dGFpbmVyIGRlc2NyaWJlcyBhdXRoZW50aWNhdGlvbg0KICAgICAgICBpbmZvcm1hdGlvbiBvZiB0
aGUgbm9kZS4gSVNJUyByZWZlcmVuY2UgaXMgVExWIDEwLiI7DQogICAgICB9DQoNCiAgICAgIGNv
bnRhaW5lciBtdC1lbnRyaWVzIHsNCiAgICAgICAgbGlzdCB0b3BvbG9neSB7DQoNCiAgICAgICAg
ICBsZWFmIE1ULUlEIHsNCiAgICAgICAgICAgIHR5cGUgdWludDE2IHsNCiAgICAgICAgICAgICAg
cmFuZ2UgIjAgLi4gNDA5NSI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBkZXNjcmlwdGlv
bg0KICAgICAgICAgICAgICJUaGlzIGxlYWYgZGVmaW5lcyB0aGUgaWRlbnRpZmllcg0KICAgICAg
ICAgICAgICBvZiBhIHRvcG9sb2d5LiI7DQogICAgICAgICAgfQ0KDQogICAgICAgICAgbGVhZiBh
dHRyaWJ1dGVzIHsNCiAgICAgICAgICAgIHR5cGUgYml0cyB7DQogICAgICAgICAgICAgIGJpdCBP
VkVSTE9BRCB7DQogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICAg
IklmIHNldCwgdGhlIG9yaWdpbmF0b3IgaXMgb3ZlcmxvYWRlZCwNCiAgICAgICAgICAgICAgICAg
IGFuZCBtdXN0IGJlIGF2b2lkZWQgaW4gcGF0aA0KICAgICAgICAgICAgICAgICAgY2FsY3VsYXRp
b24uIjsNCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICBiaXQgQVRUQUNIRUQgew0KICAg
ICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAgICJJZiBzZXQsIHRoZSBv
cmlnaW5hdG9yIGlzIGF0dGFjaGVkIHRvDQogICAgICAgICAgICAgICAgICBhbm90aGVyIGFyZWEg
dXNpbmcgdGhlIHJlZmVycmVkIG1ldHJpYy4iOw0KICAgICAgICAgICAgICB9DQogICAgICAgICAg
ICB9DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGlzIGxlYWYgZGVz
Y3JpYmVzIGF0dHJpYnV0ZXMgb2YgdGhlIExTUA0KICAgICAgICAgICAgICBmb3IgdGhlIGFzc29j
aWF0ZWQgdG9wb2xvZ3kuIjsNCiAgICAgICAgICB9DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICAgIkxpc3Qgb2YgdG9wb2xvZ2llcyBzdXBwb3J0ZWQuIjsNCiAgICAgICAgfQ0KICAg
ICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRoaXMgY29udGFpbmVyIGRlc2NyaWJlcyB0aGUg
dG9wb2xvZ3kgc3VwcG9ydGVkLg0KICAgICAgICAgSVNJUyByZWZlcmVuY2UgaXMgVExWIDIyOS4i
Ow0KICAgICAgfQ0KDQogICAgICBsaXN0IHJvdXRlci1jYXBhYmlsaXRpZXMgew0KICAgICAgICBs
ZWFmIGZsYWdzIHsNCiAgICAgICAgICB0eXBlIGJpdHMgew0KICAgICAgICAgICAgYml0IGZsb29k
aW5nIHsNCiAgICAgICAgICAgICAgcG9zaXRpb24gMDsNCiAgICAgICAgICAgICAgZGVzY3JpcHRp
b24NCiAgICAgICAgICAgICAgICJJZiB0aGUgUyBiaXQgaXMgc2V0KDEpLA0KICAgICAgICAgICAg
ICAgdGhlIElTLUlTIFJvdXRlciBDQVBBQklMSVRZIFRMVg0KICAgICAgICAgICAgICBNVVNUIGJl
IGZsb29kZWQgYWNyb3NzIHRoZSBlbnRpcmUgcm91dGluZyBkb21haW4uDQogICAgICAgICAgICAg
IElmIHRoZSBTIGJpdCBpcw0KICAgICAgICAgICAgICBub3Qgc2V0KDApLCB0aGUgVExWIE1VU1Qg
Tk9UIGJlIGxlYWtlZCBiZXR3ZWVuIGxldmVscy4NCiAgICAgICAgICAgICAgVGhpcyBiaXQgTVVT
VCBOT1QgYmUgYWx0ZXJlZCBkdXJpbmcgdGhlIFRMViBsZWFraW5nLiI7DQogICAgICAgICAgICB9
DQogICAgICAgICAgICBiaXQgZG93biB7DQogICAgICAgICAgICAgIHBvc2l0aW9uIDE7DQogICAg
ICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICJXaGVuIHRoZSBJUy1JUyBSb3V0
ZXIgQ0FQQUJJTElUWSBUTFYgaXMNCiAgICAgICAgICAgICAgbGVha2VkIGZyb20gbGV2ZWwtMiB0
byBsZXZlbC0xLCB0aGUgRCBiaXQNCiAgICAgICAgICAgICAgTVVTVCBiZSBzZXQuICBPdGhlcndp
c2UsIHRoaXMgYml0IE1VU1QNCiAgICAgICAgICAgICAgYmUgY2xlYXIuICBJUy1JUyBSb3V0ZXIg
Y2FwYWJpbGl0eSBUTFZzDQogICAgICAgICAgICAgIHdpdGggdGhlIEQgYml0IHNldCBNVVNUIE5P
VA0KICAgICAgICAgICAgICBiZSBsZWFrZWQgZnJvbSBsZXZlbC0xIHRvIGxldmVsLTIuDQogICAg
ICAgICAgICAgIFRoaXMgaXMgdG8gcHJldmVudCBUTFYgbG9vcGluZy4NCiAgICAgICAgICAgICAg
IjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICAgIkZsYWdzIGFzc29jaWF0ZWQgd2l0aCByb3V0ZXIgY2FwYWJpbGl0eS4iOw0KICAg
ICAgICB9DQogICAgICAgIGNvbnRhaW5lciBub2RlLXRhZ3Mgew0KICAgICAgICAgIGlmLWZlYXR1
cmUgbm9kZS10YWc7DQogICAgICAgICAgbGlzdCBub2RlLXRhZyB7DQogICAgICAgICAgICBsZWFm
IHRhZyB7DQogICAgICAgICAgICAgIHR5cGUgdWludDMyOw0KICAgICAgICAgICAgICBkZXNjcmlw
dGlvbg0KICAgICAgICAgICAgICAgIk5vZGUgdGFnIHZhbHVlLiI7DQogICAgICAgICAgICB9DQog
ICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJMaXN0IG9mIHRhZ3MuIjsNCiAg
ICAgICAgICB9DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgIkNvbnRhaW5lciBm
b3Igbm9kZSB0YWdzLiI7DQogICAgICAgIH0NCg0KICAgICAgICBsZWFmIGJpbmFyeSB7DQogICAg
ICAgICAgdHlwZSBiaW5hcnk7DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgIlRo
aXMgbGVhZiBkZXNjcmliZXMgdGhlIGNhcGFiaWxpdHkgb2YgdGhlIG5vZGUuDQogICAgICAgICAg
IEZvcm1hdCBpcyBiaW5hcnkgYWNjb3JkaW5nIHRvIHRoZSBwcm90b2NvbCBlbmNvZGluZy4iOw0K
ICAgICAgICB9DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBjb250YWluZXIg
ZGVzY3JpYmVzIHRoZSBjYXBhYmlsaXRpZXMgb2YgdGhlIG5vZGUuDQogICAgICAgICBUaGlzIGNv
bnRhaW5lciBtYXkgYmUgZXh0ZW5kZWQgd2l0aCBkZXRhaWxlZA0KICAgICAgICAgaW5mb3JtYXRp
b24uDQogICAgICAgICBJU0lTIHJlZmVyZW5jZSBpcyBUTFYgMjQyLiI7DQogICAgICB9DQoNCiAg
ICAgIGNvbnRhaW5lciBpcy1uZWlnaGJvciB7DQogICAgICAgIGxpc3QgbmVpZ2hib3Igew0KICAg
ICAgICAgIHVzZXMgbmVpZ2hib3I7DQogICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAg
Ikxpc3Qgb2YgbmVpZ2hib3JzLiI7DQogICAgICAgIH0NCiAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICJUaGlzIGxlYWYgZGVzY3JpYmVzIGxpc3Qgb2YgSVNJUyBuZWlnaGJvcnMuDQogICAg
ICAgICBJU0lTIHJlZmVyZW5jZSBpcyBUTFYgMi4iOw0KICAgICAgfQ0KDQogICAgICBjb250YWlu
ZXIgZXh0ZW5kZWQtaXMtbmVpZ2hib3Igew0KICAgICAgICBsaXN0IG5laWdoYm9yIHsNCiAgICAg
ICAgICB1c2VzIG5laWdoYm9yLWV4dGVuZGVkOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAg
ICAgICAgICJMaXN0IG9mIG5laWdoYm9ycy4iOw0KICAgICAgICB9DQogICAgICAgIGRlc2NyaXB0
aW9uDQogICAgICAgICAiVGhpcyBjb250YWluZXIgZGVzY3JpYmVzIGxpc3Qgb2YgSVNJUyBleHRl
bmRlZA0KICAgICAgICAgbmVpZ2hib3JzLg0KICAgICAgICAgSVNJUyByZWZlcmVuY2UgaXMgVExW
IDIyLiI7DQogICAgICB9DQoNCiAgICAgIGNvbnRhaW5lciBpcHY0LWludGVybmFsLXJlYWNoYWJp
bGl0eSB7DQogICAgICAgIGxpc3QgcHJlZml4ZXMgew0KICAgICAgICAgIHVzZXMgcHJlZml4LWlw
djQtc3RkOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJMaXN0IG9mIHByZWZp
eGVzLiI7DQogICAgICAgIH0NCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlzIGNv
bnRhaW5lciBkZXNjcmliZXMgbGlzdCBvZiBJUHY0IGludGVybmFsDQogICAgICAgICByZWFjaGFi
aWxpdHkgaW5mb3JtYXRpb24uDQogICAgICAgICBJU0lTIHJlZmVyZW5jZSBpcyBUTFYgMTI4LiI7
DQogICAgICB9DQoNCiAgICAgIGNvbnRhaW5lciBpcHY0LWV4dGVybmFsLXJlYWNoYWJpbGl0eSB7
DQogICAgICAgIGxpc3QgcHJlZml4ZXMgew0KICAgICAgICAgIHVzZXMgcHJlZml4LWlwdjQtc3Rk
Ow0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJMaXN0IG9mIHByZWZpeGVzLiI7
DQogICAgICAgIH0NCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlzIGNvbnRhaW5l
ciBkZXNjcmliZXMgbGlzdCBvZiBJUHY0IGV4dGVybmFsDQogICAgICAgICByZWFjaGFiaWxpdHkg
aW5mb3JtYXRpb24uDQogICAgICAgICBJU0lTIHJlZmVyZW5jZSBpcyBUTFYgMTMwLiI7DQogICAg
ICB9DQoNCiAgICAgIGNvbnRhaW5lciBleHRlbmRlZC1pcHY0LXJlYWNoYWJpbGl0eSB7DQogICAg
ICAgIGxpc3QgcHJlZml4ZXMgew0KDQogICAgICAgICAgdXNlcyBwcmVmaXgtaXB2NC1leHRlbmRl
ZDsNCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiTGlzdCBvZiBwcmVmaXhlcy4i
Ow0KICAgICAgICB9DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBjb250YWlu
ZXIgZGVzY3JpYmVzIGxpc3Qgb2YgSVB2NCBleHRlbmRlZA0KICAgICAgICAgcmVhY2hhYmlsaXR5
IGluZm9ybWF0aW9uLg0KICAgICAgICAgSVNJUyByZWZlcmVuY2UgaXMgVExWIDEzNS4iOw0KICAg
ICAgfQ0KDQogICAgICBjb250YWluZXIgbXQtaXMtbmVpZ2hib3Igew0KICAgICAgICBsaXN0IG5l
aWdoYm9yIHsNCiAgICAgICAgICBsZWFmIE1ULUlEIHsNCiAgICAgICAgICAgIHR5cGUgdWludDE2
IHsNCiAgICAgICAgICAgICAgcmFuZ2UgIjAgLi4gNDA5NSI7DQogICAgICAgICAgICB9DQogICAg
ICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGlzIGxlYWYgZGVmaW5lcyB0aGUg
aWRlbnRpZmllcg0KICAgICAgICAgICAgICBvZiBhIHRvcG9sb2d5LiI7DQogICAgICAgICAgfQ0K
ICAgICAgICAgIHVzZXMgbmVpZ2hib3ItZXh0ZW5kZWQ7DQogICAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICAgIkxpc3Qgb2YgbmVpZ2hib3JzLiI7DQogICAgICAgIH0NCiAgICAgICAgZGVz
Y3JpcHRpb24NCiAgICAgICAgICJUaGlzIGNvbnRhaW5lciBkZXNjcmliZXMgbGlzdCBvZiBJU0lT
IG11bHRpLXRvcG9sb2d5DQogICAgICAgICAgbmVpZ2hib3JzLg0KICAgICAgICAgIElTSVMgcmVm
ZXJlbmNlIGlzIFRMViAyMjMuIjsNCiAgICAgIH0NCg0KICAgICAgY29udGFpbmVyIG10LWV4dGVu
ZGVkLWlwdjQtcmVhY2hhYmlsaXR5IHsNCiAgICAgICAgbGlzdCBwcmVmaXhlcyB7DQogICAgICAg
ICAgbGVhZiBNVC1JRCB7DQogICAgICAgICAgICB0eXBlIHVpbnQxNiB7DQogICAgICAgICAgICAg
IHJhbmdlICIwIC4uIDQwOTUiOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZGVzY3JpcHRp
b24NCiAgICAgICAgICAgICAiVGhpcyBsZWFmIGRlZmluZXMgdGhlIGlkZW50aWZpZXINCiAgICAg
ICAgICAgICAgb2YgYSB0b3BvbG9neS4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICB1c2VzIHBy
ZWZpeC1pcHY0LWV4dGVuZGVkOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICJM
aXN0IG9mIHByZWZpeGVzLiI7DQoNCiAgICAgICAgfQ0KICAgICAgICBkZXNjcmlwdGlvbg0KICAg
ICAgICAgIlRoaXMgY29udGFpbmVyIGRlc2NyaWJlcyBsaXN0IG9mIElQdjQNCiAgICAgICAgIHJl
YWNoYWJpbGl0eSBpbmZvcm1hdGlvbiBpbiBtdWx0aS10b3BvbG9neQ0KICAgICAgICAgZW52aXJv
bm1lbnQuDQogICAgICAgICBJU0lTIHJlZmVyZW5jZSBpcyBUTFYgMjM1LiI7DQogICAgICB9DQoN
CiAgICAgIGNvbnRhaW5lciBtdC1pcHY2LXJlYWNoYWJpbGl0eSB7DQogICAgICAgIGxpc3QgcHJl
Zml4ZXMgew0KICAgICAgICAgIGxlYWYgTVQtSUQgew0KICAgICAgICAgICAgdHlwZSB1aW50MTYg
ew0KICAgICAgICAgICAgICByYW5nZSAiMCAuLiA0MDk1IjsNCiAgICAgICAgICAgIH0NCiAgICAg
ICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgIlRoaXMgbGVhZiBkZWZpbmVzIHRoZSBp
ZGVudGlmaWVyDQogICAgICAgICAgICAgIG9mIGEgdG9wb2xvZ3kuIjsNCiAgICAgICAgICB9DQog
ICAgICAgICAgdXNlcyBwcmVmaXgtaXB2Ni1leHRlbmRlZDsNCiAgICAgICAgICBkZXNjcmlwdGlv
bg0KICAgICAgICAgICAiTGlzdCBvZiBwcmVmaXhlcy4iOw0KICAgICAgICB9DQogICAgICAgIGRl
c2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBjb250YWluZXIgZGVzY3JpYmVzIGxpc3Qgb2YgSVB2
Ng0KICAgICAgICAgcmVhY2hhYmlsaXR5IGluZm9ybWF0aW9uIGluIG11bHRpLXRvcG9sb2d5DQog
ICAgICAgICBlbnZpcm9ubWVudC4NCiAgICAgICAgIElTSVMgcmVmZXJlbmNlIGlzIFRMViAyMzcu
IjsNCiAgICAgIH0NCg0KICAgICAgY29udGFpbmVyIGlwdjYtcmVhY2hhYmlsaXR5IHsNCiAgICAg
ICAgbGlzdCBwcmVmaXhlcyB7DQogICAgICAgICAgdXNlcyBwcmVmaXgtaXB2Ni1leHRlbmRlZDsN
CiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiTGlzdCBvZiBwcmVmaXhlcy4iOw0K
ICAgICAgICB9DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBjb250YWluZXIg
ZGVzY3JpYmVzIGxpc3Qgb2YgSVB2Ng0KICAgICAgICAgcmVhY2hhYmlsaXR5IGluZm9ybWF0aW9u
Lg0KICAgICAgICAgSVNJUyByZWZlcmVuY2UgaXMgVExWIDIzNi4iOw0KICAgICAgfQ0KICAgIH0N
Cg0KICAgIGdyb3VwaW5nIGxzZGIgew0KICAgICAgY29udGFpbmVyIGRhdGFiYXNlIHsNCiAgICAg
ICAgY29uZmlnIGZhbHNlOw0KICAgICAgICBsaXN0IGxldmVsLWRiIHsNCiAgICAgICAgICBrZXkg
bGV2ZWw7DQoNCiAgICAgICAgICBsZWFmIGxldmVsIHsNCiAgICAgICAgICAgIHR5cGUgbGV2ZWwt
bnVtYmVyOw0KICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAiQ3VycmVudCBs
ZXZlbCBudW1iZXIiOw0KICAgICAgICAgIH0NCiAgICAgICAgICBsaXN0IGxzcCB7DQogICAgICAg
ICAgICBrZXkgbHNwLWlkOw0KICAgICAgICAgICAgdXNlcyBsc3AtZW50cnk7DQogICAgICAgICAg
ICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJMaXN0IG9mIExTUHMgaW4gTFNEQi4iOw0KICAg
ICAgICAgIH0NCiAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAiVGhpcyBjb250YWlu
ZXIgZGVzY3JpYmVzIHRoZSBsaXN0IG9mIExTUHMNCiAgICAgICAgICAgaW4gdGhlIGxldmVsIHgg
ZGF0YWJhc2UuIjsNCiAgICAgICAgfQ0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRo
aXMgY29udGFpbmVyIGRlc2NyaWJlcyBJU0lTIExpbmsgU3RhdGUNCiAgICAgICAgICBkYXRhYmFz
ZXMuIjsNCiAgICAgIH0NCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgIkdyb3VwaW5nIGZvciBM
U0RCIGRlc2NyaXB0aW9uLiI7DQogICAgfQ0KDQoNCg0KDQogICAgLyogQXVnbWVudGF0aW9ucyAq
Lw0KDQogICAgYXVnbWVudCAiL3J0OnJvdXRpbmctc3RhdGUvIg0KICAgICAgKyJydDpyaWJzL3J0
OnJpYi9ydDpyb3V0ZXMvcnQ6cm91dGUiIHsNCiAgICAgIHdoZW4gInJ0OnNvdXJjZS1wcm90b2Nv
bCA9ICdpc2lzOmlzaXMnIiB7DQogICAgICAgIGRlc2NyaXB0aW9uICJJU0lTLXNwZWNpZmljIHJv
dXRlIGF0dHJpYnV0ZXMuIjsNCiAgICAgIH0NCiAgICAgIHVzZXMgcm91dGUtY29udGVudDsNCiAg
ICAgIGRlc2NyaXB0aW9uDQogICAgICAgIlRoaXMgYXVnbWVudHMgcm91dGUgb2JqZWN0IGluIFJJ
QiB3aXRoIElTSVMtc3BlY2lmaWMNCiAgICAgICAgYXR0cmlidXRlcy4iOw0KICAgIH0NCg0KDQog
ICAgYXVnbWVudCAiL2lmOmludGVyZmFjZXMvaWY6aW50ZXJmYWNlIiB7DQogICAgICBsZWFmIGNs
bnMtbXR1IHsNCiAgICAgICAgdHlwZSB1aW50MTY7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAg
ICAgICAiRGVmaW5lcyBDTE5TIE1UVSBvZiB0aGUgaW50ZXJmYWNlLiI7DQogICAgICB9DQogICAg
ICBkZXNjcmlwdGlvbiAiSVNPIGludGVyZmFjZSBjb25maWcuIjsNCiAgICB9DQoNCiAgICBhdWdt
ZW50ICIvcnQ6cm91dGluZy9ydDpjb250cm9sLXBsYW5lLXByb3RvY29scy8iDQogICAgICAgICsi
cnQ6Y29udHJvbC1wbGFuZS1wcm90b2NvbCIgew0KICAgICAgd2hlbiAicnQ6dHlwZSA9ICdpc2lz
OmlzaXMnIiB7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiVGhpcyBhdWdtZW50IGlz
IG9ubHkgdmFsaWQgd2hlbiByb3V0aW5nIHByb3RvY29sDQogICAgICAgICAgaW5zdGFuY2UgdHlw
ZSBpcyBpc2lzLiI7DQogICAgICB9DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICJUaGlzIGF1
Z21lbnRzIGEgcm91dGluZyBwcm90b2NvbCBpbnN0YW5jZSB3aXRoIElTSVMNCiAgICAgICAgc3Bl
Y2lmaWMgcGFyYW1ldGVycy4iOw0KICAgICAgY29udGFpbmVyIGlzaXMgew0KICAgICAgICAgIG11
c3QgImNvdW50KGFyZWEtYWRkcmVzcykgPiAwIiB7DQogICAgICAgICAgICBlcnJvci1tZXNzYWdl
ICJBdCBsZWFzdCBvbmUgYXJlYS1hZGRyZXNzDQogICAgICAgICAgICBtdXN0IGJlIGNvbmZpZ3Vy
ZWQuIjsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgIkVuZm9yY2UgY29u
ZmlndXJhdGlvbiBvZiBhdCBsZWFzdCBvbmUgYXJlYS4iOw0KICAgICAgICAgIH0NCg0KICAgICAg
ICAgIHVzZXMgaXNpcy1nbG9iYWwtY2ZnOw0KICAgICAgICAgIGNvbnRhaW5lciBmYXN0LXJlcm91
dGUgew0KICAgICAgICAgICBpZi1mZWF0dXJlIGZhc3QtcmVyb3V0ZTsNCiAgICAgICAgICAgdXNl
cyBmYXN0LXJlcm91dGUtZ2xvYmFsLWNmZzsNCiAgICAgICAgICAgdXNlcyBmYXN0LXJlcm91dGUt
Z2xvYmFsLXN0YXRlOw0KICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAgICJJ
UEZSUi4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBjb250YWluZXIgc3BmLWNvbnRyb2wgew0K
ICAgICAgICAgICAgICBjb250YWluZXIgaWV0Zi1zcGYtZGVsYXkgew0KICAgICAgICAgICAgICAg
ICAgaWYtZmVhdHVyZSBpZXRmLXNwZi1kZWxheTsNCiAgICAgICAgICAgICAgICAgIHVzZXMgaWV0
Zi1zcGYtZGVsYXktY2ZnOw0KICAgICAgICAgICAgICAgICAgdXNlcyBpZXRmLXNwZi1kZWxheS1z
dGF0ZTsNCiAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAgICAg
IklFVEYgc3BmIGRlbGF5IGFsZ29yaXRobSBjb25maWd1cmF0aW9uLiI7DQogICAgICAgICAgICAg
IH0NCiAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICJDb250YWluZXIg
Zm9yIGFsbCBTUEYgY29tcHV0YXRpb24gcmVsYXRlZA0KICAgICAgICAgICAgICAgb3BlcmF0aW9u
cy4iOw0KICAgICAgICAgIH0NCiAgICAgICAgICBjb250YWluZXIgdG9wb2xvZ2llcyB7DQogICAg
ICAgICAgICAgIGlmLWZlYXR1cmUgbXVsdGktdG9wb2xvZ3k7DQogICAgICAgICAgICAgIGxpc3Qg
dG9wb2xvZ3kgew0KICAgICAgICAgICAgICAgIGtleSAibmFtZSI7DQogICAgICAgICAgICAgICAg
bGVhZiBlbmFibGUgew0KICAgICAgICAgICAgICAgICAgdHlwZSBib29sZWFuOw0KICAgICAgICAg
ICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAgICAgICAiQ29udHJvbCBlbmFibGlu
ZyBvZiB0b3BvbG9naWVzIjsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgbGVh
ZiBuYW1lIHsNCiAgICAgICAgICAgICAgICAgIHR5cGUgbGVhZnJlZiB7DQogICAgICAgICAgICAg
ICAgICAgICBwYXRoICIuLi8uLi8uLi8uLi8uLi8uLi9ydDpyaWJzL3J0OnJpYi9ydDpuYW1lIjsN
CiAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiUklC
IjsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICB1c2VzIGlzaXMtZ2xvYmFs
LXRvcG9sb2dpZXMtY2ZnOw0KDQogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAg
ICAgICAgICAgICJMaXN0IG9mIHRvcG9sb2dpZXMiOw0KICAgICAgICAgICAgICB9DQogICAgICAg
ICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiQ29udGFpbmVyIGZvciBtdWx0aS10
b3BvbG9neSI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGNvbnRhaW5lciBpbnRlcmZhY2VzIHsN
CiAgICAgICAgICAgIGxpc3QgaW50ZXJmYWNlIHsNCiAgICAgICAgICAgICAga2V5ICJuYW1lIjsN
CiAgICAgICAgICAgICAgbGVhZiBuYW1lIHsNCiAgICAgICAgICAgICAgICB0eXBlIGlmOmludGVy
ZmFjZS1yZWY7DQoNCiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICAg
ICAiUmVmZXJlbmNlIHRvIHRoZSBpbnRlcmZhY2Ugd2l0aGluDQogICAgICAgICAgICAgICAgICB0
aGUgcm91dGluZy1pbnN0YW5jZS4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgdXNlcyBp
c2lzLWlmLWNmZzsNCiAgICAgICAgICAgIGNvbnRhaW5lciBmYXN0LXJlcm91dGUgew0KICAgICAg
ICAgICAgICBpZi1mZWF0dXJlIGZhc3QtcmVyb3V0ZTsNCiAgICAgICAgICAgICAgdXNlcyBmYXN0
LXJlcm91dGUtaWYtY2ZnOw0KICAgICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAg
ICAgICJJUEZSUi4iOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgY29udGFpbmVyIHRvcG9s
b2dpZXMgew0KICAgICAgICAgICAgICAgIGlmLWZlYXR1cmUgbXVsdGktdG9wb2xvZ3k7DQogICAg
ICAgICAgICAgICAgbGlzdCB0b3BvbG9neSB7DQogICAgICAgICAgICAgICAgICAgIGtleSBuYW1l
Ow0KDQogICAgICAgICAgICAgICAgICAgIGxlYWYgbmFtZSB7DQogICAgICAgICAgICAgICAgICAg
ICAgdHlwZSBsZWFmcmVmIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aCAiLi4vLi4v
Li4vLi4vLi4vLi4vLi4vLi4vIisNCiAgICAgICAgICAgICAgICAgICAgICAgICAgInJ0OnJpYnMv
cnQ6cmliL3J0Om5hbWUiOw0KICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg
ICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAgICAgICAgICJOYW1lIG9mIFJJ
Qi4iOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIHVzZXMgaXNp
cy1pZi10b3BvbG9naWVzLWNmZzsNCiAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICAgICAgICAgICAgICJMaXN0IG9mIHRvcG9sb2dpZXMuIjsNCiAgICAgICAgICAgICAg
ICB9DQogICAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgICAiQ29udGFpbmVy
IGZvciBtdWx0aS10b3BvbG9neSI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICB1c2VzIGFk
amFjZW5jeS1zdGF0ZTsNCiAgICAgICAgICAgIHVzZXMgZXZlbnQtY291bnRlcnM7DQogICAgICAg
ICAgICB1c2VzIHBhY2tldC1jb3VudGVyczsNCiAgICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAg
ICAgICAgICAgICJMaXN0IG9mIElTSVMgaW50ZXJmYWNlcy4iOw0KICAgICAgICAgICAgfQ0KICAg
ICAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgICAiVGhpcyBjb250YWluZXIgZGVmaW5l
cyBJU0lTIGludGVyZmFjZSBzcGVjaWZpYw0KICAgICAgICAgICAgIGNvbmZpZ3VyYXRpb24gb2Jq
ZWN0cy4iOw0KICAgICAgICAgfQ0KICAgICAgICAgdXNlcyBzcGYtbG9nOw0KICAgICAgICAgdXNl
cyBsc3AtbG9nOw0KICAgICAgICAgdXNlcyBob3N0bmFtZS1kYjsNCiAgICAgICAgIHVzZXMgbHNk
YjsNCiAgICAgICAgIHVzZXMgbG9jYWwtcmliOw0KICAgICAgICAgdXNlcyBzeXN0ZW0tY291bnRl
cnM7DQoNCiAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgIlRoaXMgY29udGFpbmVyIGRl
ZmluZXMgSVNJUyBzcGVjaWZpYyBjb25maWd1cmF0aW9uDQogICAgICAgICAgIG9iamVjdHMuIjsN
CiAgICAgIH0NCiAgICB9DQoNCg0KICAgIC8qIFJQQyBtZXRob2RzICovDQoNCiAgICBycGMgY2xl
YXItYWRqYWNlbmN5IHsNCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgIlRoaXMgUlBDIHJlcXVl
c3QgY2xlYXJzIGEgcGFydGljdWxhcg0KICAgICAgICBzZXQgb2YgSVNJUyBhZGphY2VuY2llcy4g
SWYgdGhlIG9wZXJhdGlvbg0KICAgICAgICBmYWlscyBmb3IgSVNJUyBpbnRlcm5hbCByZWFzb24s
IHRoZW4NCiAgICAgICAgZXJyb3ItdGFnIGFuZCBlcnJvci1hcHAtdGFnIHNob3VsZCBiZSBzZXQN
CiAgICAgICAgdG8gYSBtZWFuaW5nZnVsIHZhbHVlLiI7DQogICAgICBpbnB1dCB7DQoNCiAgICAg
ICAgbGVhZiByb3V0aW5nLXByb3RvY29sLWluc3RhbmNlLW5hbWUgew0KICAgICAgICAgIHR5cGUg
aW5zdGFuY2Utc3RhdGUtcmVmOw0KICAgICAgICAgIG1hbmRhdG9yeSAidHJ1ZSI7DQogICAgICAg
ICAgZGVzY3JpcHRpb24NCiAgICAgICAgICAgIk5hbWUgb2YgdGhlIElTSVMgcHJvdG9jb2wgaW5z
dGFuY2Ugd2hvc2UgSVNJUw0KICAgICAgICAgICAgaW5mb3JtYXRpb24gaXMgYmVpbmcgcXVlcmll
ZC4NCg0KICAgICAgICAgICAgSWYgdGhlIElTSVMgaW5zdGFuY2Ugd2l0aCBuYW1lIGVxdWFsIHRv
IHRoZQ0KICAgICAgICAgICAgdmFsdWUgb2YgdGhpcyBwYXJhbWV0ZXIgZG9lc24ndCBleGlzdCwg
dGhlbiB0aGlzDQogICAgICAgICAgICBvcGVyYXRpb24gU0hBTEwgZmFpbCB3aXRoIGVycm9yLXRh
ZyAnZGF0YS1taXNzaW5nJw0KICAgICAgICAgICAgYW5kIGVycm9yLWFwcC10YWcNCiAgICAgICAg
ICAgICdyb3V0aW5nLXByb3RvY29sLWluc3RhbmNlLW5vdC1mb3VuZCcuIjsNCiAgICAgICAgfQ0K
ICAgICAgICBsZWFmIGxldmVsIHsNCiAgICAgICAgICB0eXBlIGxldmVsOw0KICAgICAgICAgIGRl
c2NyaXB0aW9uDQogICAgICAgICAgICJJU0lTIGxldmVsIG9mIHRoZSBhZGphY2VuY3kgdG8gYmUg
Y2xlYXJlZC4NCiAgICAgICAgICAgSWYgSVNJUyBsZXZlbCBpcyBsZXZlbC0xLTIsIGJvdGggbGV2
ZWwgMSBhbmQgbGV2ZWwgMg0KICAgICAgICAgICBhZGphY2VuY2llcyB3b3VsZCBiZSBjbGVhcmVk
Lg0KDQogICAgICAgICAgIElmIHRoZSB2YWx1ZSBwcm92aWRlZCBpcyBkaWZmZXJlbnQgZnJvbSB0
aGUgb25lDQogICAgICAgICAgIGF1dGhvcml6ZWQgaW4gdGhlIGVudW0gdHlwZSwgdGhlbiB0aGlz
DQogICAgICAgICAgICBvcGVyYXRpb24gU0hBTEwgZmFpbCB3aXRoIGVycm9yLXRhZyAnZGF0YS1t
aXNzaW5nJw0KICAgICAgICAgICAgYW5kIGVycm9yLWFwcC10YWcNCiAgICAgICAgICAgICdiYWQt
aXNpcy1sZXZlbCcuDQogICAgICAgICAgICI7DQogICAgICAgIH0NCiAgICAgICAgbGVhZiBpbnRl
cmZhY2Ugew0KICAgICAgICAgIHR5cGUgc3RyaW5nOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQog
ICAgICAgICAgICJOYW1lIG9mIHRoZSBJU0lTIGludGVyZmFjZS4NCg0KICAgICAgICAgICAgSWYg
dGhlIElTSVMgaW50ZXJmYWNlIHdpdGggbmFtZSBlcXVhbCB0byB0aGUNCiAgICAgICAgICAgIHZh
bHVlIG9mIHRoaXMgcGFyYW1ldGVyIGRvZXNuJ3QgZXhpc3QsIHRoZW4gdGhpcw0KICAgICAgICAg
ICAgb3BlcmF0aW9uIFNIQUxMIGZhaWwgd2l0aCBlcnJvci10YWcgJ2RhdGEtbWlzc2luZycNCiAg
ICAgICAgICAgIGFuZCBlcnJvci1hcHAtdGFnDQogICAgICAgICAgICAnaXNpcy1pbnRlcmZhY2Ut
bm90LWZvdW5kJy4iOw0KICAgICAgICB9DQogICAgICB9DQogICAgfQ0KDQogICAgcnBjIGNsZWFy
LWRhdGFiYXNlIHsNCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgIlRoaXMgUlBDIHJlcXVlc3Qg
Y2xlYXJzIGEgcGFydGljdWxhcg0KICAgICAgICBJU0lTIGRhdGFiYXNlLiBJZiB0aGUgb3BlcmF0
aW9uDQogICAgICAgIGZhaWxzIGZvciBJU0lTIGludGVybmFsIHJlYXNvbiwgdGhlbg0KICAgICAg
ICBlcnJvci10YWcgYW5kIGVycm9yLWFwcC10YWcgc2hvdWxkIGJlIHNldA0KICAgICAgICB0byBh
IG1lYW5pbmdmdWwgdmFsdWUuIjsNCiAgICAgIGlucHV0IHsNCiAgICAgICAgbGVhZiByb3V0aW5n
LXByb3RvY29sLWluc3RhbmNlLW5hbWUgew0KICAgICAgICAgIHR5cGUgaW5zdGFuY2Utc3RhdGUt
cmVmOw0KICAgICAgICAgIG1hbmRhdG9yeSAidHJ1ZSI7DQogICAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICAgIk5hbWUgb2YgdGhlIElTSVMgcHJvdG9jb2wgaW5zdGFuY2Ugd2hvc2UgSVNJ
Uw0KICAgICAgICAgICAgaW5mb3JtYXRpb24gaXMgYmVpbmcgcXVlcmllZC4NCg0KICAgICAgICAg
ICAgSWYgdGhlIElTSVMgaW5zdGFuY2Ugd2l0aCBuYW1lIGVxdWFsIHRvIHRoZQ0KICAgICAgICAg
ICAgdmFsdWUgb2YgdGhpcyBwYXJhbWV0ZXIgZG9lc24ndCBleGlzdCwgdGhlbiB0aGlzDQogICAg
ICAgICAgICBvcGVyYXRpb24gU0hBTEwgZmFpbCB3aXRoIGVycm9yLXRhZyAnZGF0YS1taXNzaW5n
Jw0KICAgICAgICAgICAgYW5kIGVycm9yLWFwcC10YWcNCiAgICAgICAgICAgICdyb3V0aW5nLXBy
b3RvY29sLWluc3RhbmNlLW5vdC1mb3VuZCcuIjsNCiAgICAgICAgfQ0KICAgICAgICBsZWFmIGxl
dmVsIHsNCiAgICAgICAgICB0eXBlIGxldmVsOw0KICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAg
ICAgICAgICJJU0lTIGxldmVsIG9mIHRoZSBhZGphY2VuY3kgdG8gYmUgY2xlYXJlZC4NCiAgICAg
ICAgICAgSWYgSVNJUyBsZXZlbCBpcyBsZXZlbC0xLTIsIGJvdGggbGV2ZWwgMSBhbmQgbGV2ZWwg
Mg0KICAgICAgICAgICBhZGphY2VuY2llcyB3b3VsZCBiZSBjbGVhcmVkLg0KDQogICAgICAgICAg
IElmIHRoZSB2YWx1ZSBwcm92aWRlZCBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgb25lDQogICAgICAg
ICAgIGF1dGhvcml6ZWQgaW4gdGhlIGVudW0gdHlwZSwgdGhlbiB0aGlzDQogICAgICAgICAgICBv
cGVyYXRpb24gU0hBTEwgZmFpbCB3aXRoIGVycm9yLXRhZyAnZGF0YS1taXNzaW5nJw0KICAgICAg
ICAgICAgYW5kIGVycm9yLWFwcC10YWcNCiAgICAgICAgICAgICdiYWQtaXNpcy1sZXZlbCcuDQog
ICAgICAgICAgICI7DQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9DQoNCg0KICAgIC8qIE5vdGlm
aWNhdGlvbnMgKi8NCg0KICAgIG5vdGlmaWNhdGlvbiBkYXRhYmFzZS1vdmVybG9hZCB7DQogICAg
ICB1c2VzIG5vdGlmaWNhdGlvbi1pbnN0YW5jZS1oZHI7DQoNCiAgICAgIGxlYWYgb3ZlcmxvYWQg
ew0KICAgICAgICB0eXBlIGVudW1lcmF0aW9uIHsNCiAgICAgICAgICBlbnVtICJvZmYiIHsNCiAg
ICAgICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAgICAgIlRoZSBzeXN0ZW0gaGFzIGxlZnQg
b3ZlcmxvYWQgY29uZGl0aW9uLiI7DQogICAgICAgICAgfQ0KICAgICAgICAgIGVudW0gIm9uIiB7
DQogICAgICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgICAgICJUaGUgc3lzdGVtIGlzIGlu
IG92ZXJsb2FkIGNvbmRpdGlvbi4iOw0KICAgICAgICAgIH0NCg0KICAgICAgICB9DQogICAgICAg
IGRlc2NyaXB0aW9uDQogICAgICAgICAgICJEZXNjcmliZXMgdGhlIG5ldyBvdmVybG9hZCBzdGF0
ZSBvZiB0aGUgaW5zdGFuY2UuIjsNCiAgICAgIH0NCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAg
ICJUaGlzIG5vdGlmaWNhdGlvbiBpcyBzZW50IHdoZW4gYW4gSVNJUyBpbnN0YW5jZQ0KICAgICAg
ICAgb3ZlcmxvYWQgY29uZGl0aW9uIGNoYW5nZXMuIjsNCiAgICB9DQoNCiAgICBub3RpZmljYXRp
b24gbHNwLXRvby1sYXJnZSB7DQogICAgICB1c2VzIG5vdGlmaWNhdGlvbi1pbnN0YW5jZS1oZHI7
DQogICAgICB1c2VzIG5vdGlmaWNhdGlvbi1pbnRlcmZhY2UtaGRyOw0KDQogICAgICBsZWFmIHBk
dS1zaXplIHsNCiAgICAgICAgdHlwZSB1aW50MzI7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAg
ICAgICAiU2l6ZSBvZiB0aGUgUERVIjsNCiAgICAgIH0NCiAgICAgIGxlYWYgbHNwLWlkIHsNCiAg
ICAgICAgdHlwZSBsc3AtaWQ7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiTFNQIElE
LiI7DQogICAgICB9DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAiVGhpcyBub3RpZmljYXRp
b24gaXMgc2VudCB3aGVuIHdlIGF0dGVtcHQNCiAgICAgICAgIHRvIHByb3BhZ2F0ZSBhbiBMU1Ag
dGhhdCBpcyBsYXJnZXIgdGhhbiB0aGUNCiAgICAgICAgIGRhdGFMaW5rQmxvY2tTaXplIGZvciB0
aGUgY2lyY3VpdC4NCiAgICAgICAgIFRoZSBub3RpZmljYXRpb24gZ2VuZXJhdGlvbiBtdXN0IGJl
IHRocm90dGxlZA0KICAgICAgICAgd2l0aCBhdCBsZWFzdCBhIDUgc2Vjb25kIGdhcC4NCiAgICAg
ICAgICI7DQogICAgfQ0KDQogICAgbm90aWZpY2F0aW9uIGlmLXN0YXRlLWNoYW5nZSB7DQogICAg
ICB1c2VzIG5vdGlmaWNhdGlvbi1pbnN0YW5jZS1oZHI7DQogICAgICB1c2VzIG5vdGlmaWNhdGlv
bi1pbnRlcmZhY2UtaGRyOw0KICAgICAgbGVhZiBzdGF0ZSB7DQogICAgICAgIHR5cGUgaWYtc3Rh
dGUtdHlwZTsNCiAgICAgICAgZGVzY3JpcHRpb24gIkludGVyZmFjZSBzdGF0ZS4iOw0KICAgICAg
fQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgIlRoaXMgbm90aWZpY2F0aW9uIGlzIHNlbnQg
d2hlbiBhbiBpbnRlcmZhY2UNCiAgICAgICAgc3RhdGUgY2hhbmdlIGlzIGRldGVjdGVkLiI7DQog
ICAgfQ0KDQogICAgbm90aWZpY2F0aW9uIGNvcnJ1cHRlZC1sc3AtZGV0ZWN0ZWQgew0KICAgICAg
dXNlcyBub3RpZmljYXRpb24taW5zdGFuY2UtaGRyOw0KICAgICAgbGVhZiBsc3AtaWQgew0KICAg
ICAgICB0eXBlIGxzcC1pZDsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJMU1AgSUQu
IjsNCiAgICAgIH0NCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICJUaGlzIG5vdGlmaWNhdGlv
biBpcyBzZW50IHdoZW4gd2UgZmluZA0KICAgICAgICAgdGhhdCBhbiBMU1AgdGhhdCB3YXMgc3Rv
cmVkIGluIG1lbW9yeSBoYXMNCiAgICAgICAgIGJlY29tZSBjb3JydXB0ZWQuDQogICAgICAgICAi
Ow0KICAgIH0NCg0KICAgIG5vdGlmaWNhdGlvbiBhdHRlbXB0LXRvLWV4Y2VlZC1tYXgtc2VxdWVu
Y2Ugew0KICAgICAgdXNlcyBub3RpZmljYXRpb24taW5zdGFuY2UtaGRyOw0KICAgICAgbGVhZiBs
c3AtaWQgew0KICAgICAgICB0eXBlIGxzcC1pZDsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAg
ICAgICJMU1AgSUQuIjsNCiAgICAgIH0NCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICJUaGlz
IG5vdGlmaWNhdGlvbiBpcyBzZW50IHdoZW4gdGhlIHN5c3RlbQ0KICAgICAgICB3cmFwcyB0aGUg
MzItYml0IHNlcXVlbmNlIGNvdW50ZXIgb2YgYW4gTFNQLg0KICAgICAgICAgIjsNCiAgICB9DQoN
CiAgICBub3RpZmljYXRpb24gaWQtbGVuLW1pc21hdGNoIHsNCiAgICAgIHVzZXMgbm90aWZpY2F0
aW9uLWluc3RhbmNlLWhkcjsNCiAgICAgIHVzZXMgbm90aWZpY2F0aW9uLWludGVyZmFjZS1oZHI7
DQoNCiAgICAgIGxlYWYgcGR1LWZpZWxkLWxlbiB7DQogICAgICAgIHR5cGUgdWludDg7DQogICAg
ICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiU2l6ZSBvZiB0aGUgSUQgbGVuZ3RoIGluIHRoZSBy
ZWNlaXZlZCBQRFUiOw0KICAgICAgfQ0KICAgICAgbGVhZiByYXctcGR1IHsNCiAgICAgICAgdHlw
ZSBiaW5hcnk7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiUmVjZWl2ZWQgcmF3IFBE
VS4iOw0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgIlRoaXMgbm90aWZpY2F0
aW9uIGlzIHNlbnQgd2hlbiB3ZSByZWNlaXZlIGEgUERVDQogICAgICAgIHdpdGggYSBkaWZmZXJl
bnQgdmFsdWUgZm9yIHRoZSBTeXN0ZW0gSUQgbGVuZ3RoLg0KICAgICAgICBUaGUgbm90aWZpY2F0
aW9uIGdlbmVyYXRpb24gbXVzdCBiZSB0aHJvdHRsZWQNCiAgICAgICAgd2l0aCBhdCBsZWFzdCBh
IDUgc2Vjb25kIGdhcC4NCiAgICAgICAgICI7DQogICAgfQ0KDQogICAgbm90aWZpY2F0aW9uIG1h
eC1hcmVhLWFkZHJlc3Nlcy1taXNtYXRjaCB7DQogICAgICB1c2VzIG5vdGlmaWNhdGlvbi1pbnN0
YW5jZS1oZHI7DQogICAgICB1c2VzIG5vdGlmaWNhdGlvbi1pbnRlcmZhY2UtaGRyOw0KDQogICAg
ICBsZWFmIG1heC1hcmVhLWFkZHJlc3NlcyB7DQogICAgICAgIHR5cGUgdWludDg7DQogICAgICAg
IGRlc2NyaXB0aW9uDQogICAgICAgICAiUmVjZWl2ZWQgbnVtYmVyIG9mIHN1cHBvcnRlZCBhcmVh
cyI7DQogICAgICB9DQogICAgICBsZWFmIHJhdy1wZHUgew0KICAgICAgICB0eXBlIGJpbmFyeTsN
CiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJSZWNlaXZlZCByYXcgUERVLiI7DQogICAg
ICB9DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAiVGhpcyBub3RpZmljYXRpb24gaXMgc2Vu
dCB3aGVuIHdlIHJlY2VpdmUgYSBQRFUNCiAgICAgICAgd2l0aCBhIGRpZmZlcmVudCB2YWx1ZSBm
b3IgdGhlIE1heGltdW0gQXJlYSBBZGRyZXNzZXMuDQogICAgICAgIFRoZSBub3RpZmljYXRpb24g
Z2VuZXJhdGlvbiBtdXN0IGJlIHRocm90dGxlZA0KICAgICAgICB3aXRoIGF0IGxlYXN0IGEgNSBz
ZWNvbmQgZ2FwLg0KICAgICAgICAgIjsNCiAgICB9DQoNCiAgICBub3RpZmljYXRpb24gb3duLWxz
cC1wdXJnZSB7DQogICAgICB1c2VzIG5vdGlmaWNhdGlvbi1pbnN0YW5jZS1oZHI7DQogICAgICB1
c2VzIG5vdGlmaWNhdGlvbi1pbnRlcmZhY2UtaGRyOw0KICAgICAgbGVhZiBsc3AtaWQgew0KICAg
ICAgICB0eXBlIGxzcC1pZDsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJMU1AgSUQu
IjsNCiAgICAgIH0NCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICJUaGlzIG5vdGlmaWNhdGlv
biBpcyBzZW50IHdoZW4gdGhlIHN5c3RlbQ0KICAgICAgICByZWNlaXZlcyBhIFBEVSB3aXRoIGl0
cyBvd24gc3lzdGVtIElEIGFuZCB6ZXJvIGFnZS4NCiAgICAgICAgICI7DQogICAgfQ0KDQogICAg
bm90aWZpY2F0aW9uIHNlcXVlbmNlLW51bWJlci1za2lwcGVkIHsNCiAgICAgIHVzZXMgbm90aWZp
Y2F0aW9uLWluc3RhbmNlLWhkcjsNCiAgICAgIHVzZXMgbm90aWZpY2F0aW9uLWludGVyZmFjZS1o
ZHI7DQogICAgICBsZWFmIGxzcC1pZCB7DQogICAgICAgIHR5cGUgbHNwLWlkOw0KICAgICAgICBk
ZXNjcmlwdGlvbg0KICAgICAgICAgIkxTUCBJRC4iOw0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRp
b24NCiAgICAgICAgIlRoaXMgbm90aWZpY2F0aW9uIGlzIHNlbnQgd2hlbiB0aGUgc3lzdGVtDQog
ICAgICAgIHJlY2VpdmVzIGEgUERVIHdpdGggaXRzIG93biBzeXN0ZW0gSUQgYW5kDQogICAgICAg
IGRpZmZlcmVudCBjb250ZW50cy4gVGhlIHN5c3RlbSBoYXMgdG8gcmVpc3N1ZQ0KICAgICAgICB0
aGUgTFNQIHdpdGggYSBoaWdoZXIgc2VxdWVuY2UgbnVtYmVyLg0KICAgICAgICAgIjsNCiAgICB9
DQoNCiAgICBub3RpZmljYXRpb24gYXV0aGVudGljYXRpb24tdHlwZS1mYWlsdXJlIHsNCiAgICAg
IHVzZXMgbm90aWZpY2F0aW9uLWluc3RhbmNlLWhkcjsNCiAgICAgIHVzZXMgbm90aWZpY2F0aW9u
LWludGVyZmFjZS1oZHI7DQogICAgICBsZWFmIHJhdy1wZHUgew0KICAgICAgICB0eXBlIGJpbmFy
eTsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJSZWNlaXZlZCByYXcgUERVLiI7DQog
ICAgICB9DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAiVGhpcyBub3RpZmljYXRpb24gaXMg
c2VudCB3aGVuIHRoZSBzeXN0ZW0NCiAgICAgICAgcmVjZWl2ZXMgYSBQRFUgd2l0aCB0aGUgd3Jv
bmcgYXV0aGVudGljYXRpb24gdHlwZQ0KICAgICAgICBmaWVsZC4NCiAgICAgICAgVGhlIG5vdGlm
aWNhdGlvbiBnZW5lcmF0aW9uIG11c3QgYmUgdGhyb3R0bGVkIHdpdGgNCiAgICAgICAgYXQgbGVh
c3QgYSA1IHNlY29uZCBnYXAuDQogICAgICAgICAiOw0KICAgIH0NCg0KICAgIG5vdGlmaWNhdGlv
biBhdXRoZW50aWNhdGlvbi1mYWlsdXJlIHsNCiAgICAgIHVzZXMgbm90aWZpY2F0aW9uLWluc3Rh
bmNlLWhkcjsNCiAgICAgIHVzZXMgbm90aWZpY2F0aW9uLWludGVyZmFjZS1oZHI7DQogICAgICBs
ZWFmIHJhdy1wZHUgew0KICAgICAgICB0eXBlIGJpbmFyeTsNCiAgICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgICJSZWNlaXZlZCByYXcgUERVLiI7DQogICAgICB9DQogICAgICBkZXNjcmlwdGlv
bg0KICAgICAgICAiVGhpcyBub3RpZmljYXRpb24gaXMgc2VudCB3aGVuIHRoZSBzeXN0ZW0NCiAg
ICAgICAgcmVjZWl2ZXMgYSBQRFUgd2l0aCB0aGUgd3JvbmcgYXV0aGVudGljYXRpb24NCiAgICAg
ICAgaW5mb3JtYXRpb24uDQogICAgICAgIFRoZSBub3RpZmljYXRpb24gZ2VuZXJhdGlvbiBtdXN0
IGJlIHRocm90dGxlZCB3aXRoDQogICAgICAgIGF0IGxlYXN0IGEgNSBzZWNvbmQgZ2FwLg0KICAg
ICAgICAgIjsNCiAgICB9DQoNCiAgICBub3RpZmljYXRpb24gdmVyc2lvbi1za2V3IHsNCiAgICAg
IHVzZXMgbm90aWZpY2F0aW9uLWluc3RhbmNlLWhkcjsNCiAgICAgIHVzZXMgbm90aWZpY2F0aW9u
LWludGVyZmFjZS1oZHI7DQogICAgICBsZWFmIHByb3RvY29sLXZlcnNpb24gew0KICAgICAgICB0
eXBlIHVpbnQ4Ow0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlByb3RvY29sIHZlcnNp
b24gcmVjZWl2ZWQgaW4gdGhlIFBEVS4iOw0KICAgICAgfQ0KICAgICAgbGVhZiByYXctcGR1IHsN
CiAgICAgICAgdHlwZSBiaW5hcnk7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiUmVj
ZWl2ZWQgcmF3IFBEVS4iOw0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgIlRo
aXMgbm90aWZpY2F0aW9uIGlzIHNlbnQgd2hlbiB0aGUgc3lzdGVtDQogICAgICAgIHJlY2VpdmVz
IGEgUERVIHdpdGggYSBkaWZmZXJlbnQgcHJvdG9jb2wgdmVyc2lvbg0KICAgICAgICBudW1iZXIu
DQogICAgICAgIFRoZSBub3RpZmljYXRpb24gZ2VuZXJhdGlvbiBtdXN0IGJlIHRocm90dGxlZCB3
aXRoIGF0IGxlYXN0DQogICAgICAgICBhIDUgc2Vjb25kIGdhcC4NCiAgICAgICAgICI7DQogICAg
fQ0KDQogICAgbm90aWZpY2F0aW9uIGFyZWEtbWlzbWF0Y2ggew0KICAgICAgdXNlcyBub3RpZmlj
YXRpb24taW5zdGFuY2UtaGRyOw0KICAgICAgdXNlcyBub3RpZmljYXRpb24taW50ZXJmYWNlLWhk
cjsNCiAgICAgIGxlYWYgcmF3LXBkdSB7DQogICAgICAgIHR5cGUgYmluYXJ5Ow0KICAgICAgICBk
ZXNjcmlwdGlvbg0KICAgICAgICAgIlJlY2VpdmVkIHJhdyBQRFUuIjsNCiAgICAgIH0NCiAgICAg
IGRlc2NyaXB0aW9uDQogICAgICAgICJUaGlzIG5vdGlmaWNhdGlvbiBpcyBzZW50IHdoZW4gdGhl
IHN5c3RlbQ0KICAgICAgICByZWNlaXZlcyBhIEhlbGxvIFBEVSBmcm9tIGFuIElTIHRoYXQgZG9l
cw0KICAgICAgICBub3Qgc2hhcmUgYW55IGFyZWEgYWRkcmVzcy4NCiAgICAgICAgVGhlIG5vdGlm
aWNhdGlvbiBnZW5lcmF0aW9uIG11c3QgYmUgdGhyb3R0bGVkIHdpdGggYXQgbGVhc3QNCiAgICAg
ICAgIGEgNSBzZWNvbmQgZ2FwLg0KICAgICAgICAgIjsNCiAgICB9DQoNCiAgICBub3RpZmljYXRp
b24gcmVqZWN0ZWQtYWRqYWNlbmN5IHsNCiAgICAgIHVzZXMgbm90aWZpY2F0aW9uLWluc3RhbmNl
LWhkcjsNCiAgICAgIHVzZXMgbm90aWZpY2F0aW9uLWludGVyZmFjZS1oZHI7DQogICAgICBsZWFm
IHJhdy1wZHUgew0KICAgICAgICB0eXBlIGJpbmFyeTsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICJSZWNlaXZlZCByYXcgUERVLiI7DQogICAgICB9DQogICAgICBsZWFmIHJlYXNvbiB7
DQogICAgICAgIHR5cGUgc3RyaW5nOw0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIlRo
ZSBzeXN0ZW0gbWF5IHByb3ZpZGUgYSByZWFzb24gdG8gcmVqZWN0IHRoZQ0KICAgICAgICAgIGFk
amFjZW5jeS4gSWYgdGhlIHJlYXNvbiBpcyBub3QgYXZhaWxhYmxlLA0KICAgICAgICAgIHRoZSBz
eXN0ZW0gdXNlIGFuIGVtcHR5IHN0cmluZy4iOw0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgIlRoaXMgbm90aWZpY2F0aW9uIGlzIHNlbnQgd2hlbiB0aGUgc3lzdGVtDQogICAg
ICAgIHJlY2VpdmVzIGEgSGVsbG8gUERVIGZyb20gYW4gSVMgYnV0IGRvZXMgbm90DQogICAgICAg
IGVzdGFibGlzaCBhbiBhZGphY2VuY3kgZm9yIHNvbWUgcmVhc29uLg0KICAgICAgICBUaGUgbm90
aWZpY2F0aW9uIGdlbmVyYXRpb24gbXVzdCBiZSB0aHJvdHRsZWQgd2l0aCBhdCBsZWFzdA0KICAg
ICAgICAgYSA1IHNlY29uZCBnYXAuDQogICAgICAgICAiOw0KICAgIH0NCg0KDQogICAgbm90aWZp
Y2F0aW9uIHByb3RvY29scy1zdXBwb3J0ZWQtbWlzbWF0Y2ggew0KICAgICAgdXNlcyBub3RpZmlj
YXRpb24taW5zdGFuY2UtaGRyOw0KICAgICAgdXNlcyBub3RpZmljYXRpb24taW50ZXJmYWNlLWhk
cjsNCiAgICAgIGxlYWYgcmF3LXBkdSB7DQogICAgICAgIHR5cGUgYmluYXJ5Ow0KICAgICAgICBk
ZXNjcmlwdGlvbg0KICAgICAgICAgIlJlY2VpdmVkIHJhdyBQRFUuIjsNCiAgICAgIH0NCiAgICAg
IGxlYWYtbGlzdCBwcm90b2NvbHMgew0KICAgICAgICB0eXBlIHVpbnQ4Ow0KICAgICAgICBkZXNj
cmlwdGlvbg0KICAgICAgICAgIlRoZSBsaXN0IG9mIHByb3RvY29scyBzdXBwb3J0ZWQgYnkgdGhl
DQogICAgICAgICAgcmVtb3RlIHN5c3RlbS4iOw0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24N
CiAgICAgICAgIlRoaXMgbm90aWZpY2F0aW9uIGlzIHNlbnQgd2hlbiB0aGUgc3lzdGVtDQogICAg
ICAgIHJlY2VpdmVzIGEgbm9uIHBzZXVkb25vZGUgTFNQIHRoYXQgaGFzIG5vIG1hdGNoaW5nDQog
ICAgICAgIHByb3RvY29sIHN1cHBvcnRlZC4NCiAgICAgICAgVGhlIG5vdGlmaWNhdGlvbiBnZW5l
cmF0aW9uIG11c3QgYmUgdGhyb3R0bGVkIHdpdGggYXQgbGVhc3QNCiAgICAgICAgIGEgNSBzZWNv
bmQgZ2FwLg0KICAgICAgICAgIjsNCiAgICB9DQoNCiAgICBub3RpZmljYXRpb24gbHNwLWVycm9y
LWRldGVjdGVkIHsNCiAgICAgIHVzZXMgbm90aWZpY2F0aW9uLWluc3RhbmNlLWhkcjsNCiAgICAg
IHVzZXMgbm90aWZpY2F0aW9uLWludGVyZmFjZS1oZHI7DQogICAgICBsZWFmIGxzcC1pZCB7DQog
ICAgICAgIHR5cGUgbHNwLWlkOw0KICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgIkxTUCBJ
RC4iOw0KICAgICAgfQ0KICAgICAgbGVhZiByYXctcGR1IHsNCiAgICAgICAgdHlwZSBiaW5hcnk7
DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAiUmVjZWl2ZWQgcmF3IFBEVS4iOw0KICAg
ICAgfQ0KICAgICAgbGVhZiBlcnJvci1vZmZzZXQgew0KICAgICAgICB0eXBlIHVpbnQzMjsNCiAg
ICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJJZiB0aGUgcHJvYmxlbSBpcyBhIG1hbGZvcm1l
ZCBUTFYsDQogICAgICAgICB0aGUgZXJyb3Itb2Zmc2V0IHBvaW50cyB0byB0aGUgc3RhcnQgb2Yg
dGhlIFRMVi4NCiAgICAgICAgIElmIHRoZSBwcm9ibGVtIGlzIHdpdGggdGhlIExTUCBoZWFkZXIs
DQogICAgICAgICB0aGUgZXJyb3Itb2Zmc2V0IHBvaW50cyB0byB0aGUgc3VzcGljaW91cyBieXRl
IjsNCiAgICAgIH0NCiAgICAgIGxlYWYgdGx2LXR5cGUgew0KICAgICAgICB0eXBlIHVpbnQ4Ow0K
ICAgICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAgImlmIHRoZSBwcm9ibGVtIGlzIGEgbWFsZm9y
bWVkIFRMViwgdGhlIHRsdi10eXBlIGlzIHNldA0KICAgICAgICAgdG8gdGhlIHR5cGUgdmFsdWUg
b2YgdGhlIHN1c3BpY2lvdXMgVExWLg0KICAgICAgICAgT3RoZXJ3aXNlIHRoaXMgbGVhZiBpcyBu
b3QgcHJlc2VudC4iOw0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgIlRoaXMg
bm90aWZpY2F0aW9uIGlzIHNlbnQgd2hlbiB0aGUgc3lzdGVtDQogICAgICAgIHJlY2VpdmVzIGEg
IExTUCB3aXRoIGEgcGFyc2UgZXJyb3IuDQogICAgICAgIFRoZSBub3RpZmljYXRpb24gZ2VuZXJh
dGlvbiBtdXN0IGJlIHRocm90dGxlZCB3aXRoIGF0IGxlYXN0DQogICAgICAgICBhIDUgc2Vjb25k
IGdhcC4NCiAgICAgICAgICI7DQogICAgfQ0KDQogICAgbm90aWZpY2F0aW9uIGFkamFjZW5jeS1z
dGF0ZS1jaGFuZ2Ugew0KICAgICAgdXNlcyBub3RpZmljYXRpb24taW5zdGFuY2UtaGRyOw0KICAg
ICAgdXNlcyBub3RpZmljYXRpb24taW50ZXJmYWNlLWhkcjsNCiAgICAgIGxlYWYgbmVpZ2hib3Ig
ew0KICAgICAgICB0eXBlIHN0cmluZzsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJE
ZXNjcmliZXMgdGhlIG5hbWUgb2YgdGhlIG5laWdoYm9yLiBJZiB0aGUNCiAgICAgICAgIG5hbWUg
b2YgdGhlIG5laWdoYm9yIGlzIG5vdCBhdmFpbGFibGUsIHRoZQ0KICAgICAgICAgZmllbGQgd291
bGQgYmUgZW1wdHkuIjsNCiAgICAgIH0NCiAgICAgIGxlYWYgbmVpZ2hib3Itc3lzdGVtLWlkIHsN
CiAgICAgICAgdHlwZSBzeXN0ZW0taWQ7DQogICAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICAi
RGVzY3JpYmVzIHRoZSBzeXN0ZW0taWQgb2YgdGhlIG5laWdoYm9yLiI7DQogICAgICB9DQogICAg
ICBsZWFmIHN0YXRlIHsNCiAgICAgICAgdHlwZSBhZGotc3RhdGUtdHlwZTsNCg0KICAgICAgICBk
ZXNjcmlwdGlvbg0KICAgICAgICAgIlRoaXMgbGVhZiBkZXNjcmliZXMgdGhlIG5ldyBzdGF0ZSBv
ZiB0aGUNCiAgICAgICAgICBJU0lTIGFkamFjZW5jeS4iOw0KICAgICAgfQ0KICAgICAgbGVhZiBy
ZWFzb24gew0KICAgICAgICB0eXBlIHN0cmluZzsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAg
ICAgICJJZiB0aGUgYWRqYWNlbmN5IGlzIGdvaW5nIHRvIERPV04sDQogICAgICAgICB0aGlzIGxl
YWYgcHJvdmlkZXMgYSByZWFzb24gZm9yIHRoZSBhZGphY2VuY3kNCiAgICAgICAgIGdvaW5nIGRv
d24uIFRoZSByZWFzb24gaXMgcHJvdmlkZWQgYXMgYSB0ZXh0Lg0KICAgICAgICAgSWYgdGhlIGFk
amFjZW5jeSBpcyBnb2luZyB0byBVUCwgbm8gcmVhc29uIGlzDQogICAgICAgICBwcm92aWRlZC4i
Ow0KICAgICAgfQ0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgIlRoaXMgbm90aWZpY2F0aW9u
IGlzIHNlbnQgd2hlbiBhbiBJU0lTIGFkamFjZW5jeQ0KICAgICAgICAgbW92ZXMgdG8gVXAgc3Rh
dGUgb3IgdG8gRG93biBzdGF0ZS4iOw0KICAgIH0NCg0KICAgIG5vdGlmaWNhdGlvbiBsc3AtcmVj
ZWl2ZWQgew0KICAgICAgdXNlcyBub3RpZmljYXRpb24taW5zdGFuY2UtaGRyOw0KICAgICAgdXNl
cyBub3RpZmljYXRpb24taW50ZXJmYWNlLWhkcjsNCg0KICAgICAgbGVhZiBsc3AtaWQgew0KICAg
ICAgICB0eXBlIGxzcC1pZDsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJMU1AgSUQu
IjsNCiAgICAgIH0NCiAgICAgIGxlYWYgc2VxdWVuY2Ugew0KICAgICAgICB0eXBlIHVpbnQzMjsN
CiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJTZXF1ZW5jZSBudW1iZXIgb2YgdGhlIHJl
Y2VpdmVkIExTUC4iOw0KICAgICAgfQ0KICAgICAgbGVhZiByZWNlaXZlZC10aW1lc3RhbXAgew0K
ICAgICAgICB0eXBlIHlhbmc6dGltZXN0YW1wOw0KDQogICAgICAgIGRlc2NyaXB0aW9uDQogICAg
ICAgICAiVGhpcyBsZWFmIGRlc2NyaWJlcyB0aGUgdGltZXN0YW1wDQogICAgICAgICB3aGVuIHRo
ZSBMU1Agd2FzIHJlY2VpdmVkLiAiOw0KICAgICAgfQ0KICAgICAgbGVhZiBuZWlnaGJvci1zeXN0
ZW0taWQgew0KICAgICAgICB0eXBlIHN5c3RlbS1pZDsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICAgICJEZXNjcmliZXMgdGhlIHN5c3RlbS1pZCBvZiB0aGUgbmVpZ2hib3INCiAgICAgICAg
IHRoYXQgc2VudCB0aGUgTFNQLiI7DQogICAgICB9DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAg
ICAiVGhpcyBub3RpZmljYXRpb24gaXMgc2VudCB3aGVuIGEgTFNQDQogICAgICAgIGlzIHJlY2Vp
dmVkLg0KICAgICAgICBUaGUgbm90aWZpY2F0aW9uIGdlbmVyYXRpb24gbXVzdCBiZSB0aHJvdHRs
ZWQgd2l0aCBhdCBsZWFzdA0KICAgICAgICAgYSA1IHNlY29uZCBnYXAuICI7DQogICAgfQ0KDQog
ICAgbm90aWZpY2F0aW9uIGxzcC1nZW5lcmF0aW9uIHsNCiAgICAgIHVzZXMgbm90aWZpY2F0aW9u
LWluc3RhbmNlLWhkcjsNCg0KICAgICAgbGVhZiBsc3AtaWQgew0KICAgICAgICB0eXBlIGxzcC1p
ZDsNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJMU1AgSUQuIjsNCiAgICAgIH0NCiAg
ICAgIGxlYWYgc2VxdWVuY2Ugew0KICAgICAgICB0eXBlIHVpbnQzMjsNCiAgICAgICAgZGVzY3Jp
cHRpb24NCiAgICAgICAgICJTZXF1ZW5jZSBudW1iZXIgb2YgdGhlIHJlY2VpdmVkIExTUC4iOw0K
ICAgICAgfQ0KICAgICAgbGVhZiBzZW5kLXRpbWVzdGFtcCB7DQogICAgICAgIHR5cGUgeWFuZzp0
aW1lc3RhbXA7DQoNCiAgICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgICJUaGlzIGxlYWYgZGVz
Y3JpYmVzIHRoZSB0aW1lc3RhbXANCiAgICAgICAgIHdoZW4gb3VyIExTUCB3YXMgcmVnZW5lcmF0
ZWQuICI7DQogICAgICB9DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAiVGhpcyBub3RpZmlj
YXRpb24gaXMgc2VudCB3aGVuIGEgTFNQDQogICAgICAgIGlzIHJlZ2VuZXJhdGVkLg0KICAgICAg
ICBUaGUgbm90aWZpY2F0aW9uIGdlbmVyYXRpb24gbXVzdCBiZSB0aHJvdHRsZWQgd2l0aCBhdCBs
ZWFzdA0KICAgICAgICAgYSA1IHNlY29uZCBnYXAuICI7DQogICAgfQ0KICB9DQoNCiAgLy8gPENP
REUgRU5EUz4=

--_005_AM4PR03MB1697E87C582AAC85398F158183820AM4PR03MB1697eurp_--


From nobody Wed Aug 16 00:14:29 2017
Return-Path: <mbj@tail-f.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C86E013263F for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 00:14:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level: 
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id R3mFuKU48muA for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 00:14:26 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id 600B313263E for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 00:14:26 -0700 (PDT)
Received: from localhost (unknown [173.38.220.57]) by mail.tail-f.com (Postfix) with ESMTPSA id 200AA1AE02EF; Wed, 16 Aug 2017 09:14:25 +0200 (CEST)
Date: Wed, 16 Aug 2017 09:12:55 +0200 (CEST)
Message-Id: <20170816.091255.438248410991005821.mbj@tail-f.com>
To: Orly.Kariv@ecitele.com
Cc: andy@yumaworks.com, yang-doctors@ietfa.amsl.com
From: Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <AM4PR03MB1697E87C582AAC85398F158183820@AM4PR03MB1697.eurprd03.prod.outlook.com>
References: <AM4PR03MB1697838E25993930A8F58D62838D0@AM4PR03MB1697.eurprd03.prod.outlook.com> <CABCOCHSwgSatbxmBHCFNrEsjjsad9yBzyeeCh-v96y1=ATKt0Q@mail.gmail.com> <AM4PR03MB1697E87C582AAC85398F158183820@AM4PR03MB1697.eurprd03.prod.outlook.com>
X-Mailer: Mew version 6.7 on Emacs 24.5 / Mule 6.0 (HANACHIRUSATO)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/pTCPSAlP23psfMe3xIzC9FS97Nk>
Subject: Re: [yang-doctors] How to inform that a device doesn't support RPC statement
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 16 Aug 2017 07:14:28 -0000

Orly Kariv <Orly.Kariv@ecitele.com> wrote:
> Hi Andy,
> Thanks for the quick response.
> Actually I tried to follow RFC6020 and RFC7950 with no success.
> I tried using the deviation statement for RPC and Notifications and
> failed on compilation via confdc and pyang.
> 
> The relevant RFC I want to deviate is:
> ietf-isis@20170527.yang:
> 
> Enclosed deviation statements for RPC and Notification (marked):
> /* Event counters not supported */
>                 deviation "/rt:routing/"
>                                +"rt:control-plane-protocols/rt:control-plane-protocol"
>                                 +"/isis:isis/isis:interfaces/isis:interface/isis:event-counters/isis:init-fails"
>                                 {
>                                 deviate not-supported;
>                 }
> 
> 
>   /* RPC  Deviation */
>                 deviation "/isis:rpc/isis:clear-adjacency" {
>                 deviate not-supported;
>   }
> 
> 
> 
> 
>   /* notification deviation */
> 
>                 deviation "/isis:notification/isis:corrupted-lsp-detected" {
>                 deviate not-supported;
>                 }
> 
>                 deviation "/isis:notification/isis:database-overload" {
>                 deviate not-supported;
>                 }
> 
> 
> 
> Running pyang
> pyang --strict eci-isis-dev\@2017-07-19.yang -f tree -o result.txt
> eci-isis-dev@2017-07-19.yang:156: error: node ietf-isis::rpc is not
> found

The error message is pretty clear - there is no node called "rpc" in
the "ietf-isis" module.  You should do:

  deviation "/isis:clear-adjacency" {
    deviate not-supported;
  }


/martin


From nobody Wed Aug 16 00:19:25 2017
Return-Path: <Orly.Kariv@ecitele.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E0F85132640 for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 00:19:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.591
X-Spam-Level: 
X-Spam-Status: No, score=-4.591 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-2.8, SPF_PASS=-0.001, T_DKIM_INVALID=0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=fail (1024-bit key) reason="fail (body has been altered)" header.d=eci365.onmicrosoft.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Y6WKSOCaWUqX for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 00:19:18 -0700 (PDT)
Received: from mail1.bemta5.messagelabs.com (mail1.bemta5.messagelabs.com [195.245.231.143]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C9612132645 for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 00:19:17 -0700 (PDT)
Received: from [85.158.136.83] by server-7.bemta-5.messagelabs.com id B0/A9-02176-4F1F3995; Wed, 16 Aug 2017 07:19:16 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprNJsWRWlGSWpSXmKPExsViovlDRffzx8m RBseealk8ODKL3aK7+xm7xd4DX9gcmD0ePXvD7LHx12IWj5b+iywBzFGsmXlJ+RUJrBlvdqxk LHjFX/H06mvmBsbz3F2MXBwsAm3MEudOr2IEcYQEpjBJnL36ngXCecAo8erAJ/YuRk4ONgFNi Y2/3rKC2CICqhJPdq5lAbGZBbIlrl5oB6sRFgiTmHn5ERtETbjEnXv/2CFsP4m/i2+B2SxAvQ sengCzeQViJHYu+MoGsWwlk8T1hvfMIAlOAQeJ2733wJYxCohJfD+1hglimbjErSfzwWwJAQG JJXvOM0PYohIvH/9jhbAVJWbcm8MOYctKXJrfDfaahEAbu8SVq1tYIBJ6ElsnvmWEsH0lNj7t BxrKAWQrS2x5EQtR/55J4uefW1A1WhLbt29jhzgoQqLl3ieouLXExtfPoY7Ilni57xQrRPMdV omlP85CXSQjcaHlHFTDO1aJWw+zQWwhgWSJE3M+s0xg1J6F5DkIW0diwe5PbBC2tsSyha+ZZ4 FDTFDi5MwnLAsYWVYxahSnFpWlFukamuslFWWmZ5TkJmbm6BoamOrlphYXJ6an5iQmFesl5+d uYgQmGgYg2MF48bTnIUZJDiYlUd5FZydFCvEl5adUZiQWZ8QXleakFh9ilOHgUJLg5QUmLiHB otT01Iq0zBxgyoNJS3DwKInwTvwAlOYtLkjMLc5Mh0idYlSUEudlA+kTAElklObBtcHS7CVGW SlhXkagQ4R4ClKLcjNLUOVfMYpzMCoJ8y4EGc+TmVcCN/0V0GImoMVX2ieBLC5JREhJNTCeiZ 5RrvXuh5Z9Q8qjOqWjV+Zd8l68aKdO7SK56quNR22SXNff0EyK14zZXJxr5z0rV/F/2pHgVWz 7m/d0ZP/OPnOmqlNa31xl/jOnto9zJCKs/Z7yz/9w6pdIgcaj2NcFiVEB3Gss9794nvT9q6HA 1T0vFh0NDrHkPrlNT9TATFu3wFx4m48SS3FGoqEWc1FxIgAw/vLSrgMAAA==
X-Env-Sender: Orly.Kariv@ecitele.com
X-Msg-Ref: server-5.tower-36.messagelabs.com!1502867952!110084905!1
X-Originating-IP: [52.41.248.36]
X-StarScan-Received: 
X-StarScan-Version: 9.4.45; banners=ecitele.com,-,-
X-VirusChecked: Checked
Received: (qmail 4715 invoked from network); 16 Aug 2017 07:19:15 -0000
Received: from ec2-52-41-248-36.us-west-2.compute.amazonaws.com (HELO EUR02-AM5-obe.outbound.protection.outlook.com) (52.41.248.36) by server-5.tower-36.messagelabs.com with AES256-SHA256 encrypted SMTP; 16 Aug 2017 07:19:15 -0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ECI365.onmicrosoft.com; s=selector1-ecitele-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Z+2XeTEqcIbWSMe+YDDHog/6bORt4TqTFqeShlN3pMg=; b=THqL63KAKqwNQf2Fiae4afQyR51E1C7SU93BFJvXMiTc5U/LVjKHGiIiJ6KY7V9pCa+H5DX1lmbBvrp0IvXmobKQ7LJBRpL+gu30C3KHZOdM5hRHhlky1zB6vKAU3RhcHn20OpYbUKlgdpNcDHi34Y5ECb2kgHmA5PuKYGs0tCo=
Received: from AM4PR03MB1697.eurprd03.prod.outlook.com (10.165.244.15) by AM4PR03MB1697.eurprd03.prod.outlook.com (10.165.244.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1341.21; Wed, 16 Aug 2017 07:19:10 +0000
Received: from AM4PR03MB1697.eurprd03.prod.outlook.com ([fe80::d55d:6e78:6995:31c3]) by AM4PR03MB1697.eurprd03.prod.outlook.com ([fe80::d55d:6e78:6995:31c3%13]) with mapi id 15.01.1341.023; Wed, 16 Aug 2017 07:19:10 +0000
From: Orly Kariv <Orly.Kariv@ecitele.com>
To: Martin Bjorklund <mbj@tail-f.com>
CC: "andy@yumaworks.com" <andy@yumaworks.com>, "yang-doctors@ietfa.amsl.com" <yang-doctors@ietfa.amsl.com>
Thread-Topic: [yang-doctors] How to inform that a device doesn't support RPC statement
Thread-Index: AdMV1GT4Uu8o4FoWTXKzxd0Hv3H1ngAAGElQABOhpIAADhcjMAAA2uOAAAAy8zA=
Date: Wed, 16 Aug 2017 07:19:10 +0000
Message-ID: <AM4PR03MB1697CDC909E07FF50DE9D0CC83820@AM4PR03MB1697.eurprd03.prod.outlook.com>
References: <AM4PR03MB1697838E25993930A8F58D62838D0@AM4PR03MB1697.eurprd03.prod.outlook.com> <CABCOCHSwgSatbxmBHCFNrEsjjsad9yBzyeeCh-v96y1=ATKt0Q@mail.gmail.com> <AM4PR03MB1697E87C582AAC85398F158183820@AM4PR03MB1697.eurprd03.prod.outlook.com> <20170816.091255.438248410991005821.mbj@tail-f.com>
In-Reply-To: <20170816.091255.438248410991005821.mbj@tail-f.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [147.234.241.1]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; AM4PR03MB1697; 6:hVxzEVSNe54IAF4NBGiIzETlBvYvA+PmIQb1G3S+OB6U4dkP34JFGA61cs9NEOE5eeExYANhzyashZxsseabsRILtcCNce1G8JjtB84QjLYrz8P6ZqmSdNClAcvzVN+on2qgFasQwcwHUW19sGhu2vZitN/AdvJJaUEfx0q5QJW7aQar2fqb9ncwotgTEIDg1NNl4tgtY4uuSDQZLLrBAIkPY7o8kM9MoTTt5EO8seelYGnIcZlutKveeOqIl8ls5w4IjaD+5rslS07MU7yuslRkFg0/b18I9hbtgPWjH/ZQa0oOg8YzWZYfF0SNR4W8xvv9tIgLg/clRxxyxan+BQ==; 5:kQrRdkOCvS7YYlTXQGQgo0OBHTscrRT7TtehjT6hkakduaarvSZQ/XMcaeoQRCr6/Uk1hbvaftM4PtVykGttEt2832zRQFReWuagk+OpGxNH/MOIimo/BuRjzQHABngAN/uPJHN2rwJTYePsLkFnPA==; 24:0GaVTnHv2BpRaEwAXRjU05FmElbA04tR2PLyvk5T9Me+yM0o0prP62C1JbjUl+dpD2BhZrR8sSUVPfCLFAaFz91Hh4QlXxhnfAKaYhoNFRg=; 7:dd9pNw6VApGnfg+sdQ2QRznqvf+V8dR0sty/SAsDr8WV71uioHCna+EUb6pR6sZvRV0aaySbvTPulLSM2VVvApgIIX6zRcDZO5AH7iIEDCXiArN259q391xLaNrp+XEVPpppcCRaHO17QjAbKu8GE8SwvuGcAd2k9kkhAyzHotIIOvunINKH5Swb1Sk3ceCVhYlOcG+r5E0swPjJFtHm0VSTWHJBFvkaKcX8wccNveA=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;
x-ms-office365-filtering-correlation-id: a4eac1d2-0856-477c-2419-08d4e4771738
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(48565401081)(2017052603154)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:AM4PR03MB1697; 
x-ms-traffictypediagnostic: AM4PR03MB1697:
x-exchange-antispam-report-test: UriScan:(279101305709854);
x-microsoft-antispam-prvs: <AM4PR03MB169796EDB5337FED72143B7583820@AM4PR03MB1697.eurprd03.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(100000703101)(100105400095)(3002001)(6055026)(6041248)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123562025)(20161123560025)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:AM4PR03MB1697; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:AM4PR03MB1697; 
x-forefront-prvs: 0401647B7F
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(189002)(199003)(51914003)(45984002)(13464003)(377454003)(24454002)(5250100002)(6506006)(93886004)(6436002)(8676002)(81156014)(81166006)(8936002)(33656002)(14454004)(305945005)(55016002)(99286003)(101416001)(72206003)(76176999)(54356999)(50986999)(54906002)(53546010)(9686003)(7736002)(86362001)(229853002)(25786009)(2950100002)(6916009)(66066001)(4326008)(7696004)(102836003)(6116002)(189998001)(3846002)(53936002)(3660700001)(74316002)(2900100001)(3280700002)(97736004)(478600001)(2906002)(5660300001)(68736007)(106356001)(6246003)(105586002)(110136004); DIR:OUT; SFP:1102; SCL:1; SRVR:AM4PR03MB1697; H:AM4PR03MB1697.eurprd03.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords;  MX:1; A:1; LANG:en; 
received-spf: None (protection.outlook.com: ecitele.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: ecitele.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Aug 2017 07:19:10.7410 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 2c514a61-08de-4519-b4c0-921fef62c42a
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR03MB1697
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/fgNw-CFnLNVi5CK0XcgkQpDxzQo>
Subject: Re: [yang-doctors] How to inform that a device doesn't support RPC statement
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 16 Aug 2017 07:19:24 -0000

Hi Martin,

Thank you very much.
Regards=20
Orly

-----Original Message-----
From: Martin Bjorklund [mailto:mbj@tail-f.com]=20
Sent: Wednesday, August 16, 2017 10:13 AM
To: Orly Kariv <Orly.Kariv@ecitele.com>
Cc: andy@yumaworks.com; yang-doctors@ietfa.amsl.com
Subject: Re: [yang-doctors] How to inform that a device doesn't support RP=
C statement

Orly Kariv <Orly.Kariv@ecitele.com> wrote:
> Hi Andy,
> Thanks for the quick response.
> Actually I tried to follow RFC6020 and RFC7950 with no success.
> I tried using the deviation statement for RPC and Notifications and=20
> failed on compilation via confdc and pyang.
>=20
> The relevant RFC I want to deviate is:
> ietf-isis@20170527.yang:
>=20
> Enclosed deviation statements for RPC and Notification (marked):
> /* Event counters not supported */
>                 deviation "/rt:routing/"
>                                +"rt:control-plane-protocols/rt:control-p=
lane-protocol"
>                                 +"/isis:isis/isis:interfaces/isis:interf=
ace/isis:event-counters/isis:init-fails"
>                                 {
>                                 deviate not-supported;
>                 }
>=20
>=20
>   /* RPC  Deviation */
>                 deviation "/isis:rpc/isis:clear-adjacency" {
>                 deviate not-supported;
>   }
>=20
>=20
>=20
>=20
>   /* notification deviation */
>=20
>                 deviation "/isis:notification/isis:corrupted-lsp-detecte=
d" {
>                 deviate not-supported;
>                 }
>=20
>                 deviation "/isis:notification/isis:database-overload" {
>                 deviate not-supported;
>                 }
>=20
>=20
>=20
> Running pyang
> pyang --strict eci-isis-dev\@2017-07-19.yang -f tree -o result.txt
> eci-isis-dev@2017-07-19.yang:156: error: node ietf-isis::rpc is not=20
> found

The error message is pretty clear - there is no node called "rpc" in the "=
ietf-isis" module.  You should do:

  deviation "/isis:clear-adjacency" {
    deviate not-supported;
  }


/martin

__________________________________________________________________________=
_

This e-mail message is intended for the recipient only and contains inform=
ation which is=20
CONFIDENTIAL and which may be proprietary to ECI Telecom. If you have rece=
ived this=20
transmission in error, please inform us by e-mail, phone or fax, and then =
delete the original=20
and all copies thereof.
__________________________________________________________________________=
_


From nobody Wed Aug 16 11:09:34 2017
Return-Path: <Ing-Wher_Chen@jabil.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 680C213235E for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 11:09:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.91
X-Spam-Level: 
X-Spam-Status: No, score=-2.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=-1, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=jabil.onmicrosoft.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id jIO7kri-vTc8 for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 11:09:28 -0700 (PDT)
Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0135.outbound.protection.outlook.com [104.47.34.135]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8BB29132357 for <yang-doctors@ietf.org>; Wed, 16 Aug 2017 11:09:28 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jabil.onmicrosoft.com;  s=selector1-jabil-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Lw13dDdNWxWgktAxe+nVB7hbFCDX79GdiN+2HS60eq8=; b=yqPx/hGHrOeK8sfCMixTd7DjhNWop1HDBXGL/vkeHmQ3UAFCOVYs0gxq+ztTly8hD3OJ41HVLhP+t1ZOaFSVqaefQYZSFw8gmkbBISgyeUnCd9SgAfCGWJiAguaztDXHoQ0vJ/UTNa43s3WPXMhzv6vcHiNlpXKBW9vCvy+4/kU=
Received: from BN1PR0201MB0833.namprd02.prod.outlook.com (10.160.170.153) by BN1PR0201MB0835.namprd02.prod.outlook.com (10.160.170.155) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1341.21; Wed, 16 Aug 2017 18:09:27 +0000
Received: from BN1PR0201MB0833.namprd02.prod.outlook.com ([fe80::7125:7658:52e4:9350]) by BN1PR0201MB0833.namprd02.prod.outlook.com ([fe80::7125:7658:52e4:9350%16]) with mapi id 15.01.1341.020; Wed, 16 Aug 2017 18:09:27 +0000
From: Ing-Wher Chen <Ing-Wher_Chen@jabil.com>
To: "yang-doctors@ietf.org" <yang-doctors@ietf.org>
CC: "Aseem Choudhary (asechoud)" <asechoud@cisco.com>, Norm Strahle <nstrahle@juniper.net>
Thread-Topic: question regarding conditional/optional statements
Thread-Index: AdMWuspFVk5k9TDdRCeshA4HU2pVBg==
Date: Wed, 16 Aug 2017 18:09:27 +0000
Message-ID: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-dg-ref: PG1ldGE+PGF0IG5tPSJib2R5Lmh0bWwiIHA9ImM6XHVzZXJzXGljaGVuXGFwcGRhdGFccm9hbWluZ1wwOWQ4NDliNi0zMmQzLTRhNDAtODVlZS02Yjg0YmEyOWUzNWJcbXNnc1xtc2ctMDgwMzQ4Y2YtODJhZS0xMWU3LTg3ZmMtMTg1ZTBmOWYwNmFhXGFtZS10ZXN0XDA4MDM0OGQxLTgyYWUtMTFlNy04N2ZjLTE4NWUwZjlmMDZhYWJvZHkuaHRtbCIgc3o9IjE5NjE1IiB0PSIxMzE0NzM4MDU2NDI5NTYyMzYiIGg9Ik01cVAzQWNRVTk1aGQ3dlAyV2pJRU5XdHZUOD0iIGlkPSIiIGJsPSIwIiBibz0iMSIvPjwvbWV0YT4=
authentication-results: spf=none (sender IP is ) smtp.mailfrom=Ing-Wher_Chen@jabil.com; 
x-originating-ip: [98.191.72.170]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BN1PR0201MB0835; 6:GHumYZf2mHW3i2RDdds5V4Ldu5zNte46Y/jv3fTG/fmCZqBe+YuOJDvn9cqcyP/Cp5f9nPFmsg6Y/vZk7t/Gy5WQbUU+GzIVo/mX74Cmr6PExORYkAG27qlz4r4LT/R/exLqPSFRvppOIVqUukl+UMYkjykfUo6fKiLwevlnXoGUZjxkoyHHgCIi8Ht5OuGp6+6W3FXPFUnF/tu7llOpmRDxbYkFt5esPSIewkiKdgNVlVMSsKgR0WjWAJL94DjGpPWtlOCUCtrCsatz5cRrkiOzuqu6wY5SUU380M+E08/Ffkh+Vu2IxKm/c5x+JJt+fjhT+4BLi7M/KSJsLsYHsw==; 5:ZsKjhg+/vMt7uBlsAqOFlPE/njntUI5gbQ7nFZjaOmCQy9cHU5cZ+8txcHhr9PgivaAIiuRE2QI96DMATdoaw7BESHH8yqRCJpa+3zTKoyBYwa+sWjlaJyB1cRP0IRByRfZhMKebGkx32zh6O7IFiw==; 24:uTXKZFrs0mU73Qri86R+C6CiTML7+AVGGve/1s5atX/OxkWhL0xSQIXhbLsFPPCyD4mTAeXgGRRjuFJypXaU3AdQsQaCx3cAdmevBW98YiY=; 7:giToVbNY9IBa/sQ1WkFYzBuGuwT468P2e0b1ef559ig+N27JQ+rLNq+M5GAp79U3s6gSnNdWaEWy+SqqRBRI9EgXDPJVt63sm8lptovrHmklr8wkgg5XeLzFq8BVAXBiKVuFlTWlMFlc1ODiUf3crXoK0cClLDascwWiMKykjL+HryK+cLxMKs3K1C1przcvwKdZ/cS8fzTzYePJhToFpbeMg4IThj4SsJzhUW2v728=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;
x-ms-office365-filtering-correlation-id: ff192faa-1062-471e-a95e-08d4e4d1eee2
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603031)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BN1PR0201MB0835; 
x-ms-traffictypediagnostic: BN1PR0201MB0835:
x-exchange-antispam-report-test: UriScan:(21748063052155);
x-microsoft-antispam-prvs: <BN1PR0201MB0835225E897C05BB51434C13C3820@BN1PR0201MB0835.namprd02.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(100000703101)(100105400095)(6055026)(6041248)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123562025)(20161123555025)(20161123560025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN1PR0201MB0835; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN1PR0201MB0835; 
x-forefront-prvs: 0401647B7F
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(199003)(189002)(105586002)(53936002)(86362001)(3280700002)(7736002)(6506006)(2501003)(478600001)(2906002)(101416001)(5640700003)(4326008)(189998001)(72206003)(2351001)(3660700001)(66066001)(5250100002)(25786009)(106356001)(54896002)(6306002)(110136004)(81166006)(3480700004)(97736004)(8936002)(74316002)(6436002)(81156014)(8676002)(99286003)(5630700001)(6116002)(102836003)(54906002)(9686003)(6916009)(5660300001)(8666007)(50986999)(790700001)(3846002)(54356999)(55016002)(7696004)(14454004)(33656002)(68736007)(2900100001); DIR:OUT; SFP:1102; SCL:1; SRVR:BN1PR0201MB0835; H:BN1PR0201MB0833.namprd02.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; 
received-spf: None (protection.outlook.com: jabil.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820BN1PR0201MB0833_"
MIME-Version: 1.0
X-OriginatorOrg: jabil.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Aug 2017 18:09:27.2743 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bc876b21-f134-4c12-a265-8ed26b7f0f3b
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN1PR0201MB0835
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/3QdeDZe6ryv2Rgd4HGI0Zd_YJgE>
Subject: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 16 Aug 2017 18:09:32 -0000

--_000_BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820BN1PR0201MB0833_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hello YANG doctors,



We wish to define a YANG model with several counters.  The counters that we=
 wish to model are the union of all the counters supported by our sample of=
 vendors.  This means that the model will define some counters supported by=
 both vendor_1 and vendor_2 (or more), but some counters will be supported =
only by one of the vendors.  We would like the model to allow each vendor t=
o indicate the counters it supports.



We can think of 3 approaches below, and would like your feedback regarding =
which approach we should choose.  We're also open to suggestions of other a=
pproaches.



Option 1: Define an optional feature (if-feature) for each counter.

Sample:
  container queuing-statistics-opt-1 {
    config false;
    description
      "queue related statistics ";
    leaf output-pkts {
      if-feature "output-pkts";
      type uint64;
      description
        "Number of packets transmitted from queue ";
    }
    leaf output-bytes {
      if-feature "output-bytes";
      type uint64;
      description
        "Number of bytes transmitted from queue ";
    }
    leaf queue-size-pkts {
      if-feature "queue-size-pkts";
      type uint64;
      description
      "Number of packets currently buffered ";
    }
    /* etc. */
  }

Advantage: This is the standard approach built into the language to make a =
statement conditional.

Disadvantage: There are many counters, and each counter will be an optional=
 feature, resulting in many optional features in the model.



Option 2: Define a leaf of the type bits, where each bit indicates that a p=
articular counter is supported.

Example:
  container queuing-statistics-opt-2 {
    config false;
    description
      "queue related statistics ";
    leaf supported-counters {
      type bits {
        bit queue-output-pkts;
        bit queue-output-bytes;
        bit queue-size-pkts;
      }
    }
    leaf output-pkts {
      type uint64;
      description
        "Number of packets transmitted from queue ";
    }
    leaf output-bytes {
      type uint64;
      description
        "Number of bytes transmitted from queue ";
    }
    leaf queue-size-pkts {
      type uint64;
      description
      "Number of packets currently buffered ";
    }
    /* etc. */
  }

Advantage: This reduces the number of optional features in the model.

Disadvantage: The output that indicates which counters are supported might =
be too verbose to be user friendly.  This is not YANG's standard approach t=
o make a statement conditional.



Option 3: Define a leaf of the type integer, where each bit in the integer =
indicates that a particular counter is supported.

Example:
  container queuing-statistics-opt-3 {
    config false;
    description
      "queue related statistics ";
    leaf supported-counters {
      type uint32;
      description
        "Bit 0 indicates whether output-pkts counter is supported
         Bit 1 indicates whether output-bytes counter is supported
         Bit 2 indicates whether queue-size-pkts counter is supported";
    }
    leaf output-pkts {
      type uint64;
      description
        "Number of packets transmitted from queue ";
    }
    leaf output-bytes {
      type uint64;
      description
        "Number of bytes transmitted from queue ";
    }
    leaf queue-size-pkts {
      type uint64;
      description
      "Number of packets currently buffered ";
    }

Advantage: The output, in the form of a single integer, that indicates whic=
h counters are supported is compact.

Disadvantage: The model is vague/implicit---the meaning of each bit in supp=
orted-counters is embedded in the description, rather than modeled explicit=
ly.  This is also not YANG's standard approach to make a statement conditio=
nal.



Thanks,

Helen





--_000_BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820BN1PR0201MB0833_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:"Lucida Console";
	panose-1:2 11 6 9 4 5 4 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
	{mso-style-priority:99;
	mso-style-link:"Plain Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
p.msonormal0, li.msonormal0, div.msonormal0
	{mso-style-name:msonormal;
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman",serif;}
span.PlainTextChar
	{mso-style-name:"Plain Text Char";
	mso-style-priority:99;
	mso-style-link:"Plain Text";
	font-family:"Calibri",sans-serif;}
span.EmailStyle20
	{mso-style-type:personal-reply;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"#0563C1" vlink=3D"#954F72">
<div class=3D"WordSection1">
<p class=3D"MsoPlainText">Hello YANG doctors,<o:p></o:p></p>
<p class=3D"MsoPlainText"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoPlainText">We wish to define a YANG model with several count=
ers. &nbsp;The counters that we wish to model are the union of all the coun=
ters supported by our sample of vendors.&nbsp; This means that the model wi=
ll define some counters supported by both vendor_1
 and vendor_2 (or more), but some counters will be supported only by one of=
 the vendors.&nbsp; We would like the model to allow each vendor to indicat=
e the counters it supports.<o:p></o:p></p>
<p class=3D"MsoPlainText"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoPlainText">We can think of 3 approaches below, and would lik=
e your feedback regarding which approach we should choose.&nbsp; We&#8217;r=
e also open to suggestions of other approaches.<o:p></o:p></p>
<p class=3D"MsoPlainText"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoPlainText">Option 1: Define an optional feature (if-feature)=
 for each counter.<o:p></o:p></p>
<p class=3D"MsoPlainText">Sample:<o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp; container queuing-s=
tatistics-opt-1 {<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; config =
false;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; descrip=
tion<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; &quot;queue related statistics &quot;;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; leaf ou=
tput-pkts {<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;
<span style=3D"background:yellow;mso-highlight:yellow">if-feature &quot;out=
put-pkts&quot;;</span><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; type uint64;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; description<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp; &quot;Number of packets transmitted from queue &quot;;<o:p=
></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; }<o:p><=
/o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; leaf ou=
tput-bytes {<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;
<span style=3D"background:yellow;mso-highlight:yellow">if-feature &quot;out=
put-bytes&quot;;</span><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; type uint64;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; description<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp; &quot;Number of bytes transmitted from queue &quot;;<o:p><=
/o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; }<o:p><=
/o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; leaf qu=
eue-size-pkts {<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;
<span style=3D"background:yellow;mso-highlight:yellow">if-feature &quot;que=
ue-size-pkts&quot;;</span><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; type uint64;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; description<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; &quot;Number of packets currently buffered &quot;;<o:p></o:p></span></=
p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; }<o:p><=
/o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; /* etc.=
 */<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp; }<o:p></o:p></span>=
</p>
<p class=3D"MsoPlainText">Advantage: This is the standard approach built in=
to the language to make a statement conditional.<o:p></o:p></p>
<p class=3D"MsoPlainText">Disadvantage: There are many counters, and each c=
ounter will be an optional feature, resulting in many optional features in =
the model.<o:p></o:p></p>
<p class=3D"MsoPlainText"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoPlainText">Option 2: Define a leaf of the type bits, where e=
ach bit indicates that a particular counter is supported.<o:p></o:p></p>
<p class=3D"MsoPlainText">Example:<o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp; container queuing-s=
tatistics-opt-2 {<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; config =
false;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; descrip=
tion<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; &quot;queue related statistics &quot;;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;
<span style=3D"background:yellow;mso-highlight:yellow">leaf supported-count=
ers {<o:p></o:p></span></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;;background:yellow;mso-highl=
ight:yellow">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type bits {<o:p></o:p></span></=
p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;;background:yellow;mso-highl=
ight:yellow">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bit queue-output-pk=
ts;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;;background:yellow;mso-highl=
ight:yellow">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bit queue-output-by=
tes;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;;background:yellow;mso-highl=
ight:yellow">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bit queue-size-pkts=
;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;;background:yellow;mso-highl=
ight:yellow">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;;background:yellow;mso-highl=
ight:yellow">&nbsp;&nbsp;&nbsp; }</span><span style=3D"font-size:8.0pt;font=
-family:&quot;Lucida Console&quot;"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; leaf ou=
tput-pkts {<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; type uint64;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; description<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp; &quot;Number of packets transmitted from queue &quot;;<o:p=
></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; }<o:p><=
/o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; leaf ou=
tput-bytes {<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; type uint64;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; description<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp; &quot;Number of bytes transmitted from queue &quot;;<o:p><=
/o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; }<o:p><=
/o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; leaf qu=
eue-size-pkts {<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; type uint64;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; description<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; &quot;Number of packets currently buffered &quot;;<o:p></o:p></span></=
p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; }<o:p><=
/o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; /* etc.=
 */<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp; }<o:p></o:p></span>=
</p>
<p class=3D"MsoPlainText">Advantage: This reduces the number of optional fe=
atures in the model.<o:p></o:p></p>
<p class=3D"MsoPlainText">Disadvantage: The output that indicates which cou=
nters are supported might be too verbose to be user friendly.&nbsp; This is=
 not YANG&#8217;s standard approach to make a statement conditional.<o:p></=
o:p></p>
<p class=3D"MsoPlainText"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoPlainText">Option 3: Define a leaf of the type integer, wher=
e each bit in the integer indicates that a particular counter is supported.=
<o:p></o:p></p>
<p class=3D"MsoPlainText">Example:<o:p></o:p></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp; container queuing-s=
tatistics-opt-3 {<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; config =
false;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; descrip=
tion<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; &quot;queue related statistics &quot;;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;
<span style=3D"background:yellow;mso-highlight:yellow">leaf supported-count=
ers {<o:p></o:p></span></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;;background:yellow;mso-highl=
ight:yellow">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type uint32;<o:p></o:p></span><=
/p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;;background:yellow;mso-highl=
ight:yellow">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; description<o:p></o:p></span></=
p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;;background:yellow;mso-highl=
ight:yellow">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Bit 0 indicat=
es whether output-pkts counter is supported<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;;background:yellow;mso-highl=
ight:yellow">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Bit 1 indicat=
es whether output-bytes counter is supported<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;;background:yellow;mso-highl=
ight:yellow">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Bit 2 indicat=
es whether queue-size-pkts counter is supported&quot;;<o:p></o:p></span></p=
>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;;background:yellow;mso-highl=
ight:yellow">&nbsp;&nbsp;&nbsp; }</span><span style=3D"font-size:8.0pt;font=
-family:&quot;Lucida Console&quot;"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; leaf ou=
tput-pkts {<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; type uint64;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; description<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp; &quot;Number of packets transmitted from queue &quot;;<o:p=
></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; }<o:p><=
/o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; leaf ou=
tput-bytes {<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; type uint64;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; description<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp; &quot;Number of bytes transmitted from queue &quot;;<o:p><=
/o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; }<o:p><=
/o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; leaf qu=
eue-size-pkts {<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; type uint64;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; description<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; &quot;Number of packets currently buffered &quot;;<o:p></o:p></span></=
p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><span style=3D"font-si=
ze:8.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; }<o:p><=
/o:p></span></p>
<p class=3D"MsoPlainText">Advantage: The output, in the form of a single in=
teger, that indicates which counters are supported is compact.<o:p></o:p></=
p>
<p class=3D"MsoPlainText">Disadvantage: The model is vague/implicit---the m=
eaning of each bit in supported-counters is embedded in the description, ra=
ther than modeled explicitly.&nbsp; This is also not YANG&#8217;s standard =
approach to make a statement conditional.<o:p></o:p></p>
<p class=3D"MsoPlainText"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoPlainText">Thanks,<o:p></o:p></p>
<p class=3D"MsoPlainText">Helen<o:p></o:p></p>
<p class=3D"MsoPlainText"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoPlainText"><o:p>&nbsp;</o:p></p>
</div>
</body>
</html>

--_000_BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820BN1PR0201MB0833_--


From nobody Wed Aug 16 14:58:58 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 04DF3132710 for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 14:58:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.01
X-Spam-Level: 
X-Spam-Status: No, score=-3.01 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=-1, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7vXHxQ36xuFa for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 14:58:53 -0700 (PDT)
Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0120.outbound.protection.outlook.com [104.47.41.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F36D5132031 for <yang-doctors@ietf.org>; Wed, 16 Aug 2017 14:58:52 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=m7vzuMMHxsH75zFDaULab3cmwQiQXnGXEVBKFWFdUec=; b=GzjKCjoZvNAXRrkIuMxOJAC8axxLm7/+0M+G/G4pHGtwlwojy7LR4PGlEln9BZNyPSIHPKeLCzZPJDuk6Qyb1Z2unEey+aMQbUh24Rj83wpSzxn4AkrLVk+mi+zl527Di/1qcJL2SQzgQdC1sJGqGbepW16g225cl6PKnPfXWLw=
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com (10.160.117.151) by BN3PR0501MB1202.namprd05.prod.outlook.com (10.160.113.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1362.12; Wed, 16 Aug 2017 21:58:50 +0000
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) by BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) with mapi id 15.01.1362.018; Wed, 16 Aug 2017 21:58:50 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>
CC: Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Thread-Topic: [yang-doctors] question regarding conditional/optional statements
Thread-Index: AQHTFtrXli29k6yzDEuI5GnXs/zH7g==
Date: Wed, 16 Aug 2017 21:58:50 +0000
Message-ID: <5FACD324-EF46-40BD-B7E6-2F546D31A1A4@juniper.net>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/f.20.0.170309
authentication-results: spf=none (sender IP is ) smtp.mailfrom=kwatsen@juniper.net; 
x-originating-ip: [66.129.241.13]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BN3PR0501MB1202; 6:rKKMe1AoJsgj1gHiwDsmVnq4uCX2Z40wjgknT4syJPZVRS9IRYTCCXyhDzfhxAiVO3Law5KOjEyshe/mbtYHvyYy5HTm9jiQ3bFoeWYsjjPU2gUJz6O/JGsxkFClvW8dvFlGem3fnUn7TsjiaOP0/gPIEvbNufrKYhPzF2mU2a9sZ60tPnN6Hu/rQToYEPvdP4Lx3NIu02pybwaResq/08IandQLq4sLvSOyLFYdYEUEfHo+cTjoyP8vjECj2QpX5CKTgVLkTz+OdNGbe3QY+yvlP4nFIX3bDlyhwodlyAmXr7r2HCyHQDyxgpo6VXutDlPmP76hYit2kNxKkSjmIA==; 5:8Pi+Unij5ofTQL6MbsoeCIwtJQpo7oC2ETo5ZC3T3zEooFbGD8t/Xibb1dSw3M88dHBdEL/nUc4Cn8scWU9vMLXVWHBUmJ2j2MNBEZUgwT2UEKA13yEsOPomr81kcxW/NKfbw/L/n1dpw7DD+YMjAw==; 24:9Dkos7Vd4jpfP9uTnuRyaKO6p1sH3ueAoa8aICZHd+mUp8R2StnzuZzmxau6Qs4uRNIPpfc1BfEBYoz/6PemwRIeu9lWFOl7fvsW4KKI5uI=; 7:zscBvPOSvCt4SjC6juZtyoX8E9clzEofqk2tEvu18YuDTKLnWkjL0YN/L0Ss51U04jVQrU81w1TuaezDiz0j2sK02ARiQLnCU3XdyS8bnR7lbg/f7WBGu+N2ArfG4VnEUhXSAsYpDLXkv38Z41gmIwD5JE73Loqa3vGhBlVhVkYq3noG+16VOFsPep44cUJk4NtiYOQI3V6GPjc8DmGuq23ej8xUatmfkwt/sP2Dark=
x-ms-office365-filtering-correlation-id: e1564a63-8207-4e82-b8d8-08d4e4f1fa6d
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(48565401081)(2017052603031)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BN3PR0501MB1202; 
x-ms-traffictypediagnostic: BN3PR0501MB1202:
x-exchange-antispam-report-test: UriScan:(21748063052155)(21534305686606);
x-microsoft-antispam-prvs: <BN3PR0501MB1202208DE89A9AEA6AFCA981A5820@BN3PR0501MB1202.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(10201501046)(100000703101)(100105400095)(93006095)(93001095)(3002001)(6055026)(6041248)(20161123562025)(20161123558100)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN3PR0501MB1202; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN3PR0501MB1202; 
x-forefront-prvs: 0401647B7F
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39860400002)(189002)(377454003)(199003)(24454002)(50986999)(6246003)(33656002)(7736002)(2900100001)(82746002)(54356999)(14454004)(86362001)(6116002)(102836003)(3846002)(101416001)(6486002)(77096006)(106356001)(105586002)(6436002)(66066001)(189998001)(83506001)(2501003)(68736007)(478600001)(83716003)(36756003)(97736004)(3660700001)(25786009)(6506006)(5660300001)(99286003)(6512007)(236005)(2906002)(4326008)(81156014)(4001350100001)(8936002)(229853002)(53936002)(54896002)(6306002)(81166006)(8676002)(54906002)(3280700002); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR0501MB1202; H:BN3PR0501MB1442.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; 
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_5FACD324EF4640BDB7E62F546D31A1A4junipernet_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Aug 2017 21:58:50.4734 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0501MB1202
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/uDuGgQtUN9LtaqppLBxxXdd6hvI>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 16 Aug 2017 21:58:56 -0000

--_000_5FACD324EF4640BDB7E62F546D31A1A4junipernet_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGVsZW4sDQoNClRoZSBkb3duc2lkZSB0byBvcHRpb24gIzEgaXMgYSBwb3RlbnRpYWxseSBsYXJn
ZSBudW1iZXIgb2YgZmVhdHVyZXMgdGhhdCB3b3VsZCBoYXZlIHRvIGJlIGxpc3RlZCBpbiBZYW5n
IExpYnJhcnksIHJpZ2h0PyAgSG93IG1hbnkgZmVhdHVyZXMgYXJlIHdlIHRhbGtpbmcgYWJvdXQ/
ICBTaW5jZSB5b3VyIHRoaXJkIGV4YW1wbGUgdXNlcyBhbiBpbnQzMiwgbm8gbW9yZSB0aGFuIDMy
PyAgIFRoYXQgZG9lc24ndCBzb3VuZCBleGNlc3NpdmUgdG8gbWUuICBUaGUgc3BhY2Utc2F2aW5n
cyBpc24ndCBtdWNoLCB1bmxlc3Mgd2UncmUgdGFsa2luZyBhYm91dCBpdHR5LWJpdHR5IElvVCBk
ZXZpY2VzIChob3BlZnVsbHkgcnVubmluZyBDb0FQKS4NCg0KS2VudA0KDQpPbiA4LzE2LzE3LCAy
OjA5IFBNLCAieWFuZy1kb2N0b3JzIG9uIGJlaGFsZiBvZiBJbmctV2hlciBDaGVuIiA8eWFuZy1k
b2N0b3JzLWJvdW5jZXNAaWV0Zi5vcmc8bWFpbHRvOnlhbmctZG9jdG9ycy1ib3VuY2VzQGlldGYu
b3JnPiBvbiBiZWhhbGYgb2YgSW5nLVdoZXJfQ2hlbkBqYWJpbC5jb208bWFpbHRvOkluZy1XaGVy
X0NoZW5AamFiaWwuY29tPj4gd3JvdGU6DQoNCg0KSGVsbG8gWUFORyBkb2N0b3JzLA0KDQoNCg0K
V2Ugd2lzaCB0byBkZWZpbmUgYSBZQU5HIG1vZGVsIHdpdGggc2V2ZXJhbCBjb3VudGVycy4gIFRo
ZSBjb3VudGVycyB0aGF0IHdlIHdpc2ggdG8gbW9kZWwgYXJlIHRoZSB1bmlvbiBvZiBhbGwgdGhl
IGNvdW50ZXJzIHN1cHBvcnRlZCBieSBvdXIgc2FtcGxlIG9mIHZlbmRvcnMuICBUaGlzIG1lYW5z
IHRoYXQgdGhlIG1vZGVsIHdpbGwgZGVmaW5lIHNvbWUgY291bnRlcnMgc3VwcG9ydGVkIGJ5IGJv
dGggdmVuZG9yXzEgYW5kIHZlbmRvcl8yIChvciBtb3JlKSwgYnV0IHNvbWUgY291bnRlcnMgd2ls
bCBiZSBzdXBwb3J0ZWQgb25seSBieSBvbmUgb2YgdGhlIHZlbmRvcnMuICBXZSB3b3VsZCBsaWtl
IHRoZSBtb2RlbCB0byBhbGxvdyBlYWNoIHZlbmRvciB0byBpbmRpY2F0ZSB0aGUgY291bnRlcnMg
aXQgc3VwcG9ydHMuDQoNCg0KDQpXZSBjYW4gdGhpbmsgb2YgMyBhcHByb2FjaGVzIGJlbG93LCBh
bmQgd291bGQgbGlrZSB5b3VyIGZlZWRiYWNrIHJlZ2FyZGluZyB3aGljaCBhcHByb2FjaCB3ZSBz
aG91bGQgY2hvb3NlLiAgV2XigJlyZSBhbHNvIG9wZW4gdG8gc3VnZ2VzdGlvbnMgb2Ygb3RoZXIg
YXBwcm9hY2hlcy4NCg0KDQoNCk9wdGlvbiAxOiBEZWZpbmUgYW4gb3B0aW9uYWwgZmVhdHVyZSAo
aWYtZmVhdHVyZSkgZm9yIGVhY2ggY291bnRlci4NCg0KU2FtcGxlOg0KICBjb250YWluZXIgcXVl
dWluZy1zdGF0aXN0aWNzLW9wdC0xIHsNCiAgICBjb25maWcgZmFsc2U7DQogICAgZGVzY3JpcHRp
b24NCiAgICAgICJxdWV1ZSByZWxhdGVkIHN0YXRpc3RpY3MgIjsNCiAgICBsZWFmIG91dHB1dC1w
a3RzIHsNCiAgICAgIGlmLWZlYXR1cmUgIm91dHB1dC1wa3RzIjsNCiAgICAgIHR5cGUgdWludDY0
Ow0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgIk51bWJlciBvZiBwYWNrZXRzIHRyYW5zbWl0
dGVkIGZyb20gcXVldWUgIjsNCiAgICB9DQogICAgbGVhZiBvdXRwdXQtYnl0ZXMgew0KICAgICAg
aWYtZmVhdHVyZSAib3V0cHV0LWJ5dGVzIjsNCiAgICAgIHR5cGUgdWludDY0Ow0KICAgICAgZGVz
Y3JpcHRpb24NCiAgICAgICAgIk51bWJlciBvZiBieXRlcyB0cmFuc21pdHRlZCBmcm9tIHF1ZXVl
ICI7DQogICAgfQ0KICAgIGxlYWYgcXVldWUtc2l6ZS1wa3RzIHsNCiAgICAgIGlmLWZlYXR1cmUg
InF1ZXVlLXNpemUtcGt0cyI7DQogICAgICB0eXBlIHVpbnQ2NDsNCiAgICAgIGRlc2NyaXB0aW9u
DQogICAgICAiTnVtYmVyIG9mIHBhY2tldHMgY3VycmVudGx5IGJ1ZmZlcmVkICI7DQogICAgfQ0K
ICAgIC8qIGV0Yy4gKi8NCiAgfQ0KDQpBZHZhbnRhZ2U6IFRoaXMgaXMgdGhlIHN0YW5kYXJkIGFw
cHJvYWNoIGJ1aWx0IGludG8gdGhlIGxhbmd1YWdlIHRvIG1ha2UgYSBzdGF0ZW1lbnQgY29uZGl0
aW9uYWwuDQoNCkRpc2FkdmFudGFnZTogVGhlcmUgYXJlIG1hbnkgY291bnRlcnMsIGFuZCBlYWNo
IGNvdW50ZXIgd2lsbCBiZSBhbiBvcHRpb25hbCBmZWF0dXJlLCByZXN1bHRpbmcgaW4gbWFueSBv
cHRpb25hbCBmZWF0dXJlcyBpbiB0aGUgbW9kZWwuDQoNCg0KDQpPcHRpb24gMjogRGVmaW5lIGEg
bGVhZiBvZiB0aGUgdHlwZSBiaXRzLCB3aGVyZSBlYWNoIGJpdCBpbmRpY2F0ZXMgdGhhdCBhIHBh
cnRpY3VsYXIgY291bnRlciBpcyBzdXBwb3J0ZWQuDQoNCkV4YW1wbGU6DQogIGNvbnRhaW5lciBx
dWV1aW5nLXN0YXRpc3RpY3Mtb3B0LTIgew0KICAgIGNvbmZpZyBmYWxzZTsNCiAgICBkZXNjcmlw
dGlvbg0KICAgICAgInF1ZXVlIHJlbGF0ZWQgc3RhdGlzdGljcyAiOw0KICAgIGxlYWYgc3VwcG9y
dGVkLWNvdW50ZXJzIHsNCiAgICAgIHR5cGUgYml0cyB7DQogICAgICAgIGJpdCBxdWV1ZS1vdXRw
dXQtcGt0czsNCiAgICAgICAgYml0IHF1ZXVlLW91dHB1dC1ieXRlczsNCiAgICAgICAgYml0IHF1
ZXVlLXNpemUtcGt0czsNCiAgICAgIH0NCiAgICB9DQogICAgbGVhZiBvdXRwdXQtcGt0cyB7DQog
ICAgICB0eXBlIHVpbnQ2NDsNCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICJOdW1iZXIgb2Yg
cGFja2V0cyB0cmFuc21pdHRlZCBmcm9tIHF1ZXVlICI7DQogICAgfQ0KICAgIGxlYWYgb3V0cHV0
LWJ5dGVzIHsNCiAgICAgIHR5cGUgdWludDY0Ow0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAg
Ik51bWJlciBvZiBieXRlcyB0cmFuc21pdHRlZCBmcm9tIHF1ZXVlICI7DQogICAgfQ0KICAgIGxl
YWYgcXVldWUtc2l6ZS1wa3RzIHsNCiAgICAgIHR5cGUgdWludDY0Ow0KICAgICAgZGVzY3JpcHRp
b24NCiAgICAgICJOdW1iZXIgb2YgcGFja2V0cyBjdXJyZW50bHkgYnVmZmVyZWQgIjsNCiAgICB9
DQogICAgLyogZXRjLiAqLw0KICB9DQoNCkFkdmFudGFnZTogVGhpcyByZWR1Y2VzIHRoZSBudW1i
ZXIgb2Ygb3B0aW9uYWwgZmVhdHVyZXMgaW4gdGhlIG1vZGVsLg0KDQpEaXNhZHZhbnRhZ2U6IFRo
ZSBvdXRwdXQgdGhhdCBpbmRpY2F0ZXMgd2hpY2ggY291bnRlcnMgYXJlIHN1cHBvcnRlZCBtaWdo
dCBiZSB0b28gdmVyYm9zZSB0byBiZSB1c2VyIGZyaWVuZGx5LiAgVGhpcyBpcyBub3QgWUFOR+KA
mXMgc3RhbmRhcmQgYXBwcm9hY2ggdG8gbWFrZSBhIHN0YXRlbWVudCBjb25kaXRpb25hbC4NCg0K
DQoNCk9wdGlvbiAzOiBEZWZpbmUgYSBsZWFmIG9mIHRoZSB0eXBlIGludGVnZXIsIHdoZXJlIGVh
Y2ggYml0IGluIHRoZSBpbnRlZ2VyIGluZGljYXRlcyB0aGF0IGEgcGFydGljdWxhciBjb3VudGVy
IGlzIHN1cHBvcnRlZC4NCg0KRXhhbXBsZToNCiAgY29udGFpbmVyIHF1ZXVpbmctc3RhdGlzdGlj
cy1vcHQtMyB7DQogICAgY29uZmlnIGZhbHNlOw0KICAgIGRlc2NyaXB0aW9uDQogICAgICAicXVl
dWUgcmVsYXRlZCBzdGF0aXN0aWNzICI7DQogICAgbGVhZiBzdXBwb3J0ZWQtY291bnRlcnMgew0K
ICAgICAgdHlwZSB1aW50MzI7DQogICAgICBkZXNjcmlwdGlvbg0KICAgICAgICAiQml0IDAgaW5k
aWNhdGVzIHdoZXRoZXIgb3V0cHV0LXBrdHMgY291bnRlciBpcyBzdXBwb3J0ZWQNCiAgICAgICAg
IEJpdCAxIGluZGljYXRlcyB3aGV0aGVyIG91dHB1dC1ieXRlcyBjb3VudGVyIGlzIHN1cHBvcnRl
ZA0KICAgICAgICAgQml0IDIgaW5kaWNhdGVzIHdoZXRoZXIgcXVldWUtc2l6ZS1wa3RzIGNvdW50
ZXIgaXMgc3VwcG9ydGVkIjsNCiAgICB9DQogICAgbGVhZiBvdXRwdXQtcGt0cyB7DQogICAgICB0
eXBlIHVpbnQ2NDsNCiAgICAgIGRlc2NyaXB0aW9uDQogICAgICAgICJOdW1iZXIgb2YgcGFja2V0
cyB0cmFuc21pdHRlZCBmcm9tIHF1ZXVlICI7DQogICAgfQ0KICAgIGxlYWYgb3V0cHV0LWJ5dGVz
IHsNCiAgICAgIHR5cGUgdWludDY0Ow0KICAgICAgZGVzY3JpcHRpb24NCiAgICAgICAgIk51bWJl
ciBvZiBieXRlcyB0cmFuc21pdHRlZCBmcm9tIHF1ZXVlICI7DQogICAgfQ0KICAgIGxlYWYgcXVl
dWUtc2l6ZS1wa3RzIHsNCiAgICAgIHR5cGUgdWludDY0Ow0KICAgICAgZGVzY3JpcHRpb24NCiAg
ICAgICJOdW1iZXIgb2YgcGFja2V0cyBjdXJyZW50bHkgYnVmZmVyZWQgIjsNCiAgICB9DQoNCkFk
dmFudGFnZTogVGhlIG91dHB1dCwgaW4gdGhlIGZvcm0gb2YgYSBzaW5nbGUgaW50ZWdlciwgdGhh
dCBpbmRpY2F0ZXMgd2hpY2ggY291bnRlcnMgYXJlIHN1cHBvcnRlZCBpcyBjb21wYWN0Lg0KDQpE
aXNhZHZhbnRhZ2U6IFRoZSBtb2RlbCBpcyB2YWd1ZS9pbXBsaWNpdC0tLXRoZSBtZWFuaW5nIG9m
IGVhY2ggYml0IGluIHN1cHBvcnRlZC1jb3VudGVycyBpcyBlbWJlZGRlZCBpbiB0aGUgZGVzY3Jp
cHRpb24sIHJhdGhlciB0aGFuIG1vZGVsZWQgZXhwbGljaXRseS4gIFRoaXMgaXMgYWxzbyBub3Qg
WUFOR+KAmXMgc3RhbmRhcmQgYXBwcm9hY2ggdG8gbWFrZSBhIHN0YXRlbWVudCBjb25kaXRpb25h
bC4NCg0KDQoNClRoYW5rcywNCg0KSGVsZW4NCg0KDQoNCg0K

--_000_5FACD324EF4640BDB7E62F546D31A1A4junipernet_
Content-Type: text/html; charset="utf-8"
Content-ID: <7F8A867B098CCB4497EF19AA0D87DFD8@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6bz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlIiB4
bWxuczp3PSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTp3b3JkIiB4bWxuczptPSJo
dHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL29mZmljZS8yMDA0LzEyL29tbWwiIHhtbG5zPSJo
dHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtaHRtbDQwIj4NCjxoZWFkPg0KPG1ldGEgaHR0cC1lcXVp
dj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiPg0KPG1l
dGEgbmFtZT0iVGl0bGUiIGNvbnRlbnQ9IiI+DQo8bWV0YSBuYW1lPSJLZXl3b3JkcyIgY29udGVu
dD0iIj4NCjxtZXRhIG5hbWU9IkdlbmVyYXRvciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUg
KGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxlPjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8N
CkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IkNhbWJyaWEgTWF0aCI7DQoJcGFub3NlLTE6MiA0
IDUgMyA1IDQgNiAzIDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OkNhbGlicmk7DQoJ
cGFub3NlLTE6MiAxNSA1IDIgMiAyIDQgMyAyIDQ7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWls
eToiTHVjaWRhIENvbnNvbGUiOw0KCXBhbm9zZS0xOjIgMTEgNiA5IDQgNSA0IDIgMiA0O30NCi8q
IFN0eWxlIERlZmluaXRpb25zICovDQpwLk1zb05vcm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNv
Tm9ybWFsDQoJe21hcmdpbjowaW47DQoJbWFyZ2luLWJvdHRvbTouMDAwMXB0Ow0KCWZvbnQtc2l6
ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6Q2FsaWJyaTt9DQphOmxpbmssIHNwYW4uTXNvSHlwZXJs
aW5rDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgljb2xvcjojMDU2M0MxOw0KCXRleHQtZGVj
b3JhdGlvbjp1bmRlcmxpbmU7fQ0KYTp2aXNpdGVkLCBzcGFuLk1zb0h5cGVybGlua0ZvbGxvd2Vk
DQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgljb2xvcjojOTU0RjcyOw0KCXRleHQtZGVjb3Jh
dGlvbjp1bmRlcmxpbmU7fQ0KcC5Nc29QbGFpblRleHQsIGxpLk1zb1BsYWluVGV4dCwgZGl2Lk1z
b1BsYWluVGV4dA0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJbXNvLXN0eWxlLWxpbms6IlBs
YWluIFRleHQgQ2hhciI7DQoJbWFyZ2luOjBpbjsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJ
Zm9udC1zaXplOjExLjBwdDsNCglmb250LWZhbWlseTpDYWxpYnJpO30NCnNwYW4uUGxhaW5UZXh0
Q2hhcg0KCXttc28tc3R5bGUtbmFtZToiUGxhaW4gVGV4dCBDaGFyIjsNCgltc28tc3R5bGUtcHJp
b3JpdHk6OTk7DQoJbXNvLXN0eWxlLWxpbms6IlBsYWluIFRleHQiOw0KCWZvbnQtZmFtaWx5OkNh
bGlicmk7fQ0KcC5tc29ub3JtYWwwLCBsaS5tc29ub3JtYWwwLCBkaXYubXNvbm9ybWFsMA0KCXtt
c28tc3R5bGUtbmFtZTptc29ub3JtYWw7DQoJbXNvLW1hcmdpbi10b3AtYWx0OmF1dG87DQoJbWFy
Z2luLXJpZ2h0OjBpbjsNCgltc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0bzsNCgltYXJnaW4tbGVm
dDowaW47DQoJZm9udC1zaXplOjEyLjBwdDsNCglmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFu
Ijt9DQpzcGFuLkVtYWlsU3R5bGUyMA0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbDsNCglmb250
LWZhbWlseTpDYWxpYnJpOw0KCWNvbG9yOndpbmRvd3RleHQ7fQ0Kc3Bhbi5FbWFpbFN0eWxlMjEN
Cgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtcmVwbHk7DQoJZm9udC1mYW1pbHk6Q2FsaWJyaTsN
Cglmb250LXZhcmlhbnQ6bm9ybWFsICFpbXBvcnRhbnQ7DQoJY29sb3I6d2luZG93dGV4dDsNCgl0
ZXh0LXRyYW5zZm9ybTpub25lOw0KCXRleHQtZGVjb3JhdGlvbjpub25lIG5vbmU7DQoJdmVydGlj
YWwtYWxpZ246YmFzZWxpbmU7fQ0Kc3Bhbi5tc29JbnMNCgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0
LW9ubHk7DQoJbXNvLXN0eWxlLW5hbWU6IiI7DQoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTsN
Cgljb2xvcjp0ZWFsO30NCi5Nc29DaHBEZWZhdWx0DQoJe21zby1zdHlsZS10eXBlOmV4cG9ydC1v
bmx5Ow0KCWZvbnQtc2l6ZToxMC4wcHQ7fQ0KQHBhZ2UgV29yZFNlY3Rpb24xDQoJe3NpemU6OC41
aW4gMTEuMGluOw0KCW1hcmdpbjoxLjBpbiAxLjBpbiAxLjBpbiAxLjBpbjt9DQpkaXYuV29yZFNl
Y3Rpb24xDQoJe3BhZ2U6V29yZFNlY3Rpb24xO30NCi0tPjwvc3R5bGU+DQo8L2hlYWQ+DQo8Ym9k
eSBiZ2NvbG9yPSJ3aGl0ZSIgbGFuZz0iRU4tVVMiIGxpbms9IiMwNTYzQzEiIHZsaW5rPSIjOTU0
RjcyIj4NCjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjEyLjBwdCI+SGVsZW4sPG86cD48L286cD48L3NwYW4+PC9w
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQiPjxv
OnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTIuMHB0Ij5UaGUgZG93bnNpZGUgdG8gb3B0aW9uICMxIGlzIGEgcG90
ZW50aWFsbHkgbGFyZ2UgbnVtYmVyIG9mIGZlYXR1cmVzIHRoYXQgd291bGQgaGF2ZSB0byBiZSBs
aXN0ZWQgaW4gWWFuZyBMaWJyYXJ5LCByaWdodD8mbmJzcDsgSG93IG1hbnkgZmVhdHVyZXMgYXJl
IHdlIHRhbGtpbmcgYWJvdXQ/Jm5ic3A7IFNpbmNlIHlvdXIgdGhpcmQgZXhhbXBsZSB1c2VzIGFu
IGludDMyLCBubw0KIG1vcmUgdGhhbiAzMj8mbmJzcDsgJm5ic3A7VGhhdCBkb2Vzbid0IHNvdW5k
IGV4Y2Vzc2l2ZSB0byBtZS4mbmJzcDsgVGhlIHNwYWNlLXNhdmluZ3MgaXNuJ3QgbXVjaCwgdW5s
ZXNzIHdlJ3JlIHRhbGtpbmcgYWJvdXQgaXR0eS1iaXR0eSBJb1QgZGV2aWNlcyAoaG9wZWZ1bGx5
IHJ1bm5pbmcgQ29BUCkuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFu
PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTIuMHB0
Ij5LZW50PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g
c3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxk
aXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+T24gOC8xNi8xNywgMjowOSBQTSwgJnF1
b3Q7eWFuZy1kb2N0b3JzIG9uIGJlaGFsZiBvZiBJbmctV2hlciBDaGVuJnF1b3Q7ICZsdDs8YSBo
cmVmPSJtYWlsdG86eWFuZy1kb2N0b3JzLWJvdW5jZXNAaWV0Zi5vcmciPnlhbmctZG9jdG9ycy1i
b3VuY2VzQGlldGYub3JnPC9hPiBvbiBiZWhhbGYgb2YNCjxhIGhyZWY9Im1haWx0bzpJbmctV2hl
cl9DaGVuQGphYmlsLmNvbSI+SW5nLVdoZXJfQ2hlbkBqYWJpbC5jb208L2E+Jmd0OyB3cm90ZTo8
c3BhbiBzdHlsZT0iZm9udC1zaXplOjEyLjBwdCI+PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9k
aXY+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpw
PjwvcD4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb1BsYWluVGV4dCI+SGVsbG8gWUFORyBkb2N0b3Jz
LDxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb1BsYWluVGV4dCI+Jm5ic3A7PG86cD48L286
cD48L3A+DQo8cCBjbGFzcz0iTXNvUGxhaW5UZXh0Ij5XZSB3aXNoIHRvIGRlZmluZSBhIFlBTkcg
bW9kZWwgd2l0aCBzZXZlcmFsIGNvdW50ZXJzLiAmbmJzcDtUaGUgY291bnRlcnMgdGhhdCB3ZSB3
aXNoIHRvIG1vZGVsIGFyZSB0aGUgdW5pb24gb2YgYWxsIHRoZSBjb3VudGVycyBzdXBwb3J0ZWQg
Ynkgb3VyIHNhbXBsZSBvZiB2ZW5kb3JzLiZuYnNwOyBUaGlzIG1lYW5zIHRoYXQgdGhlIG1vZGVs
IHdpbGwgZGVmaW5lIHNvbWUgY291bnRlcnMgc3VwcG9ydGVkIGJ5IGJvdGggdmVuZG9yXzENCiBh
bmQgdmVuZG9yXzIgKG9yIG1vcmUpLCBidXQgc29tZSBjb3VudGVycyB3aWxsIGJlIHN1cHBvcnRl
ZCBvbmx5IGJ5IG9uZSBvZiB0aGUgdmVuZG9ycy4mbmJzcDsgV2Ugd291bGQgbGlrZSB0aGUgbW9k
ZWwgdG8gYWxsb3cgZWFjaCB2ZW5kb3IgdG8gaW5kaWNhdGUgdGhlIGNvdW50ZXJzIGl0IHN1cHBv
cnRzLjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb1BsYWluVGV4dCI+Jm5ic3A7PG86cD48
L286cD48L3A+DQo8cCBjbGFzcz0iTXNvUGxhaW5UZXh0Ij5XZSBjYW4gdGhpbmsgb2YgMyBhcHBy
b2FjaGVzIGJlbG93LCBhbmQgd291bGQgbGlrZSB5b3VyIGZlZWRiYWNrIHJlZ2FyZGluZyB3aGlj
aCBhcHByb2FjaCB3ZSBzaG91bGQgY2hvb3NlLiZuYnNwOyBXZeKAmXJlIGFsc28gb3BlbiB0byBz
dWdnZXN0aW9ucyBvZiBvdGhlciBhcHByb2FjaGVzLjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9
Ik1zb1BsYWluVGV4dCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvUGxhaW5U
ZXh0Ij5PcHRpb24gMTogRGVmaW5lIGFuIG9wdGlvbmFsIGZlYXR1cmUgKGlmLWZlYXR1cmUpIGZv
ciBlYWNoIGNvdW50ZXIuPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvUGxhaW5UZXh0Ij5T
YW1wbGU6PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1h
dXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTom
cXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7IGNvbnRhaW5lciBxdWV1aW5nLXN0YXRp
c3RpY3Mtb3B0LTEgezwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
IHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjguMHB0
O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25zb2xlJnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJz
cDsgY29uZmlnIGZhbHNlOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjgu
MHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25zb2xlJnF1b3Q7Ij4mbmJzcDsmbmJzcDsm
bmJzcDsgZGVzY3JpcHRpb248L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4
LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZxdW90O3F1ZXVlIHJlbGF0ZWQgc3RhdGlzdGljcyAmcXVvdDs7
PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQt
YXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6
JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyBsZWFmIG91dHB1
dC1wa3RzIHs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHls
ZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250
LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7DQo8c3BhbiBzdHlsZT0iYmFja2dyb3VuZDp5ZWxsb3c7bXNvLWhpZ2hsaWdodDp5
ZWxsb3ciPmlmLWZlYXR1cmUgJnF1b3Q7b3V0cHV0LXBrdHMmcXVvdDs7PC9zcGFuPjwvc3Bhbj48
bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFj
ZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1
Y2lkYSBDb25zb2xlJnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdHlwZSB1
aW50NjQ7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9
InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyBkZXNjcmlwdGlvbjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjguMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25zb2xlJnF1b3Q7Ij4mbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJnF1b3Q7TnVtYmVyIG9mIHBhY2tldHMg
dHJhbnNtaXR0ZWQgZnJvbSBxdWV1ZSAmcXVvdDs7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxl
PSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsi
PiZuYnNwOyZuYnNwOyZuYnNwOyB9PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNp
emU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZu
YnNwOyZuYnNwOyBsZWFmIG91dHB1dC1ieXRlcyB7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxl
PSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsi
PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOw0KPHNwYW4gc3R5bGU9ImJhY2tncm91bmQ6
eWVsbG93O21zby1oaWdobGlnaHQ6eWVsbG93Ij5pZi1mZWF0dXJlICZxdW90O291dHB1dC1ieXRl
cyZxdW90Ozs8L3NwYW4+PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4w
cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyB0eXBlIHVpbnQ2NDs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9
ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGRlc2NyaXB0aW9uPC9zcGFuPjxvOnA+PC9v
OnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUi
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENv
bnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAm
cXVvdDtOdW1iZXIgb2YgYnl0ZXMgdHJhbnNtaXR0ZWQgZnJvbSBxdWV1ZSAmcXVvdDs7PC9zcGFu
PjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3Nw
YWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7
THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyB9PC9zcGFuPjxvOnA+PC9v
OnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUi
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENv
bnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyBsZWFmIHF1ZXVlLXNpemUtcGt0cyB7PC9z
cGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0
b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOw0K
PHNwYW4gc3R5bGU9ImJhY2tncm91bmQ6eWVsbG93O21zby1oaWdobGlnaHQ6eWVsbG93Ij5pZi1m
ZWF0dXJlICZxdW90O3F1ZXVlLXNpemUtcGt0cyZxdW90Ozs8L3NwYW4+PC9zcGFuPjxvOnA+PC9v
OnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUi
PjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENv
bnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB0eXBlIHVpbnQ2NDs8
L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1h
dXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTom
cXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
IGRlc2NyaXB0aW9uPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIg
c3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7
Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyAmcXVvdDtOdW1iZXIgb2YgcGFja2V0cyBjdXJyZW50bHkgYnVmZmVyZWQg
JnF1b3Q7Ozwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl
PSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjguMHB0O2ZvbnQt
ZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25zb2xlJnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsgfTwv
c3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1
dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZx
dW90O0x1Y2lkYSBDb25zb2xlJnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsgLyogZXRjLiAqLzwv
c3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1
dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZx
dW90O0x1Y2lkYSBDb25zb2xlJnF1b3Q7Ij4mbmJzcDsgfTwvc3Bhbj48bzpwPjwvbzpwPjwvcD4N
CjxwIGNsYXNzPSJNc29QbGFpblRleHQiPkFkdmFudGFnZTogVGhpcyBpcyB0aGUgc3RhbmRhcmQg
YXBwcm9hY2ggYnVpbHQgaW50byB0aGUgbGFuZ3VhZ2UgdG8gbWFrZSBhIHN0YXRlbWVudCBjb25k
aXRpb25hbC48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29QbGFpblRleHQiPkRpc2FkdmFu
dGFnZTogVGhlcmUgYXJlIG1hbnkgY291bnRlcnMsIGFuZCBlYWNoIGNvdW50ZXIgd2lsbCBiZSBh
biBvcHRpb25hbCBmZWF0dXJlLCByZXN1bHRpbmcgaW4gbWFueSBvcHRpb25hbCBmZWF0dXJlcyBp
biB0aGUgbW9kZWwuPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvUGxhaW5UZXh0Ij4mbmJz
cDs8bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29QbGFpblRleHQiPk9wdGlvbiAyOiBEZWZp
bmUgYSBsZWFmIG9mIHRoZSB0eXBlIGJpdHMsIHdoZXJlIGVhY2ggYml0IGluZGljYXRlcyB0aGF0
IGEgcGFydGljdWxhciBjb3VudGVyIGlzIHN1cHBvcnRlZC48bzpwPjwvbzpwPjwvcD4NCjxwIGNs
YXNzPSJNc29QbGFpblRleHQiPkV4YW1wbGU6PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6
ZTo4LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7IGNv
bnRhaW5lciBxdWV1aW5nLXN0YXRpc3RpY3Mtb3B0LTIgezwvc3Bhbj48bzpwPjwvbzpwPjwvcD4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBz
dHlsZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25zb2xlJnF1
b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsgY29uZmlnIGZhbHNlOzwvc3Bhbj48bzpwPjwvbzpwPjwv
cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48c3Bh
biBzdHlsZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25zb2xl
JnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsgZGVzY3JpcHRpb248L3NwYW4+PG86cD48L286cD48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNw
YW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29s
ZSZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZxdW90O3F1ZXVlIHJlbGF0
ZWQgc3RhdGlzdGljcyAmcXVvdDs7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNp
emU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZu
YnNwOyZuYnNwOw0KPHNwYW4gc3R5bGU9ImJhY2tncm91bmQ6eWVsbG93O21zby1oaWdobGlnaHQ6
eWVsbG93Ij5sZWFmIHN1cHBvcnRlZC1jb3VudGVycyB7PC9zcGFuPjwvc3Bhbj48bzpwPjwvbzpw
PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25z
b2xlJnF1b3Q7O2JhY2tncm91bmQ6eWVsbG93O21zby1oaWdobGlnaHQ6eWVsbG93Ij4mbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdHlwZSBiaXRzIHs8L3NwYW4+PG86cD48L286cD48L3A+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4g
c3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZx
dW90OztiYWNrZ3JvdW5kOnllbGxvdzttc28taGlnaGxpZ2h0OnllbGxvdyI+Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGJpdCBxdWV1ZS1vdXRwdXQtcGt0czs8L3Nw
YW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRv
c3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVv
dDtMdWNpZGEgQ29uc29sZSZxdW90OztiYWNrZ3JvdW5kOnllbGxvdzttc28taGlnaGxpZ2h0Onll
bGxvdyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGJpdCBxdWV1
ZS1vdXRwdXQtYnl0ZXM7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4w
cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDs7YmFja2dyb3VuZDp5ZWxs
b3c7bXNvLWhpZ2hsaWdodDp5ZWxsb3ciPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyBiaXQgcXVldWUtc2l6ZS1wa3RzOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25zb2xlJnF1b3Q7
O2JhY2tncm91bmQ6eWVsbG93O21zby1oaWdobGlnaHQ6eWVsbG93Ij4mbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsgfTwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjgu
MHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25zb2xlJnF1b3Q7O2JhY2tncm91bmQ6eWVs
bG93O21zby1oaWdobGlnaHQ6eWVsbG93Ij4mbmJzcDsmbmJzcDsmbmJzcDsgfTwvc3Bhbj48bzpw
PjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpu
b25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lk
YSBDb25zb2xlJnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsgbGVhZiBvdXRwdXQtcGt0cyB7PC9z
cGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0
b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB0
eXBlIHVpbnQ2NDs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBz
dHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtm
b250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7IGRlc2NyaXB0aW9uPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250
LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmcXVvdDtOdW1iZXIgb2YgcGFj
a2V0cyB0cmFuc21pdHRlZCBmcm9tIHF1ZXVlICZxdW90Ozs8L3NwYW4+PG86cD48L286cD48L3A+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4g
c3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZx
dW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7IH08L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFz
cz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZv
bnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5i
c3A7Jm5ic3A7Jm5ic3A7IGxlYWYgb3V0cHV0LWJ5dGVzIHs8L3NwYW4+PG86cD48L286cD48L3A+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4g
c3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZx
dW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHR5cGUgdWludDY0Ozwvc3Bhbj48
bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFj
ZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1
Y2lkYSBDb25zb2xlJnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZGVzY3Jp
cHRpb248L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i
dGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZh
bWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZxdW90O051bWJlciBvZiBieXRlcyB0cmFuc21pdHRlZCBmcm9t
IHF1ZXVlICZxdW90Ozs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
IiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBw
dDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5i
c3A7IH08L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i
dGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZh
bWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxlYWYg
cXVldWUtc2l6ZS1wa3RzIHs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4
LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7IHR5cGUgdWludDY0Ozwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25zb2xlJnF1b3Q7
Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZGVzY3JpcHRpb248L3NwYW4+PG86cD48
L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9u
ZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEg
Q29uc29sZSZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZxdW90O051bWJl
ciBvZiBwYWNrZXRzIGN1cnJlbnRseSBidWZmZXJlZCAmcXVvdDs7PC9zcGFuPjxvOnA+PC9vOnA+
PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxz
cGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNv
bGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyB9PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxl
PSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsi
PiZuYnNwOyZuYnNwOyZuYnNwOyAvKiBldGMuICovPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxl
PSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsi
PiZuYnNwOyB9PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb1BsYWluVGV4dCI+
QWR2YW50YWdlOiBUaGlzIHJlZHVjZXMgdGhlIG51bWJlciBvZiBvcHRpb25hbCBmZWF0dXJlcyBp
biB0aGUgbW9kZWwuPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvUGxhaW5UZXh0Ij5EaXNh
ZHZhbnRhZ2U6IFRoZSBvdXRwdXQgdGhhdCBpbmRpY2F0ZXMgd2hpY2ggY291bnRlcnMgYXJlIHN1
cHBvcnRlZCBtaWdodCBiZSB0b28gdmVyYm9zZSB0byBiZSB1c2VyIGZyaWVuZGx5LiZuYnNwOyBU
aGlzIGlzIG5vdCBZQU5H4oCZcyBzdGFuZGFyZCBhcHByb2FjaCB0byBtYWtlIGEgc3RhdGVtZW50
IGNvbmRpdGlvbmFsLjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb1BsYWluVGV4dCI+Jm5i
c3A7PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvUGxhaW5UZXh0Ij5PcHRpb24gMzogRGVm
aW5lIGEgbGVhZiBvZiB0aGUgdHlwZSBpbnRlZ2VyLCB3aGVyZSBlYWNoIGJpdCBpbiB0aGUgaW50
ZWdlciBpbmRpY2F0ZXMgdGhhdCBhIHBhcnRpY3VsYXIgY291bnRlciBpcyBzdXBwb3J0ZWQuPG86
cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvUGxhaW5UZXh0Ij5FeGFtcGxlOjxvOnA+PC9vOnA+
PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxz
cGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNv
bGUmcXVvdDsiPiZuYnNwOyBjb250YWluZXIgcXVldWluZy1zdGF0aXN0aWNzLW9wdC0zIHs8L3Nw
YW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRv
c3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVv
dDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7IGNvbmZpZyBmYWxzZTs8
L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1h
dXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTom
cXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7IGRlc2NyaXB0aW9u
PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQt
YXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6
JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyAmcXVvdDtxdWV1ZSByZWxhdGVkIHN0YXRpc3RpY3MgJnF1b3Q7Ozwvc3Bhbj48bzpwPjwvbzpw
PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25z
b2xlJnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsNCjxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5kOnll
bGxvdzttc28taGlnaGxpZ2h0OnllbGxvdyI+bGVhZiBzdXBwb3J0ZWQtY291bnRlcnMgezwvc3Bh
bj48L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4
dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWls
eTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OztiYWNrZ3JvdW5kOnllbGxvdzttc28taGlnaGxp
Z2h0OnllbGxvdyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHR5cGUgdWludDMyOzwv
c3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1
dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZx
dW90O0x1Y2lkYSBDb25zb2xlJnF1b3Q7O2JhY2tncm91bmQ6eWVsbG93O21zby1oaWdobGlnaHQ6
eWVsbG93Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZGVzY3JpcHRpb248L3NwYW4+
PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRvc3Bh
Y2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVvdDtM
dWNpZGEgQ29uc29sZSZxdW90OztiYWNrZ3JvdW5kOnllbGxvdzttc28taGlnaGxpZ2h0OnllbGxv
dyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZxdW90O0JpdCAw
IGluZGljYXRlcyB3aGV0aGVyIG91dHB1dC1wa3RzIGNvdW50ZXIgaXMgc3VwcG9ydGVkPC9zcGFu
PjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3Nw
YWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7
THVjaWRhIENvbnNvbGUmcXVvdDs7YmFja2dyb3VuZDp5ZWxsb3c7bXNvLWhpZ2hsaWdodDp5ZWxs
b3ciPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBCaXQg
MSBpbmRpY2F0ZXMgd2hldGhlciBvdXRwdXQtYnl0ZXMgY291bnRlciBpcyBzdXBwb3J0ZWQ8L3Nw
YW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRv
c3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVv
dDtMdWNpZGEgQ29uc29sZSZxdW90OztiYWNrZ3JvdW5kOnllbGxvdzttc28taGlnaGxpZ2h0Onll
bGxvdyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IEJp
dCAyIGluZGljYXRlcyB3aGV0aGVyIHF1ZXVlLXNpemUtcGt0cyBjb3VudGVyIGlzIHN1cHBvcnRl
ZCZxdW90Ozs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHls
ZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250
LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OztiYWNrZ3JvdW5kOnllbGxvdzttc28t
aGlnaGxpZ2h0OnllbGxvdyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7IH08L3NwYW4+PG86cD48L286cD48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNw
YW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29s
ZSZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7IGxlYWYgb3V0cHV0LXBrdHMgezwvc3Bhbj48bzpw
PjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpu
b25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lk
YSBDb25zb2xlJnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdHlwZSB1aW50
NjQ7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRl
eHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1p
bHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyBkZXNjcmlwdGlvbjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjgu
MHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25zb2xlJnF1b3Q7Ij4mbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJnF1b3Q7TnVtYmVyIG9mIHBhY2tldHMgdHJh
bnNtaXR0ZWQgZnJvbSBxdWV1ZSAmcXVvdDs7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJm
b250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZu
YnNwOyZuYnNwOyZuYnNwOyB9PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6
OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNw
OyZuYnNwOyBsZWFmIG91dHB1dC1ieXRlcyB7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJm
b250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB0eXBlIHVpbnQ2NDs8L3NwYW4+PG86cD48L286
cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29u
c29sZSZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGRlc2NyaXB0aW9uPC9z
cGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0
b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyAmcXVvdDtOdW1iZXIgb2YgYnl0ZXMgdHJhbnNtaXR0ZWQgZnJvbSBxdWV1ZSAm
cXVvdDs7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9
InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyB9PC9z
cGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0
b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyBsZWFmIHF1ZXVlLXNp
emUtcGt0cyB7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5
bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9u
dC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyB0eXBlIHVpbnQ2NDs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIiBzdHlsZT0idGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQt
c2l6ZTo4LjBwdDtmb250LWZhbWlseTomcXVvdDtMdWNpZGEgQ29uc29sZSZxdW90OyI+Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGRlc2NyaXB0aW9uPC9zcGFuPjxvOnA+PC9vOnA+PC9w
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9InRleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFu
IHN0eWxlPSJmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7THVjaWRhIENvbnNvbGUm
cXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmcXVvdDtOdW1iZXIgb2YgcGFj
a2V0cyBjdXJyZW50bHkgYnVmZmVyZWQgJnF1b3Q7Ozwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJ0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0x1Y2lkYSBDb25zb2xlJnF1b3Q7
Ij4mbmJzcDsmbmJzcDsmbmJzcDsgfTwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJN
c29QbGFpblRleHQiPkFkdmFudGFnZTogVGhlIG91dHB1dCwgaW4gdGhlIGZvcm0gb2YgYSBzaW5n
bGUgaW50ZWdlciwgdGhhdCBpbmRpY2F0ZXMgd2hpY2ggY291bnRlcnMgYXJlIHN1cHBvcnRlZCBp
cyBjb21wYWN0LjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb1BsYWluVGV4dCI+RGlzYWR2
YW50YWdlOiBUaGUgbW9kZWwgaXMgdmFndWUvaW1wbGljaXQtLS10aGUgbWVhbmluZyBvZiBlYWNo
IGJpdCBpbiBzdXBwb3J0ZWQtY291bnRlcnMgaXMgZW1iZWRkZWQgaW4gdGhlIGRlc2NyaXB0aW9u
LCByYXRoZXIgdGhhbiBtb2RlbGVkIGV4cGxpY2l0bHkuJm5ic3A7IFRoaXMgaXMgYWxzbyBub3Qg
WUFOR+KAmXMgc3RhbmRhcmQgYXBwcm9hY2ggdG8gbWFrZSBhIHN0YXRlbWVudCBjb25kaXRpb25h
bC48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29QbGFpblRleHQiPiZuYnNwOzxvOnA+PC9v
OnA+PC9wPg0KPHAgY2xhc3M9Ik1zb1BsYWluVGV4dCI+VGhhbmtzLDxvOnA+PC9vOnA+PC9wPg0K
PHAgY2xhc3M9Ik1zb1BsYWluVGV4dCI+SGVsZW48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJN
c29QbGFpblRleHQiPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb1BsYWluVGV4
dCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvYm9keT4NCjwvaHRtbD4NCg==

--_000_5FACD324EF4640BDB7E62F546D31A1A4junipernet_--


From nobody Wed Aug 16 22:06:54 2017
Return-Path: <j.schoenwaelder@jacobs-university.de>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1989C124E15 for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 22:06:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level: 
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id syLsJBMmFVSz for <yang-doctors@ietfa.amsl.com>; Wed, 16 Aug 2017 22:06:50 -0700 (PDT)
Received: from atlas5.jacobs-university.de (atlas5.jacobs-university.de [212.201.44.20]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 71A001201F8 for <yang-doctors@ietf.org>; Wed, 16 Aug 2017 22:06:50 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas5.jacobs-university.de (Postfix) with ESMTP id EB9EC375; Thu, 17 Aug 2017 07:06:48 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas5.jacobs-university.de ([10.70.0.217]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10032) with ESMTP id NhIy_YsOeswJ; Thu, 17 Aug 2017 07:06:47 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas5.jacobs-university.de (Postfix) with ESMTPS; Thu, 17 Aug 2017 07:06:48 +0200 (CEST)
Received: from localhost (demetrius4.jacobs-university.de [212.201.44.49]) by hermes.jacobs-university.de (Postfix) with ESMTP id CBD13200C5; Thu, 17 Aug 2017 07:06:48 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius4.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id LOpHmMNubAdF; Thu, 17 Aug 2017 07:06:48 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 7026E200C3; Thu, 17 Aug 2017 07:06:48 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 2EA064040F34; Thu, 17 Aug 2017 07:06:48 +0200 (CEST)
Date: Thu, 17 Aug 2017 07:06:48 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Ing-Wher Chen <Ing-Wher_Chen@jabil.com>
Cc: "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Message-ID: <20170817050647.apfeuvfhfw23ws6n@elstar.local>
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
Mail-Followup-To: Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com>
User-Agent: NeoMutt/20170714 (1.8.3)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/g5X5iD5Ttt1V7R7mJgjzo8dPRdg>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 05:06:53 -0000

On Wed, Aug 16, 2017 at 06:09:27PM +0000, Ing-Wher Chen wrote:
> Hello YANG doctors,
> 
> We wish to define a YANG model with several counters.  The counters that we wish to model are the union of all the counters supported by our sample of vendors.  This means that the model will define some counters supported by both vendor_1 and vendor_2 (or more), but some counters will be supported only by one of the vendors.  We would like the model to allow each vendor to indicate the counters it supports.
> 
> We can think of 3 approaches below, and would like your feedback regarding which approach we should choose.  We're also open to suggestions of other approaches.
> 
> Option 1: Define an optional feature (if-feature) for each counter.
> 
> Option 2: Define a leaf of the type bits, where each bit indicates that a particular counter is supported.
> 
> Option 3: Define a leaf of the type integer, where each bit in the integer indicates that a particular counter is supported.
> 

Let me add:

Option 4: Vendors publish deviations that document how they deviate from
the standard.

Advantage: This is the standard approach built into the language to document
how an implementation deviates from a standard.

Disadvantage: Vendors do not like to document deviations, hence they
like to see every little counter as a feature.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Thu Aug 17 01:07:51 2017
Return-Path: <janl@tail-f.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 47259132644 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 01:07:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level: 
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id vXJF73mDPQwz for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 01:07:48 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id A4884132397 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 01:07:48 -0700 (PDT)
Received: from [10.147.40.126] (unknown [173.38.220.53]) by mail.tail-f.com (Postfix) with ESMTPSA id 8A6AE1AE01AA; Thu, 17 Aug 2017 10:07:47 +0200 (CEST)
Content-Type: text/plain; charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
From: Jan Lindblad <janl@tail-f.com>
In-Reply-To: <20170817050647.apfeuvfhfw23ws6n@elstar.local>
Date: Thu, 17 Aug 2017 10:07:44 +0200
Cc: "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local>
To: Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
X-Mailer: Apple Mail (2.3273)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/UZBkI-VfhFndZVq8PP77AxajPIg>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 08:07:50 -0000

>> Hello YANG doctors,
>>=20
>> We wish to define a YANG model with several counters.  The counters =
that we wish to model are the union of all the counters supported by our =
sample of vendors.  This means that the model will define some counters =
supported by both vendor_1 and vendor_2 (or more), but some counters =
will be supported only by one of the vendors.  We would like the model =
to allow each vendor to indicate the counters it supports.
>>=20
>> We can think of 3 approaches below, and would like your feedback =
regarding which approach we should choose.  We're also open to =
suggestions of other approaches.
>>=20
>> Option 1: Define an optional feature (if-feature) for each counter.
>>=20
>> Option 2: Define a leaf of the type bits, where each bit indicates =
that a particular counter is supported.
>>=20
>> Option 3: Define a leaf of the type integer, where each bit in the =
integer indicates that a particular counter is supported.
>>=20
>=20
> Let me add:
>=20
> Option 4: Vendors publish deviations that document how they deviate =
from
> the standard.
>=20
> Advantage: This is the standard approach built into the language to =
document
> how an implementation deviates from a standard.
>=20
> Disadvantage: Vendors do not like to document deviations, hence they
> like to see every little counter as a feature.

Disadvantage (fundamental) with deviations: Application developers who =
are adopting standard YANG models (yay!) as their southbound interface =
have no way of knowing which deviations vendors will release on their =
devices. So their applications will typically fail when things they =
count on isn't supported or is supported differently. When standard YANG =
models have if-feature statements, reasonably prudent application =
developers will build applications prepared for the case that some =
information might not be there.=20

Conclusion: deviations are very bad (ambush) for the uptake of standard =
YANG models.


Option 5: Let each implementation return the data it supports without =
any content declaration

Since this is optional operational data, it's formally up to the =
application to simply return any collected data it has and skip any =
other leafs.

Advantage: Dead simple to understand for server and client alike, and =
zero complication on the YANG level. IMO cleaner and clearer than =
options 2, 3, 4. Even if any of the options 2-4 were implemented, the =
client would still have to be prepared to not receive any particular =
leaf since they are all optional. If I implemented the client, I =
probably wouldn't even bother to read that bit mask/whatever.

Disadvantage: Application developers will have no way of knowing a =
priori which data may arrive from a particular server. If this is =
important, option 1 would clearly be better.

/jan


From nobody Thu Aug 17 01:17:12 2017
Return-Path: <mbj@tail-f.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B4C8A132386 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 01:17:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5x6sX3hDdbvB for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 01:17:09 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id E6B37132646 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 01:17:08 -0700 (PDT)
Received: from localhost (unknown [173.38.220.57]) by mail.tail-f.com (Postfix) with ESMTPSA id A5F8D1AE01AA; Thu, 17 Aug 2017 10:17:07 +0200 (CEST)
Date: Thu, 17 Aug 2017 10:15:38 +0200 (CEST)
Message-Id: <20170817.101538.940975913472361160.mbj@tail-f.com>
To: janl@tail-f.com
Cc: Ing-Wher_Chen@jabil.com, j.schoenwaelder@jacobs-university.de, yang-doctors@ietf.org, nstrahle@juniper.net, asechoud@cisco.com
From: Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com>
X-Mailer: Mew version 6.7 on Emacs 24.5 / Mule 6.0 (HANACHIRUSATO)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/aXgc2E6_4qCyHUHvda9KLBzR0BA>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 08:17:11 -0000

Jan Lindblad <janl@tail-f.com> wrote:
> Option 5: Let each implementation return the data it supports without
> any content declaration
> 
> Since this is optional operational data, it's formally up to the
> application to simply return any collected data it has and skip any
> other leafs.

I was just going to suggest this as well.  I think the description
statement can make it clear that if the implementation doesn't have a
value for the counter, the node is not instantiated.  (note that this
is slightly different from saying that the node is not implemented;
the instrumentation code would know the names of all counters, but
not instantiate all of them, rather than just know the names of the
ones it "supports".)


/martin


> Advantage: Dead simple to understand for server and client alike, and
> zero complication on the YANG level. IMO cleaner and clearer than
> options 2, 3, 4. Even if any of the options 2-4 were implemented, the
> client would still have to be prepared to not receive any particular
> leaf since they are all optional. If I implemented the client, I
> probably wouldn't even bother to read that bit mask/whatever.
> 
> Disadvantage: Application developers will have no way of knowing a
> priori which data may arrive from a particular server. If this is
> important, option 1 would clearly be better.


From nobody Thu Aug 17 01:37:47 2017
Return-Path: <j.schoenwaelder@jacobs-university.de>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 27A3B132418 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 01:37:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level: 
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TrY17ygHPJYA for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 01:37:43 -0700 (PDT)
Received: from atlas5.jacobs-university.de (atlas5.jacobs-university.de [212.201.44.20]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1EB94132397 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 01:37:43 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas5.jacobs-university.de (Postfix) with ESMTP id ED96AEC1; Thu, 17 Aug 2017 10:37:41 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas5.jacobs-university.de ([10.70.0.217]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10032) with ESMTP id Ghh0L0Kri874; Thu, 17 Aug 2017 10:37:41 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas5.jacobs-university.de (Postfix) with ESMTPS; Thu, 17 Aug 2017 10:37:41 +0200 (CEST)
Received: from localhost (demetrius3.jacobs-university.de [212.201.44.48]) by hermes.jacobs-university.de (Postfix) with ESMTP id CAA36200C5; Thu, 17 Aug 2017 10:37:41 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius3.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id 9ombbmK3zVoP; Thu, 17 Aug 2017 10:37:41 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id D105B200C3; Thu, 17 Aug 2017 10:37:40 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id C3423404141C; Thu, 17 Aug 2017 10:37:39 +0200 (CEST)
Date: Thu, 17 Aug 2017 10:37:39 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Jan Lindblad <janl@tail-f.com>
Cc: Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Message-ID: <20170817083739.u4vfbtkm34vf5utw@elstar.local>
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
Mail-Followup-To: Jan Lindblad <janl@tail-f.com>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com>
User-Agent: NeoMutt/20170714 (1.8.3)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/ouUay5hnhFStBN2mYzsIirAWki8>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 08:37:46 -0000

On Thu, Aug 17, 2017 at 10:07:44AM +0200, Jan Lindblad wrote:
> >> Hello YANG doctors,
> >> 
> >> We wish to define a YANG model with several counters.  The counters that we wish to model are the union of all the counters supported by our sample of vendors.  This means that the model will define some counters supported by both vendor_1 and vendor_2 (or more), but some counters will be supported only by one of the vendors.  We would like the model to allow each vendor to indicate the counters it supports.
> >> 
> >> We can think of 3 approaches below, and would like your feedback regarding which approach we should choose.  We're also open to suggestions of other approaches.
> >> 
> >> Option 1: Define an optional feature (if-feature) for each counter.
> >> 
> >> Option 2: Define a leaf of the type bits, where each bit indicates that a particular counter is supported.
> >> 
> >> Option 3: Define a leaf of the type integer, where each bit in the integer indicates that a particular counter is supported.
> >> 
> > 
> > Let me add:
> > 
> > Option 4: Vendors publish deviations that document how they deviate from
> > the standard.
> > 
> > Advantage: This is the standard approach built into the language to document
> > how an implementation deviates from a standard.
> > 
> > Disadvantage: Vendors do not like to document deviations, hence they
> > like to see every little counter as a feature.
> 
> Disadvantage (fundamental) with deviations: Application developers who are adopting standard YANG models (yay!) as their southbound interface have no way of knowing which deviations vendors will release on their devices. So their applications will typically fail when things they count on isn't supported or is supported differently. When standard YANG models have if-feature statements, reasonably prudent application developers will build applications prepared for the case that some information might not be there. 
> 
> Conclusion: deviations are very bad (ambush) for the uptake of standard YANG models.
> 
> 
> Option 5: Let each implementation return the data it supports without any content declaration
> 
> Since this is optional operational data, it's formally up to the application to simply return any collected data it has and skip any other leafs.
> 
> Advantage: Dead simple to understand for server and client alike, and zero complication on the YANG level. IMO cleaner and clearer than options 2, 3, 4. Even if any of the options 2-4 were implemented, the client would still have to be prepared to not receive any particular leaf since they are all optional. If I implemented the client, I probably wouldn't even bother to read that bit mask/whatever.
> 
> Disadvantage: Application developers will have no way of knowing a priori which data may arrive from a particular server. If this is important, option 1 would clearly be better.
>

I fail to see why #5 is any better than #4.

I believe a feature for every counter is a misuse of YANG feature
statements, it will get horribly ugly. I recently observe an increase
of feature statement usage in order to accomodate server
implementations and the ultimate solution is a feature statement for
every leaf, list, rpc, action, notification and perhaps even certain
value sets. This is ridiculous, but a feature for every counter is
getting damn close to it.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Thu Aug 17 04:02:54 2017
Return-Path: <janl@tail-f.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0BE4D124207 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 04:02:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id OiuzJyEGeAL2 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 04:02:49 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id 7C4761200B9 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 04:02:49 -0700 (PDT)
Received: from [10.147.40.126] (unknown [173.38.220.53]) by mail.tail-f.com (Postfix) with ESMTPSA id 6B5C21AE01AA; Thu, 17 Aug 2017 13:02:47 +0200 (CEST)
From: Jan Lindblad <janl@tail-f.com>
Message-Id: <6991455A-91A6-42A6-86A6-F19A95BCD133@tail-f.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_86244D9D-2716-4083-95B8-D084D70E055F"
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
Date: Thu, 17 Aug 2017 13:02:44 +0200
In-Reply-To: <20170817083739.u4vfbtkm34vf5utw@elstar.local>
Cc: Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local>
X-Mailer: Apple Mail (2.3273)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/a9lEQj15psr3dgaaWv-cl45F-0U>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 11:02:52 -0000

--Apple-Mail=_86244D9D-2716-4083-95B8-D084D70E055F
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

>>>> Hello YANG doctors,
>>>>=20
>>>> We wish to define a YANG model with several counters.  The counters =
that we wish to model are the union of all the counters supported by our =
sample of vendors.  This means that the model will define some counters =
supported by both vendor_1 and vendor_2 (or more), but some counters =
will be supported only by one of the vendors.  We would like the model =
to allow each vendor to indicate the counters it supports.
>>>>=20
>>>> We can think of 3 approaches below, and would like your feedback =
regarding which approach we should choose.  We're also open to =
suggestions of other approaches.
>>>>=20
>>>> Option 1: Define an optional feature (if-feature) for each counter.
>>>>=20
>>>> Option 2: Define a leaf of the type bits, where each bit indicates =
that a particular counter is supported.
>>>>=20
>>>> Option 3: Define a leaf of the type integer, where each bit in the =
integer indicates that a particular counter is supported.
>>>>=20
>>>=20
>>> Let me add:
>>>=20
>>> Option 4: Vendors publish deviations that document how they deviate =
from
>>> the standard.
>>>=20
>>> Advantage: This is the standard approach built into the language to =
document
>>> how an implementation deviates from a standard.
>>>=20
>>> Disadvantage: Vendors do not like to document deviations, hence they
>>> like to see every little counter as a feature.
>>=20
>> Disadvantage (fundamental) with deviations: Application developers =
who are adopting standard YANG models (yay!) as their southbound =
interface have no way of knowing which deviations vendors will release =
on their devices. So their applications will typically fail when things =
they count on isn't supported or is supported differently. When standard =
YANG models have if-feature statements, reasonably prudent application =
developers will build applications prepared for the case that some =
information might not be there.=20
>>=20
>> Conclusion: deviations are very bad (ambush) for the uptake of =
standard YANG models.
>>=20
>>=20
>> Option 5: Let each implementation return the data it supports without =
any content declaration
>>=20
>> Since this is optional operational data, it's formally up to the =
application to simply return any collected data it has and skip any =
other leafs.
>>=20
>> Advantage: Dead simple to understand for server and client alike, and =
zero complication on the YANG level. IMO cleaner and clearer than =
options 2, 3, 4. Even if any of the options 2-4 were implemented, the =
client would still have to be prepared to not receive any particular =
leaf since they are all optional. If I implemented the client, I =
probably wouldn't even bother to read that bit mask/whatever.
>>=20
>> Disadvantage: Application developers will have no way of knowing a =
priori which data may arrive from a particular server. If this is =
important, option 1 would clearly be better.
>>=20
>=20
> I fail to see why #5 is any better than #4.
>=20
> I believe a feature for every counter is a misuse of YANG feature
> statements, it will get horribly ugly. I recently observe an increase
> of feature statement usage in order to accomodate server
> implementations and the ultimate solution is a feature statement for
> every leaf, list, rpc, action, notification and perhaps even certain
> value sets. This is ridiculous, but a feature for every counter is
> getting damn close to it.

Agreed, but "a feature for every counter" is option #1. There are no =
if-features in option #5, there's only reliance on leafs being optional =
and abstention from inventing local protocols based on the description =
field.

The problem with #4 is that many clients faithfully implementing =
applications based on the advertised, standard model will break. To fix =
the breakage requires after the fact programmer intervention. Not very =
software-defined. The long term effect is that application developers =
ignore standard models since custom adaptation to each device's =
implementation is required anyway, if deviations are used more than very =
occasionally.

/jan


--Apple-Mail=_86244D9D-2716-4083-95B8-D084D70E055F
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=us-ascii

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dus-ascii"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div><blockquote type=3D"cite" class=3D""><div =
class=3D""><blockquote type=3D"cite" style=3D"font-family: =
TimesNewRomanPSMT; font-size: 14px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;" =
class=3D""><blockquote type=3D"cite" class=3D""><blockquote type=3D"cite" =
class=3D"">Hello YANG doctors,<br class=3D""><br class=3D"">We wish to =
define a YANG model with several counters. &nbsp;The counters that we =
wish to model are the union of all the counters supported by our sample =
of vendors. &nbsp;This means that the model will define some counters =
supported by both vendor_1 and vendor_2 (or more), but some counters =
will be supported only by one of the vendors. &nbsp;We would like the =
model to allow each vendor to indicate the counters it supports.<br =
class=3D""><br class=3D"">We can think of 3 approaches below, and would =
like your feedback regarding which approach we should choose. =
&nbsp;We're also open to suggestions of other approaches.<br =
class=3D""><br class=3D"">Option 1: Define an optional feature =
(if-feature) for each counter.<br class=3D""><br class=3D"">Option 2: =
Define a leaf of the type bits, where each bit indicates that a =
particular counter is supported.<br class=3D""><br class=3D"">Option 3: =
Define a leaf of the type integer, where each bit in the integer =
indicates that a particular counter is supported.<br class=3D""><br =
class=3D""></blockquote><br class=3D"">Let me add:<br class=3D""><br =
class=3D"">Option 4: Vendors publish deviations that document how they =
deviate from<br class=3D"">the standard.<br class=3D""><br =
class=3D"">Advantage: This is the standard approach built into the =
language to document<br class=3D"">how an implementation deviates from a =
standard.<br class=3D""><br class=3D"">Disadvantage: Vendors do not like =
to document deviations, hence they<br class=3D"">like to see every =
little counter as a feature.<br class=3D""></blockquote><br =
class=3D"">Disadvantage (fundamental) with deviations: Application =
developers who are adopting standard YANG models (yay!) as their =
southbound interface have no way of knowing which deviations vendors =
will release on their devices. So their applications will typically fail =
when things they count on isn't supported or is supported differently. =
When standard YANG models have if-feature statements, reasonably prudent =
application developers will build applications prepared for the case =
that some information might not be there.<span =
class=3D"Apple-converted-space">&nbsp;</span><br class=3D""><br =
class=3D"">Conclusion: deviations are very bad (ambush) for the uptake =
of standard YANG models.<br class=3D""><br class=3D""><br =
class=3D"">Option 5: Let each implementation return the data it supports =
without any content declaration<br class=3D""><br class=3D"">Since this =
is optional operational data, it's formally up to the application to =
simply return any collected data it has and skip any other leafs.<br =
class=3D""><br class=3D"">Advantage: Dead simple to understand for =
server and client alike, and zero complication on the YANG level. IMO =
cleaner and clearer than options 2, 3, 4. Even if any of the options 2-4 =
were implemented, the client would still have to be prepared to not =
receive any particular leaf since they are all optional. If I =
implemented the client, I probably wouldn't even bother to read that bit =
mask/whatever.<br class=3D""><br class=3D"">Disadvantage: Application =
developers will have no way of knowing a priori which data may arrive =
from a particular server. If this is important, option 1 would clearly =
be better.<br class=3D""><br class=3D""></blockquote><br =
style=3D"font-family: TimesNewRomanPSMT; font-size: 14px; font-style: =
normal; font-variant-caps: normal; font-weight: normal; letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: TimesNewRomanPSMT; font-size: =
14px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">I fail to see why #5 is any better than =
#4.</span><br style=3D"font-family: TimesNewRomanPSMT; font-size: 14px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family: =
TimesNewRomanPSMT; font-size: 14px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: TimesNewRomanPSMT; font-size: =
14px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">I believe a feature for every counter is a =
misuse of YANG feature</span><br style=3D"font-family: =
TimesNewRomanPSMT; font-size: 14px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: TimesNewRomanPSMT; font-size: =
14px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">statements, it will get horribly ugly. I =
recently observe an increase</span><br style=3D"font-family: =
TimesNewRomanPSMT; font-size: 14px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: TimesNewRomanPSMT; font-size: =
14px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">of feature statement usage in order to =
accomodate server</span><br style=3D"font-family: TimesNewRomanPSMT; =
font-size: 14px; font-style: normal; font-variant-caps: normal; =
font-weight: normal; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><span =
style=3D"font-family: TimesNewRomanPSMT; font-size: 14px; font-style: =
normal; font-variant-caps: normal; font-weight: normal; letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
float: none; display: inline !important;" class=3D"">implementations and =
the ultimate solution is a feature statement for</span><br =
style=3D"font-family: TimesNewRomanPSMT; font-size: 14px; font-style: =
normal; font-variant-caps: normal; font-weight: normal; letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: TimesNewRomanPSMT; font-size: =
14px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">every leaf, list, rpc, action, notification and =
perhaps even certain</span><br style=3D"font-family: TimesNewRomanPSMT; =
font-size: 14px; font-style: normal; font-variant-caps: normal; =
font-weight: normal; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=3D""><span =
style=3D"font-family: TimesNewRomanPSMT; font-size: 14px; font-style: =
normal; font-variant-caps: normal; font-weight: normal; letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
float: none; display: inline !important;" class=3D"">value sets. This is =
ridiculous, but a feature for every counter is</span><br =
style=3D"font-family: TimesNewRomanPSMT; font-size: 14px; font-style: =
normal; font-variant-caps: normal; font-weight: normal; letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: TimesNewRomanPSMT; font-size: =
14px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">getting damn close to it.</span><br =
style=3D"font-family: TimesNewRomanPSMT; font-size: 14px; font-style: =
normal; font-variant-caps: normal; font-weight: normal; letter-spacing: =
normal; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""></div></blockquote><div><br class=3D""></div><div>Agreed, but =
"<span style=3D"font-family: TimesNewRomanPSMT;" class=3D"">a feature =
for every counter" is option #1. There are no if-features in option #5, =
there's only reliance on leafs being optional and abstention from =
inventing local protocols based on the description =
field.</span></div><div><span style=3D"font-family: TimesNewRomanPSMT;" =
class=3D""><br class=3D""></span></div><div><font =
face=3D"TimesNewRomanPSMT" class=3D"">The problem with #4 is that many =
clients faithfully implementing applications based on the advertised, =
standard model will break. To fix the breakage requires after the fact =
programmer intervention. Not very software-defined. The long term effect =
is that application developers ignore standard models since custom =
adaptation to each device's implementation is required anyway, if =
deviations are used more than very occasionally.</font></div><div><br =
class=3D""></div><div>/jan</div><div><br =
class=3D""></div></div></body></html>=

--Apple-Mail=_86244D9D-2716-4083-95B8-D084D70E055F--


From nobody Thu Aug 17 05:05:04 2017
Return-Path: <j.schoenwaelder@jacobs-university.de>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 59D4D132026 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 05:05:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level: 
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Wt1AuWJL-YCW for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 05:04:55 -0700 (PDT)
Received: from atlas5.jacobs-university.de (atlas5.jacobs-university.de [212.201.44.20]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D4CE61204DA for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 05:04:54 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas5.jacobs-university.de (Postfix) with ESMTP id AF43DEC1; Thu, 17 Aug 2017 14:04:53 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas5.jacobs-university.de ([10.70.0.217]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10032) with ESMTP id dl7tJA5fOKwp; Thu, 17 Aug 2017 14:04:53 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas5.jacobs-university.de (Postfix) with ESMTPS; Thu, 17 Aug 2017 14:04:53 +0200 (CEST)
Received: from localhost (demetrius1.jacobs-university.de [212.201.44.46]) by hermes.jacobs-university.de (Postfix) with ESMTP id 8E021200C8; Thu, 17 Aug 2017 14:04:53 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius1.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id gXWGXtubokPI; Thu, 17 Aug 2017 14:04:53 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 05171200C5; Thu, 17 Aug 2017 14:04:52 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id C215240417E7; Thu, 17 Aug 2017 14:04:51 +0200 (CEST)
Date: Thu, 17 Aug 2017 14:04:51 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Jan Lindblad <janl@tail-f.com>
Cc: Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Message-ID: <20170817120451.syz54lblctjitbm7@elstar.local>
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
Mail-Followup-To: Jan Lindblad <janl@tail-f.com>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <6991455A-91A6-42A6-86A6-F19A95BCD133@tail-f.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <6991455A-91A6-42A6-86A6-F19A95BCD133@tail-f.com>
User-Agent: NeoMutt/20170714 (1.8.3)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/PHwDJaLA5P6z11Fh2qrJ5nYfDS4>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 12:05:02 -0000

On Thu, Aug 17, 2017 at 01:02:44PM +0200, Jan Lindblad wrote:
> 
> The problem with #4 is that many clients faithfully implementing applications based on the advertised, standard model will break. To fix the breakage requires after the fact programmer intervention. Not very software-defined. The long term effect is that application developers ignore standard models since custom adaptation to each device's implementation is required anyway, if deviations are used more than very occasionally.
>

I again fail to see the difference here between #4 and #5. Simple
clients will fail in the same way. Option #4 allows smarter clients
that are able to determine upfront that they won't work with a certain
server.

Perhaps your logic is that a smarter client will still have to expect
that a server is not entirely implementing a model (i.e., doing #5)
with out documenting this, and hence since the smarter client has to
expect some servers to be 'incomplete' anyway you can equally well
expect all of them to be 'incomplete' and skip the effort to decide
upfront whether a server implements a model 'complete enough' for the
client to work.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Thu Aug 17 05:40:59 2017
Return-Path: <janl@tail-f.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3C1881323AC for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 05:40:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level: 
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id rPiCemPleeoB for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 05:40:56 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id 6D9B1132391 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 05:40:56 -0700 (PDT)
Received: from [10.147.40.126] (unknown [173.38.220.53]) by mail.tail-f.com (Postfix) with ESMTPSA id 376431AE01AA; Thu, 17 Aug 2017 14:40:54 +0200 (CEST)
Content-Type: text/plain; charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
From: Jan Lindblad <janl@tail-f.com>
In-Reply-To: <20170817120451.syz54lblctjitbm7@elstar.local>
Date: Thu, 17 Aug 2017 14:40:51 +0200
Cc: Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <3EA7384C-2D5D-4C00-8479-75277389DE5B@tail-f.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <6991455A-91A6-42A6-86A6-F19A95BCD133@tail-f.com> <20170817120451.syz54lblctjitbm7@elstar.local>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
X-Mailer: Apple Mail (2.3273)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/bXFUG6S0kB1S7yKmCkUJbFk0UY8>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 12:40:58 -0000

>> The problem with #4 is that many clients faithfully implementing =
applications based on the advertised, standard model will break. To fix =
the breakage requires after the fact programmer intervention. Not very =
software-defined. The long term effect is that application developers =
ignore standard models since custom adaptation to each device's =
implementation is required anyway, if deviations are used more than very =
occasionally.
>=20
> I again fail to see the difference here between #4 and #5. Simple
> clients will fail in the same way. Option #4 allows smarter clients
> that are able to determine upfront that they won't work with a certain
> server.
>=20
> Perhaps your logic is that a smarter client will still have to expect
> that a server is not entirely implementing a model (i.e., doing #5)
> with out documenting this, and hence since the smarter client has to
> expect some servers to be 'incomplete' anyway you can equally well
> expect all of them to be 'incomplete' and skip the effort to decide
> upfront whether a server implements a model 'complete enough' for the
> client to work.

I think we're mostly in agreement. In this case where we only talk about =
optional config false leafs, the client will have to cope with any/all =
of them being absent in any case. Bit masks, if-feature or deviation =
not-supoprted statements are not going to change that. In that case #5 =
is the leanest solution.

I don't look at client applications the same way as you do, however. You =
think a simple client is one that would fail if the YANG is randomly =
deviated, while a smarter one would cope. In my experience, it's the =
other way around. The really simple clients are just browsers that print =
whatever they get. They don't care if something is missing, or if a leaf =
is of a different type than stated in the standard YANG. It's the smart =
clients that actually understand and use the returned information for =
complex decisions that will fail when things deviate.

Have you ever seen a smart client that can cope with randomly deviated =
YANG models, unless a programmer has intervened and created special code =
for handing that particular deviating device type? I have not.

/jan


From nobody Thu Aug 17 08:32:24 2017
Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5D42F1321C8 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 08:32:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level: 
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Yrksv3BO3-1Y for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 08:32:20 -0700 (PDT)
Received: from mail-wr0-x232.google.com (mail-wr0-x232.google.com [IPv6:2a00:1450:400c:c0c::232]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 91978132144 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 08:32:19 -0700 (PDT)
Received: by mail-wr0-x232.google.com with SMTP id y96so44135875wrc.1 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 08:32:19 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=Ln77OVG7/vwwoRLeovOPuW04s0hRnfS+Sl6Ri+hxYnE=; b=kxx5+7TUe8k2wnclnYK9ymbON8W8SIo9Feshrt/2w5i5PE6U5ChDXpw6Cbn10HdL+E iuE5orE3xiYfpaPgiu7vmiM1Catt9bi+qfJ/Wi1Gc/znG5Iws1lPhxe+KgEJxB0hxIS7 Plv2YiycrbRQgwp8haSf0BL/gy3iZS4CCmnpo4TytmmlKPGXqJS51w6bDsBLsmPP4/pF SfCrLJzztf26Kd1/0ndHlzrReZbTzoaJLj5gnZywoL7oN3jc3P64YK82pGsm97wDYQZu q30v0alPAs8bCkjWu6p3uvTTExI0FkOigZa7+wIAEmBwoBA2SjiM5ecgXJgrmytWUrwT RkYQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=Ln77OVG7/vwwoRLeovOPuW04s0hRnfS+Sl6Ri+hxYnE=; b=Sk57MbwP0X3DcCHI0ObQ3yKrdp+El+eeDMq5fKhwU53IfjpOLjYUC6cMw3Ni6PDTnL xd2MrYowkNF7FnLh3OXY66k/+PEU5gJ/Mm1FHN7Av3ubxrgcfYyyZb7wiL3SjaLjtV/Y bdH+7vqUoo3EFQaX0/BbPk+8hRPYkB0bcgcrnLCwLw0JMzd2UlN+d9tQ6utYrqvPBL89 ASuUgXIeC2DlIJ0dRzhv0J/LEHw5PdURXLlTW6+HbUUZryZbbwFdZ0ck4BnozLArHMwH Z1gpj6+w/5Fb2npHB26p/oBdF6jiLWaChRHc56KqEXO1okdZSCsZc+ck7T4T4ytcjPM6 V1rQ==
X-Gm-Message-State: AHYfb5iLQt/Mo1PCNCxA4GckCkzkVGgjWGYc0ZFmPHQgSef4K/lLuUnA QJ/4m1FZUtKrZ/losPmETUgTF9RC5M/u
X-Received: by 10.28.105.150 with SMTP id z22mr1578386wmh.22.1502983938021; Thu, 17 Aug 2017 08:32:18 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.164.129 with HTTP; Thu, 17 Aug 2017 08:32:17 -0700 (PDT)
In-Reply-To: <3EA7384C-2D5D-4C00-8479-75277389DE5B@tail-f.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <6991455A-91A6-42A6-86A6-F19A95BCD133@tail-f.com> <20170817120451.syz54lblctjitbm7@elstar.local> <3EA7384C-2D5D-4C00-8479-75277389DE5B@tail-f.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 17 Aug 2017 08:32:17 -0700
Message-ID: <CABCOCHR9ooj7VQZhqAzJkAR=9vn4C0okTDKQJ842p-Qa_2YZDg@mail.gmail.com>
To: Jan Lindblad <janl@tail-f.com>
Cc: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>,  "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>,  Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Content-Type: multipart/alternative; boundary="001a11478686bab4430556f4b7a2"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/hG1haT4piWq_y1vKYqpQzGpiRXI>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 15:32:22 -0000

--001a11478686bab4430556f4b7a2
Content-Type: text/plain; charset="UTF-8"

On Thu, Aug 17, 2017 at 5:40 AM, Jan Lindblad <janl@tail-f.com> wrote:

> >> The problem with #4 is that many clients faithfully implementing
> applications based on the advertised, standard model will break. To fix the
> breakage requires after the fact programmer intervention. Not very
> software-defined. The long term effect is that application developers
> ignore standard models since custom adaptation to each device's
> implementation is required anyway, if deviations are used more than very
> occasionally.
> >
> > I again fail to see the difference here between #4 and #5. Simple
> > clients will fail in the same way. Option #4 allows smarter clients
> > that are able to determine upfront that they won't work with a certain
> > server.
> >
> > Perhaps your logic is that a smarter client will still have to expect
> > that a server is not entirely implementing a model (i.e., doing #5)
> > with out documenting this, and hence since the smarter client has to
> > expect some servers to be 'incomplete' anyway you can equally well
> > expect all of them to be 'incomplete' and skip the effort to decide
> > upfront whether a server implements a model 'complete enough' for the
> > client to work.
>
> I think we're mostly in agreement. In this case where we only talk about
> optional config false leafs, the client will have to cope with any/all of
> them being absent in any case. Bit masks, if-feature or deviation
> not-supoprted statements are not going to change that. In that case #5 is
> the leanest solution.
>
> I don't look at client applications the same way as you do, however. You
> think a simple client is one that would fail if the YANG is randomly
> deviated, while a smarter one would cope. In my experience, it's the other
> way around. The really simple clients are just browsers that print whatever
> they get. They don't care if something is missing, or if a leaf is of a
> different type than stated in the standard YANG. It's the smart clients
> that actually understand and use the returned information for complex
> decisions that will fail when things deviate.
>
> Have you ever seen a smart client that can cope with randomly deviated
> YANG models, unless a programmer has intervened and created special code
> for handing that particular deviating device type? I have not.
>


Doesn't your client build a session-specific schema tree based on the
advertised modules?

Deviations are clearly better than just not returning anything.
They tell the client that the missing counters are not implemented as
opposed
to possibly a temporary, recoverable condition.

Deviations are known at session startup time but they can also be known in
advance.
Vendors use naming conventions to specify the platform-specific deviations.
Tools like yangcatalog.org can make this process automated and de-facto
standardized.




>
> /jan
>


Andy


>
> _______________________________________________
> yang-doctors mailing list
> yang-doctors@ietf.org
> https://www.ietf.org/mailman/listinfo/yang-doctors
>

--001a11478686bab4430556f4b7a2
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Thu, Aug 17, 2017 at 5:40 AM, Jan Lindblad <span dir=3D"ltr">&lt;<a =
href=3D"mailto:janl@tail-f.com" target=3D"_blank">janl@tail-f.com</a>&gt;</=
span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8e=
x;border-left:1px #ccc solid;padding-left:1ex">&gt;&gt; The problem with #4=
 is that many clients faithfully implementing applications based on the adv=
ertised, standard model will break. To fix the breakage requires after the =
fact programmer intervention. Not very software-defined. The long term effe=
ct is that application developers ignore standard models since custom adapt=
ation to each device&#39;s implementation is required anyway, if deviations=
 are used more than very occasionally.<br>
&gt;<br>
&gt; I again fail to see the difference here between #4 and #5. Simple<br>
&gt; clients will fail in the same way. Option #4 allows smarter clients<br=
>
&gt; that are able to determine upfront that they won&#39;t work with a cer=
tain<br>
&gt; server.<br>
&gt;<br>
&gt; Perhaps your logic is that a smarter client will still have to expect<=
br>
&gt; that a server is not entirely implementing a model (i.e., doing #5)<br=
>
&gt; with out documenting this, and hence since the smarter client has to<b=
r>
&gt; expect some servers to be &#39;incomplete&#39; anyway you can equally =
well<br>
&gt; expect all of them to be &#39;incomplete&#39; and skip the effort to d=
ecide<br>
&gt; upfront whether a server implements a model &#39;complete enough&#39; =
for the<br>
&gt; client to work.<br>
<br>
I think we&#39;re mostly in agreement. In this case where we only talk abou=
t optional config false leafs, the client will have to cope with any/all of=
 them being absent in any case. Bit masks, if-feature or deviation not-supo=
prted statements are not going to change that. In that case #5 is the leane=
st solution.<br>
<br>
I don&#39;t look at client applications the same way as you do, however. Yo=
u think a simple client is one that would fail if the YANG is randomly devi=
ated, while a smarter one would cope. In my experience, it&#39;s the other =
way around. The really simple clients are just browsers that print whatever=
 they get. They don&#39;t care if something is missing, or if a leaf is of =
a different type than stated in the standard YANG. It&#39;s the smart clien=
ts that actually understand and use the returned information for complex de=
cisions that will fail when things deviate.<br>
<br>
Have you ever seen a smart client that can cope with randomly deviated YANG=
 models, unless a programmer has intervened and created special code for ha=
nding that particular deviating device type? I have not.<br></blockquote><d=
iv><br></div><div><br></div><div>Doesn&#39;t your client build a session-sp=
ecific schema tree based on the advertised modules?</div><div><br></div><di=
v>Deviations are clearly better than just not returning anything.</div><div=
>They tell the client that the missing counters are not implemented as oppo=
sed</div><div>to possibly a temporary, recoverable condition.</div><div><br=
></div><div>Deviations are known at session startup time but they can also =
be known in advance.</div><div>Vendors use naming conventions to specify th=
e platform-specific deviations.</div><div>Tools like <a href=3D"http://yang=
catalog.org">yangcatalog.org</a> can make this process automated and de-fac=
to standardized.</div><div><br></div><div><br></div><div>=C2=A0</div><block=
quote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc=
 solid;padding-left:1ex">
<br>
/jan<br></blockquote><div><br></div><div><br></div><div>Andy</div><div>=C2=
=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;borde=
r-left:1px #ccc solid;padding-left:1ex">
<br>
______________________________<wbr>_________________<br>
yang-doctors mailing list<br>
<a href=3D"mailto:yang-doctors@ietf.org">yang-doctors@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/yang-doctors" rel=3D"noref=
errer" target=3D"_blank">https://www.ietf.org/mailman/<wbr>listinfo/yang-do=
ctors</a><br>
</blockquote></div><br></div></div>

--001a11478686bab4430556f4b7a2--


From nobody Thu Aug 17 08:50:07 2017
Return-Path: <janl@tail-f.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 641E513219F for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 08:50:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level: 
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id PfwlQAQLcTd0 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 08:50:02 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id 945F8132144 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 08:50:02 -0700 (PDT)
Received: from [10.147.40.126] (unknown [173.38.220.53]) by mail.tail-f.com (Postfix) with ESMTPSA id 63F301AE01AA; Thu, 17 Aug 2017 17:50:01 +0200 (CEST)
From: Jan Lindblad <janl@tail-f.com>
Message-Id: <36E052B8-9028-4EE6-A393-F68EA3EF926B@tail-f.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_04B3FB62-EBDA-432D-8864-E24DA6FA9D09"
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
Date: Thu, 17 Aug 2017 17:49:58 +0200
In-Reply-To: <CABCOCHR9ooj7VQZhqAzJkAR=9vn4C0okTDKQJ842p-Qa_2YZDg@mail.gmail.com>
Cc: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
To: Andy Bierman <andy@yumaworks.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <6991455A-91A6-42A6-86A6-F19A95BCD133@tail-f.com> <20170817120451.syz54lblctjitbm7@elstar.local> <3EA7384C-2D5D-4C00-8479-75277389DE5B@tail-f.com> <CABCOCHR9ooj7VQZhqAzJkAR=9vn4C0okTDKQJ842p-Qa_2YZDg@mail.gmail.com>
X-Mailer: Apple Mail (2.3273)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/cZ-oBtf0OWjRw3-rsq3mgPdHS0o>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 15:50:05 -0000

--Apple-Mail=_04B3FB62-EBDA-432D-8864-E24DA6FA9D09
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

> Have you ever seen a smart client that can cope with randomly deviated =
YANG models, unless a programmer has intervened and created special code =
for handing that particular deviating device type? I have not.
>=20
>=20
> Doesn't your client build a session-specific schema tree based on the =
advertised modules?
>=20
> Deviations are clearly better than just not returning anything.
> They tell the client that the missing counters are not implemented as =
opposed
> to possibly a temporary, recoverable condition.
>=20
> Deviations are known at session startup time but they can also be =
known in advance.
> Vendors use naming conventions to specify the platform-specific =
deviations.
> Tools like yangcatalog.org <http://yangcatalog.org/> can make this =
process automated and de-facto standardized.

NSO itself will be just fine, but I'm worried about the people building =
applications on top of NSO, e.g. an L3VPN application. Let's say a =
deviation comes up at session start, what's the application supposed to =
do then? I can't think of much that doesn't involve a programmer.

Declared deviations are clearly better than deviating and not telling. =
But they are only really worth anything if they are known to the =
application programmer before he finishes his code. Yangcatalog.org =
<http://yangcatalog.org/> helps, but not all modules will be there and =
there's also a time dimension. Deviations found at session start are =
probably not worth anything other than as triggers for that special code =
someone wrote to handle the situation.

I feel deviations should not be recommended lightly. In the particular =
case that started this discussion, they'd bring little value.

/jan


--Apple-Mail=_04B3FB62-EBDA-432D-8864-E24DA6FA9D09
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=us-ascii

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dus-ascii"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div><blockquote type=3D"cite" class=3D""><div =
class=3D"gmail_quote" style=3D"font-family: TimesNewRomanPSMT; =
font-size: 14px; font-style: normal; font-variant-caps: normal; =
font-weight: normal; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px;"><blockquote =
class=3D"gmail_quote" style=3D"margin: 0px 0px 0px 0.8ex; =
border-left-width: 1px; border-left-style: solid; border-left-color: =
rgb(204, 204, 204); padding-left: 1ex;">Have you ever seen a smart =
client that can cope with randomly deviated YANG models, unless a =
programmer has intervened and created special code for handing that =
particular deviating device type? I have not.<br =
class=3D""></blockquote><div class=3D""><br class=3D""></div><div =
class=3D""><br class=3D""></div><div class=3D"">Doesn't your client =
build a session-specific schema tree based on the advertised =
modules?</div><div class=3D""><br class=3D""></div><div =
class=3D"">Deviations are clearly better than just not returning =
anything.</div><div class=3D"">They tell the client that the missing =
counters are not implemented as opposed</div><div class=3D"">to possibly =
a temporary, recoverable condition.</div><div class=3D""><br =
class=3D""></div><div class=3D"">Deviations are known at session startup =
time but they can also be known in advance.</div><div class=3D"">Vendors =
use naming conventions to specify the platform-specific =
deviations.</div><div class=3D"">Tools like<span =
class=3D"Apple-converted-space">&nbsp;</span><a =
href=3D"http://yangcatalog.org/" class=3D"">yangcatalog.org</a><span =
class=3D"Apple-converted-space">&nbsp;</span>can make this process =
automated and de-facto standardized.</div></div></blockquote><div><br =
class=3D""></div><div>NSO itself will be just fine, but I'm worried =
about the people building applications on top of NSO, e.g. an L3VPN =
application. Let's say a deviation comes up at session start, what's the =
application supposed to do then? I can't think of much that doesn't =
involve a programmer.</div><div><br class=3D""></div><div>Declared =
deviations are clearly better than deviating and not telling. But they =
are only really worth anything if they are known to the application =
programmer before he finishes his code. <a href=3D"http://Yangcatalog.org"=
 class=3D"">Yangcatalog.org</a>&nbsp;helps, but not all modules will be =
there and there's also a time dimension. Deviations found at session =
start are probably not worth anything other than as triggers for that =
special code someone wrote to handle the situation.</div><div><br =
class=3D""></div><div>I feel deviations should not be recommended =
lightly. In the particular case that started this discussion, they'd =
bring little value.</div><div><br class=3D""></div><div>/jan</div><div><br=
 class=3D""></div></div></body></html>=

--Apple-Mail=_04B3FB62-EBDA-432D-8864-E24DA6FA9D09--


From nobody Thu Aug 17 08:56:07 2017
Return-Path: <giheron@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A7F3F1321B8 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 08:56:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.519
X-Spam-Level: 
X-Spam-Status: No, score=-14.519 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id vnvlNppnXY_3 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 08:56:04 -0700 (PDT)
Received: from alln-iport-3.cisco.com (alln-iport-3.cisco.com [173.37.142.90]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 68AB3132144 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 08:56:04 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=8278; q=dns/txt; s=iport; t=1502985364; x=1504194964; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=T3zij1/Xn/1Bg8EAdEvD35Xw+dL9sC6VfOOVWC9VZ00=; b=Idqv6gE/sevTB2nVo1O3NCtMqa3tlqOpuTcCbe2BNsdbvxSIQeTufRfG IF5QcXqKxHeNm3BceAatnMguOSqmRt+zd0IcoJ8MgLe2aBUChHVTV8dgO Y6nB8YM61EdRaQrKj+d9Ol/D0AfGYKym8vp1cFUsuECRsNGbLmJfJgSSh s=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0BMAQDmu5VZ/5tdJa1cGgEBAQECAQEBA?= =?us-ascii?q?QgBAQEBgm9rZIEVB44LkBGEXo10hTeCEiiFHwIahD4/GAECAQEBAQEBAWsohRk?= =?us-ascii?q?GI1YQAgEIPwMCAgIwFBECBA4FiUxkqh+CJotfAQEBAQEBAQEBAQEBAQEBAQEBA?= =?us-ascii?q?QEBHYMoggKBTIIOgnyFMYJVMIISHwWgSQKHUoxuDIJdj3OWHAEfOIEKdxVbAYc?= =?us-ascii?q?HdodjKoEIgQ8BAQE?=
X-IronPort-AV: E=Sophos;i="5.41,388,1498521600";  d="scan'208,217";a="472453443"
Received: from rcdn-core-4.cisco.com ([173.37.93.155]) by alln-iport-3.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 17 Aug 2017 15:56:03 +0000
Received: from XCH-RTP-001.cisco.com (xch-rtp-001.cisco.com [64.101.220.141]) by rcdn-core-4.cisco.com (8.14.5/8.14.5) with ESMTP id v7HFu3fG012322 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Thu, 17 Aug 2017 15:56:03 GMT
Received: from xch-rtp-019.cisco.com (64.101.220.159) by XCH-RTP-001.cisco.com (64.101.220.141) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Thu, 17 Aug 2017 11:56:02 -0400
Received: from xch-rtp-019.cisco.com ([64.101.220.159]) by XCH-RTP-019.cisco.com ([64.101.220.159]) with mapi id 15.00.1210.000; Thu, 17 Aug 2017 11:56:02 -0400
From: "Giles Heron (giheron)" <giheron@cisco.com>
To: Jan Lindblad <janl@tail-f.com>
CC: Andy Bierman <andy@yumaworks.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "Norm Strahle" <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Thread-Topic: [yang-doctors] question regarding conditional/optional statements
Thread-Index: AdMWuspFVk5k9TDdRCeshA4HU2pVBgAfV2wAAAZRrAAAAQt5gAAFESYAAAIrXoAAAUHdgAAF/LyAAACeGgAAADYXgA==
Date: Thu, 17 Aug 2017 15:56:02 +0000
Message-ID: <E180B2C6-3E5F-43A9-9A20-E7D056D2E23D@cisco.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <6991455A-91A6-42A6-86A6-F19A95BCD133@tail-f.com> <20170817120451.syz54lblctjitbm7@elstar.local> <3EA7384C-2D5D-4C00-8479-75277389DE5B@tail-f.com> <CABCOCHR9ooj7VQZhqAzJkAR=9vn4C0okTDKQJ842p-Qa_2YZDg@mail.gmail.com> <36E052B8-9028-4EE6-A393-F68EA3EF926B@tail-f.com>
In-Reply-To: <36E052B8-9028-4EE6-A393-F68EA3EF926B@tail-f.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.60.71.148]
Content-Type: multipart/alternative; boundary="_000_E180B2C63E5F43A99A20E7D056D2E23Dciscocom_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/s3X6cWRNuqkuXdHKtujLS7zn98A>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 15:56:06 -0000

--_000_E180B2C63E5F43A99A20E7D056D2E23Dciscocom_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

T24gMTcgQXVnIDIwMTcsIGF0IDE2OjQ5LCBKYW4gTGluZGJsYWQgPGphbmxAdGFpbC1mLmNvbTxt
YWlsdG86amFubEB0YWlsLWYuY29tPj4gd3JvdGU6DQoNCkhhdmUgeW91IGV2ZXIgc2VlbiBhIHNt
YXJ0IGNsaWVudCB0aGF0IGNhbiBjb3BlIHdpdGggcmFuZG9tbHkgZGV2aWF0ZWQgWUFORyBtb2Rl
bHMsIHVubGVzcyBhIHByb2dyYW1tZXIgaGFzIGludGVydmVuZWQgYW5kIGNyZWF0ZWQgc3BlY2lh
bCBjb2RlIGZvciBoYW5kaW5nIHRoYXQgcGFydGljdWxhciBkZXZpYXRpbmcgZGV2aWNlIHR5cGU/
IEkgaGF2ZSBub3QuDQoNCg0KRG9lc24ndCB5b3VyIGNsaWVudCBidWlsZCBhIHNlc3Npb24tc3Bl
Y2lmaWMgc2NoZW1hIHRyZWUgYmFzZWQgb24gdGhlIGFkdmVydGlzZWQgbW9kdWxlcz8NCg0KRGV2
aWF0aW9ucyBhcmUgY2xlYXJseSBiZXR0ZXIgdGhhbiBqdXN0IG5vdCByZXR1cm5pbmcgYW55dGhp
bmcuDQpUaGV5IHRlbGwgdGhlIGNsaWVudCB0aGF0IHRoZSBtaXNzaW5nIGNvdW50ZXJzIGFyZSBu
b3QgaW1wbGVtZW50ZWQgYXMgb3Bwb3NlZA0KdG8gcG9zc2libHkgYSB0ZW1wb3JhcnksIHJlY292
ZXJhYmxlIGNvbmRpdGlvbi4NCg0KRGV2aWF0aW9ucyBhcmUga25vd24gYXQgc2Vzc2lvbiBzdGFy
dHVwIHRpbWUgYnV0IHRoZXkgY2FuIGFsc28gYmUga25vd24gaW4gYWR2YW5jZS4NClZlbmRvcnMg
dXNlIG5hbWluZyBjb252ZW50aW9ucyB0byBzcGVjaWZ5IHRoZSBwbGF0Zm9ybS1zcGVjaWZpYyBk
ZXZpYXRpb25zLg0KVG9vbHMgbGlrZSB5YW5nY2F0YWxvZy5vcmc8aHR0cDovL3lhbmdjYXRhbG9n
Lm9yZy8+IGNhbiBtYWtlIHRoaXMgcHJvY2VzcyBhdXRvbWF0ZWQgYW5kIGRlLWZhY3RvIHN0YW5k
YXJkaXplZC4NCg0KTlNPIGl0c2VsZiB3aWxsIGJlIGp1c3QgZmluZSwgYnV0IEknbSB3b3JyaWVk
IGFib3V0IHRoZSBwZW9wbGUgYnVpbGRpbmcgYXBwbGljYXRpb25zIG9uIHRvcCBvZiBOU08sIGUu
Zy4gYW4gTDNWUE4gYXBwbGljYXRpb24uIExldCdzIHNheSBhIGRldmlhdGlvbiBjb21lcyB1cCBh
dCBzZXNzaW9uIHN0YXJ0LCB3aGF0J3MgdGhlIGFwcGxpY2F0aW9uIHN1cHBvc2VkIHRvIGRvIHRo
ZW4/IEkgY2FuJ3QgdGhpbmsgb2YgbXVjaCB0aGF0IGRvZXNuJ3QgaW52b2x2ZSBhIHByb2dyYW1t
ZXIuDQoNCkRlY2xhcmVkIGRldmlhdGlvbnMgYXJlIGNsZWFybHkgYmV0dGVyIHRoYW4gZGV2aWF0
aW5nIGFuZCBub3QgdGVsbGluZy4gQnV0IHRoZXkgYXJlIG9ubHkgcmVhbGx5IHdvcnRoIGFueXRo
aW5nIGlmIHRoZXkgYXJlIGtub3duIHRvIHRoZSBhcHBsaWNhdGlvbiBwcm9ncmFtbWVyIGJlZm9y
ZSBoZSBmaW5pc2hlcyBoaXMgY29kZS4gWWFuZ2NhdGFsb2cub3JnPGh0dHA6Ly95YW5nY2F0YWxv
Zy5vcmcvPiBoZWxwcywgYnV0IG5vdCBhbGwgbW9kdWxlcyB3aWxsIGJlIHRoZXJlIGFuZCB0aGVy
ZSdzIGFsc28gYSB0aW1lIGRpbWVuc2lvbi4gRGV2aWF0aW9ucyBmb3VuZCBhdCBzZXNzaW9uIHN0
YXJ0IGFyZSBwcm9iYWJseSBub3Qgd29ydGggYW55dGhpbmcgb3RoZXIgdGhhbiBhcyB0cmlnZ2Vy
cyBmb3IgdGhhdCBzcGVjaWFsIGNvZGUgc29tZW9uZSB3cm90ZSB0byBoYW5kbGUgdGhlIHNpdHVh
dGlvbi4NCg0KSSBmZWVsIGRldmlhdGlvbnMgc2hvdWxkIG5vdCBiZSByZWNvbW1lbmRlZCBsaWdo
dGx5LiBJbiB0aGUgcGFydGljdWxhciBjYXNlIHRoYXQgc3RhcnRlZCB0aGlzIGRpc2N1c3Npb24s
IHRoZXknZCBicmluZyBsaXR0bGUgdmFsdWUuDQoNCnJpZ2h0IC0gaXNu4oCZdCBkZXZpYXRpb24g
c3VwcG9zZWQgdG8gYmUgZm9yIHRoZSBjYXNlIHdoZXJlIHlvdSBkb27igJl0IHN1cHBvcnQgc29t
ZXRoaW5nIHRoYXQgaW1wbGVtZW50YXRpb25zIGFyZSBnZW5lcmFsbHkgZXhwZWN0ZWQgdG8gc3Vw
cG9ydD8NCg0KZm9yIHdoYXQgSGVsZW4gd2FudHMgZmVhdHVyZXMgc2VlbSB0byBiZSBhIGJldHRl
ciBmaXQgLSBhdCBsZWFzdCB0byBtZS4NCg0KR2lsZXMNCg0K

--_000_E180B2C63E5F43A99A20E7D056D2E23Dciscocom_
Content-Type: text/html; charset="utf-8"
Content-ID: <EC101BCBB9A5174193057C68A040B0F0@emea.cisco.com>
Content-Transfer-Encoding: base64

PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i
dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjwvaGVhZD4NCjxib2R5IHN0eWxlPSJ3b3JkLXdy
YXA6IGJyZWFrLXdvcmQ7IC13ZWJraXQtbmJzcC1tb2RlOiBzcGFjZTsgLXdlYmtpdC1saW5lLWJy
ZWFrOiBhZnRlci13aGl0ZS1zcGFjZTsiIGNsYXNzPSIiPg0KT24gMTcgQXVnIDIwMTcsIGF0IDE2
OjQ5LCBKYW4gTGluZGJsYWQgJmx0OzxhIGhyZWY9Im1haWx0bzpqYW5sQHRhaWwtZi5jb20iIGNs
YXNzPSIiPmphbmxAdGFpbC1mLmNvbTwvYT4mZ3Q7IHdyb3RlOjxiciBjbGFzcz0iIj4NCjxkaXY+
DQo8YmxvY2txdW90ZSB0eXBlPSJjaXRlIiBjbGFzcz0iIj48YnIgY2xhc3M9IkFwcGxlLWludGVy
Y2hhbmdlLW5ld2xpbmUiPg0KPGRpdiBjbGFzcz0iIj4NCjxkaXYgc3R5bGU9IndvcmQtd3JhcDog
YnJlYWstd29yZDsgLXdlYmtpdC1uYnNwLW1vZGU6IHNwYWNlOyAtd2Via2l0LWxpbmUtYnJlYWs6
IGFmdGVyLXdoaXRlLXNwYWNlOyIgY2xhc3M9IiI+DQo8ZGl2IGNsYXNzPSIiPg0KPGJsb2NrcXVv
dGUgdHlwZT0iY2l0ZSIgY2xhc3M9IiI+DQo8ZGl2IGNsYXNzPSJnbWFpbF9xdW90ZSIgc3R5bGU9
ImZvbnQtZmFtaWx5OiBUaW1lc05ld1JvbWFuUFNNVDsgZm9udC1zaXplOiAxNHB4OyBmb250LXN0
eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3Jt
YWw7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVu
dDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC1z
cGFjaW5nOiAwcHg7IC13ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDBweDsiPg0KPGJsb2NrcXVv
dGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOiAwcHggMHB4IDBweCAwLjhleDsg
Ym9yZGVyLWxlZnQtd2lkdGg6IDFweDsgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkOyBib3JkZXIt
bGVmdC1jb2xvcjogcmdiKDIwNCwgMjA0LCAyMDQpOyBwYWRkaW5nLWxlZnQ6IDFleDsiPg0KSGF2
ZSB5b3UgZXZlciBzZWVuIGEgc21hcnQgY2xpZW50IHRoYXQgY2FuIGNvcGUgd2l0aCByYW5kb21s
eSBkZXZpYXRlZCBZQU5HIG1vZGVscywgdW5sZXNzIGEgcHJvZ3JhbW1lciBoYXMgaW50ZXJ2ZW5l
ZCBhbmQgY3JlYXRlZCBzcGVjaWFsIGNvZGUgZm9yIGhhbmRpbmcgdGhhdCBwYXJ0aWN1bGFyIGRl
dmlhdGluZyBkZXZpY2UgdHlwZT8gSSBoYXZlIG5vdC48YnIgY2xhc3M9IiI+DQo8L2Jsb2NrcXVv
dGU+DQo8ZGl2IGNsYXNzPSIiPjxiciBjbGFzcz0iIj4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0iIj48
YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9IiI+RG9lc24ndCB5b3VyIGNsaWVudCBi
dWlsZCBhIHNlc3Npb24tc3BlY2lmaWMgc2NoZW1hIHRyZWUgYmFzZWQgb24gdGhlIGFkdmVydGlz
ZWQgbW9kdWxlcz88L2Rpdj4NCjxkaXYgY2xhc3M9IiI+PGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8
ZGl2IGNsYXNzPSIiPkRldmlhdGlvbnMgYXJlIGNsZWFybHkgYmV0dGVyIHRoYW4ganVzdCBub3Qg
cmV0dXJuaW5nIGFueXRoaW5nLjwvZGl2Pg0KPGRpdiBjbGFzcz0iIj5UaGV5IHRlbGwgdGhlIGNs
aWVudCB0aGF0IHRoZSBtaXNzaW5nIGNvdW50ZXJzIGFyZSBub3QgaW1wbGVtZW50ZWQgYXMgb3Bw
b3NlZDwvZGl2Pg0KPGRpdiBjbGFzcz0iIj50byBwb3NzaWJseSBhIHRlbXBvcmFyeSwgcmVjb3Zl
cmFibGUgY29uZGl0aW9uLjwvZGl2Pg0KPGRpdiBjbGFzcz0iIj48YnIgY2xhc3M9IiI+DQo8L2Rp
dj4NCjxkaXYgY2xhc3M9IiI+RGV2aWF0aW9ucyBhcmUga25vd24gYXQgc2Vzc2lvbiBzdGFydHVw
IHRpbWUgYnV0IHRoZXkgY2FuIGFsc28gYmUga25vd24gaW4gYWR2YW5jZS48L2Rpdj4NCjxkaXYg
Y2xhc3M9IiI+VmVuZG9ycyB1c2UgbmFtaW5nIGNvbnZlbnRpb25zIHRvIHNwZWNpZnkgdGhlIHBs
YXRmb3JtLXNwZWNpZmljIGRldmlhdGlvbnMuPC9kaXY+DQo8ZGl2IGNsYXNzPSIiPlRvb2xzIGxp
a2U8c3BhbiBjbGFzcz0iQXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+PGEgaHJl
Zj0iaHR0cDovL3lhbmdjYXRhbG9nLm9yZy8iIGNsYXNzPSIiPnlhbmdjYXRhbG9nLm9yZzwvYT48
c3BhbiBjbGFzcz0iQXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+Y2FuIG1ha2Ug
dGhpcyBwcm9jZXNzIGF1dG9tYXRlZCBhbmQgZGUtZmFjdG8gc3RhbmRhcmRpemVkLjwvZGl2Pg0K
PC9kaXY+DQo8L2Jsb2NrcXVvdGU+DQo8ZGl2IGNsYXNzPSIiPjxiciBjbGFzcz0iIj4NCjwvZGl2
Pg0KPGRpdiBjbGFzcz0iIj5OU08gaXRzZWxmIHdpbGwgYmUganVzdCBmaW5lLCBidXQgSSdtIHdv
cnJpZWQgYWJvdXQgdGhlIHBlb3BsZSBidWlsZGluZyBhcHBsaWNhdGlvbnMgb24gdG9wIG9mIE5T
TywgZS5nLiBhbiBMM1ZQTiBhcHBsaWNhdGlvbi4gTGV0J3Mgc2F5IGEgZGV2aWF0aW9uIGNvbWVz
IHVwIGF0IHNlc3Npb24gc3RhcnQsIHdoYXQncyB0aGUgYXBwbGljYXRpb24gc3VwcG9zZWQgdG8g
ZG8gdGhlbj8gSSBjYW4ndCB0aGluayBvZiBtdWNoIHRoYXQNCiBkb2Vzbid0IGludm9sdmUgYSBw
cm9ncmFtbWVyLjwvZGl2Pg0KPGRpdiBjbGFzcz0iIj48YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxk
aXYgY2xhc3M9IiI+RGVjbGFyZWQgZGV2aWF0aW9ucyBhcmUgY2xlYXJseSBiZXR0ZXIgdGhhbiBk
ZXZpYXRpbmcgYW5kIG5vdCB0ZWxsaW5nLiBCdXQgdGhleSBhcmUgb25seSByZWFsbHkgd29ydGgg
YW55dGhpbmcgaWYgdGhleSBhcmUga25vd24gdG8gdGhlIGFwcGxpY2F0aW9uIHByb2dyYW1tZXIg
YmVmb3JlIGhlIGZpbmlzaGVzIGhpcyBjb2RlLg0KPGEgaHJlZj0iaHR0cDovL3lhbmdjYXRhbG9n
Lm9yZy8iIGNsYXNzPSIiPllhbmdjYXRhbG9nLm9yZzwvYT4mbmJzcDtoZWxwcywgYnV0IG5vdCBh
bGwgbW9kdWxlcyB3aWxsIGJlIHRoZXJlIGFuZCB0aGVyZSdzIGFsc28gYSB0aW1lIGRpbWVuc2lv
bi4gRGV2aWF0aW9ucyBmb3VuZCBhdCBzZXNzaW9uIHN0YXJ0IGFyZSBwcm9iYWJseSBub3Qgd29y
dGggYW55dGhpbmcgb3RoZXIgdGhhbiBhcyB0cmlnZ2VycyBmb3IgdGhhdCBzcGVjaWFsIGNvZGUg
c29tZW9uZQ0KIHdyb3RlIHRvIGhhbmRsZSB0aGUgc2l0dWF0aW9uLjwvZGl2Pg0KPGRpdiBjbGFz
cz0iIj48YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9IiI+SSBmZWVsIGRldmlhdGlv
bnMgc2hvdWxkIG5vdCBiZSByZWNvbW1lbmRlZCBsaWdodGx5LiBJbiB0aGUgcGFydGljdWxhciBj
YXNlIHRoYXQgc3RhcnRlZCB0aGlzIGRpc2N1c3Npb24sIHRoZXknZCBicmluZyBsaXR0bGUgdmFs
dWUuPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Jsb2NrcXVvdGU+DQo8ZGl2Pjxi
ciBjbGFzcz0iIj4NCjwvZGl2Pg0KcmlnaHQgLSBpc27igJl0IGRldmlhdGlvbiBzdXBwb3NlZCB0
byBiZSBmb3IgdGhlIGNhc2Ugd2hlcmUgeW91IGRvbuKAmXQgc3VwcG9ydCBzb21ldGhpbmcgdGhh
dCBpbXBsZW1lbnRhdGlvbnMgYXJlIGdlbmVyYWxseSBleHBlY3RlZCB0byBzdXBwb3J0PzwvZGl2
Pg0KPGRpdj48YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxkaXY+Zm9yIHdoYXQgSGVsZW4gd2FudHMg
ZmVhdHVyZXMgc2VlbSB0byBiZSBhIGJldHRlciBmaXQgLSBhdCBsZWFzdCB0byBtZS48L2Rpdj4N
CjxkaXY+PGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8ZGl2PkdpbGVzPC9kaXY+DQo8ZGl2PjxiciBj
bGFzcz0iIj4NCjwvZGl2Pg0KPC9ib2R5Pg0KPC9odG1sPg0K

--_000_E180B2C63E5F43A99A20E7D056D2E23Dciscocom_--


From nobody Thu Aug 17 09:06:23 2017
Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0ED831321D0 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 09:06:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level: 
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id W0OVFrfWSdoB for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 09:06:20 -0700 (PDT)
Received: from mail-wr0-x22c.google.com (mail-wr0-x22c.google.com [IPv6:2a00:1450:400c:c0c::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D7718132144 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 09:06:19 -0700 (PDT)
Received: by mail-wr0-x22c.google.com with SMTP id b65so47973352wrd.0 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 09:06:19 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=/LSAVXQ06xqVgU4pUlS8OsqixvdlaDEKT7YCTcVTWqY=; b=Pknjx8L3G/bgR5g6uI4Hx2Z4C/FWNZei7d5j/xWZz8k7OrV0cXHsKU/v0tY1XoTPkL xCxJqlRfFvXmTqn2lCq1/LGPrwhQCdhPMwBF2oFiviSL3POSw1zvnNm4dLs8w/Hy7JY6 a4YgQqjsSLISHmkPnEUzG1rZIX/owUs4KOSqIUaMgsr7Gmo9uzbFx2YYlxRrcJXkCCNx QpcBkEp1RlNkWXQBPtUJOUhzABch7JdJWxu37pQR7fa/NJaMAlXeWFzL4Lech0eZs9wO fIF3G8TWy7odGiURWueJz9aSP3jNLu5KSm1N6LENPG0uM4sTudR9TYk1lJNGb+o7GmrT sXUA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=/LSAVXQ06xqVgU4pUlS8OsqixvdlaDEKT7YCTcVTWqY=; b=rAOGwfFV1UkolIMYeZ4mEEmCCU8oxKLEaGSicrnHptxIAbrMVlgLFl8sPoUaZcemRF QS4QT3RIfeH2PfjiJjygX34YpbHqPgJi+F7FgxJ654cwQiR5CfXuo8FKuX5R7Llj2NMn oGG+qI7RPKMrMY0d2EDRNbF3h3fc9SjLdH1mcvoKhlRpDafNfXdpwlQBOtlZIRdnDdJB jyMDiYlg5WOTue0jyoboC3SjqAMt1hyEhpinVKpcRiU5yZxeX+Em9/RudmToLjhY3Csw Bi0z25JrdN5n0KsptOYnXUhUQfFQvryxJctTA1q38M6SwuNzGVpyl7TOq27G9W9hAJ3x 6yXw==
X-Gm-Message-State: AHYfb5h2F95yAfD0wffStk2v/Pwq7SXAwefAl48RcLZc/zaNRzFB0M2D 3juyVx8jzh3DjDdjuinbaGcRlVhxHCE+
X-Received: by 10.28.159.133 with SMTP id i127mr1455561wme.172.1502985978383;  Thu, 17 Aug 2017 09:06:18 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.164.129 with HTTP; Thu, 17 Aug 2017 09:06:17 -0700 (PDT)
In-Reply-To: <E180B2C6-3E5F-43A9-9A20-E7D056D2E23D@cisco.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <6991455A-91A6-42A6-86A6-F19A95BCD133@tail-f.com> <20170817120451.syz54lblctjitbm7@elstar.local> <3EA7384C-2D5D-4C00-8479-75277389DE5B@tail-f.com> <CABCOCHR9ooj7VQZhqAzJkAR=9vn4C0okTDKQJ842p-Qa_2YZDg@mail.gmail.com> <36E052B8-9028-4EE6-A393-F68EA3EF926B@tail-f.com> <E180B2C6-3E5F-43A9-9A20-E7D056D2E23D@cisco.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 17 Aug 2017 09:06:17 -0700
Message-ID: <CABCOCHTVM-XCSsUsCKPnvzYNWj8+OWD5LJOhOSGfHx2k2XEHzw@mail.gmail.com>
To: "Giles Heron (giheron)" <giheron@cisco.com>
Cc: Jan Lindblad <janl@tail-f.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>,  Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, Norm Strahle <nstrahle@juniper.net>,  "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Content-Type: multipart/alternative; boundary="001a114545fc5821760556f53142"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/zy8xTr-5UXvh6BqDd1Yinno37lU>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 16:06:22 -0000

--001a114545fc5821760556f53142
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Aug 17, 2017 at 8:56 AM, Giles Heron (giheron) <giheron@cisco.com>
wrote:

> On 17 Aug 2017, at 16:49, Jan Lindblad <janl@tail-f.com> wrote:
>
>
> Have you ever seen a smart client that can cope with randomly deviated
>> YANG models, unless a programmer has intervened and created special code
>> for handing that particular deviating device type? I have not.
>>
>
>
> Doesn't your client build a session-specific schema tree based on the
> advertised modules?
>
> Deviations are clearly better than just not returning anything.
> They tell the client that the missing counters are not implemented as
> opposed
> to possibly a temporary, recoverable condition.
>
> Deviations are known at session startup time but they can also be known i=
n
> advance.
> Vendors use naming conventions to specify the platform-specific deviation=
s.
> Tools like yangcatalog.org can make this process automated and de-facto
> standardized.
>
>
> NSO itself will be just fine, but I'm worried about the people building
> applications on top of NSO, e.g. an L3VPN application. Let's say a
> deviation comes up at session start, what's the application supposed to d=
o
> then? I can't think of much that doesn't involve a programmer.
>
> Declared deviations are clearly better than deviating and not telling. Bu=
t
> they are only really worth anything if they are known to the application
> programmer before he finishes his code. Yangcatalog.org
> <http://yangcatalog.org/> helps, but not all modules will be there and
> there's also a time dimension. Deviations found at session start are
> probably not worth anything other than as triggers for that special code
> someone wrote to handle the situation.
>
> I feel deviations should not be recommended lightly. In the particular
> case that started this discussion, they'd bring little value.
>
>
> right - isn=E2=80=99t deviation supposed to be for the case where you don=
=E2=80=99t
> support something that implementations are generally expected to support?
>
> for what Helen wants features seem to be a better fit - at least to me.
>
>
Features are intended to convey that the functionality is optional.
Presumably the data model is attempting to deliver some functionality to
the client developer.
Features correspond well to optional protocol capabilities.
Generally a single counter is not considered to be high-level functionality=
.

Ask the question "Why is counter FOO missing?"

A1) because device XYZ does not support it

A2) because it counts the FIZZBANG protocol, and that protocol is not used
on every device


If A1 then use deviations. If A2 then use features.




> Giles
>
>

Andy

--001a114545fc5821760556f53142
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Thu, Aug 17, 2017 at 8:56 AM, Giles Heron (giheron) <span dir=3D"ltr=
">&lt;<a href=3D"mailto:giheron@cisco.com" target=3D"_blank">giheron@cisco.=
com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"mar=
gin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">



<div style=3D"word-wrap:break-word">
On 17 Aug 2017, at 16:49, Jan Lindblad &lt;<a href=3D"mailto:janl@tail-f.co=
m" target=3D"_blank">janl@tail-f.com</a>&gt; wrote:<br>
<div>
<blockquote type=3D"cite"><br class=3D"m_4931857417286260717Apple-interchan=
ge-newline">
<div>
<div style=3D"word-wrap:break-word">
<div>
<blockquote type=3D"cite">
<div class=3D"gmail_quote" style=3D"font-family:TimesNewRomanPSMT;font-size=
:14px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-=
spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-s=
pace:normal;word-spacing:0px">
<blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-=
left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);p=
adding-left:1ex">
Have you ever seen a smart client that can cope with randomly deviated YANG=
 models, unless a programmer has intervened and created special code for ha=
nding that particular deviating device type? I have not.<br>
</blockquote>
<div><br>
</div>
<div><br>
</div>
<div>Doesn&#39;t your client build a session-specific schema tree based on =
the advertised modules?</div>
<div><br>
</div>
<div>Deviations are clearly better than just not returning anything.</div>
<div>They tell the client that the missing counters are not implemented as =
opposed</div>
<div>to possibly a temporary, recoverable condition.</div>
<div><br>
</div>
<div>Deviations are known at session startup time but they can also be know=
n in advance.</div>
<div>Vendors use naming conventions to specify the platform-specific deviat=
ions.</div>
<div>Tools like<span class=3D"m_4931857417286260717Apple-converted-space">=
=C2=A0</span><a href=3D"http://yangcatalog.org/" target=3D"_blank">yangcata=
log.org</a><span class=3D"m_4931857417286260717Apple-converted-space">=C2=
=A0</span>can make this process automated and de-facto standardized.</div>
</div>
</blockquote>
<div><br>
</div>
<div>NSO itself will be just fine, but I&#39;m worried about the people bui=
lding applications on top of NSO, e.g. an L3VPN application. Let&#39;s say =
a deviation comes up at session start, what&#39;s the application supposed =
to do then? I can&#39;t think of much that
 doesn&#39;t involve a programmer.</div>
<div><br>
</div>
<div>Declared deviations are clearly better than deviating and not telling.=
 But they are only really worth anything if they are known to the applicati=
on programmer before he finishes his code.
<a href=3D"http://yangcatalog.org/" target=3D"_blank">Yangcatalog.org</a>=
=C2=A0helps, but not all modules will be there and there&#39;s also a time =
dimension. Deviations found at session start are probably not worth anythin=
g other than as triggers for that special code someone
 wrote to handle the situation.</div>
<div><br>
</div>
<div>I feel deviations should not be recommended lightly. In the particular=
 case that started this discussion, they&#39;d bring little value.</div>
</div>
</div>
</div>
</blockquote>
<div><br>
</div>
right - isn=E2=80=99t deviation supposed to be for the case where you don=
=E2=80=99t support something that implementations are generally expected to=
 support?</div>
<div><br>
</div>
<div>for what Helen wants features seem to be a better fit - at least to me=
.</div><span class=3D"HOEnZb"><font color=3D"#888888">
<div><br></div></font></span></div></blockquote><div><br></div><div>Feature=
s are intended to convey that the functionality is optional.</div><div>Pres=
umably the data model is attempting to deliver some functionality to the cl=
ient developer.</div><div>Features correspond well to optional protocol cap=
abilities.</div><div>Generally a single counter is not considered to be hig=
h-level functionality.</div><div><br></div><div>Ask the question &quot;Why =
is counter FOO missing?&quot;</div><div><br></div><div>A1) because device X=
YZ does not support it</div><div><br></div><div>A2) because it counts the F=
IZZBANG protocol, and that protocol is not used on every device</div><div><=
br></div><div><br></div><div>If A1 then use deviations. If A2 then use feat=
ures.</div><div><br></div><div><br></div><div>=C2=A0<br></div><blockquote c=
lass=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;=
padding-left:1ex"><div style=3D"word-wrap:break-word"><span class=3D"HOEnZb=
"><font color=3D"#888888"><div>
</div>
<div>Giles</div>
<div><br>
</div>
</font></span></div>

</blockquote></div><br></div><div class=3D"gmail_extra"><br></div><div clas=
s=3D"gmail_extra">Andy</div><div class=3D"gmail_extra"><br></div></div>

--001a114545fc5821760556f53142--


From nobody Thu Aug 17 09:13:19 2017
Return-Path: <giheron@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C045D1323C1 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 09:13:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.519
X-Spam-Level: 
X-Spam-Status: No, score=-14.519 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id thy1A8OYwuRm for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 09:13:15 -0700 (PDT)
Received: from rcdn-iport-5.cisco.com (rcdn-iport-5.cisco.com [173.37.86.76]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3CF9D132331 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 09:13:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=15278; q=dns/txt; s=iport; t=1502986395; x=1504195995; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=dgc1xzoDdsO+ym5t+q21Is4n9z1yZ27o/TM2cxW95rI=; b=ejIJ+hmV3iGuKcMPWhIzkymg40iWzRXD/vo+M12LnX6K94dOwld9rpVX jL0AD1NREKxAxhKM8bXXOgWx0alhoQGAZrFbBuzDl+33ofOrYTanOh9cE /FpHnlDw3batkW1SG5YEJYnbEdRugRdSd32fuRSCpHZwrpgSkOiGcRHbs U=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0BMAQDwv5VZ/4UNJK1cGgEBAQECAQEBA?= =?us-ascii?q?QgBAQEBgm9rZIEVB44LkBGEXo10hTeCEiiFHwIahD4/GAECAQEBAQEBAWsohRk?= =?us-ascii?q?GI1YQAgEIPwMCAgIwFBECBA4FiUxkqjaCJoteAQEBAQEBAQEBAQEBAQEBAQEBA?= =?us-ascii?q?QEBHYMoggKBTIIOgnyFMYJVMIISHwWgSQKHUoxugmmPc5YcAR84gQp3FVsBhwd?= =?us-ascii?q?2h2MqgQiBDwEBAQ?=
X-IronPort-AV: E=Sophos; i="5.41,388,1498521600"; d="scan'208,217"; a="66018357"
Received: from alln-core-11.cisco.com ([173.36.13.133]) by rcdn-iport-5.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 17 Aug 2017 16:13:14 +0000
Received: from XCH-RTP-003.cisco.com (xch-rtp-003.cisco.com [64.101.220.143]) by alln-core-11.cisco.com (8.14.5/8.14.5) with ESMTP id v7HGDDmO024701 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Thu, 17 Aug 2017 16:13:13 GMT
Received: from xch-rtp-019.cisco.com (64.101.220.159) by XCH-RTP-003.cisco.com (64.101.220.143) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Thu, 17 Aug 2017 12:13:12 -0400
Received: from xch-rtp-019.cisco.com ([64.101.220.159]) by XCH-RTP-019.cisco.com ([64.101.220.159]) with mapi id 15.00.1210.000; Thu, 17 Aug 2017 12:13:12 -0400
From: "Giles Heron (giheron)" <giheron@cisco.com>
To: Andy Bierman <andy@yumaworks.com>
CC: Jan Lindblad <janl@tail-f.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "Norm Strahle" <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Thread-Topic: [yang-doctors] question regarding conditional/optional statements
Thread-Index: AdMWuspFVk5k9TDdRCeshA4HU2pVBgAfV2wAAAZRrAAAAQt5gAAFESYAAAIrXoAAAUHdgAAF/LyAAACeGgAAADYXgAAAW8uAAAA9sIA=
Date: Thu, 17 Aug 2017 16:13:12 +0000
Message-ID: <81D3CC70-013F-4D92-A53D-A6A761DF0D98@cisco.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <6991455A-91A6-42A6-86A6-F19A95BCD133@tail-f.com> <20170817120451.syz54lblctjitbm7@elstar.local> <3EA7384C-2D5D-4C00-8479-75277389DE5B@tail-f.com> <CABCOCHR9ooj7VQZhqAzJkAR=9vn4C0okTDKQJ842p-Qa_2YZDg@mail.gmail.com> <36E052B8-9028-4EE6-A393-F68EA3EF926B@tail-f.com> <E180B2C6-3E5F-43A9-9A20-E7D056D2E23D@cisco.com> <CABCOCHTVM-XCSsUsCKPnvzYNWj8+OWD5LJOhOSGfHx2k2XEHzw@mail.gmail.com>
In-Reply-To: <CABCOCHTVM-XCSsUsCKPnvzYNWj8+OWD5LJOhOSGfHx2k2XEHzw@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.60.71.148]
Content-Type: multipart/alternative; boundary="_000_81D3CC70013F4D92A53DA6A761DF0D98ciscocom_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/xKMhIF7eq9ztDYMpcySsyoPNDfg>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 16:13:18 -0000

--_000_81D3CC70013F4D92A53DA6A761DF0D98ciscocom_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

T24gMTcgQXVnIDIwMTcsIGF0IDE3OjA2LCBBbmR5IEJpZXJtYW4gPGFuZHlAeXVtYXdvcmtzLmNv
bTxtYWlsdG86YW5keUB5dW1hd29ya3MuY29tPj4gd3JvdGU6DQoNCg0KDQpPbiBUaHUsIEF1ZyAx
NywgMjAxNyBhdCA4OjU2IEFNLCBHaWxlcyBIZXJvbiAoZ2loZXJvbikgPGdpaGVyb25AY2lzY28u
Y29tPG1haWx0bzpnaWhlcm9uQGNpc2NvLmNvbT4+IHdyb3RlOg0KT24gMTcgQXVnIDIwMTcsIGF0
IDE2OjQ5LCBKYW4gTGluZGJsYWQgPGphbmxAdGFpbC1mLmNvbTxtYWlsdG86amFubEB0YWlsLWYu
Y29tPj4gd3JvdGU6DQoNCkhhdmUgeW91IGV2ZXIgc2VlbiBhIHNtYXJ0IGNsaWVudCB0aGF0IGNh
biBjb3BlIHdpdGggcmFuZG9tbHkgZGV2aWF0ZWQgWUFORyBtb2RlbHMsIHVubGVzcyBhIHByb2dy
YW1tZXIgaGFzIGludGVydmVuZWQgYW5kIGNyZWF0ZWQgc3BlY2lhbCBjb2RlIGZvciBoYW5kaW5n
IHRoYXQgcGFydGljdWxhciBkZXZpYXRpbmcgZGV2aWNlIHR5cGU/IEkgaGF2ZSBub3QuDQoNCg0K
RG9lc24ndCB5b3VyIGNsaWVudCBidWlsZCBhIHNlc3Npb24tc3BlY2lmaWMgc2NoZW1hIHRyZWUg
YmFzZWQgb24gdGhlIGFkdmVydGlzZWQgbW9kdWxlcz8NCg0KRGV2aWF0aW9ucyBhcmUgY2xlYXJs
eSBiZXR0ZXIgdGhhbiBqdXN0IG5vdCByZXR1cm5pbmcgYW55dGhpbmcuDQpUaGV5IHRlbGwgdGhl
IGNsaWVudCB0aGF0IHRoZSBtaXNzaW5nIGNvdW50ZXJzIGFyZSBub3QgaW1wbGVtZW50ZWQgYXMg
b3Bwb3NlZA0KdG8gcG9zc2libHkgYSB0ZW1wb3JhcnksIHJlY292ZXJhYmxlIGNvbmRpdGlvbi4N
Cg0KRGV2aWF0aW9ucyBhcmUga25vd24gYXQgc2Vzc2lvbiBzdGFydHVwIHRpbWUgYnV0IHRoZXkg
Y2FuIGFsc28gYmUga25vd24gaW4gYWR2YW5jZS4NClZlbmRvcnMgdXNlIG5hbWluZyBjb252ZW50
aW9ucyB0byBzcGVjaWZ5IHRoZSBwbGF0Zm9ybS1zcGVjaWZpYyBkZXZpYXRpb25zLg0KVG9vbHMg
bGlrZSB5YW5nY2F0YWxvZy5vcmc8aHR0cDovL3lhbmdjYXRhbG9nLm9yZy8+IGNhbiBtYWtlIHRo
aXMgcHJvY2VzcyBhdXRvbWF0ZWQgYW5kIGRlLWZhY3RvIHN0YW5kYXJkaXplZC4NCg0KTlNPIGl0
c2VsZiB3aWxsIGJlIGp1c3QgZmluZSwgYnV0IEknbSB3b3JyaWVkIGFib3V0IHRoZSBwZW9wbGUg
YnVpbGRpbmcgYXBwbGljYXRpb25zIG9uIHRvcCBvZiBOU08sIGUuZy4gYW4gTDNWUE4gYXBwbGlj
YXRpb24uIExldCdzIHNheSBhIGRldmlhdGlvbiBjb21lcyB1cCBhdCBzZXNzaW9uIHN0YXJ0LCB3
aGF0J3MgdGhlIGFwcGxpY2F0aW9uIHN1cHBvc2VkIHRvIGRvIHRoZW4/IEkgY2FuJ3QgdGhpbmsg
b2YgbXVjaCB0aGF0IGRvZXNuJ3QgaW52b2x2ZSBhIHByb2dyYW1tZXIuDQoNCkRlY2xhcmVkIGRl
dmlhdGlvbnMgYXJlIGNsZWFybHkgYmV0dGVyIHRoYW4gZGV2aWF0aW5nIGFuZCBub3QgdGVsbGlu
Zy4gQnV0IHRoZXkgYXJlIG9ubHkgcmVhbGx5IHdvcnRoIGFueXRoaW5nIGlmIHRoZXkgYXJlIGtu
b3duIHRvIHRoZSBhcHBsaWNhdGlvbiBwcm9ncmFtbWVyIGJlZm9yZSBoZSBmaW5pc2hlcyBoaXMg
Y29kZS4gWWFuZ2NhdGFsb2cub3JnPGh0dHA6Ly95YW5nY2F0YWxvZy5vcmcvPiBoZWxwcywgYnV0
IG5vdCBhbGwgbW9kdWxlcyB3aWxsIGJlIHRoZXJlIGFuZCB0aGVyZSdzIGFsc28gYSB0aW1lIGRp
bWVuc2lvbi4gRGV2aWF0aW9ucyBmb3VuZCBhdCBzZXNzaW9uIHN0YXJ0IGFyZSBwcm9iYWJseSBu
b3Qgd29ydGggYW55dGhpbmcgb3RoZXIgdGhhbiBhcyB0cmlnZ2VycyBmb3IgdGhhdCBzcGVjaWFs
IGNvZGUgc29tZW9uZSB3cm90ZSB0byBoYW5kbGUgdGhlIHNpdHVhdGlvbi4NCg0KSSBmZWVsIGRl
dmlhdGlvbnMgc2hvdWxkIG5vdCBiZSByZWNvbW1lbmRlZCBsaWdodGx5LiBJbiB0aGUgcGFydGlj
dWxhciBjYXNlIHRoYXQgc3RhcnRlZCB0aGlzIGRpc2N1c3Npb24sIHRoZXknZCBicmluZyBsaXR0
bGUgdmFsdWUuDQoNCnJpZ2h0IC0gaXNu4oCZdCBkZXZpYXRpb24gc3VwcG9zZWQgdG8gYmUgZm9y
IHRoZSBjYXNlIHdoZXJlIHlvdSBkb27igJl0IHN1cHBvcnQgc29tZXRoaW5nIHRoYXQgaW1wbGVt
ZW50YXRpb25zIGFyZSBnZW5lcmFsbHkgZXhwZWN0ZWQgdG8gc3VwcG9ydD8NCg0KZm9yIHdoYXQg
SGVsZW4gd2FudHMgZmVhdHVyZXMgc2VlbSB0byBiZSBhIGJldHRlciBmaXQgLSBhdCBsZWFzdCB0
byBtZS4NCg0KDQpGZWF0dXJlcyBhcmUgaW50ZW5kZWQgdG8gY29udmV5IHRoYXQgdGhlIGZ1bmN0
aW9uYWxpdHkgaXMgb3B0aW9uYWwuDQpQcmVzdW1hYmx5IHRoZSBkYXRhIG1vZGVsIGlzIGF0dGVt
cHRpbmcgdG8gZGVsaXZlciBzb21lIGZ1bmN0aW9uYWxpdHkgdG8gdGhlIGNsaWVudCBkZXZlbG9w
ZXIuDQpGZWF0dXJlcyBjb3JyZXNwb25kIHdlbGwgdG8gb3B0aW9uYWwgcHJvdG9jb2wgY2FwYWJp
bGl0aWVzLg0KR2VuZXJhbGx5IGEgc2luZ2xlIGNvdW50ZXIgaXMgbm90IGNvbnNpZGVyZWQgdG8g
YmUgaGlnaC1sZXZlbCBmdW5jdGlvbmFsaXR5Lg0KDQpBc2sgdGhlIHF1ZXN0aW9uICJXaHkgaXMg
Y291bnRlciBGT08gbWlzc2luZz8iDQoNCkExKSBiZWNhdXNlIGRldmljZSBYWVogZG9lcyBub3Qg
c3VwcG9ydCBpdA0KDQpBMikgYmVjYXVzZSBpdCBjb3VudHMgdGhlIEZJWlpCQU5HIHByb3RvY29s
LCBhbmQgdGhhdCBwcm90b2NvbCBpcyBub3QgdXNlZCBvbiBldmVyeSBkZXZpY2UNCg0KDQpJZiBB
MSB0aGVuIHVzZSBkZXZpYXRpb25zLiBJZiBBMiB0aGVuIHVzZSBmZWF0dXJlcy4NCg0Kc3VyZSAt
IGlmIG1vc3QgZGV2aWNlcyBzdXBwb3J0IG1vc3QgY291bnRlcnMgdGhhdOKAmXMgdGhlIHdheSBJ
4oCZZCBnby4NCg0KYnV0IHdoYXQgaWYgbW9zdCBkZXZpY2VzIGRvbuKAmXQgc3VwcG9ydCBtb3N0
IG9mIHRoZSBjb3VudGVycz8gIFNlZW1zIGxpa2Ugd2XigJlkIGhhdmUgYSBsb3Qgb2YgZGV2aWF0
aW9uIGdvaW5nIG9u4oCmDQoNCg0KDQpHaWxlcw0KDQoNCg0KQW5keQ0KDQo=

--_000_81D3CC70013F4D92A53DA6A761DF0D98ciscocom_
Content-Type: text/html; charset="utf-8"
Content-ID: <28E4C31292091D4E99344964C326A173@emea.cisco.com>
Content-Transfer-Encoding: base64

PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i
dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjwvaGVhZD4NCjxib2R5IHN0eWxlPSJ3b3JkLXdy
YXA6IGJyZWFrLXdvcmQ7IC13ZWJraXQtbmJzcC1tb2RlOiBzcGFjZTsgLXdlYmtpdC1saW5lLWJy
ZWFrOiBhZnRlci13aGl0ZS1zcGFjZTsiIGNsYXNzPSIiPg0KT24gMTcgQXVnIDIwMTcsIGF0IDE3
OjA2LCBBbmR5IEJpZXJtYW4gJmx0OzxhIGhyZWY9Im1haWx0bzphbmR5QHl1bWF3b3Jrcy5jb20i
IGNsYXNzPSIiPmFuZHlAeXVtYXdvcmtzLmNvbTwvYT4mZ3Q7IHdyb3RlOjxiciBjbGFzcz0iIj4N
CjxkaXY+DQo8YmxvY2txdW90ZSB0eXBlPSJjaXRlIiBjbGFzcz0iIj48YnIgY2xhc3M9IkFwcGxl
LWludGVyY2hhbmdlLW5ld2xpbmUiPg0KPGRpdiBjbGFzcz0iIj4NCjxkaXYgY2xhc3M9ImdtYWls
X2V4dHJhIiBzdHlsZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAxMnB4OyBm
b250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0
OiBub3JtYWw7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0
LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsg
d29yZC1zcGFjaW5nOiAwcHg7IC13ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDBweDsiPg0KPGJy
IGNsYXNzPSJBcHBsZS1pbnRlcmNoYW5nZS1uZXdsaW5lIj4NCjxiciBjbGFzcz0iIj4NCjxkaXYg
Y2xhc3M9ImdtYWlsX3F1b3RlIj5PbiBUaHUsIEF1ZyAxNywgMjAxNyBhdCA4OjU2IEFNLCBHaWxl
cyBIZXJvbiAoZ2loZXJvbik8c3BhbiBjbGFzcz0iQXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJz
cDs8L3NwYW4+PHNwYW4gZGlyPSJsdHIiIGNsYXNzPSIiPiZsdDs8YSBocmVmPSJtYWlsdG86Z2lo
ZXJvbkBjaXNjby5jb20iIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0iIj5naWhlcm9uQGNpc2NvLmNv
bTwvYT4mZ3Q7PC9zcGFuPjxzcGFuIGNsYXNzPSJBcHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNw
Ozwvc3Bhbj53cm90ZTo8YnIgY2xhc3M9IiI+DQo8YmxvY2txdW90ZSBjbGFzcz0iZ21haWxfcXVv
dGUiIHN0eWxlPSJtYXJnaW46IDBweCAwcHggMHB4IDAuOGV4OyBib3JkZXItbGVmdC13aWR0aDog
MXB4OyBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7IGJvcmRlci1sZWZ0LWNvbG9yOiByZ2IoMjA0
LCAyMDQsIDIwNCk7IHBhZGRpbmctbGVmdDogMWV4OyI+DQo8ZGl2IHN0eWxlPSJ3b3JkLXdyYXA6
IGJyZWFrLXdvcmQ7IiBjbGFzcz0iIj5PbiAxNyBBdWcgMjAxNywgYXQgMTY6NDksIEphbiBMaW5k
YmxhZCAmbHQ7PGEgaHJlZj0ibWFpbHRvOmphbmxAdGFpbC1mLmNvbSIgdGFyZ2V0PSJfYmxhbmsi
IGNsYXNzPSIiPmphbmxAdGFpbC1mLmNvbTwvYT4mZ3Q7IHdyb3RlOjxiciBjbGFzcz0iIj4NCjxk
aXYgY2xhc3M9IiI+DQo8YmxvY2txdW90ZSB0eXBlPSJjaXRlIiBjbGFzcz0iIj48YnIgY2xhc3M9
Im1fNDkzMTg1NzQxNzI4NjI2MDcxN0FwcGxlLWludGVyY2hhbmdlLW5ld2xpbmUiPg0KPGRpdiBj
bGFzcz0iIj4NCjxkaXYgc3R5bGU9IndvcmQtd3JhcDogYnJlYWstd29yZDsiIGNsYXNzPSIiPg0K
PGRpdiBjbGFzcz0iIj4NCjxibG9ja3F1b3RlIHR5cGU9ImNpdGUiIGNsYXNzPSIiPg0KPGRpdiBj
bGFzcz0iZ21haWxfcXVvdGUiIHN0eWxlPSJmb250LWZhbWlseTogVGltZXNOZXdSb21hblBTTVQ7
IGZvbnQtc2l6ZTogMTRweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQtY2Fwczog
bm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyB0ZXh0
LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IHdo
aXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtc3BhY2luZzogMHB4OyI+DQo8YmxvY2txdW90ZSBjbGFz
cz0iZ21haWxfcXVvdGUiIHN0eWxlPSJtYXJnaW46IDBweCAwcHggMHB4IDAuOGV4OyBib3JkZXIt
bGVmdC13aWR0aDogMXB4OyBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7IGJvcmRlci1sZWZ0LWNv
bG9yOiByZ2IoMjA0LCAyMDQsIDIwNCk7IHBhZGRpbmctbGVmdDogMWV4OyI+DQpIYXZlIHlvdSBl
dmVyIHNlZW4gYSBzbWFydCBjbGllbnQgdGhhdCBjYW4gY29wZSB3aXRoIHJhbmRvbWx5IGRldmlh
dGVkIFlBTkcgbW9kZWxzLCB1bmxlc3MgYSBwcm9ncmFtbWVyIGhhcyBpbnRlcnZlbmVkIGFuZCBj
cmVhdGVkIHNwZWNpYWwgY29kZSBmb3IgaGFuZGluZyB0aGF0IHBhcnRpY3VsYXIgZGV2aWF0aW5n
IGRldmljZSB0eXBlPyBJIGhhdmUgbm90LjxiciBjbGFzcz0iIj4NCjwvYmxvY2txdW90ZT4NCjxk
aXYgY2xhc3M9IiI+PGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSIiPjxiciBjbGFz
cz0iIj4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0iIj5Eb2Vzbid0IHlvdXIgY2xpZW50IGJ1aWxkIGEg
c2Vzc2lvbi1zcGVjaWZpYyBzY2hlbWEgdHJlZSBiYXNlZCBvbiB0aGUgYWR2ZXJ0aXNlZCBtb2R1
bGVzPzwvZGl2Pg0KPGRpdiBjbGFzcz0iIj48YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxkaXYgY2xh
c3M9IiI+RGV2aWF0aW9ucyBhcmUgY2xlYXJseSBiZXR0ZXIgdGhhbiBqdXN0IG5vdCByZXR1cm5p
bmcgYW55dGhpbmcuPC9kaXY+DQo8ZGl2IGNsYXNzPSIiPlRoZXkgdGVsbCB0aGUgY2xpZW50IHRo
YXQgdGhlIG1pc3NpbmcgY291bnRlcnMgYXJlIG5vdCBpbXBsZW1lbnRlZCBhcyBvcHBvc2VkPC9k
aXY+DQo8ZGl2IGNsYXNzPSIiPnRvIHBvc3NpYmx5IGEgdGVtcG9yYXJ5LCByZWNvdmVyYWJsZSBj
b25kaXRpb24uPC9kaXY+DQo8ZGl2IGNsYXNzPSIiPjxiciBjbGFzcz0iIj4NCjwvZGl2Pg0KPGRp
diBjbGFzcz0iIj5EZXZpYXRpb25zIGFyZSBrbm93biBhdCBzZXNzaW9uIHN0YXJ0dXAgdGltZSBi
dXQgdGhleSBjYW4gYWxzbyBiZSBrbm93biBpbiBhZHZhbmNlLjwvZGl2Pg0KPGRpdiBjbGFzcz0i
Ij5WZW5kb3JzIHVzZSBuYW1pbmcgY29udmVudGlvbnMgdG8gc3BlY2lmeSB0aGUgcGxhdGZvcm0t
c3BlY2lmaWMgZGV2aWF0aW9ucy48L2Rpdj4NCjxkaXYgY2xhc3M9IiI+VG9vbHMgbGlrZTxzcGFu
IGNsYXNzPSJtXzQ5MzE4NTc0MTcyODYyNjA3MTdBcHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNw
Ozwvc3Bhbj48YSBocmVmPSJodHRwOi8veWFuZ2NhdGFsb2cub3JnLyIgdGFyZ2V0PSJfYmxhbmsi
IGNsYXNzPSIiPnlhbmdjYXRhbG9nLm9yZzwvYT48c3BhbiBjbGFzcz0ibV80OTMxODU3NDE3Mjg2
MjYwNzE3QXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+Y2FuIG1ha2UgdGhpcyBw
cm9jZXNzIGF1dG9tYXRlZA0KIGFuZCBkZS1mYWN0byBzdGFuZGFyZGl6ZWQuPC9kaXY+DQo8L2Rp
dj4NCjwvYmxvY2txdW90ZT4NCjxkaXYgY2xhc3M9IiI+PGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8
ZGl2IGNsYXNzPSIiPk5TTyBpdHNlbGYgd2lsbCBiZSBqdXN0IGZpbmUsIGJ1dCBJJ20gd29ycmll
ZCBhYm91dCB0aGUgcGVvcGxlIGJ1aWxkaW5nIGFwcGxpY2F0aW9ucyBvbiB0b3Agb2YgTlNPLCBl
LmcuIGFuIEwzVlBOIGFwcGxpY2F0aW9uLiBMZXQncyBzYXkgYSBkZXZpYXRpb24gY29tZXMgdXAg
YXQgc2Vzc2lvbiBzdGFydCwgd2hhdCdzIHRoZSBhcHBsaWNhdGlvbiBzdXBwb3NlZCB0byBkbyB0
aGVuPyBJIGNhbid0IHRoaW5rIG9mIG11Y2ggdGhhdA0KIGRvZXNuJ3QgaW52b2x2ZSBhIHByb2dy
YW1tZXIuPC9kaXY+DQo8ZGl2IGNsYXNzPSIiPjxiciBjbGFzcz0iIj4NCjwvZGl2Pg0KPGRpdiBj
bGFzcz0iIj5EZWNsYXJlZCBkZXZpYXRpb25zIGFyZSBjbGVhcmx5IGJldHRlciB0aGFuIGRldmlh
dGluZyBhbmQgbm90IHRlbGxpbmcuIEJ1dCB0aGV5IGFyZSBvbmx5IHJlYWxseSB3b3J0aCBhbnl0
aGluZyBpZiB0aGV5IGFyZSBrbm93biB0byB0aGUgYXBwbGljYXRpb24gcHJvZ3JhbW1lciBiZWZv
cmUgaGUgZmluaXNoZXMgaGlzIGNvZGUuPHNwYW4gY2xhc3M9IkFwcGxlLWNvbnZlcnRlZC1zcGFj
ZSI+Jm5ic3A7PC9zcGFuPjxhIGhyZWY9Imh0dHA6Ly95YW5nY2F0YWxvZy5vcmcvIiB0YXJnZXQ9
Il9ibGFuayIgY2xhc3M9IiI+WWFuZ2NhdGFsb2cub3JnPC9hPiZuYnNwO2hlbHBzLA0KIGJ1dCBu
b3QgYWxsIG1vZHVsZXMgd2lsbCBiZSB0aGVyZSBhbmQgdGhlcmUncyBhbHNvIGEgdGltZSBkaW1l
bnNpb24uIERldmlhdGlvbnMgZm91bmQgYXQgc2Vzc2lvbiBzdGFydCBhcmUgcHJvYmFibHkgbm90
IHdvcnRoIGFueXRoaW5nIG90aGVyIHRoYW4gYXMgdHJpZ2dlcnMgZm9yIHRoYXQgc3BlY2lhbCBj
b2RlIHNvbWVvbmUgd3JvdGUgdG8gaGFuZGxlIHRoZSBzaXR1YXRpb24uPC9kaXY+DQo8ZGl2IGNs
YXNzPSIiPjxiciBjbGFzcz0iIj4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0iIj5JIGZlZWwgZGV2aWF0
aW9ucyBzaG91bGQgbm90IGJlIHJlY29tbWVuZGVkIGxpZ2h0bHkuIEluIHRoZSBwYXJ0aWN1bGFy
IGNhc2UgdGhhdCBzdGFydGVkIHRoaXMgZGlzY3Vzc2lvbiwgdGhleSdkIGJyaW5nIGxpdHRsZSB2
YWx1ZS48L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvYmxvY2txdW90ZT4NCjxkaXYg
Y2xhc3M9IiI+PGJyIGNsYXNzPSIiPg0KPC9kaXY+DQpyaWdodCAtIGlzbuKAmXQgZGV2aWF0aW9u
IHN1cHBvc2VkIHRvIGJlIGZvciB0aGUgY2FzZSB3aGVyZSB5b3UgZG9u4oCZdCBzdXBwb3J0IHNv
bWV0aGluZyB0aGF0IGltcGxlbWVudGF0aW9ucyBhcmUgZ2VuZXJhbGx5IGV4cGVjdGVkIHRvIHN1
cHBvcnQ/PC9kaXY+DQo8ZGl2IGNsYXNzPSIiPjxiciBjbGFzcz0iIj4NCjwvZGl2Pg0KPGRpdiBj
bGFzcz0iIj5mb3Igd2hhdCBIZWxlbiB3YW50cyBmZWF0dXJlcyBzZWVtIHRvIGJlIGEgYmV0dGVy
IGZpdCAtIGF0IGxlYXN0IHRvIG1lLjwvZGl2Pg0KPHNwYW4gY2xhc3M9IkhPRW5aYiI+PGZvbnQg
Y29sb3I9IiM4ODg4ODgiIGNsYXNzPSIiPg0KPGRpdiBjbGFzcz0iIj48YnIgY2xhc3M9IiI+DQo8
L2Rpdj4NCjwvZm9udD48L3NwYW4+PC9kaXY+DQo8L2Jsb2NrcXVvdGU+DQo8ZGl2IGNsYXNzPSIi
PjxiciBjbGFzcz0iIj4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0iIj5GZWF0dXJlcyBhcmUgaW50ZW5k
ZWQgdG8gY29udmV5IHRoYXQgdGhlIGZ1bmN0aW9uYWxpdHkgaXMgb3B0aW9uYWwuPC9kaXY+DQo8
ZGl2IGNsYXNzPSIiPlByZXN1bWFibHkgdGhlIGRhdGEgbW9kZWwgaXMgYXR0ZW1wdGluZyB0byBk
ZWxpdmVyIHNvbWUgZnVuY3Rpb25hbGl0eSB0byB0aGUgY2xpZW50IGRldmVsb3Blci48L2Rpdj4N
CjxkaXYgY2xhc3M9IiI+RmVhdHVyZXMgY29ycmVzcG9uZCB3ZWxsIHRvIG9wdGlvbmFsIHByb3Rv
Y29sIGNhcGFiaWxpdGllcy48L2Rpdj4NCjxkaXYgY2xhc3M9IiI+R2VuZXJhbGx5IGEgc2luZ2xl
IGNvdW50ZXIgaXMgbm90IGNvbnNpZGVyZWQgdG8gYmUgaGlnaC1sZXZlbCBmdW5jdGlvbmFsaXR5
LjwvZGl2Pg0KPGRpdiBjbGFzcz0iIj48YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9
IiI+QXNrIHRoZSBxdWVzdGlvbiAmcXVvdDtXaHkgaXMgY291bnRlciBGT08gbWlzc2luZz8mcXVv
dDs8L2Rpdj4NCjxkaXYgY2xhc3M9IiI+PGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8ZGl2IGNsYXNz
PSIiPkExKSBiZWNhdXNlIGRldmljZSBYWVogZG9lcyBub3Qgc3VwcG9ydCBpdDwvZGl2Pg0KPGRp
diBjbGFzcz0iIj48YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9IiI+QTIpIGJlY2F1
c2UgaXQgY291bnRzIHRoZSBGSVpaQkFORyBwcm90b2NvbCwgYW5kIHRoYXQgcHJvdG9jb2wgaXMg
bm90IHVzZWQgb24gZXZlcnkgZGV2aWNlPC9kaXY+DQo8ZGl2IGNsYXNzPSIiPjxiciBjbGFzcz0i
Ij4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0iIj48YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxkaXYgY2xh
c3M9IiI+SWYgQTEgdGhlbiB1c2UgZGV2aWF0aW9ucy4gSWYgQTIgdGhlbiB1c2UgZmVhdHVyZXMu
PC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Jsb2NrcXVvdGU+DQo8ZGl2PjxiciBj
bGFzcz0iIj4NCjwvZGl2Pg0KPGRpdj5zdXJlIC0gaWYgbW9zdCBkZXZpY2VzIHN1cHBvcnQgbW9z
dCBjb3VudGVycyB0aGF04oCZcyB0aGUgd2F5IEnigJlkIGdvLjwvZGl2Pg0KPGRpdj48YnIgY2xh
c3M9IiI+DQo8L2Rpdj4NCjxkaXY+YnV0IHdoYXQgaWYgbW9zdCBkZXZpY2VzIGRvbuKAmXQgc3Vw
cG9ydCBtb3N0IG9mIHRoZSBjb3VudGVycz8gJm5ic3A7U2VlbXMgbGlrZSB3ZeKAmWQgaGF2ZSBh
IGxvdCBvZiBkZXZpYXRpb24gZ29pbmcgb27igKY8L2Rpdj4NCjxkaXY+PGJyIGNsYXNzPSIiPg0K
PC9kaXY+DQo8L2Rpdj4NCjxkaXY+DQo8YmxvY2txdW90ZSB0eXBlPSJjaXRlIiBjbGFzcz0iIj4N
CjxkaXYgY2xhc3M9IiI+DQo8ZGl2IGNsYXNzPSJnbWFpbF9leHRyYSIgc3R5bGU9ImZvbnQtZmFt
aWx5OiBIZWx2ZXRpY2E7IGZvbnQtc2l6ZTogMTJweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250
LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBmb250LXdlaWdodDogbm9ybWFsOyBsZXR0ZXItc3BhY2lu
Zzogbm9ybWFsOyB0ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFu
c2Zvcm06IG5vbmU7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtc3BhY2luZzogMHB4OyAtd2Vi
a2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7Ij4NCjxkaXYgY2xhc3M9ImdtYWlsX3F1b3RlIj4N
CjxkaXYgY2xhc3M9IiI+PGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSIiPiZuYnNw
OzxiciBjbGFzcz0iIj4NCjwvZGl2Pg0KPGJsb2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBz
dHlsZT0ibWFyZ2luOiAwcHggMHB4IDBweCAwLjhleDsgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDsg
Ym9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkOyBib3JkZXItbGVmdC1jb2xvcjogcmdiKDIwNCwgMjA0
LCAyMDQpOyBwYWRkaW5nLWxlZnQ6IDFleDsiPg0KPGRpdiBzdHlsZT0id29yZC13cmFwOiBicmVh
ay13b3JkOyIgY2xhc3M9IiI+PHNwYW4gY2xhc3M9IkhPRW5aYiI+PGZvbnQgY29sb3I9IiM4ODg4
ODgiIGNsYXNzPSIiPg0KPGRpdiBjbGFzcz0iIj48L2Rpdj4NCjxkaXYgY2xhc3M9IiI+R2lsZXM8
L2Rpdj4NCjxkaXYgY2xhc3M9IiI+PGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8L2ZvbnQ+PC9zcGFu
PjwvZGl2Pg0KPC9ibG9ja3F1b3RlPg0KPC9kaXY+DQo8YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxk
aXYgY2xhc3M9ImdtYWlsX2V4dHJhIiBzdHlsZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9u
dC1zaXplOiAxMnB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3Jt
YWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IHRleHQtYWxp
Z246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUt
c3BhY2U6IG5vcm1hbDsgd29yZC1zcGFjaW5nOiAwcHg7IC13ZWJraXQtdGV4dC1zdHJva2Utd2lk
dGg6IDBweDsiPg0KPGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJnbWFpbF9leHRy
YSIgc3R5bGU9ImZvbnQtZmFtaWx5OiBIZWx2ZXRpY2E7IGZvbnQtc2l6ZTogMTJweDsgZm9udC1z
dHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBmb250LXdlaWdodDogbm9y
bWFsOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyB0ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1pbmRl
bnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQt
c3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7Ij4NCkFuZHk8L2Rp
dj4NCjwvZGl2Pg0KPC9ibG9ja3F1b3RlPg0KPC9kaXY+DQo8YnIgY2xhc3M9IiI+DQo8L2JvZHk+
DQo8L2h0bWw+DQo=

--_000_81D3CC70013F4D92A53DA6A761DF0D98ciscocom_--


From nobody Thu Aug 17 09:15:47 2017
Return-Path: <nstrahle@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3D9121321EA for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 09:15:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.019
X-Spam-Level: 
X-Spam-Status: No, score=-2.019 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Ej-5bVmxapQv for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 09:15:43 -0700 (PDT)
Received: from NAM02-BL2-obe.outbound.protection.outlook.com (mail-bl2nam02on0125.outbound.protection.outlook.com [104.47.38.125]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 199761321D5 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 09:15:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=QFnTcjh59E5szpEWewzxrEoXjSuMD3VtArqwwNnbH44=; b=fMJQqEVhPfWvzSBGFvbsDVTUyzqs1uGwYVALIAeFfGXF4SPDYF24StHVEkYJYMoEtunRgOBX93Y32QBuGCTKoZnGt9Bqd/9AknYImNVQLH6AtLD1qyJVOy3rJHgUF5O0NQYoWHJxuMgnpzut4vD6qpKLCAB+E0AzaWN8p9KKn3A=
Received: from DM2PR0501MB1502.namprd05.prod.outlook.com (10.161.224.22) by DM2PR0501MB1631.namprd05.prod.outlook.com (10.160.136.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1362.12; Thu, 17 Aug 2017 16:15:40 +0000
Received: from DM2PR0501MB1502.namprd05.prod.outlook.com ([fe80::c930:96bd:8332:8e62]) by DM2PR0501MB1502.namprd05.prod.outlook.com ([fe80::c930:96bd:8332:8e62%18]) with mapi id 15.01.1385.003; Thu, 17 Aug 2017 16:15:40 +0000
From: Norm Strahle <nstrahle@juniper.net>
To: Andy Bierman <andy@yumaworks.com>, "Giles Heron (giheron)" <giheron@cisco.com>
CC: Jan Lindblad <janl@tail-f.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Thread-Topic: [yang-doctors] question regarding conditional/optional statements
Thread-Index: AdMWuspFVk5k9TDdRCeshA4HU2pVBgAW9agAAAZRqwAAAQt6gAAFESUAAAIrXoAAAUHegAAF/LuAAACeGgAAADY+AAAAW6SAAAASPXA=
Date: Thu, 17 Aug 2017 16:15:40 +0000
Message-ID: <DM2PR0501MB15021350F3E533671AFEA5CDCF830@DM2PR0501MB1502.namprd05.prod.outlook.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <6991455A-91A6-42A6-86A6-F19A95BCD133@tail-f.com> <20170817120451.syz54lblctjitbm7@elstar.local> <3EA7384C-2D5D-4C00-8479-75277389DE5B@tail-f.com> <CABCOCHR9ooj7VQZhqAzJkAR=9vn4C0okTDKQJ842p-Qa_2YZDg@mail.gmail.com> <36E052B8-9028-4EE6-A393-F68EA3EF926B@tail-f.com> <E180B2C6-3E5F-43A9-9A20-E7D056D2E23D@cisco.com> <CABCOCHTVM-XCSsUsCKPnvzYNWj8+OWD5LJOhOSGfHx2k2XEHzw@mail.gmail.com>
In-Reply-To: <CABCOCHTVM-XCSsUsCKPnvzYNWj8+OWD5LJOhOSGfHx2k2XEHzw@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is ) smtp.mailfrom=nstrahle@juniper.net; 
x-originating-ip: [66.129.241.11]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DM2PR0501MB1631; 6:bOFmWAG/aNZo/lX8WDi5FBLG6jVsI83QU22F+Z+43KIesLBq3FjNkiSoAvX2knJAFt8lumPJHSWPfcF6sAyyHglg5mNYgJ3XqU5/HEBhy82AU7hTbs4P84o+wnmpvH7a8uqB0MKzKOCPK/0gwfYAJzu2CiSLf2tzXaBMvccNmJxS/mDooVOSucmDNQrPuC3bJ5YMFUBCk+HunpO0EBOwk8i51QLti8T2JmoiNc665qnuvTVZlZA8nVkVne49ex7KW6uTTeuHs9gC7wrEKxMw8LT0A0wpIcGrK32OPWS+vVFfittYfH6jMk9cVe0DVDCrYBEOhN6yBiIiRDEDRb0G6w==; 5:eBvLuWZTXvqyc98aHQk43hYNkxyg5iSJ6TNwDO1xwDMegcfH/LBbpGSiIgUmyRPJZ2+kTob4k33Fs8eU6nJtWFVuCc06yawV3CzpYqjs5938s7BnYtgDmAwW+uP0kk3xtq0RTLhlDcK+0WV6U+h4Yg==; 24:SHbf4qS0P2QYNVhbDxHoW9VHhU+Ib1PDn2r3fbHpI2a4tt2xtWleBVVTN3EPa0xnkQMs6hQ3gafQ1Ov1B614q5Fj6lhJXtLe3tkiYttuy60=; 7:cOEXQSaA1DdwIX/YnOr8mYG6pasXwJqAP3euwBQXYpZMig+AzoAsPxY6oMjQfsNjyXBNYMuKSxY8QF56uJLspSl6OkkoTDgIeWGImpdxJ5j8tg3VPS91vG3ZrG57NNyZ0JEI1sH6mOmnfhJBVRN9TroMdwm1H0r98uJ+78mwnr6Ui2vhyadyooOxO2eM0QkVif8xLyw/ukOcSnQnAWrO8qBYdgw7jR6pogMnvbDNL0I=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;
x-ms-office365-filtering-correlation-id: 8f0cc3ba-9702-4a57-acdf-08d4e58b3476
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(300000502095)(300135100095)(22001)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603031)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:DM2PR0501MB1631; 
x-ms-traffictypediagnostic: DM2PR0501MB1631:
x-exchange-antispam-report-test: UriScan:(278428928389397)(138986009662008)(95692535739014)(21748063052155)(21534305686606);
x-microsoft-antispam-prvs: <DM2PR0501MB16315A2324C47F5F5D352308CF830@DM2PR0501MB1631.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(100000703101)(100105400095)(93006095)(93001095)(6055026)(6041248)(20161123562025)(20161123564025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123560025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:DM2PR0501MB1631; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:DM2PR0501MB1631; 
x-forefront-prvs: 0402872DA1
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39860400002)(377454003)(199003)(189002)(24454002)(3280700002)(25786009)(54356999)(50986999)(76176999)(3660700001)(4326008)(53546010)(105586002)(19609705001)(5250100002)(97736004)(8676002)(606006)(2906002)(86362001)(6116002)(3846002)(102836003)(8936002)(790700001)(101416001)(106356001)(7736002)(33656002)(66066001)(53376002)(7696004)(6246003)(74316002)(6506006)(2950100002)(229853002)(9686003)(14454004)(6306002)(6436002)(236005)(5660300001)(54896002)(189998001)(53936002)(81166006)(478600001)(81156014)(2900100001)(55016002)(93886005)(68736007)(99286003)(54906002); DIR:OUT; SFP:1102; SCL:1; SRVR:DM2PR0501MB1631; H:DM2PR0501MB1502.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; 
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_DM2PR0501MB15021350F3E533671AFEA5CDCF830DM2PR0501MB1502_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Aug 2017 16:15:40.8240 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR0501MB1631
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/P6ojeDflwWqkautplKFJDwPwguM>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 16:15:46 -0000

--_000_DM2PR0501MB15021350F3E533671AFEA5CDCF830DM2PR0501MB1502_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SW4gb3VyIHBhcnRpY3VsYXIgY2FzZSwgcXVldWUgY291bnRlcnMsIHRoZXJlIGFyZSBzZXZlcmFs
IGNvdW50ZXJzIGFuZCByYXRlcyBhc3NvY2lhdGVkIHdpdGggYSBnaXZlbiBxdWV1ZSAocGFja2V0
cywgYnl0ZXMsIHRyYW5zbWl0dGVkLCBkcm9wcGVkLCBxdWV1ZWQsIHRhaWwgZHJvcCwgY3VycmVu
dCBkZXB0aCwgcGVhaywgYXZlcmFnZSwgbWF4LCB0cmFuc21pdCByYXRlLCBkcm9wIHJhdGUsIGV0
Yy4pICBJdCBpcyBlYXN5IHRvIHNlZSB3aGVyZSBtb3N0IG1hbnVmYWN0dXJlcyBzdXBwb3J0IG1v
c3QsIGJ1dCBsaWtlbHkgbm90IGFsbC4gIFNvLCBsaWtlbHkgYWxsIHZlbmRvcnMgd291bGQgbmVl
ZCB0byBpbmRpY2F0ZSB3aGljaCBpdCBpcyBub3Qgc3VwcG9ydGluZy4gIFRvIG1lIGl0IHdvdWxk
IHNlZW0gdGhhdCBhIGZlYXR1cmUgYXQgbGVhc3QgZ2l2ZXMgdGhlIGNsaWVudCBkZXZlbG9wZXIg
dGhlIGhpbnQgdXAtZnJvbnQgdGhhdCB0aGlzIGl0ZW0gaXMgbm90IHJlcXVpcmVkIHRvIGJlIHN1
cHBvcnRlZCBhbmQgdG8gaGFuZGxlIHRoZSBjYXNlLiAgVGhlcmUgaXMgbm8gY2x1ZSBmcm9tIGEg
bW9kZWwgdGhhdCBhIGRldmlhdGlvbiBpcyBsaWtlbHksIHNvIG5vIHdheSB0byBhbnRpY2lwYXRl
LiBTbywgd291bGRu4oCZdCBhIGZlYXR1cmUgYmUgYmV0dGVyIGluIHRoaXMgY2FzZSB0aGFuIGEg
ZGV2aWF0aW9uPw0KDQpGcm9tOiBBbmR5IEJpZXJtYW4gW21haWx0bzphbmR5QHl1bWF3b3Jrcy5j
b21dDQpTZW50OiBUaHVyc2RheSwgQXVndXN0IDE3LCAyMDE3IDEyOjA2IFBNDQpUbzogR2lsZXMg
SGVyb24gKGdpaGVyb24pIDxnaWhlcm9uQGNpc2NvLmNvbT4NCkNjOiBKYW4gTGluZGJsYWQgPGph
bmxAdGFpbC1mLmNvbT47IHlhbmctZG9jdG9yc0BpZXRmLm9yZzsgSW5nLVdoZXIgQ2hlbiA8SW5n
LVdoZXJfQ2hlbkBqYWJpbC5jb20+OyBOb3JtIFN0cmFobGUgPG5zdHJhaGxlQGp1bmlwZXIubmV0
PjsgQXNlZW0gQ2hvdWRoYXJ5IChhc2VjaG91ZCkgPGFzZWNob3VkQGNpc2NvLmNvbT4NClN1Ympl
Y3Q6IFJlOiBbeWFuZy1kb2N0b3JzXSBxdWVzdGlvbiByZWdhcmRpbmcgY29uZGl0aW9uYWwvb3B0
aW9uYWwgc3RhdGVtZW50cw0KDQoNCg0KT24gVGh1LCBBdWcgMTcsIDIwMTcgYXQgODo1NiBBTSwg
R2lsZXMgSGVyb24gKGdpaGVyb24pIDxnaWhlcm9uQGNpc2NvLmNvbTxtYWlsdG86Z2loZXJvbkBj
aXNjby5jb20+PiB3cm90ZToNCk9uIDE3IEF1ZyAyMDE3LCBhdCAxNjo0OSwgSmFuIExpbmRibGFk
IDxqYW5sQHRhaWwtZi5jb208bWFpbHRvOmphbmxAdGFpbC1mLmNvbT4+IHdyb3RlOg0KDQpIYXZl
IHlvdSBldmVyIHNlZW4gYSBzbWFydCBjbGllbnQgdGhhdCBjYW4gY29wZSB3aXRoIHJhbmRvbWx5
IGRldmlhdGVkIFlBTkcgbW9kZWxzLCB1bmxlc3MgYSBwcm9ncmFtbWVyIGhhcyBpbnRlcnZlbmVk
IGFuZCBjcmVhdGVkIHNwZWNpYWwgY29kZSBmb3IgaGFuZGluZyB0aGF0IHBhcnRpY3VsYXIgZGV2
aWF0aW5nIGRldmljZSB0eXBlPyBJIGhhdmUgbm90Lg0KDQoNCkRvZXNuJ3QgeW91ciBjbGllbnQg
YnVpbGQgYSBzZXNzaW9uLXNwZWNpZmljIHNjaGVtYSB0cmVlIGJhc2VkIG9uIHRoZSBhZHZlcnRp
c2VkIG1vZHVsZXM/DQoNCkRldmlhdGlvbnMgYXJlIGNsZWFybHkgYmV0dGVyIHRoYW4ganVzdCBu
b3QgcmV0dXJuaW5nIGFueXRoaW5nLg0KVGhleSB0ZWxsIHRoZSBjbGllbnQgdGhhdCB0aGUgbWlz
c2luZyBjb3VudGVycyBhcmUgbm90IGltcGxlbWVudGVkIGFzIG9wcG9zZWQNCnRvIHBvc3NpYmx5
IGEgdGVtcG9yYXJ5LCByZWNvdmVyYWJsZSBjb25kaXRpb24uDQoNCkRldmlhdGlvbnMgYXJlIGtu
b3duIGF0IHNlc3Npb24gc3RhcnR1cCB0aW1lIGJ1dCB0aGV5IGNhbiBhbHNvIGJlIGtub3duIGlu
IGFkdmFuY2UuDQpWZW5kb3JzIHVzZSBuYW1pbmcgY29udmVudGlvbnMgdG8gc3BlY2lmeSB0aGUg
cGxhdGZvcm0tc3BlY2lmaWMgZGV2aWF0aW9ucy4NClRvb2xzIGxpa2UgeWFuZ2NhdGFsb2cub3Jn
PGh0dHA6Ly95YW5nY2F0YWxvZy5vcmcvPiBjYW4gbWFrZSB0aGlzIHByb2Nlc3MgYXV0b21hdGVk
IGFuZCBkZS1mYWN0byBzdGFuZGFyZGl6ZWQuDQoNCk5TTyBpdHNlbGYgd2lsbCBiZSBqdXN0IGZp
bmUsIGJ1dCBJJ20gd29ycmllZCBhYm91dCB0aGUgcGVvcGxlIGJ1aWxkaW5nIGFwcGxpY2F0aW9u
cyBvbiB0b3Agb2YgTlNPLCBlLmcuIGFuIEwzVlBOIGFwcGxpY2F0aW9uLiBMZXQncyBzYXkgYSBk
ZXZpYXRpb24gY29tZXMgdXAgYXQgc2Vzc2lvbiBzdGFydCwgd2hhdCdzIHRoZSBhcHBsaWNhdGlv
biBzdXBwb3NlZCB0byBkbyB0aGVuPyBJIGNhbid0IHRoaW5rIG9mIG11Y2ggdGhhdCBkb2Vzbid0
IGludm9sdmUgYSBwcm9ncmFtbWVyLg0KDQpEZWNsYXJlZCBkZXZpYXRpb25zIGFyZSBjbGVhcmx5
IGJldHRlciB0aGFuIGRldmlhdGluZyBhbmQgbm90IHRlbGxpbmcuIEJ1dCB0aGV5IGFyZSBvbmx5
IHJlYWxseSB3b3J0aCBhbnl0aGluZyBpZiB0aGV5IGFyZSBrbm93biB0byB0aGUgYXBwbGljYXRp
b24gcHJvZ3JhbW1lciBiZWZvcmUgaGUgZmluaXNoZXMgaGlzIGNvZGUuIFlhbmdjYXRhbG9nLm9y
ZzxodHRwOi8veWFuZ2NhdGFsb2cub3JnLz4gaGVscHMsIGJ1dCBub3QgYWxsIG1vZHVsZXMgd2ls
bCBiZSB0aGVyZSBhbmQgdGhlcmUncyBhbHNvIGEgdGltZSBkaW1lbnNpb24uIERldmlhdGlvbnMg
Zm91bmQgYXQgc2Vzc2lvbiBzdGFydCBhcmUgcHJvYmFibHkgbm90IHdvcnRoIGFueXRoaW5nIG90
aGVyIHRoYW4gYXMgdHJpZ2dlcnMgZm9yIHRoYXQgc3BlY2lhbCBjb2RlIHNvbWVvbmUgd3JvdGUg
dG8gaGFuZGxlIHRoZSBzaXR1YXRpb24uDQoNCkkgZmVlbCBkZXZpYXRpb25zIHNob3VsZCBub3Qg
YmUgcmVjb21tZW5kZWQgbGlnaHRseS4gSW4gdGhlIHBhcnRpY3VsYXIgY2FzZSB0aGF0IHN0YXJ0
ZWQgdGhpcyBkaXNjdXNzaW9uLCB0aGV5J2QgYnJpbmcgbGl0dGxlIHZhbHVlLg0KDQpyaWdodCAt
IGlzbuKAmXQgZGV2aWF0aW9uIHN1cHBvc2VkIHRvIGJlIGZvciB0aGUgY2FzZSB3aGVyZSB5b3Ug
ZG9u4oCZdCBzdXBwb3J0IHNvbWV0aGluZyB0aGF0IGltcGxlbWVudGF0aW9ucyBhcmUgZ2VuZXJh
bGx5IGV4cGVjdGVkIHRvIHN1cHBvcnQ/DQoNCmZvciB3aGF0IEhlbGVuIHdhbnRzIGZlYXR1cmVz
IHNlZW0gdG8gYmUgYSBiZXR0ZXIgZml0IC0gYXQgbGVhc3QgdG8gbWUuDQoNCg0KRmVhdHVyZXMg
YXJlIGludGVuZGVkIHRvIGNvbnZleSB0aGF0IHRoZSBmdW5jdGlvbmFsaXR5IGlzIG9wdGlvbmFs
Lg0KUHJlc3VtYWJseSB0aGUgZGF0YSBtb2RlbCBpcyBhdHRlbXB0aW5nIHRvIGRlbGl2ZXIgc29t
ZSBmdW5jdGlvbmFsaXR5IHRvIHRoZSBjbGllbnQgZGV2ZWxvcGVyLg0KRmVhdHVyZXMgY29ycmVz
cG9uZCB3ZWxsIHRvIG9wdGlvbmFsIHByb3RvY29sIGNhcGFiaWxpdGllcy4NCkdlbmVyYWxseSBh
IHNpbmdsZSBjb3VudGVyIGlzIG5vdCBjb25zaWRlcmVkIHRvIGJlIGhpZ2gtbGV2ZWwgZnVuY3Rp
b25hbGl0eS4NCg0KQXNrIHRoZSBxdWVzdGlvbiAiV2h5IGlzIGNvdW50ZXIgRk9PIG1pc3Npbmc/
Ig0KDQpBMSkgYmVjYXVzZSBkZXZpY2UgWFlaIGRvZXMgbm90IHN1cHBvcnQgaXQNCg0KQTIpIGJl
Y2F1c2UgaXQgY291bnRzIHRoZSBGSVpaQkFORyBwcm90b2NvbCwgYW5kIHRoYXQgcHJvdG9jb2wg
aXMgbm90IHVzZWQgb24gZXZlcnkgZGV2aWNlDQoNCg0KSWYgQTEgdGhlbiB1c2UgZGV2aWF0aW9u
cy4gSWYgQTIgdGhlbiB1c2UgZmVhdHVyZXMuDQoNCg0KDQpHaWxlcw0KDQoNCg0KQW5keQ0KDQo=

--_000_DM2PR0501MB15021350F3E533671AFEA5CDCF830DM2PR0501MB1502_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv
ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl
PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
IkNhbWJyaWEgTWF0aCI7DQoJcGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDt9DQpAZm9udC1m
YWNlDQoJe2ZvbnQtZmFtaWx5OkNhbGlicmk7DQoJcGFub3NlLTE6MiAxNSA1IDIgMiAyIDQgMyAy
IDQ7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpUaW1lc05ld1JvbWFuUFNNVDsNCglwYW5v
c2UtMTowIDAgMCAwIDAgMCAwIDAgMCAwO30NCi8qIFN0eWxlIERlZmluaXRpb25zICovDQpwLk1z
b05vcm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsDQoJe21hcmdpbjowaW47DQoJbWFy
Z2luLWJvdHRvbTouMDAwMXB0Ow0KCWZvbnQtc2l6ZToxMi4wcHQ7DQoJZm9udC1mYW1pbHk6IlRp
bWVzIE5ldyBSb21hbiIsc2VyaWY7fQ0KYTpsaW5rLCBzcGFuLk1zb0h5cGVybGluaw0KCXttc28t
c3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6Ymx1ZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJs
aW5lO30NCmE6dmlzaXRlZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZA0KCXttc28tc3R5bGUt
cHJpb3JpdHk6OTk7DQoJY29sb3I6cHVycGxlOw0KCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7
fQ0KcC5tc29ub3JtYWwwLCBsaS5tc29ub3JtYWwwLCBkaXYubXNvbm9ybWFsMA0KCXttc28tc3R5
bGUtbmFtZTptc29ub3JtYWw7DQoJbXNvLW1hcmdpbi10b3AtYWx0OmF1dG87DQoJbWFyZ2luLXJp
Z2h0OjBpbjsNCgltc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0bzsNCgltYXJnaW4tbGVmdDowaW47
DQoJZm9udC1zaXplOjEyLjBwdDsNCglmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIixzZXJp
Zjt9DQpzcGFuLm00OTMxODU3NDE3Mjg2MjYwNzE3YXBwbGUtY29udmVydGVkLXNwYWNlDQoJe21z
by1zdHlsZS1uYW1lOm1fNDkzMTg1NzQxNzI4NjI2MDcxN2FwcGxlLWNvbnZlcnRlZC1zcGFjZTt9
DQpzcGFuLmhvZW56Yg0KCXttc28tc3R5bGUtbmFtZTpob2VuemI7fQ0Kc3Bhbi5FbWFpbFN0eWxl
MjANCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtcmVwbHk7DQoJZm9udC1mYW1pbHk6IkNhbGli
cmkiLHNhbnMtc2VyaWY7DQoJY29sb3I6IzFGNDk3RDt9DQouTXNvQ2hwRGVmYXVsdA0KCXttc28t
c3R5bGUtdHlwZTpleHBvcnQtb25seTsNCglmb250LWZhbWlseToiQ2FsaWJyaSIsc2Fucy1zZXJp
Zjt9DQpAcGFnZSBXb3JkU2VjdGlvbjENCgl7c2l6ZTo4LjVpbiAxMS4waW47DQoJbWFyZ2luOjEu
MGluIDEuMGluIDEuMGluIDEuMGluO30NCmRpdi5Xb3JkU2VjdGlvbjENCgl7cGFnZTpXb3JkU2Vj
dGlvbjE7fQ0KLS0+PC9zdHlsZT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOnNoYXBlZGVm
YXVsdHMgdjpleHQ9ImVkaXQiIHNwaWRtYXg9IjEwMjYiIC8+DQo8L3htbD48IVtlbmRpZl0tLT48
IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOnNoYXBlbGF5b3V0IHY6ZXh0PSJlZGl0Ij4NCjxv
OmlkbWFwIHY6ZXh0PSJlZGl0IiBkYXRhPSIxIiAvPg0KPC9vOnNoYXBlbGF5b3V0PjwveG1sPjwh
W2VuZGlmXS0tPg0KPC9oZWFkPg0KPGJvZHkgbGFuZz0iRU4tVVMiIGxpbms9ImJsdWUiIHZsaW5r
PSJwdXJwbGUiPg0KPGRpdiBjbGFzcz0iV29yZFNlY3Rpb24xIj4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGli
cmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj5JbiBvdXIgcGFydGljdWxhciBjYXNl
LCBxdWV1ZSBjb3VudGVycywgdGhlcmUgYXJlIHNldmVyYWwgY291bnRlcnMgYW5kIHJhdGVzIGFz
c29jaWF0ZWQgd2l0aCBhIGdpdmVuIHF1ZXVlIChwYWNrZXRzLCBieXRlcywgdHJhbnNtaXR0ZWQs
IGRyb3BwZWQsIHF1ZXVlZCwgdGFpbA0KIGRyb3AsIGN1cnJlbnQgZGVwdGgsIHBlYWssIGF2ZXJh
Z2UsIG1heCwgdHJhbnNtaXQgcmF0ZSwgZHJvcCByYXRlLCBldGMuKSZuYnNwOyBJdCBpcyBlYXN5
IHRvIHNlZSB3aGVyZSBtb3N0IG1hbnVmYWN0dXJlcyBzdXBwb3J0IG1vc3QsIGJ1dCBsaWtlbHkg
bm90IGFsbC4mbmJzcDsgU28sIGxpa2VseSBhbGwgdmVuZG9ycyB3b3VsZCBuZWVkIHRvIGluZGlj
YXRlIHdoaWNoIGl0IGlzIG5vdCBzdXBwb3J0aW5nLiZuYnNwOyBUbyBtZSBpdCB3b3VsZCBzZWVt
IHRoYXQgYSBmZWF0dXJlDQogYXQgbGVhc3QgZ2l2ZXMgdGhlIGNsaWVudCBkZXZlbG9wZXIgdGhl
IGhpbnQgdXAtZnJvbnQgdGhhdCB0aGlzIGl0ZW0gaXMgbm90IHJlcXVpcmVkIHRvIGJlIHN1cHBv
cnRlZCBhbmQgdG8gaGFuZGxlIHRoZSBjYXNlLiZuYnNwOyBUaGVyZSBpcyBubyBjbHVlIGZyb20g
YSBtb2RlbCB0aGF0IGEgZGV2aWF0aW9uIGlzIGxpa2VseSwgc28gbm8gd2F5IHRvIGFudGljaXBh
dGUuIFNvLCB3b3VsZG7igJl0IGEgZmVhdHVyZSBiZSBiZXR0ZXIgaW4gdGhpcyBjYXNlIHRoYW4N
CiBhIGRldmlhdGlvbj88bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJp
JnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+
PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4w
cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmIj5Gcm9tOjwvc3Bh
bj48L2I+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2Fs
aWJyaSZxdW90OyxzYW5zLXNlcmlmIj4gQW5keSBCaWVybWFuIFttYWlsdG86YW5keUB5dW1hd29y
a3MuY29tXQ0KPGJyPg0KPGI+U2VudDo8L2I+IFRodXJzZGF5LCBBdWd1c3QgMTcsIDIwMTcgMTI6
MDYgUE08YnI+DQo8Yj5Ubzo8L2I+IEdpbGVzIEhlcm9uIChnaWhlcm9uKSAmbHQ7Z2loZXJvbkBj
aXNjby5jb20mZ3Q7PGJyPg0KPGI+Q2M6PC9iPiBKYW4gTGluZGJsYWQgJmx0O2phbmxAdGFpbC1m
LmNvbSZndDs7IHlhbmctZG9jdG9yc0BpZXRmLm9yZzsgSW5nLVdoZXIgQ2hlbiAmbHQ7SW5nLVdo
ZXJfQ2hlbkBqYWJpbC5jb20mZ3Q7OyBOb3JtIFN0cmFobGUgJmx0O25zdHJhaGxlQGp1bmlwZXIu
bmV0Jmd0OzsgQXNlZW0gQ2hvdWRoYXJ5IChhc2VjaG91ZCkgJmx0O2FzZWNob3VkQGNpc2NvLmNv
bSZndDs8YnI+DQo8Yj5TdWJqZWN0OjwvYj4gUmU6IFt5YW5nLWRvY3RvcnNdIHF1ZXN0aW9uIHJl
Z2FyZGluZyBjb25kaXRpb25hbC9vcHRpb25hbCBzdGF0ZW1lbnRzPG86cD48L286cD48L3NwYW4+
PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8ZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8ZGl2Pg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+T24gVGh1LCBBdWcgMTcsIDIwMTcgYXQgODo1NiBBTSwgR2lsZXMgSGVyb24gKGdp
aGVyb24pICZsdDs8YSBocmVmPSJtYWlsdG86Z2loZXJvbkBjaXNjby5jb20iIHRhcmdldD0iX2Js
YW5rIj5naWhlcm9uQGNpc2NvLmNvbTwvYT4mZ3Q7IHdyb3RlOjxvOnA+PC9vOnA+PC9wPg0KPGJs
b2NrcXVvdGUgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci1sZWZ0OnNvbGlkICNDQ0NDQ0MgMS4w
cHQ7cGFkZGluZzowaW4gMGluIDBpbiA2LjBwdDttYXJnaW4tbGVmdDo0LjhwdDttYXJnaW4tcmln
aHQ6MGluIj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5PbiAxNyBBdWcgMjAxNywgYXQg
MTY6NDksIEphbiBMaW5kYmxhZCAmbHQ7PGEgaHJlZj0ibWFpbHRvOmphbmxAdGFpbC1mLmNvbSIg
dGFyZ2V0PSJfYmxhbmsiPmphbmxAdGFpbC1mLmNvbTwvYT4mZ3Q7IHdyb3RlOjxvOnA+PC9vOnA+
PC9wPg0KPGRpdj4NCjxibG9ja3F1b3RlIHN0eWxlPSJtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1i
b3R0b206NS4wcHQiPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+
DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8YmxvY2txdW90ZSBzdHlsZT0ibWFyZ2luLXRvcDo1LjBw
dDttYXJnaW4tYm90dG9tOjUuMHB0Ij4NCjxkaXY+DQo8YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVy
Om5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgI0NDQ0NDQyAxLjBwdDtwYWRkaW5nOjBpbiAwaW4gMGlu
IDYuMHB0O21hcmdpbi1sZWZ0OjQuOHB0O21hcmdpbi1yaWdodDowaW4iPg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7
VGltZXNOZXdSb21hblBTTVQmcXVvdDssc2VyaWYiPkhhdmUgeW91IGV2ZXIgc2VlbiBhIHNtYXJ0
IGNsaWVudCB0aGF0IGNhbiBjb3BlIHdpdGggcmFuZG9tbHkgZGV2aWF0ZWQgWUFORyBtb2RlbHMs
IHVubGVzcyBhIHByb2dyYW1tZXIgaGFzIGludGVydmVuZWQgYW5kIGNyZWF0ZWQgc3BlY2lhbCBj
b2RlIGZvciBoYW5kaW5nIHRoYXQgcGFydGljdWxhcg0KIGRldmlhdGluZyBkZXZpY2UgdHlwZT8g
SSBoYXZlIG5vdC48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Jsb2NrcXVvdGU+DQo8ZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7VGltZXNOZXdSb21hblBTTVQmcXVvdDssc2VyaWYiPjxvOnA+Jm5ic3A7PC9v
OnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O1RpbWVzTmV3Um9tYW5Q
U01UJnF1b3Q7LHNlcmlmIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxk
aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtm
b250LWZhbWlseTomcXVvdDtUaW1lc05ld1JvbWFuUFNNVCZxdW90OyxzZXJpZiI+RG9lc24ndCB5
b3VyIGNsaWVudCBidWlsZCBhIHNlc3Npb24tc3BlY2lmaWMgc2NoZW1hIHRyZWUgYmFzZWQgb24g
dGhlIGFkdmVydGlzZWQgbW9kdWxlcz88bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxk
aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtm
b250LWZhbWlseTomcXVvdDtUaW1lc05ld1JvbWFuUFNNVCZxdW90OyxzZXJpZiI+PG86cD4mbmJz
cDs8L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGltZXNOZXdS
b21hblBTTVQmcXVvdDssc2VyaWYiPkRldmlhdGlvbnMgYXJlIGNsZWFybHkgYmV0dGVyIHRoYW4g
anVzdCBub3QgcmV0dXJuaW5nIGFueXRoaW5nLjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2
Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAu
NXB0O2ZvbnQtZmFtaWx5OiZxdW90O1RpbWVzTmV3Um9tYW5QU01UJnF1b3Q7LHNlcmlmIj5UaGV5
IHRlbGwgdGhlIGNsaWVudCB0aGF0IHRoZSBtaXNzaW5nIGNvdW50ZXJzIGFyZSBub3QgaW1wbGVt
ZW50ZWQgYXMgb3Bwb3NlZDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuNXB0O2ZvbnQtZmFt
aWx5OiZxdW90O1RpbWVzTmV3Um9tYW5QU01UJnF1b3Q7LHNlcmlmIj50byBwb3NzaWJseSBhIHRl
bXBvcmFyeSwgcmVjb3ZlcmFibGUgY29uZGl0aW9uLjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6
MTAuNXB0O2ZvbnQtZmFtaWx5OiZxdW90O1RpbWVzTmV3Um9tYW5QU01UJnF1b3Q7LHNlcmlmIj48
bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtU
aW1lc05ld1JvbWFuUFNNVCZxdW90OyxzZXJpZiI+RGV2aWF0aW9ucyBhcmUga25vd24gYXQgc2Vz
c2lvbiBzdGFydHVwIHRpbWUgYnV0IHRoZXkgY2FuIGFsc28gYmUga25vd24gaW4gYWR2YW5jZS48
bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtUaW1lc05l
d1JvbWFuUFNNVCZxdW90OyxzZXJpZiI+VmVuZG9ycyB1c2UgbmFtaW5nIGNvbnZlbnRpb25zIHRv
IHNwZWNpZnkgdGhlIHBsYXRmb3JtLXNwZWNpZmljIGRldmlhdGlvbnMuPG86cD48L286cD48L3Nw
YW4+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9
ImZvbnQtc2l6ZToxMC41cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGltZXNOZXdSb21hblBTTVQmcXVv
dDssc2VyaWYiPlRvb2xzIGxpa2U8c3BhbiBjbGFzcz0ibTQ5MzE4NTc0MTcyODYyNjA3MTdhcHBs
ZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNwOzwvc3Bhbj48YSBocmVmPSJodHRwOi8veWFuZ2NhdGFs
b2cub3JnLyIgdGFyZ2V0PSJfYmxhbmsiPnlhbmdjYXRhbG9nLm9yZzwvYT48c3BhbiBjbGFzcz0i
bTQ5MzE4NTc0MTcyODYyNjA3MTdhcHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNwOzwvc3Bhbj5j
YW4NCiBtYWtlIHRoaXMgcHJvY2VzcyBhdXRvbWF0ZWQgYW5kIGRlLWZhY3RvIHN0YW5kYXJkaXpl
ZC48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ibG9ja3F1b3RlPg0K
PGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+
DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+TlNPIGl0c2VsZiB3aWxsIGJlIGp1c3QgZmlu
ZSwgYnV0IEknbSB3b3JyaWVkIGFib3V0IHRoZSBwZW9wbGUgYnVpbGRpbmcgYXBwbGljYXRpb25z
IG9uIHRvcCBvZiBOU08sIGUuZy4gYW4gTDNWUE4gYXBwbGljYXRpb24uIExldCdzIHNheSBhIGRl
dmlhdGlvbiBjb21lcyB1cCBhdCBzZXNzaW9uIHN0YXJ0LCB3aGF0J3MgdGhlIGFwcGxpY2F0aW9u
IHN1cHBvc2VkIHRvIGRvIHRoZW4/IEkgY2FuJ3QgdGhpbmsgb2YNCiBtdWNoIHRoYXQgZG9lc24n
dCBpbnZvbHZlIGEgcHJvZ3JhbW1lci48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+RGVjbGFyZWQgZGV2aWF0aW9ucyBhcmUgY2xlYXJseSBiZXR0
ZXIgdGhhbiBkZXZpYXRpbmcgYW5kIG5vdCB0ZWxsaW5nLiBCdXQgdGhleSBhcmUgb25seSByZWFs
bHkgd29ydGggYW55dGhpbmcgaWYgdGhleSBhcmUga25vd24gdG8gdGhlIGFwcGxpY2F0aW9uIHBy
b2dyYW1tZXIgYmVmb3JlIGhlIGZpbmlzaGVzIGhpcyBjb2RlLg0KPGEgaHJlZj0iaHR0cDovL3lh
bmdjYXRhbG9nLm9yZy8iIHRhcmdldD0iX2JsYW5rIj5ZYW5nY2F0YWxvZy5vcmc8L2E+Jm5ic3A7
aGVscHMsIGJ1dCBub3QgYWxsIG1vZHVsZXMgd2lsbCBiZSB0aGVyZSBhbmQgdGhlcmUncyBhbHNv
IGEgdGltZSBkaW1lbnNpb24uIERldmlhdGlvbnMgZm91bmQgYXQgc2Vzc2lvbiBzdGFydCBhcmUg
cHJvYmFibHkgbm90IHdvcnRoIGFueXRoaW5nIG90aGVyIHRoYW4gYXMgdHJpZ2dlcnMgZm9yIHRo
YXQgc3BlY2lhbCBjb2RlDQogc29tZW9uZSB3cm90ZSB0byBoYW5kbGUgdGhlIHNpdHVhdGlvbi48
bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+
Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+SSBm
ZWVsIGRldmlhdGlvbnMgc2hvdWxkIG5vdCBiZSByZWNvbW1lbmRlZCBsaWdodGx5LiBJbiB0aGUg
cGFydGljdWxhciBjYXNlIHRoYXQgc3RhcnRlZCB0aGlzIGRpc2N1c3Npb24sIHRoZXknZCBicmlu
ZyBsaXR0bGUgdmFsdWUuPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8
L2Rpdj4NCjwvYmxvY2txdW90ZT4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZu
YnNwOzwvbzpwPjwvcD4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+cmlnaHQgLSBpc27i
gJl0IGRldmlhdGlvbiBzdXBwb3NlZCB0byBiZSBmb3IgdGhlIGNhc2Ugd2hlcmUgeW91IGRvbuKA
mXQgc3VwcG9ydCBzb21ldGhpbmcgdGhhdCBpbXBsZW1lbnRhdGlvbnMgYXJlIGdlbmVyYWxseSBl
eHBlY3RlZCB0byBzdXBwb3J0PzxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIj5mb3Igd2hhdCBIZWxlbiB3YW50cyBmZWF0dXJlcyBzZWVtIHRvIGJl
IGEgYmV0dGVyIGZpdCAtIGF0IGxlYXN0IHRvIG1lLjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImNvbG9yOiM4ODg4ODgiPjxv
OnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Jsb2NrcXVvdGU+
DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8L2Rp
dj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5GZWF0dXJlcyBhcmUgaW50ZW5kZWQgdG8g
Y29udmV5IHRoYXQgdGhlIGZ1bmN0aW9uYWxpdHkgaXMgb3B0aW9uYWwuPG86cD48L286cD48L3A+
DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5QcmVzdW1hYmx5IHRoZSBkYXRh
IG1vZGVsIGlzIGF0dGVtcHRpbmcgdG8gZGVsaXZlciBzb21lIGZ1bmN0aW9uYWxpdHkgdG8gdGhl
IGNsaWVudCBkZXZlbG9wZXIuPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFz
cz0iTXNvTm9ybWFsIj5GZWF0dXJlcyBjb3JyZXNwb25kIHdlbGwgdG8gb3B0aW9uYWwgcHJvdG9j
b2wgY2FwYWJpbGl0aWVzLjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+R2VuZXJhbGx5IGEgc2luZ2xlIGNvdW50ZXIgaXMgbm90IGNvbnNpZGVyZWQg
dG8gYmUgaGlnaC1sZXZlbCBmdW5jdGlvbmFsaXR5LjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8L2Rpdj4N
CjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5Bc2sgdGhlIHF1ZXN0aW9uICZxdW90O1doeSBp
cyBjb3VudGVyIEZPTyBtaXNzaW5nPyZxdW90OzxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8L2Rpdj4NCjxk
aXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5BMSkgYmVjYXVzZSBkZXZpY2UgWFlaIGRvZXMgbm90
IHN1cHBvcnQgaXQ8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+QTIpIGJlY2F1c2UgaXQgY291bnRzIHRoZSBGSVpaQkFORyBwcm90b2NvbCwgYW5k
IHRoYXQgcHJvdG9jb2wgaXMgbm90IHVzZWQgb24gZXZlcnkgZGV2aWNlPG86cD48L286cD48L3A+
DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwv
cD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+
PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+SWYgQTEgdGhlbiB1c2Ug
ZGV2aWF0aW9ucy4gSWYgQTIgdGhlbiB1c2UgZmVhdHVyZXMuPG86cD48L286cD48L3A+DQo8L2Rp
dj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0K
PC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Jm5ic3A7PG86cD48L286cD48L3A+
DQo8L2Rpdj4NCjxibG9ja3F1b3RlIHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpzb2xp
ZCAjQ0NDQ0NDIDEuMHB0O3BhZGRpbmc6MGluIDBpbiAwaW4gNi4wcHQ7bWFyZ2luLWxlZnQ6NC44
cHQ7bWFyZ2luLXJpZ2h0OjBpbiI+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
PjxzcGFuIHN0eWxlPSJjb2xvcjojODg4ODg4Ij5HaWxlczxvOnA+PC9vOnA+PC9zcGFuPjwvcD4N
CjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJjb2xvcjoj
ODg4ODg4Ij48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9i
bG9ja3F1b3RlPg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpw
PjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9v
OnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+QW5keTxvOnA+PC9v
OnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8
L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2JvZHk+DQo8L2h0bWw+DQo=

--_000_DM2PR0501MB15021350F3E533671AFEA5CDCF830DM2PR0501MB1502_--


From nobody Thu Aug 17 10:21:20 2017
Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6A2F91323AE for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 10:21:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level: 
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 3d6m35aMNmrS for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 10:21:16 -0700 (PDT)
Received: from mail-wr0-x229.google.com (mail-wr0-x229.google.com [IPv6:2a00:1450:400c:c0c::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 13517120727 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 10:21:16 -0700 (PDT)
Received: by mail-wr0-x229.google.com with SMTP id f8so5218473wrf.3 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 10:21:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=rwhMNg06HiyQv0LyFAICInomAnVc3fIuugWrN4c48/c=; b=UV2tzB1Zb1e+YrNiLfTfAsT1vtAzlrvsimS9AvtZLx5JqAXKkFbWYDfDGKg1LvMLUC t0rHbUvsG1eWKAnlPfuQazqLYCwcDie+LVIEVxbq2aaKF+rjBawIZbrhaj7rMwTOfgZd FpdRMWbilKDV1IVBQM1GE8I251sbV/hMAbE1zAsM0Kr3d1lqNzIiphc7QCPGonkbtS8C 2vCSYg6RC36Iw0jDfG7Wnn5eum4TNEZhHnH0KoYKyIDyJwKodwrOpBMO3+siIEDR4ZP5 G5aqR+peLai0zKrtkR5Pm7Ho85lyrV+buNKqyHTYW3cL8/5qWWtMOhwqpZsFvuwp8v9o JzPw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=rwhMNg06HiyQv0LyFAICInomAnVc3fIuugWrN4c48/c=; b=ZZ122tbhna1OBRvbga/BtFw2En4dTp+qVin2bS6qTFbn0Quz7xmPeF1Fq+x12RNMsQ q2HvH6MBov7tu8GF3G+IzHiiX6pKQfAhKPgIli2Qth5Gq9MCXBkiYykuVzcnmBFgWAKZ l7+IQk/T4ThmExgY9+YYs2YqyntBo32gg1ZjLejubyf4FhbgQdgdKRdOKey2x8m4eFTR msAnxWBtx1r7cCXI+7tIBPCAtrTlnOxG71i5fXYxL3pzWyi3dX8eo+MEq17rWd+KlPeV rID96js6Yp+rViAtHqUBC5GFLcooAmbr345RVCwGibF45gEIUzJDLxB3v7x5nRrqlw84 7IZg==
X-Gm-Message-State: AHYfb5gWUG5T1TH5qoZSoA8YAgPBFgRLlPrqp/IrHX5WB3/SrSY4O/7m zoMnaXqauo02S0rnHPMZNLbKPk4lhmB9
X-Received: by 10.223.145.162 with SMTP id 31mr4210918wri.171.1502990474575; Thu, 17 Aug 2017 10:21:14 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.164.129 with HTTP; Thu, 17 Aug 2017 10:21:13 -0700 (PDT)
In-Reply-To: <DM2PR0501MB15021350F3E533671AFEA5CDCF830@DM2PR0501MB1502.namprd05.prod.outlook.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <6991455A-91A6-42A6-86A6-F19A95BCD133@tail-f.com> <20170817120451.syz54lblctjitbm7@elstar.local> <3EA7384C-2D5D-4C00-8479-75277389DE5B@tail-f.com> <CABCOCHR9ooj7VQZhqAzJkAR=9vn4C0okTDKQJ842p-Qa_2YZDg@mail.gmail.com> <36E052B8-9028-4EE6-A393-F68EA3EF926B@tail-f.com> <E180B2C6-3E5F-43A9-9A20-E7D056D2E23D@cisco.com> <CABCOCHTVM-XCSsUsCKPnvzYNWj8+OWD5LJOhOSGfHx2k2XEHzw@mail.gmail.com> <DM2PR0501MB15021350F3E533671AFEA5CDCF830@DM2PR0501MB1502.namprd05.prod.outlook.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 17 Aug 2017 10:21:13 -0700
Message-ID: <CABCOCHRr8YokU+rx9F6jvQ=6GOZp0K9J-a+TXY3RHQUTq5M=4A@mail.gmail.com>
To: Norm Strahle <nstrahle@juniper.net>
Cc: "Giles Heron (giheron)" <giheron@cisco.com>, Jan Lindblad <janl@tail-f.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>,  "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Content-Type: multipart/alternative; boundary="94eb2c0df14056a6900556f63d3c"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/nvA0K-9m-4g38Jb--HGjCxootxE>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 17:21:19 -0000

--94eb2c0df14056a6900556f63d3c
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi,

I guess it depends on what kind of functionality is being provided to the
client.
In this case it looks like there is no expectation of consistency or
requirement
for specific functionality. Features and deviations are both probably
overkill.

SMIv2 has the concept of GROUP and MANDATORY-GROUP.
In some ways SMIv2 conformance is much better than YANG,
except SNMP never got the capability discovery right.

Usually the groups have descriptions to say when a server should implement
the group.
If the criteria is "who knows, just implement it if you want" then the
module should make
that clear.


Andy


On Thu, Aug 17, 2017 at 9:15 AM, Norm Strahle <nstrahle@juniper.net> wrote:

> In our particular case, queue counters, there are several counters and
> rates associated with a given queue (packets, bytes, transmitted, dropped=
,
> queued, tail drop, current depth, peak, average, max, transmit rate, drop
> rate, etc.)  It is easy to see where most manufactures support most, but
> likely not all.  So, likely all vendors would need to indicate which it i=
s
> not supporting.  To me it would seem that a feature at least gives the
> client developer the hint up-front that this item is not required to be
> supported and to handle the case.  There is no clue from a model that a
> deviation is likely, so no way to anticipate. So, wouldn=E2=80=99t a feat=
ure be
> better in this case than a deviation?
>
>
>
> *From:* Andy Bierman [mailto:andy@yumaworks.com]
> *Sent:* Thursday, August 17, 2017 12:06 PM
> *To:* Giles Heron (giheron) <giheron@cisco.com>
> *Cc:* Jan Lindblad <janl@tail-f.com>; yang-doctors@ietf.org; Ing-Wher
> Chen <Ing-Wher_Chen@jabil.com>; Norm Strahle <nstrahle@juniper.net>;
> Aseem Choudhary (asechoud) <asechoud@cisco.com>
> *Subject:* Re: [yang-doctors] question regarding conditional/optional
> statements
>
>
>
>
>
>
>
> On Thu, Aug 17, 2017 at 8:56 AM, Giles Heron (giheron) <giheron@cisco.com=
>
> wrote:
>
> On 17 Aug 2017, at 16:49, Jan Lindblad <janl@tail-f.com> wrote:
>
>
>
> Have you ever seen a smart client that can cope with randomly deviated
> YANG models, unless a programmer has intervened and created special code
> for handing that particular deviating device type? I have not.
>
>
>
>
>
> Doesn't your client build a session-specific schema tree based on the
> advertised modules?
>
>
>
> Deviations are clearly better than just not returning anything.
>
> They tell the client that the missing counters are not implemented as
> opposed
>
> to possibly a temporary, recoverable condition.
>
>
>
> Deviations are known at session startup time but they can also be known i=
n
> advance.
>
> Vendors use naming conventions to specify the platform-specific deviation=
s.
>
> Tools like yangcatalog.org can make this process automated and de-facto
> standardized.
>
>
>
> NSO itself will be just fine, but I'm worried about the people building
> applications on top of NSO, e.g. an L3VPN application. Let's say a
> deviation comes up at session start, what's the application supposed to d=
o
> then? I can't think of much that doesn't involve a programmer.
>
>
>
> Declared deviations are clearly better than deviating and not telling. Bu=
t
> they are only really worth anything if they are known to the application
> programmer before he finishes his code. Yangcatalog.org
> <http://yangcatalog.org/> helps, but not all modules will be there and
> there's also a time dimension. Deviations found at session start are
> probably not worth anything other than as triggers for that special code
> someone wrote to handle the situation.
>
>
>
> I feel deviations should not be recommended lightly. In the particular
> case that started this discussion, they'd bring little value.
>
>
>
> right - isn=E2=80=99t deviation supposed to be for the case where you don=
=E2=80=99t
> support something that implementations are generally expected to support?
>
>
>
> for what Helen wants features seem to be a better fit - at least to me.
>
>
>
>
>
> Features are intended to convey that the functionality is optional.
>
> Presumably the data model is attempting to deliver some functionality to
> the client developer.
>
> Features correspond well to optional protocol capabilities.
>
> Generally a single counter is not considered to be high-level
> functionality.
>
>
>
> Ask the question "Why is counter FOO missing?"
>
>
>
> A1) because device XYZ does not support it
>
>
>
> A2) because it counts the FIZZBANG protocol, and that protocol is not use=
d
> on every device
>
>
>
>
>
> If A1 then use deviations. If A2 then use features.
>
>
>
>
>
>
>
> Giles
>
>
>
>
>
>
>
> Andy
>
>
>

--94eb2c0df14056a6900556f63d3c
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi,<div><br></div><div>I guess it depends on what kind of =
functionality is being provided to the client.</div><div>In this case it lo=
oks like there is no expectation of consistency or requirement</div><div>fo=
r specific functionality. Features and deviations are both probably overkil=
l.</div><div><br></div><div>SMIv2 has the concept of GROUP and MANDATORY-GR=
OUP.</div><div>In some ways SMIv2 conformance is much better than YANG,</di=
v><div>except SNMP never got the capability discovery right.</div><div><br>=
</div><div>Usually the groups have descriptions to say when a server should=
 implement the group.</div><div>If the criteria is &quot;who knows, just im=
plement it if you want&quot; then the module should make</div><div>that cle=
ar.</div><div><br></div><div><br></div><div>Andy</div><div><br></div></div>=
<div class=3D"gmail_extra"><br><div class=3D"gmail_quote">On Thu, Aug 17, 2=
017 at 9:15 AM, Norm Strahle <span dir=3D"ltr">&lt;<a href=3D"mailto:nstrah=
le@juniper.net" target=3D"_blank">nstrahle@juniper.net</a>&gt;</span> wrote=
:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-le=
ft:1px #ccc solid;padding-left:1ex">





<div lang=3D"EN-US" link=3D"blue" vlink=3D"purple">
<div class=3D"m_219146844697508737WordSection1">
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,sans-serif;color:#1f497d">In our particular case, queue counter=
s, there are several counters and rates associated with a given queue (pack=
ets, bytes, transmitted, dropped, queued, tail
 drop, current depth, peak, average, max, transmit rate, drop rate, etc.)=
=C2=A0 It is easy to see where most manufactures support most, but likely n=
ot all.=C2=A0 So, likely all vendors would need to indicate which it is not=
 supporting.=C2=A0 To me it would seem that a feature
 at least gives the client developer the hint up-front that this item is no=
t required to be supported and to handle the case.=C2=A0 There is no clue f=
rom a model that a deviation is likely, so no way to anticipate. So, wouldn=
=E2=80=99t a feature be better in this case than
 a deviation?<u></u><u></u></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:&quot;Ca=
libri&quot;,sans-serif;color:#1f497d"><u></u>=C2=A0<u></u></span></p>
<p class=3D"MsoNormal"><b><span style=3D"font-size:11.0pt;font-family:&quot=
;Calibri&quot;,sans-serif">From:</span></b><span style=3D"font-size:11.0pt;=
font-family:&quot;Calibri&quot;,sans-serif"> Andy Bierman [mailto:<a href=
=3D"mailto:andy@yumaworks.com" target=3D"_blank">andy@yumaworks.com</a>]
<br>
<b>Sent:</b> Thursday, August 17, 2017 12:06 PM<br>
<b>To:</b> Giles Heron (giheron) &lt;<a href=3D"mailto:giheron@cisco.com" t=
arget=3D"_blank">giheron@cisco.com</a>&gt;<br>
<b>Cc:</b> Jan Lindblad &lt;<a href=3D"mailto:janl@tail-f.com" target=3D"_b=
lank">janl@tail-f.com</a>&gt;; <a href=3D"mailto:yang-doctors@ietf.org" tar=
get=3D"_blank">yang-doctors@ietf.org</a>; Ing-Wher Chen &lt;<a href=3D"mail=
to:Ing-Wher_Chen@jabil.com" target=3D"_blank">Ing-Wher_Chen@jabil.com</a>&g=
t;; Norm Strahle &lt;<a href=3D"mailto:nstrahle@juniper.net" target=3D"_bla=
nk">nstrahle@juniper.net</a>&gt;; Aseem Choudhary (asechoud) &lt;<a href=3D=
"mailto:asechoud@cisco.com" target=3D"_blank">asechoud@cisco.com</a>&gt;<br=
>
<b>Subject:</b> Re: [yang-doctors] question regarding conditional/optional =
statements<u></u><u></u></span></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<p class=3D"MsoNormal">On Thu, Aug 17, 2017 at 8:56 AM, Giles Heron (gihero=
n) &lt;<a href=3D"mailto:giheron@cisco.com" target=3D"_blank">giheron@cisco=
.com</a>&gt; wrote:<u></u><u></u></p>
<blockquote style=3D"border:none;border-left:solid #cccccc 1.0pt;padding:0i=
n 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class=3D"MsoNormal">On 17 Aug 2017, at 16:49, Jan Lindblad &lt;<a href=
=3D"mailto:janl@tail-f.com" target=3D"_blank">janl@tail-f.com</a>&gt; wrote=
:<u></u><u></u></p>
<div>
<blockquote style=3D"margin-top:5.0pt;margin-bottom:5.0pt">
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<div>
<div>
<blockquote style=3D"margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<blockquote style=3D"border:none;border-left:solid #cccccc 1.0pt;padding:0i=
n 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;font-family:&quot;Ti=
mesNewRomanPSMT&quot;,serif">Have you ever seen a smart client that can cop=
e with randomly deviated YANG models, unless a programmer has intervened an=
d created special code for handing that particular
 deviating device type? I have not.<u></u><u></u></span></p>
</blockquote>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;font-family:&quot;Ti=
mesNewRomanPSMT&quot;,serif"><u></u>=C2=A0<u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;font-family:&quot;Ti=
mesNewRomanPSMT&quot;,serif"><u></u>=C2=A0<u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;font-family:&quot;Ti=
mesNewRomanPSMT&quot;,serif">Doesn&#39;t your client build a session-specif=
ic schema tree based on the advertised modules?<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;font-family:&quot;Ti=
mesNewRomanPSMT&quot;,serif"><u></u>=C2=A0<u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;font-family:&quot;Ti=
mesNewRomanPSMT&quot;,serif">Deviations are clearly better than just not re=
turning anything.<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;font-family:&quot;Ti=
mesNewRomanPSMT&quot;,serif">They tell the client that the missing counters=
 are not implemented as opposed<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;font-family:&quot;Ti=
mesNewRomanPSMT&quot;,serif">to possibly a temporary, recoverable condition=
.<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;font-family:&quot;Ti=
mesNewRomanPSMT&quot;,serif"><u></u>=C2=A0<u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;font-family:&quot;Ti=
mesNewRomanPSMT&quot;,serif">Deviations are known at session startup time b=
ut they can also be known in advance.<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;font-family:&quot;Ti=
mesNewRomanPSMT&quot;,serif">Vendors use naming conventions to specify the =
platform-specific deviations.<u></u><u></u></span></p>
</div>
<div>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;font-family:&quot;Ti=
mesNewRomanPSMT&quot;,serif">Tools like<span class=3D"m_219146844697508737m=
4931857417286260717apple-converted-space">=C2=A0</span><a href=3D"http://ya=
ngcatalog.org/" target=3D"_blank">yangcatalog.org</a><span class=3D"m_21914=
6844697508737m4931857417286260717apple-converted-space">=C2=A0</span>can
 make this process automated and de-facto standardized.<u></u><u></u></span=
></p>
</div>
</div>
</blockquote>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">NSO itself will be just fine, but I&#39;m worried ab=
out the people building applications on top of NSO, e.g. an L3VPN applicati=
on. Let&#39;s say a deviation comes up at session start, what&#39;s the app=
lication supposed to do then? I can&#39;t think of
 much that doesn&#39;t involve a programmer.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Declared deviations are clearly better than deviatin=
g and not telling. But they are only really worth anything if they are know=
n to the application programmer before he finishes his code.
<a href=3D"http://yangcatalog.org/" target=3D"_blank">Yangcatalog.org</a>=
=C2=A0helps, but not all modules will be there and there&#39;s also a time =
dimension. Deviations found at session start are probably not worth anythin=
g other than as triggers for that special code
 someone wrote to handle the situation.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">I feel deviations should not be recommended lightly.=
 In the particular case that started this discussion, they&#39;d bring litt=
le value.<u></u><u></u></p>
</div>
</div>
</div>
</div>
</blockquote>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<p class=3D"MsoNormal">right - isn=E2=80=99t deviation supposed to be for t=
he case where you don=E2=80=99t support something that implementations are =
generally expected to support?<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">for what Helen wants features seem to be a better fi=
t - at least to me.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><span style=3D"color:#888888"><u></u>=C2=A0<u></u></=
span></p>
</div>
</div>
</blockquote>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Features are intended to convey that the functionali=
ty is optional.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Presumably the data model is attempting to deliver s=
ome functionality to the client developer.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Features correspond well to optional protocol capabi=
lities.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Generally a single counter is not considered to be h=
igh-level functionality.<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Ask the question &quot;Why is counter FOO missing?&q=
uot;<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">A1) because device XYZ does not support it<u></u><u>=
</u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">A2) because it counts the FIZZBANG protocol, and tha=
t protocol is not used on every device<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">If A1 then use deviations. If A2 then use features.<=
u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0<u></u><u></u></p>
</div>
<blockquote style=3D"border:none;border-left:solid #cccccc 1.0pt;padding:0i=
n 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<div>
<p class=3D"MsoNormal"><span style=3D"color:#888888">Giles<u></u><u></u></s=
pan></p>
</div>
<div>
<p class=3D"MsoNormal"><span style=3D"color:#888888"><u></u>=C2=A0<u></u></=
span></p>
</div>
</div>
</blockquote>
</div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Andy<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
</div>
</div>
</div>

</blockquote></div><br></div>

--94eb2c0df14056a6900556f63d3c--


From nobody Thu Aug 17 11:17:14 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 881271320BB for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 11:17:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.021
X-Spam-Level: 
X-Spam-Status: No, score=-2.021 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id u_b_W4kAgRUC for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 11:17:10 -0700 (PDT)
Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0134.outbound.protection.outlook.com [104.47.42.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8206D12426E for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 11:17:10 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=RnA/4YEz3hdMUu+A1D4o9zjoiyNf4WRHvUHXfYo6KUY=; b=TJA8Q6zSy2m0zm0o+tQO2mvBZF8tH9zDcVQHFoFyK4LuAcbnTqvNN0WzhXUsoNJZYCbyUCBraT26n6MBqSkafy92WI7WgC0tEcR064l5zZhzUuQlVmeABLgyz5Y4aAUweRC+MQiQHeIb1915m/omeZNTMl3zvSDtttQ46r+d1HY=
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com (10.160.117.151) by BN3PR0501MB1522.namprd05.prod.outlook.com (10.161.217.12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1362.12; Thu, 17 Aug 2017 18:17:09 +0000
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) by BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) with mapi id 15.01.1385.003; Thu, 17 Aug 2017 18:17:08 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Jan Lindblad <janl@tail-f.com>
CC: "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Thread-Topic: [yang-doctors] question regarding conditional/optional statements
Thread-Index: AdMWuspFVk5k9TDdRCeshA4HU2pVBgAW9agAAAZRqwAAAQt6gAAL2xKA
Date: Thu, 17 Aug 2017 18:17:08 +0000
Message-ID: <DC062E7E-7422-4037-82E4-52B17422B33E@juniper.net>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local>
In-Reply-To: <20170817083739.u4vfbtkm34vf5utw@elstar.local>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/f.20.0.170309
x-originating-ip: [66.129.241.13]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BN3PR0501MB1522; 6:DGmvv/BdEmH5zRSr0CPkhpdhxjBDXCacbbtO5MvHtTatcfgfJFPRTQiDKKGTT6gRrTw7xCrRLF3ldJd1Ji/Kkpy0vuEQcsyqaBK/LzlLhpNDGrlF48S3pJGViqV+HlFh5Qxpou5u+uXEWIQiyc1RgCB4GeVoxUGPxlw45qdrN8wyeMMI6i2eynX3wm4qMJ3IOjrKLTcfyhZpFTHU6q8Hi7ibFTlMjGiOSt9ZpMi9JaRXNDpRTfgyZ8kE1ObwT2FBdq+3eENqgqqaOF8yW/SG+h/8h/oL5elbBJFF0aKk6TcVogPPBiI0Rit1qhQn6PZCOVyeztjD+M0TBFLMe2R8Zg==; 5:ncl92eFyuhL01wFyZMzmvOQL0oZcL9ZAe58wDhJm7F02BLYAb+ggDzyEfwOpD3sg4uIe4ysBRLY0uaJGTPN/DZ0yqfve3C3dTtSFY9XVlTou2elKXaPjrSSSAf//PTekSszh+p8Rqm1s1ZHZEJ/UQQmwYaH1YfvpPfJ5SxHrg4w=; 24:VuMIslIHiD75LVw2OQGpws6eZh4X7AiDH3YwyMlIhY3slMZfP/OiqIEZWa2O5pAbWVVlSBTBhBMVlt/8hEGGE51G97lZTk/Kos1ZwcuIGp8=; 7:UlqfXWU5PIuE4Z79SAzl5J7OAkYkcxCMO9eMNC7PuMW2mT8tKwJq7ouoQI3Cgw/BLjsnH34I58Ye4DHicvilSbCwlhdcrTy9yQRUApxQ7isQ7fvnQzhuHBpS0xPcjm9WuJrUgsvZ1mfuaxC6TsXbFxTnEZ1smybIGaOmXHBhtuAHSfAIv/pz/oUWYWbF9KU26deI+mcQ/wBOCKy6EmsOoYD2JuR1N9UE4AbWQdKLVxk=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;SSOR;
x-forefront-antispam-report: SFV:SKI; SCL:-1; SFV:NSPM; SFS:(10019020)(6009001)(39860400002)(199003)(189002)(25786009)(3660700001)(86362001)(2906002)(83716003)(6436002)(3280700002)(99286003)(189998001)(6116002)(102836003)(3846002)(6512007)(4326008)(5660300001)(4001350100001)(97736004)(82746002)(93886005)(68736007)(54906002)(229853002)(83506001)(14454004)(6486002)(77096006)(6506006)(36756003)(2950100002)(66066001)(50986999)(2900100001)(305945005)(7736002)(101416001)(54356999)(76176999)(53936002)(8936002)(81166006)(33656002)(6246003)(105586002)(478600001)(106356001)(8676002)(81156014); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR0501MB1522; H:BN3PR0501MB1442.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; 
x-ms-office365-filtering-correlation-id: cf0b93f4-9a3c-41c5-fd5f-08d4e59c2c36
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(48565401081)(2017052603157)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BN3PR0501MB1522; 
x-ms-traffictypediagnostic: BN3PR0501MB1522:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=kwatsen@juniper.net; 
x-exchange-antispam-report-test: UriScan:(190756311086443)(158342451672863);
x-microsoft-antispam-prvs: <BN3PR0501MB152275D5848FA7C281B08602A5830@BN3PR0501MB1522.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(100000703101)(100105400095)(3002001)(6055026)(6041248)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123562025)(20161123555025)(20161123564025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN3PR0501MB1522; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN3PR0501MB1522; 
x-forefront-prvs: 0402872DA1
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <C9F90CA05191FD4EA7C336B610CC70C6@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Aug 2017 18:17:08.4136 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0501MB1522
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/OZ-TuHxWfgYD41UxrC5HJ9tWvvA>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 18:17:12 -0000

DQoNCg0KPiBJIGJlbGlldmUgYSBmZWF0dXJlIGZvciBldmVyeSBjb3VudGVyIGlzIGEgbWlzdXNl
IG9mIFlBTkcgZmVhdHVyZQ0KPiBzdGF0ZW1lbnRzLCBpdCB3aWxsIGdldCBob3JyaWJseSB1Z2x5
LiBJIHJlY2VudGx5IG9ic2VydmUgYW4gaW5jcmVhc2UNCj4gb2YgZmVhdHVyZSBzdGF0ZW1lbnQg
dXNhZ2UgaW4gb3JkZXIgdG8gYWNjb21vZGF0ZSBzZXJ2ZXINCj4gaW1wbGVtZW50YXRpb25zIGFu
ZCB0aGUgdWx0aW1hdGUgc29sdXRpb24gaXMgYSBmZWF0dXJlIHN0YXRlbWVudCBmb3INCj4gZXZl
cnkgbGVhZiwgbGlzdCwgcnBjLCBhY3Rpb24sIG5vdGlmaWNhdGlvbiBhbmQgcGVyaGFwcyBldmVu
IGNlcnRhaW4NCj4gdmFsdWUgc2V0cy4gVGhpcyBpcyByaWRpY3Vsb3VzLCBidXQgYSBmZWF0dXJl
IGZvciBldmVyeSBjb3VudGVyIGlzDQo+IGdldHRpbmcgZGFtbiBjbG9zZSB0byBpdC4NCg0KVGhp
cyBpcyBhIHByb2dyYW1tYXRpYyBBUEkuICBJIGFwcHJlY2lhdGUgdGhlIGNvbmNlcm4gZm9yIGEg
YmxvYXQgb2YNCmJpdHMgb24gdGhlIHdpcmUsIGJ1dCByZWNhbGwgdGhhdCBmZWF0dXJlcyBhcmUg
bGlzdGVkIGluIHlhbmctbGlicmFyeSwNCmEgdmVyeSBzcGVjaWFsIG1vZHVsZSB0aGF0IGhhcyBh
IGJ1aWx0LWluIEVUYWctbGlrZSBoYXNoaW5nIG1lY2hhbmlzbQ0KdG8gYWxsb3cgZm9yIGVmZmlj
aWVudCBjb21wYXJpc29ucy4gIEkgZG9uJ3Qgc2VlIHRoZSBibG9hdCBpc3N1ZSBoZXJlLg0KDQpI
YXZpbmcgZmVhdHVyZSBzdGF0ZW1lbnRzIGV2ZXJ5d2hlcmUgbWF5IGJlIHJpZGljdWxvdXMsIGJ1
dCBub3QgaWxsZWdhbC4NCkltcGxlbWVudGF0aW9ucyBuZWVkIHRvIGJlIGFibGUgdG8gaGFuZGxl
IGl0IGFscmVhZHksIHJpZ2h0Pw0KDQpLZW50DQoNCg==


From nobody Thu Aug 17 12:03:02 2017
Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 488A71324D2 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 12:03:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level: 
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8WfjE1VdcL92 for <yang-doctors@ietfa.amsl.com>; Thu, 17 Aug 2017 12:02:59 -0700 (PDT)
Received: from mail-wr0-x22d.google.com (mail-wr0-x22d.google.com [IPv6:2a00:1450:400c:c0c::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EC96E1200F3 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 12:02:58 -0700 (PDT)
Received: by mail-wr0-x22d.google.com with SMTP id 5so27254284wrz.5 for <yang-doctors@ietf.org>; Thu, 17 Aug 2017 12:02:58 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=MMp4AdTgpSY/Ty7oJgxusuTxGUBK1/RLwIdwDy/Zty4=; b=BeAnjf4ra86wShFWfyE3Jgu1+016dtwaDzo6O9KRKcRn7/k/PXMecXEq+5uSVV9Shk k2d78tPBN9Kb4VfNBryFJNuW9+ubIclfsrl1YPXC0+8tyoasjS4sdIyh9aOoPCBuEZ1g Z/nDa9z+FI6YQi9t7IlYrBsU/mnWdHWARwl4P2jB8qaov8XX1nZIau5F2V+2SrEiazLW sjii6BU70IRxv9jCMTIKH+uHg0xskpwiqfCwtylo0G15VDD6g9ZTp7uMStfqOlL0/RBe E1HfV78o7sw5T4EVLut+iBNhuP2XqVasuiy+WzvbhZ2xD0OCINugaju2CBK2jXHz5/3l 0D+w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=MMp4AdTgpSY/Ty7oJgxusuTxGUBK1/RLwIdwDy/Zty4=; b=EcdZbyTrT+HP8SVp+kMEGwPWulTKVFxgMX75k5exDbiyJ5Rmx5mXg4KMjQ1nR7dDkS y0U/l9tpZgWMaJv4eZvZv2/kjwhZ4/ytskCN7pioMMo2kxEMKwB2Jm8m9BTdpLajUsZ/ sylQ9g4asiB3oxZXUM6Ja5UzTeB0fnI19Vvo8YX2PtP6xw8JxtH3+UH5ovVSW0pSvxo0 UtRT61lYwWwE85Tl7RuFHWQmU6wzbdk2eBwAkihnqwDagCwRPpYEsaxTbvjlFqBmygva +TyB4UyApJxWgF8M2ZYNaaApQSsvP4DOwtfuhEkdTuAbHEcFbWQrW5xH6r8Y2TYnoLLQ CvRg==
X-Gm-Message-State: AHYfb5gldMB8jbK9ApMb6WZlhu7CVZXlNasumasb+jh0+5a4GE8yhgXV y99L79yOtcyxznMcbBtOWrlD0RSCLkVS
X-Received: by 10.223.169.71 with SMTP id u65mr4022932wrc.244.1502996577480; Thu, 17 Aug 2017 12:02:57 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.164.129 with HTTP; Thu, 17 Aug 2017 12:02:56 -0700 (PDT)
In-Reply-To: <DC062E7E-7422-4037-82E4-52B17422B33E@juniper.net>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <DC062E7E-7422-4037-82E4-52B17422B33E@juniper.net>
From: Andy Bierman <andy@yumaworks.com>
Date: Thu, 17 Aug 2017 12:02:56 -0700
Message-ID: <CABCOCHQJOBXrYLntdg_7iL3wqy9Fkcd10f0ArwPJUNKo9dZAVQ@mail.gmail.com>
To: Kent Watsen <kwatsen@juniper.net>
Cc: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Jan Lindblad <janl@tail-f.com>,  "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>,  Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Content-Type: multipart/alternative; boundary="f403045cf6e4198e520556f7a9c8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/4Z6fxoQU8qJJXSsgFruQvPrVjLw>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Aug 2017 19:03:01 -0000

--f403045cf6e4198e520556f7a9c8
Content-Type: text/plain; charset="UTF-8"

On Thu, Aug 17, 2017 at 11:17 AM, Kent Watsen <kwatsen@juniper.net> wrote:

>
>
>
> > I believe a feature for every counter is a misuse of YANG feature
> > statements, it will get horribly ugly. I recently observe an increase
> > of feature statement usage in order to accomodate server
> > implementations and the ultimate solution is a feature statement for
> > every leaf, list, rpc, action, notification and perhaps even certain
> > value sets. This is ridiculous, but a feature for every counter is
> > getting damn close to it.
>
> This is a programmatic API.  I appreciate the concern for a bloat of
> bits on the wire, but recall that features are listed in yang-library,
> a very special module that has a built-in ETag-like hashing mechanism
> to allow for efficient comparisons.  I don't see the bloat issue here.
>
> Having feature statements everywhere may be ridiculous, but not illegal.
> Implementations need to be able to handle it already, right?
>
>
good points.
They all apply equally to deviations and features.

I think the way you used features in the client-server set of modules is a
good example
for solving this sort of problem.  The if-feature-stmts are on containers,
not
individual leafs.

I don't think special objects that return which other objects are
implemented
is good because it is not a generalized solution.  A better approach would
be
to enhance the protocols so "not-implemented" and "temp-unavailable"
exceptions
can be returned on request (ala with-defaults)



> Kent
>
>

Andy


> _______________________________________________
> yang-doctors mailing list
> yang-doctors@ietf.org
> https://www.ietf.org/mailman/listinfo/yang-doctors
>

--f403045cf6e4198e520556f7a9c8
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Thu, Aug 17, 2017 at 11:17 AM, Kent Watsen <span dir=3D"ltr">&lt;<a =
href=3D"mailto:kwatsen@juniper.net" target=3D"_blank">kwatsen@juniper.net</=
a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0=
 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
<br>
<br>
&gt; I believe a feature for every counter is a misuse of YANG feature<br>
&gt; statements, it will get horribly ugly. I recently observe an increase<=
br>
&gt; of feature statement usage in order to accomodate server<br>
&gt; implementations and the ultimate solution is a feature statement for<b=
r>
&gt; every leaf, list, rpc, action, notification and perhaps even certain<b=
r>
&gt; value sets. This is ridiculous, but a feature for every counter is<br>
&gt; getting damn close to it.<br>
<br>
This is a programmatic API.=C2=A0 I appreciate the concern for a bloat of<b=
r>
bits on the wire, but recall that features are listed in yang-library,<br>
a very special module that has a built-in ETag-like hashing mechanism<br>
to allow for efficient comparisons.=C2=A0 I don&#39;t see the bloat issue h=
ere.<br>
<br>
Having feature statements everywhere may be ridiculous, but not illegal.<br=
>
Implementations need to be able to handle it already, right?<br>
<br></blockquote><div><br></div><div>good points.</div><div>They all apply =
equally to deviations and features.</div><div><br></div><div>I think the wa=
y you used features in the client-server set of modules is a good example</=
div><div>for solving this sort of problem.=C2=A0 The if-feature-stmts are o=
n containers, not</div><div>individual leafs.</div><div><br></div><div>I do=
n&#39;t think special objects that return which other objects are implement=
ed</div><div>is good because it is not a generalized solution.=C2=A0 A bett=
er approach would be</div><div>to enhance the protocols so &quot;not-implem=
ented&quot; and &quot;temp-unavailable&quot; exceptions</div><div>can be re=
turned on request (ala with-defaults)</div><div><br></div><div>=C2=A0</div>=
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
Kent<br>
<br></blockquote><div><br></div><div><br></div><div>Andy</div><div>=C2=A0</=
div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-lef=
t:1px #ccc solid;padding-left:1ex">
______________________________<wbr>_________________<br>
yang-doctors mailing list<br>
<a href=3D"mailto:yang-doctors@ietf.org">yang-doctors@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/yang-doctors" rel=3D"noref=
errer" target=3D"_blank">https://www.ietf.org/mailman/<wbr>listinfo/yang-do=
ctors</a><br>
</blockquote></div><br></div></div>

--f403045cf6e4198e520556f7a9c8--


From nobody Fri Aug 18 05:59:19 2017
Return-Path: <nstrahle@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A144013235B for <yang-doctors@ietfa.amsl.com>; Fri, 18 Aug 2017 05:59:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.02
X-Spam-Level: 
X-Spam-Status: No, score=-2.02 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 58cq8oMbvNnD for <yang-doctors@ietfa.amsl.com>; Fri, 18 Aug 2017 05:59:14 -0700 (PDT)
Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0122.outbound.protection.outlook.com [104.47.36.122]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 475CE132026 for <yang-doctors@ietf.org>; Fri, 18 Aug 2017 05:59:13 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=oqkluC5IPRZ1w+BBtegSDZTspb5W4IIC3eFLytePBwI=; b=YNso2W3wPehI4GdrKm7tXrOBDV5URxC7VO5beE3S7iXUbSMay0fplDhtICvk9b9KrFUF7W33QsW3GI3TN9u7DvMAQxRVRgDTvdDxdeD3CGlyJWXzhiTY5kkHmk2nP5ZLOL/W89gOadjgluZkEcjnAnD12Pun3HL+Ym7sbixj0nI=
Received: from DM2PR0501MB1502.namprd05.prod.outlook.com (10.161.224.22) by DM2PR0501MB1373.namprd05.prod.outlook.com (10.160.130.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1385.4; Fri, 18 Aug 2017 12:59:11 +0000
Received: from DM2PR0501MB1502.namprd05.prod.outlook.com ([fe80::c930:96bd:8332:8e62]) by DM2PR0501MB1502.namprd05.prod.outlook.com ([fe80::c930:96bd:8332:8e62%18]) with mapi id 15.01.1385.003; Fri, 18 Aug 2017 12:59:10 +0000
From: Norm Strahle <nstrahle@juniper.net>
To: Andy Bierman <andy@yumaworks.com>, Kent Watsen <kwatsen@juniper.net>
CC: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Jan Lindblad <janl@tail-f.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, "Ing-Wher Chen" <Ing-Wher_Chen@jabil.com>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Thread-Topic: [yang-doctors] question regarding conditional/optional statements
Thread-Index: AdMWuspFVk5k9TDdRCeshA4HU2pVBgAW9agAAAZRqwAAAQt6gAAL2xKAAAn7ZgAAJSDmQA==
Date: Fri, 18 Aug 2017 12:59:10 +0000
Message-ID: <DM2PR0501MB15024D3A6AA8F654C1C7B418CF800@DM2PR0501MB1502.namprd05.prod.outlook.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <DC062E7E-7422-4037-82E4-52B17422B33E@juniper.net> <CABCOCHQJOBXrYLntdg_7iL3wqy9Fkcd10f0ArwPJUNKo9dZAVQ@mail.gmail.com>
In-Reply-To: <CABCOCHQJOBXrYLntdg_7iL3wqy9Fkcd10f0ArwPJUNKo9dZAVQ@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: spf=none (sender IP is ) smtp.mailfrom=nstrahle@juniper.net; 
x-originating-ip: [66.129.241.10]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DM2PR0501MB1373; 6:mnRS7U7l4oezmPfLZjV97YrilMYQn+0ubOJlS0+E63y/214pkyIpqXaKkpSF+bl2FIdg4MtOS++AyteMN9XfElhJ3ZZEGg4e7iqh06Qqk0Zx5TN1J6FBsLBJwMMuVYaA7kXyHebkBtnmR82Q/B/rVyLs4patjIC+cVu55nAluQ3sbA8zhPQXQf4jys1RkBsaH6jWFamAps7JLJiF9vA4zFIMR+VFTvY44VevjFRQqtebU5IhHaL7+Y7O6Mr/GLiBWnnCSseIB5txEJYIrJ/tvxaBQTbVdrPSH9WfuW3grp7VrM1sRUGv/jT8VAbGuCxZy5L5Y0yWi5oE0gtd6vOlog==; 5:inBcJmR0cKYwfcDZD36Q2CGOORA4h3g/dUP0pisQz9BWpFtumQEJnRYt3OSx/a9MZ5ijuRGYBB3KhlbXYo51NSPR//QxIT8XmKKIiRaV9OAy2LqcONRJUWLuE/NBK8omEpoYbRKRxAc9ZIxnV6HUqg==; 24:QLtJPVis+1BR2HwplGkl4MwMULsOdpeVwNQGaE8Yu66sUgRuxWQRmQaB9K8ZTwvO3U79/AYe+fUY9AJj0n7N0spW7tCmV8qx58pnrUzXp/0=; 7:ft+cxZOrWiwaF6ElMf1fs3V55i2RYwvm/7qCH/xseDgFh0nQHUPnswtYK5KyUUcS2NQPNBixE4jrJ4/Q54z3O00sh4LjEgkPHxWklOS+pU+0pqCvo+cP2YidN+OUVoKRq2MSMaifDpuLIPQTR+m32ul2uAoMqOv0V6OECP0uQsjAHR5wE0GuQzvS5RbTtenon/Xo9kEDH8+6UGw2Qkt/BV2E6veJxFGp+XMTZO2jVc0=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;SSOR;
x-forefront-antispam-report: SFV:SKI; SCL:-1; SFV:NSPM; SFS:(10019020)(39860400002)(377454003)(24454002)(189002)(199003)(6436002)(189998001)(66066001)(966005)(68736007)(81166006)(8676002)(8936002)(81156014)(6636002)(2950100002)(2900100001)(14454004)(1941001)(19609705001)(93886005)(97736004)(6506006)(105586002)(101416001)(5250100002)(790700001)(6246003)(2906002)(3846002)(74316002)(102836003)(6116002)(99286003)(236005)(54906002)(55016002)(3280700002)(7696004)(54896002)(6306002)(3660700001)(4326008)(53546010)(86362001)(606006)(7736002)(229853002)(25786009)(50986999)(478600001)(9686003)(106356001)(5660300001)(33656002)(76176999)(54356999)(53936002); DIR:OUT; SFP:1102; SCL:1; SRVR:DM2PR0501MB1373; H:DM2PR0501MB1502.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; 
x-ms-office365-filtering-correlation-id: f79760ae-9f63-45e5-6aa5-08d4e638eb47
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(48565401081)(2017052603031)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:DM2PR0501MB1373; 
x-ms-traffictypediagnostic: DM2PR0501MB1373:
x-exchange-antispam-report-test: UriScan:(190756311086443)(158342451672863)(138986009662008)(95692535739014)(21748063052155)(21534305686606);
x-microsoft-antispam-prvs: <DM2PR0501MB1373859BB2747E3CD317651FCF800@DM2PR0501MB1373.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(3002001)(100000703101)(100105400095)(10201501046)(93006095)(93001095)(6055026)(6041248)(20161123555025)(20161123558100)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123560025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:DM2PR0501MB1373; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:DM2PR0501MB1373; 
x-forefront-prvs: 040359335D
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_DM2PR0501MB15024D3A6AA8F654C1C7B418CF800DM2PR0501MB1502_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Aug 2017 12:59:10.5340 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR0501MB1373
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/Z7LpbzThygrsWP1NPix1GMNm0pY>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 18 Aug 2017 12:59:18 -0000

--_000_DM2PR0501MB15024D3A6AA8F654C1C7B418CF800DM2PR0501MB1502_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGV5IGZvbGtzLCBBcHByZWNpYXRlIGFsbCB0aGUgZmVlZGJhY2suICBXZSBkaXNjdXNzZWQgeWVz
dGVyZGF5IGFtb25nIGRpZmZzZXJ2LWlldGYgbW9kZWxlcnMgeWVzdGVyZGF5IGFuZCBoYWQgYSBj
b3VwbGUgY29tbWVudHM6DQoNCg0KwrcgICAgICAgV2UgbGlrZWQgZXhwbGljaXQgc3RhdGVtZW50
cyAoZGV2aWF0aW9ucywgZmVhdHVyZXMsIGZsYWctYml0cykgcmF0aGVyIHRoYW4gaW1wbGljaXQg
4oCTIGkuZS4gb3B0aW9uIDUg4oCTIG9mIHZlbmRvcnMgbGVhdmluZyB1bnN1cHBvcnRlZCBsZWF2
ZXMgb3V0IG9mIGNvbnRhaW5lcnMNCg0KwrcgICAgICAgV2UgdGhpbmsgaWYtZmVhdHVyZXMgb3Ig
dGhlIOKAnGJpdOKAnSBmbGFnIG1lY2hhbmlzbSBhcmUgYmV0dGVyIHRoYW4gZGV2aWF0aW9ucywg
YXMgaXQgYXQgbGVhc3QgYWxsb3dzIGNsaWVudHMgdG8gYW50aWNpcGF0ZSB1cCBmcm9udCB0aGF0
IHNvbWUgaXRlbXMgbWF5IG5vdCBiZSBzdXBwb3J0ZWQuDQoNCsK3ICAgICAgIE9uZSBhZHZhbnRh
Z2Ugb2YgdXNpbmcgdGhlIOKAnGJpdOKAnSBmbGFnIG1lY2hhbmlzbSDigJMgaS5lLiBvcHRpb24g
MiAtIG92ZXIgZmVhdHVyZXMgaXMgdGhhdCB0aGlzIGFsbG93cyBhIHZlbmRvciB0byBzcGVjaWZ5
IHBlci1pbnRlcmZhY2Ugd2hhdCBpcyBzdXBwb3J0ZWQuICBXaGF0IGZlYXR1cmVzIGEgdmVuZG9y
IHN1cHBvcnRzIGZvciBkaWZmc2VydiBpcyB2ZXJ5IGhhcmR3YXJlIGRlcGVuZGVudCBhbmQgbWF5
IHZhcnkgZnJvbSBpbnRlcmZhY2UgdG8gaW50ZXJmYWNlIHdpdGhpbiBhIHNpbmdsZSBkZXZpY2Uu
IEEgZGV2aWNlIG1heSBoYXZlIG11bHRpcGxlIHR5cGVzIGFuZCBnZW5lcmF0aW9ucyBvZiBsaW5l
IGNhcmRzLCBhbmQgdGh1cywgdGhlIHR5cGVzIG9mIHN0YXRzIHN1cHBvcnRlZCB3aWxsIGJlIGRp
ZmZlcmVudC4gVGhlIGJpdC1mbGFnIG1lY2hhbmlzbSBhbGxvd3MgYSBkZXZpY2UgdG8gcmVmbGVj
dCB0aGF0IHRvIHRoZSBjbGllbnQgZXhwbGljaXRseS4NCg0KVGhvdWdodHMgb24gYWxsIHRoZSBh
Ym92ZSBhcmUgbXVjaCBhcHByZWNpYXRlZC4NClRoYW5rcywNCk5vcm0NCg0KRnJvbTogQW5keSBC
aWVybWFuIFttYWlsdG86YW5keUB5dW1hd29ya3MuY29tXQ0KU2VudDogVGh1cnNkYXksIEF1Z3Vz
dCAxNywgMjAxNyAzOjAzIFBNDQpUbzogS2VudCBXYXRzZW4gPGt3YXRzZW5AanVuaXBlci5uZXQ+
DQpDYzogSnVlcmdlbiBTY2hvZW53YWVsZGVyIDxqLnNjaG9lbndhZWxkZXJAamFjb2JzLXVuaXZl
cnNpdHkuZGU+OyBKYW4gTGluZGJsYWQgPGphbmxAdGFpbC1mLmNvbT47IHlhbmctZG9jdG9yc0Bp
ZXRmLm9yZzsgSW5nLVdoZXIgQ2hlbiA8SW5nLVdoZXJfQ2hlbkBqYWJpbC5jb20+OyBOb3JtIFN0
cmFobGUgPG5zdHJhaGxlQGp1bmlwZXIubmV0PjsgQXNlZW0gQ2hvdWRoYXJ5IChhc2VjaG91ZCkg
PGFzZWNob3VkQGNpc2NvLmNvbT4NClN1YmplY3Q6IFJlOiBbeWFuZy1kb2N0b3JzXSBxdWVzdGlv
biByZWdhcmRpbmcgY29uZGl0aW9uYWwvb3B0aW9uYWwgc3RhdGVtZW50cw0KDQoNCg0KT24gVGh1
LCBBdWcgMTcsIDIwMTcgYXQgMTE6MTcgQU0sIEtlbnQgV2F0c2VuIDxrd2F0c2VuQGp1bmlwZXIu
bmV0PG1haWx0bzprd2F0c2VuQGp1bmlwZXIubmV0Pj4gd3JvdGU6DQoNCg0KDQo+IEkgYmVsaWV2
ZSBhIGZlYXR1cmUgZm9yIGV2ZXJ5IGNvdW50ZXIgaXMgYSBtaXN1c2Ugb2YgWUFORyBmZWF0dXJl
DQo+IHN0YXRlbWVudHMsIGl0IHdpbGwgZ2V0IGhvcnJpYmx5IHVnbHkuIEkgcmVjZW50bHkgb2Jz
ZXJ2ZSBhbiBpbmNyZWFzZQ0KPiBvZiBmZWF0dXJlIHN0YXRlbWVudCB1c2FnZSBpbiBvcmRlciB0
byBhY2NvbW9kYXRlIHNlcnZlcg0KPiBpbXBsZW1lbnRhdGlvbnMgYW5kIHRoZSB1bHRpbWF0ZSBz
b2x1dGlvbiBpcyBhIGZlYXR1cmUgc3RhdGVtZW50IGZvcg0KPiBldmVyeSBsZWFmLCBsaXN0LCBy
cGMsIGFjdGlvbiwgbm90aWZpY2F0aW9uIGFuZCBwZXJoYXBzIGV2ZW4gY2VydGFpbg0KPiB2YWx1
ZSBzZXRzLiBUaGlzIGlzIHJpZGljdWxvdXMsIGJ1dCBhIGZlYXR1cmUgZm9yIGV2ZXJ5IGNvdW50
ZXIgaXMNCj4gZ2V0dGluZyBkYW1uIGNsb3NlIHRvIGl0Lg0KDQpUaGlzIGlzIGEgcHJvZ3JhbW1h
dGljIEFQSS4gIEkgYXBwcmVjaWF0ZSB0aGUgY29uY2VybiBmb3IgYSBibG9hdCBvZg0KYml0cyBv
biB0aGUgd2lyZSwgYnV0IHJlY2FsbCB0aGF0IGZlYXR1cmVzIGFyZSBsaXN0ZWQgaW4geWFuZy1s
aWJyYXJ5LA0KYSB2ZXJ5IHNwZWNpYWwgbW9kdWxlIHRoYXQgaGFzIGEgYnVpbHQtaW4gRVRhZy1s
aWtlIGhhc2hpbmcgbWVjaGFuaXNtDQp0byBhbGxvdyBmb3IgZWZmaWNpZW50IGNvbXBhcmlzb25z
LiAgSSBkb24ndCBzZWUgdGhlIGJsb2F0IGlzc3VlIGhlcmUuDQoNCkhhdmluZyBmZWF0dXJlIHN0
YXRlbWVudHMgZXZlcnl3aGVyZSBtYXkgYmUgcmlkaWN1bG91cywgYnV0IG5vdCBpbGxlZ2FsLg0K
SW1wbGVtZW50YXRpb25zIG5lZWQgdG8gYmUgYWJsZSB0byBoYW5kbGUgaXQgYWxyZWFkeSwgcmln
aHQ/DQoNCmdvb2QgcG9pbnRzLg0KVGhleSBhbGwgYXBwbHkgZXF1YWxseSB0byBkZXZpYXRpb25z
IGFuZCBmZWF0dXJlcy4NCg0KSSB0aGluayB0aGUgd2F5IHlvdSB1c2VkIGZlYXR1cmVzIGluIHRo
ZSBjbGllbnQtc2VydmVyIHNldCBvZiBtb2R1bGVzIGlzIGEgZ29vZCBleGFtcGxlDQpmb3Igc29s
dmluZyB0aGlzIHNvcnQgb2YgcHJvYmxlbS4gIFRoZSBpZi1mZWF0dXJlLXN0bXRzIGFyZSBvbiBj
b250YWluZXJzLCBub3QNCmluZGl2aWR1YWwgbGVhZnMuDQoNCkkgZG9uJ3QgdGhpbmsgc3BlY2lh
bCBvYmplY3RzIHRoYXQgcmV0dXJuIHdoaWNoIG90aGVyIG9iamVjdHMgYXJlIGltcGxlbWVudGVk
DQppcyBnb29kIGJlY2F1c2UgaXQgaXMgbm90IGEgZ2VuZXJhbGl6ZWQgc29sdXRpb24uICBBIGJl
dHRlciBhcHByb2FjaCB3b3VsZCBiZQ0KdG8gZW5oYW5jZSB0aGUgcHJvdG9jb2xzIHNvICJub3Qt
aW1wbGVtZW50ZWQiIGFuZCAidGVtcC11bmF2YWlsYWJsZSIgZXhjZXB0aW9ucw0KY2FuIGJlIHJl
dHVybmVkIG9uIHJlcXVlc3QgKGFsYSB3aXRoLWRlZmF1bHRzKQ0KDQoNCktlbnQNCg0KDQpBbmR5
DQoNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQp5YW5n
LWRvY3RvcnMgbWFpbGluZyBsaXN0DQp5YW5nLWRvY3RvcnNAaWV0Zi5vcmc8bWFpbHRvOnlhbmct
ZG9jdG9yc0BpZXRmLm9yZz4NCmh0dHBzOi8vd3d3LmlldGYub3JnL21haWxtYW4vbGlzdGluZm8v
eWFuZy1kb2N0b3JzDQoNCg==

--_000_DM2PR0501MB15024D3A6AA8F654C1C7B418CF800DM2PR0501MB1502_
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj
cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv
ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl
PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6
V2luZ2RpbmdzOw0KCXBhbm9zZS0xOjUgMCAwIDAgMCAwIDAgMCAwIDA7fQ0KQGZvbnQtZmFjZQ0K
CXtmb250LWZhbWlseToiQ2FtYnJpYSBNYXRoIjsNCglwYW5vc2UtMToyIDQgNSAzIDUgNCA2IDMg
MiA0O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q2FsaWJyaTsNCglwYW5vc2UtMToyIDE1
IDUgMiAyIDIgNCAzIDIgNDt9DQovKiBTdHlsZSBEZWZpbml0aW9ucyAqLw0KcC5Nc29Ob3JtYWws
IGxpLk1zb05vcm1hbCwgZGl2Lk1zb05vcm1hbA0KCXttYXJnaW46MGluOw0KCW1hcmdpbi1ib3R0
b206LjAwMDFwdDsNCglmb250LXNpemU6MTIuMHB0Ow0KCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcg
Um9tYW4iLHNlcmlmO30NCmE6bGluaywgc3Bhbi5Nc29IeXBlcmxpbmsNCgl7bXNvLXN0eWxlLXBy
aW9yaXR5Ojk5Ow0KCWNvbG9yOmJsdWU7DQoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9DQph
OnZpc2l0ZWQsIHNwYW4uTXNvSHlwZXJsaW5rRm9sbG93ZWQNCgl7bXNvLXN0eWxlLXByaW9yaXR5
Ojk5Ow0KCWNvbG9yOnB1cnBsZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCnAuTXNv
TGlzdFBhcmFncmFwaCwgbGkuTXNvTGlzdFBhcmFncmFwaCwgZGl2Lk1zb0xpc3RQYXJhZ3JhcGgN
Cgl7bXNvLXN0eWxlLXByaW9yaXR5OjM0Ow0KCW1hcmdpbi10b3A6MGluOw0KCW1hcmdpbi1yaWdo
dDowaW47DQoJbWFyZ2luLWJvdHRvbTowaW47DQoJbWFyZ2luLWxlZnQ6LjVpbjsNCgltYXJnaW4t
Ym90dG9tOi4wMDAxcHQ7DQoJZm9udC1zaXplOjEyLjBwdDsNCglmb250LWZhbWlseToiVGltZXMg
TmV3IFJvbWFuIixzZXJpZjt9DQpwLm1zb25vcm1hbDAsIGxpLm1zb25vcm1hbDAsIGRpdi5tc29u
b3JtYWwwDQoJe21zby1zdHlsZS1uYW1lOm1zb25vcm1hbDsNCgltc28tbWFyZ2luLXRvcC1hbHQ6
YXV0bzsNCgltYXJnaW4tcmlnaHQ6MGluOw0KCW1zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvOw0K
CW1hcmdpbi1sZWZ0OjBpbjsNCglmb250LXNpemU6MTIuMHB0Ow0KCWZvbnQtZmFtaWx5OiJUaW1l
cyBOZXcgUm9tYW4iLHNlcmlmO30NCnNwYW4uRW1haWxTdHlsZTE4DQoJe21zby1zdHlsZS10eXBl
OnBlcnNvbmFsLXJlcGx5Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmOw0KCWNv
bG9yOiMxRjQ5N0Q7fQ0KLk1zb0NocERlZmF1bHQNCgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0LW9u
bHk7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7fQ0KQHBhZ2UgV29yZFNlY3Rp
b24xDQoJe3NpemU6OC41aW4gMTEuMGluOw0KCW1hcmdpbjoxLjBpbiAxLjBpbiAxLjBpbiAxLjBp
bjt9DQpkaXYuV29yZFNlY3Rpb24xDQoJe3BhZ2U6V29yZFNlY3Rpb24xO30NCi8qIExpc3QgRGVm
aW5pdGlvbnMgKi8NCkBsaXN0IGwwDQoJe21zby1saXN0LWlkOjE5NDQ2NjA2MjsNCgltc28tbGlz
dC10eXBlOmh5YnJpZDsNCgltc28tbGlzdC10ZW1wbGF0ZS1pZHM6MjA1ODUxMzAxOCA2NzY5ODY4
OSA2NzY5ODY5MSA2NzY5ODY5MyA2NzY5ODY4OSA2NzY5ODY5MSA2NzY5ODY5MyA2NzY5ODY4OSA2
NzY5ODY5MSA2NzY5ODY5Mzt9DQpAbGlzdCBsMDpsZXZlbDENCgl7bXNvLWxldmVsLW51bWJlci1m
b3JtYXQ6YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0Ou+CtzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6
bm9uZTsNCgltc28tbGV2ZWwtbnVtYmVyLXBvc2l0aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LS4y
NWluOw0KCWZvbnQtZmFtaWx5OlN5bWJvbDt9DQpAbGlzdCBsMDpsZXZlbDINCgl7bXNvLWxldmVs
LW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0Om87DQoJbXNvLWxldmVsLXRh
Yi1zdG9wOm5vbmU7DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5k
ZW50Oi0uMjVpbjsNCglmb250LWZhbWlseToiQ291cmllciBOZXciO30NCkBsaXN0IGwwOmxldmVs
Mw0KCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxsZXQ7DQoJbXNvLWxldmVsLXRleHQ674Kn
Ow0KCW1zby1sZXZlbC10YWItc3RvcDpub25lOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246
bGVmdDsNCgl0ZXh0LWluZGVudDotLjI1aW47DQoJZm9udC1mYW1pbHk6V2luZ2RpbmdzO30NCkBs
aXN0IGwwOmxldmVsNA0KCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxsZXQ7DQoJbXNvLWxl
dmVsLXRleHQ674K3Ow0KCW1zby1sZXZlbC10YWItc3RvcDpub25lOw0KCW1zby1sZXZlbC1udW1i
ZXItcG9zaXRpb246bGVmdDsNCgl0ZXh0LWluZGVudDotLjI1aW47DQoJZm9udC1mYW1pbHk6U3lt
Ym9sO30NCkBsaXN0IGwwOmxldmVsNQ0KCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxsZXQ7
DQoJbXNvLWxldmVsLXRleHQ6bzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsNCgltc28tbGV2
ZWwtbnVtYmVyLXBvc2l0aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LS4yNWluOw0KCWZvbnQtZmFt
aWx5OiJDb3VyaWVyIE5ldyI7fQ0KQGxpc3QgbDA6bGV2ZWw2DQoJe21zby1sZXZlbC1udW1iZXIt
Zm9ybWF0OmJ1bGxldDsNCgltc28tbGV2ZWwtdGV4dDrvgqc7DQoJbXNvLWxldmVsLXRhYi1zdG9w
Om5vbmU7DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50Oi0u
MjVpbjsNCglmb250LWZhbWlseTpXaW5nZGluZ3M7fQ0KQGxpc3QgbDA6bGV2ZWw3DQoJe21zby1s
ZXZlbC1udW1iZXItZm9ybWF0OmJ1bGxldDsNCgltc28tbGV2ZWwtdGV4dDrvgrc7DQoJbXNvLWxl
dmVsLXRhYi1zdG9wOm5vbmU7DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRl
eHQtaW5kZW50Oi0uMjVpbjsNCglmb250LWZhbWlseTpTeW1ib2w7fQ0KQGxpc3QgbDA6bGV2ZWw4
DQoJe21zby1sZXZlbC1udW1iZXItZm9ybWF0OmJ1bGxldDsNCgltc28tbGV2ZWwtdGV4dDpvOw0K
CW1zby1sZXZlbC10YWItc3RvcDpub25lOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVm
dDsNCgl0ZXh0LWluZGVudDotLjI1aW47DQoJZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijt9DQpA
bGlzdCBsMDpsZXZlbDkNCgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1zby1s
ZXZlbC10ZXh0Ou+CpzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsNCgltc28tbGV2ZWwtbnVt
YmVyLXBvc2l0aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LS4yNWluOw0KCWZvbnQtZmFtaWx5Oldp
bmdkaW5nczt9DQpvbA0KCXttYXJnaW4tYm90dG9tOjBpbjt9DQp1bA0KCXttYXJnaW4tYm90dG9t
OjBpbjt9DQotLT48L3N0eWxlPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hhcGVkZWZh
dWx0cyB2OmV4dD0iZWRpdCIgc3BpZG1heD0iMTAyNiIgLz4NCjwveG1sPjwhW2VuZGlmXS0tPjwh
LS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hhcGVsYXlvdXQgdjpleHQ9ImVkaXQiPg0KPG86
aWRtYXAgdjpleHQ9ImVkaXQiIGRhdGE9IjEiIC8+DQo8L286c2hhcGVsYXlvdXQ+PC94bWw+PCFb
ZW5kaWZdLS0+DQo8L2hlYWQ+DQo8Ym9keSBsYW5nPSJFTi1VUyIgbGluaz0iYmx1ZSIgdmxpbms9
InB1cnBsZSI+DQo8ZGl2IGNsYXNzPSJXb3JkU2VjdGlvbjEiPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJy
aSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPkhleSBmb2xrcywgQXBwcmVjaWF0ZSBh
bGwgdGhlIGZlZWRiYWNrLiZuYnNwOyBXZSBkaXNjdXNzZWQgeWVzdGVyZGF5IGFtb25nIGRpZmZz
ZXJ2LWlldGYgbW9kZWxlcnMgeWVzdGVyZGF5IGFuZCBoYWQgYSBjb3VwbGUgY29tbWVudHM6PG86
cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZv
bnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlm
O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJN
c29MaXN0UGFyYWdyYXBoIiBzdHlsZT0idGV4dC1pbmRlbnQ6LS4yNWluO21zby1saXN0OmwwIGxl
dmVsMSBsZm8xIj48IVtpZiAhc3VwcG9ydExpc3RzXT48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEx
LjBwdDtmb250LWZhbWlseTpTeW1ib2w7Y29sb3I6IzFGNDk3RCI+PHNwYW4gc3R5bGU9Im1zby1s
aXN0Oklnbm9yZSI+wrc8c3BhbiBzdHlsZT0iZm9udDo3LjBwdCAmcXVvdDtUaW1lcyBOZXcgUm9t
YW4mcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOw0KPC9zcGFuPjwv
c3Bhbj48L3NwYW4+PCFbZW5kaWZdPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQt
ZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj5XZSBs
aWtlZCBleHBsaWNpdCBzdGF0ZW1lbnRzIChkZXZpYXRpb25zLCBmZWF0dXJlcywgZmxhZy1iaXRz
KSByYXRoZXIgdGhhbiBpbXBsaWNpdCDigJMgaS5lLiBvcHRpb24gNSDigJMgb2YgdmVuZG9ycyBs
ZWF2aW5nIHVuc3VwcG9ydGVkIGxlYXZlcyBvdXQgb2YgY29udGFpbmVycw0KPG86cD48L286cD48
L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb0xpc3RQYXJhZ3JhcGgiIHN0eWxlPSJ0ZXh0LWluZGVu
dDotLjI1aW47bXNvLWxpc3Q6bDAgbGV2ZWwxIGxmbzEiPjwhW2lmICFzdXBwb3J0TGlzdHNdPjxz
cGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OlN5bWJvbDtjb2xvcjojMUY0
OTdEIj48c3BhbiBzdHlsZT0ibXNvLWxpc3Q6SWdub3JlIj7CtzxzcGFuIHN0eWxlPSJmb250Ojcu
MHB0ICZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7DQo8L3NwYW4+PC9zcGFuPjwvc3Bhbj48IVtlbmRpZl0+PHNwYW4gc3R5bGU9
ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNl
cmlmO2NvbG9yOiMxRjQ5N0QiPldlIHRoaW5rIGlmLWZlYXR1cmVzIG9yIHRoZSDigJxiaXTigJ0g
ZmxhZyBtZWNoYW5pc20gYXJlIGJldHRlciB0aGFuIGRldmlhdGlvbnMsIGFzIGl0IGF0IGxlYXN0
IGFsbG93cyBjbGllbnRzIHRvIGFudGljaXBhdGUgdXAgZnJvbnQgdGhhdCBzb21lIGl0ZW1zIG1h
eQ0KIG5vdCBiZSBzdXBwb3J0ZWQuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1z
b0xpc3RQYXJhZ3JhcGgiIHN0eWxlPSJ0ZXh0LWluZGVudDotLjI1aW47bXNvLWxpc3Q6bDAgbGV2
ZWwxIGxmbzEiPjwhW2lmICFzdXBwb3J0TGlzdHNdPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEu
MHB0O2ZvbnQtZmFtaWx5OlN5bWJvbDtjb2xvcjojMUY0OTdEIj48c3BhbiBzdHlsZT0ibXNvLWxp
c3Q6SWdub3JlIj7CtzxzcGFuIHN0eWxlPSJmb250OjcuMHB0ICZxdW90O1RpbWVzIE5ldyBSb21h
biZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7DQo8L3NwYW4+PC9z
cGFuPjwvc3Bhbj48IVtlbmRpZl0+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1m
YW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPk9uZSBh
ZHZhbnRhZ2Ugb2YgdXNpbmcgdGhlIOKAnGJpdOKAnSBmbGFnIG1lY2hhbmlzbSDigJMgaS5lLiBv
cHRpb24gMiAtIG92ZXIgZmVhdHVyZXMgaXMgdGhhdCB0aGlzIGFsbG93cyBhIHZlbmRvciB0byBz
cGVjaWZ5IHBlci1pbnRlcmZhY2Ugd2hhdCBpcyBzdXBwb3J0ZWQuJm5ic3A7DQogV2hhdCBmZWF0
dXJlcyBhIHZlbmRvciBzdXBwb3J0cyBmb3IgZGlmZnNlcnYgaXMgdmVyeSBoYXJkd2FyZSBkZXBl
bmRlbnQgYW5kIG1heSB2YXJ5IGZyb20gaW50ZXJmYWNlIHRvIGludGVyZmFjZSB3aXRoaW4gYSBz
aW5nbGUgZGV2aWNlLiBBIGRldmljZSBtYXkgaGF2ZSBtdWx0aXBsZSB0eXBlcyBhbmQgZ2VuZXJh
dGlvbnMgb2YgbGluZSBjYXJkcywgYW5kIHRodXMsIHRoZSB0eXBlcyBvZiBzdGF0cyBzdXBwb3J0
ZWQgd2lsbCBiZSBkaWZmZXJlbnQuDQogVGhlIGJpdC1mbGFnIG1lY2hhbmlzbSBhbGxvd3MgYSBk
ZXZpY2UgdG8gcmVmbGVjdCB0aGF0IHRvIHRoZSBjbGllbnQgZXhwbGljaXRseS48bzpwPjwvbzpw
Pjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6
IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJy
aSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPlRob3VnaHRzIG9uIGFsbCB0aGUgYWJv
dmUgYXJlIG11Y2ggYXBwcmVjaWF0ZWQuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1
b3Q7Q2FsaWJyaSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOiMxRjQ5N0QiPlRoYW5rcyw8bzpwPjwv
bzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1z
aXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWY7Y29s
b3I6IzFGNDk3RCI+Tm9ybTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGli
cmkmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bh
bj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48Yj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEx
LjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWYiPkZyb206PC9z
cGFuPjwvYj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD
YWxpYnJpJnF1b3Q7LHNhbnMtc2VyaWYiPiBBbmR5IEJpZXJtYW4gW21haWx0bzphbmR5QHl1bWF3
b3Jrcy5jb21dDQo8YnI+DQo8Yj5TZW50OjwvYj4gVGh1cnNkYXksIEF1Z3VzdCAxNywgMjAxNyAz
OjAzIFBNPGJyPg0KPGI+VG86PC9iPiBLZW50IFdhdHNlbiAmbHQ7a3dhdHNlbkBqdW5pcGVyLm5l
dCZndDs8YnI+DQo8Yj5DYzo8L2I+IEp1ZXJnZW4gU2Nob2Vud2FlbGRlciAmbHQ7ai5zY2hvZW53
YWVsZGVyQGphY29icy11bml2ZXJzaXR5LmRlJmd0OzsgSmFuIExpbmRibGFkICZsdDtqYW5sQHRh
aWwtZi5jb20mZ3Q7OyB5YW5nLWRvY3RvcnNAaWV0Zi5vcmc7IEluZy1XaGVyIENoZW4gJmx0O0lu
Zy1XaGVyX0NoZW5AamFiaWwuY29tJmd0OzsgTm9ybSBTdHJhaGxlICZsdDtuc3RyYWhsZUBqdW5p
cGVyLm5ldCZndDs7IEFzZWVtIENob3VkaGFyeSAoYXNlY2hvdWQpICZsdDthc2VjaG91ZEBjaXNj
by5jb20mZ3Q7PGJyPg0KPGI+U3ViamVjdDo8L2I+IFJlOiBbeWFuZy1kb2N0b3JzXSBxdWVzdGlv
biByZWdhcmRpbmcgY29uZGl0aW9uYWwvb3B0aW9uYWwgc3RhdGVtZW50czxvOnA+PC9vOnA+PC9z
cGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRp
dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNz
PSJNc29Ob3JtYWwiPk9uIFRodSwgQXVnIDE3LCAyMDE3IGF0IDExOjE3IEFNLCBLZW50IFdhdHNl
biAmbHQ7PGEgaHJlZj0ibWFpbHRvOmt3YXRzZW5AanVuaXBlci5uZXQiIHRhcmdldD0iX2JsYW5r
Ij5rd2F0c2VuQGp1bmlwZXIubmV0PC9hPiZndDsgd3JvdGU6PG86cD48L286cD48L3A+DQo8Ymxv
Y2txdW90ZSBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgI0NDQ0NDQyAxLjBw
dDtwYWRkaW5nOjBpbiAwaW4gMGluIDYuMHB0O21hcmdpbi1sZWZ0OjQuOHB0O21hcmdpbi1yaWdo
dDowaW4iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0b206MTIuMHB0
Ij48YnI+DQo8YnI+DQo8YnI+DQomZ3Q7IEkgYmVsaWV2ZSBhIGZlYXR1cmUgZm9yIGV2ZXJ5IGNv
dW50ZXIgaXMgYSBtaXN1c2Ugb2YgWUFORyBmZWF0dXJlPGJyPg0KJmd0OyBzdGF0ZW1lbnRzLCBp
dCB3aWxsIGdldCBob3JyaWJseSB1Z2x5LiBJIHJlY2VudGx5IG9ic2VydmUgYW4gaW5jcmVhc2U8
YnI+DQomZ3Q7IG9mIGZlYXR1cmUgc3RhdGVtZW50IHVzYWdlIGluIG9yZGVyIHRvIGFjY29tb2Rh
dGUgc2VydmVyPGJyPg0KJmd0OyBpbXBsZW1lbnRhdGlvbnMgYW5kIHRoZSB1bHRpbWF0ZSBzb2x1
dGlvbiBpcyBhIGZlYXR1cmUgc3RhdGVtZW50IGZvcjxicj4NCiZndDsgZXZlcnkgbGVhZiwgbGlz
dCwgcnBjLCBhY3Rpb24sIG5vdGlmaWNhdGlvbiBhbmQgcGVyaGFwcyBldmVuIGNlcnRhaW48YnI+
DQomZ3Q7IHZhbHVlIHNldHMuIFRoaXMgaXMgcmlkaWN1bG91cywgYnV0IGEgZmVhdHVyZSBmb3Ig
ZXZlcnkgY291bnRlciBpczxicj4NCiZndDsgZ2V0dGluZyBkYW1uIGNsb3NlIHRvIGl0Ljxicj4N
Cjxicj4NClRoaXMgaXMgYSBwcm9ncmFtbWF0aWMgQVBJLiZuYnNwOyBJIGFwcHJlY2lhdGUgdGhl
IGNvbmNlcm4gZm9yIGEgYmxvYXQgb2Y8YnI+DQpiaXRzIG9uIHRoZSB3aXJlLCBidXQgcmVjYWxs
IHRoYXQgZmVhdHVyZXMgYXJlIGxpc3RlZCBpbiB5YW5nLWxpYnJhcnksPGJyPg0KYSB2ZXJ5IHNw
ZWNpYWwgbW9kdWxlIHRoYXQgaGFzIGEgYnVpbHQtaW4gRVRhZy1saWtlIGhhc2hpbmcgbWVjaGFu
aXNtPGJyPg0KdG8gYWxsb3cgZm9yIGVmZmljaWVudCBjb21wYXJpc29ucy4mbmJzcDsgSSBkb24n
dCBzZWUgdGhlIGJsb2F0IGlzc3VlIGhlcmUuPGJyPg0KPGJyPg0KSGF2aW5nIGZlYXR1cmUgc3Rh
dGVtZW50cyBldmVyeXdoZXJlIG1heSBiZSByaWRpY3Vsb3VzLCBidXQgbm90IGlsbGVnYWwuPGJy
Pg0KSW1wbGVtZW50YXRpb25zIG5lZWQgdG8gYmUgYWJsZSB0byBoYW5kbGUgaXQgYWxyZWFkeSwg
cmlnaHQ/PG86cD48L286cD48L3A+DQo8L2Jsb2NrcXVvdGU+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj5nb29kIHBvaW50cy48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPlRoZXkgYWxsIGFwcGx5IGVxdWFsbHkgdG8gZGV2aWF0aW9ucyBh
bmQgZmVhdHVyZXMuPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPkkgdGhpbmsgdGhlIHdheSB5b3UgdXNlZCBmZWF0dXJlcyBpbiB0aGUgY2xpZW50
LXNlcnZlciBzZXQgb2YgbW9kdWxlcyBpcyBhIGdvb2QgZXhhbXBsZTxvOnA+PC9vOnA+PC9wPg0K
PC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Zm9yIHNvbHZpbmcgdGhpcyBzb3J0
IG9mIHByb2JsZW0uJm5ic3A7IFRoZSBpZi1mZWF0dXJlLXN0bXRzIGFyZSBvbiBjb250YWluZXJz
LCBub3Q8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
PmluZGl2aWR1YWwgbGVhZnMuPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFz
cz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPkkgZG9uJ3QgdGhpbmsgc3BlY2lhbCBvYmplY3RzIHRoYXQgcmV0dXJu
IHdoaWNoIG90aGVyIG9iamVjdHMgYXJlIGltcGxlbWVudGVkPG86cD48L286cD48L3A+DQo8L2Rp
dj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5pcyBnb29kIGJlY2F1c2UgaXQgaXMgbm90
IGEgZ2VuZXJhbGl6ZWQgc29sdXRpb24uJm5ic3A7IEEgYmV0dGVyIGFwcHJvYWNoIHdvdWxkIGJl
PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj50byBl
bmhhbmNlIHRoZSBwcm90b2NvbHMgc28gJnF1b3Q7bm90LWltcGxlbWVudGVkJnF1b3Q7IGFuZCAm
cXVvdDt0ZW1wLXVuYXZhaWxhYmxlJnF1b3Q7IGV4Y2VwdGlvbnM8bzpwPjwvbzpwPjwvcD4NCjwv
ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPmNhbiBiZSByZXR1cm5lZCBvbiByZXF1
ZXN0IChhbGEgd2l0aC1kZWZhdWx0cyk8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxibG9j
a3F1b3RlIHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpzb2xpZCAjQ0NDQ0NDIDEuMHB0
O3BhZGRpbmc6MGluIDBpbiAwaW4gNi4wcHQ7bWFyZ2luLWxlZnQ6NC44cHQ7bWFyZ2luLXJpZ2h0
OjBpbiI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQi
PktlbnQ8bzpwPjwvbzpwPjwvcD4NCjwvYmxvY2txdW90ZT4NCjxkaXY+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+QW5keTxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxibG9ja3F1b3RlIHN0
eWxlPSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpzb2xpZCAjQ0NDQ0NDIDEuMHB0O3BhZGRpbmc6
MGluIDBpbiAwaW4gNi4wcHQ7bWFyZ2luLWxlZnQ6NC44cHQ7bWFyZ2luLXJpZ2h0OjBpbiI+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj5fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXzxicj4NCnlhbmctZG9jdG9ycyBtYWlsaW5nIGxpc3Q8YnI+DQo8YSBocmVmPSJt
YWlsdG86eWFuZy1kb2N0b3JzQGlldGYub3JnIj55YW5nLWRvY3RvcnNAaWV0Zi5vcmc8L2E+PGJy
Pg0KPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWV0Zi5vcmcvbWFpbG1hbi9saXN0aW5mby95YW5nLWRv
Y3RvcnMiIHRhcmdldD0iX2JsYW5rIj5odHRwczovL3d3dy5pZXRmLm9yZy9tYWlsbWFuL2xpc3Rp
bmZvL3lhbmctZG9jdG9yczwvYT48bzpwPjwvbzpwPjwvcD4NCjwvYmxvY2txdW90ZT4NCjwvZGl2
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8L2Rpdj4NCjwv
ZGl2Pg0KPC9kaXY+DQo8L2JvZHk+DQo8L2h0bWw+DQo=

--_000_DM2PR0501MB15024D3A6AA8F654C1C7B418CF800DM2PR0501MB1502_--


From nobody Fri Aug 18 12:02:41 2017
Return-Path: <ivandean@gmail.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1062C1321A1 for <yang-doctors@ietfa.amsl.com>; Fri, 18 Aug 2017 12:02:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level: 
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id q-bvS6ifZ7w4 for <yang-doctors@ietfa.amsl.com>; Fri, 18 Aug 2017 12:02:38 -0700 (PDT)
Received: from mail-qt0-x229.google.com (mail-qt0-x229.google.com [IPv6:2607:f8b0:400d:c0d::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4B6C1126CB6 for <yang-doctors@ietf.org>; Fri, 18 Aug 2017 12:02:38 -0700 (PDT)
Received: by mail-qt0-x229.google.com with SMTP id p3so58470482qtg.2 for <yang-doctors@ietf.org>; Fri, 18 Aug 2017 12:02:38 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;  h=from:mime-version:subject:message-id:date:to; bh=yOaF8QjFzQgrN9ZtwuOALQTQHAE+xWcFYA0VcOFnX0Y=; b=lMrJ1wZZpTc4y9VSpATWkz5d54tGqxfwySsjcjNOxyTWrlWPyRcTxMmHYaKw0PYylH R8FfqPJGyRZH5J76m0PoK35QTkzorTC6wwnAxg+N7WlwgSnAe2Zf5Q/9SZQcUJwkxqyO 43w2VieIRK2xFZ6b13ZR8VhQvK1j5R5SAgEB+a6Sx7bDIQdcBkcg3g0IlzxdA1s3Eu6A H70oIQ/0rQOOuCBTGNyWCZmYCJp0oVCr0L1/9SZXA3CrNJo0TeIG6IjVzZlb0QddxSQH lQoR1JenbL97J9RqG7S/Jt3VpOUAnzR1BTkZHlsQ9W5m++4ufPhx2NqGLTJoZb/alWdG ZFjg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:mime-version:subject:message-id:date:to; bh=yOaF8QjFzQgrN9ZtwuOALQTQHAE+xWcFYA0VcOFnX0Y=; b=NHjAkKd2Zl4w6GNk9uqkJoeZHX8MN+qq0y1EwTElymPfoMh9eUKnQF9/QWmZ8c6euK 1XyyWR+DhmyVTmnuf0iylwsGanMQ/eAxvhG//BSzgERMZYZyf4RgoRuHWvS9ZxfnbJxJ 7sqHj7CnY/xqwwYvJ5IdQ9m1PgvobriztVpMaMsSvJQNWBt28fEJsuGtzPWruFdwxGdW 9viW4HGhDCBZxunSsfcStc4RAmRgrhCYEzxU84eh2b4BTnMuWfgj2JyGl3L07Ofscjta mM97q1bs11favzctho7eTc5Cr9Osgo8K1hGmw90ee60uSkL1UppAT99dWKK17RphwcYr zIUw==
X-Gm-Message-State: AHYfb5jR2aCKvM9MesFYW06PGAUp3C0Xu/MmNlF0bIwfau/xF1B7iHZv 8FggVdtxo5fJKYuaOvU=
X-Received: by 10.200.46.161 with SMTP id h30mr14671731qta.202.1503082957221;  Fri, 18 Aug 2017 12:02:37 -0700 (PDT)
Received: from ?IPv6:2601:19b:880:14c8:e112:3d26:3c0b:2c19? ([2601:19b:880:14c8:e112:3d26:3c0b:2c19]) by smtp.gmail.com with ESMTPSA id m11sm3110131qkm.0.2017.08.18.12.02.36 for <yang-doctors@ietf.org> (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 18 Aug 2017 12:02:36 -0700 (PDT)
From: Dean Bogdanovic <ivandean@gmail.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_50E88C6B-5B08-4DAC-8645-C9DDE04AF3D0"
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
Message-Id: <3ECE1319-255E-4B06-BF97-F4EAFFC3D8B5@gmail.com>
Date: Fri, 18 Aug 2017 15:02:36 -0400
To: YANG Doctors <yang-doctors@ietf.org>
X-Mailer: Apple Mail (2.3273)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/XrGtBc9PX1W11TFKhiZRfO_whzA>
Subject: [yang-doctors] Review of draft-ietf-netconf-zerotouch-15
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 18 Aug 2017 19:02:40 -0000

--Apple-Mail=_50E88C6B-5B08-4DAC-8645-C9DDE04AF3D0
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Reviewer: Dean Bogdanovic
Review result: Ready with caveat


Modules:
ietf-zerotouch-information.yang
ietf-zerotouch-bootstrap-server.yang

YANG Usage:

I did not find anything wrong in any module, but there are no tools to =
valid usage of YANG data, which is used by =
ietf-zerotouch-information.yang module.
So couldn=E2=80=99t get full validation of the module with pyang and =
lintyang tools.

Comments:
1. As stated above, couldn=E2=80=99t get the full validation with the =
tools of the modules, but looking through the code and the draft, the =
authors are following the general recommendations by =
draft-dsdt-nmda-guidelines. Saying that, am fine with moving the draft =
along, but this is an issues that has to be addressed very soon, as =
there will be more drafts using YANG data that will not be able to get =
validated.

2. I couldn=E2=80=99t see how this modules would work well with =
draft-ietf-rtgwg-lne-model. That draft describes how different virtual =
systems with different administrators can run on the same HW. How can we =
boot different versions of SW (lnes) to run on the HW? Or should it =
state that this draft has no plans to support use cases described in =
draft-ietf-rtgwg-lne-model.

Regards,

Dean




--Apple-Mail=_50E88C6B-5B08-4DAC-8645-C9DDE04AF3D0
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D"">Reviewer: Dean Bogdanovic<br class=3D"">Review result: Ready =
with caveat<br class=3D""><br class=3D""><br class=3D"">Modules:<div =
class=3D"">ietf-zerotouch-information.yang</div><div =
class=3D"">ietf-zerotouch-bootstrap-server.yang</div><div class=3D""><div =
class=3D""><br class=3D""></div><div class=3D"">YANG Usage:</div><br =
class=3D"">I did not find anything wrong in any module, but there are no =
tools to valid usage of YANG data, which is used by =
ietf-zerotouch-information.yang module.</div><div class=3D"">So =
couldn=E2=80=99t get full validation of the module with pyang and =
lintyang tools.<br class=3D""><br class=3D"">Comments:<br =
class=3D""></div><div class=3D"">1. As stated above, couldn=E2=80=99t =
get the full validation with the tools of the modules, but looking =
through the code and the draft, the authors are following the general =
recommendations by draft-dsdt-nmda-guidelines. Saying that, am fine with =
moving the draft along, but this is an issues that has to be addressed =
very soon, as there will be more drafts using YANG data that will not be =
able to get validated.</div><div class=3D""><br class=3D""></div><div =
class=3D"">2. I couldn=E2=80=99t see how this modules would work well =
with draft-ietf-rtgwg-lne-model. That draft describes how different =
virtual systems with different administrators can run on the same HW. =
How can we boot different versions of SW (lnes) to run on the HW? Or =
should it state that this draft has no plans to support use cases =
described in draft-ietf-rtgwg-lne-model.</div><div class=3D""><br =
class=3D""></div><div class=3D"">Regards,</div><div class=3D""><br =
class=3D""></div><div class=3D"">Dean</div><div class=3D""><br =
class=3D""></div><div class=3D""><div class=3D""><br =
class=3D""></div></div><div class=3D""><span class=3D"h1" =
style=3D"font-size: 1em; line-height: 0pt; display: inline; font-weight: =
bold;"><h1 style=3D"line-height: 0pt; display: inline; font-size: 1em;" =
class=3D""><br class=3D""></h1></span></div></body></html>=

--Apple-Mail=_50E88C6B-5B08-4DAC-8645-C9DDE04AF3D0--


From nobody Sat Aug 19 12:02:10 2017
Return-Path: <acee@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 66CB31329D1; Sat, 19 Aug 2017 12:02:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.52
X-Spam-Level: 
X-Spam-Status: No, score=-14.52 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id AyqIkHcCRnTZ; Sat, 19 Aug 2017 12:02:07 -0700 (PDT)
Received: from alln-iport-6.cisco.com (alln-iport-6.cisco.com [173.37.142.93]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CFE841329CD; Sat, 19 Aug 2017 12:02:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=2721; q=dns/txt; s=iport; t=1503169326; x=1504378926; h=from:to:cc:subject:date:message-id:mime-version; bh=FsXG7NEjt2jkg555/WphkxwY4K8omMS0ZHFxvTS+x9s=; b=nJBYe2bVyH9CbjXrS+h3t+x63VpGw7Fd5Fa/+vcq15m3wmzbpUjNFi/L wDY54q5zz5RWquJc3u0N4p6Y8x77xv4YKbNtlDAgYrQo76tiYFATlF9Th srT3eT/yVGFKtF3Q75Isw2hqw4LTuD3sc+RFSmK7+wmtxmhHGWBYOCvqw M=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0CkAQCqiZhZ/40NJK1TCRkBAQEBAQEBA?= =?us-ascii?q?QEBAQcBAQEBAYJva4IAnh6SU4U5ghKFRxyDVEEWAQIBAQEBAQEBayiFQlYSAQw?= =?us-ascii?q?BPQIEMCcEAQ2JUmSwFYImi2UBAQEBAQEBAQEBAQEBAQEBAQEggyiCAoMvh3CDP?= =?us-ascii?q?YJhBaBPAoFmklqSXpYfASYCL4EKdxWHY4pKgQ8BAQE?=
X-IronPort-AV: E=Sophos;i="5.41,398,1498521600";  d="scan'208,217";a="474130368"
Received: from alln-core-8.cisco.com ([173.36.13.141]) by alln-iport-6.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 19 Aug 2017 19:02:06 +0000
Received: from XCH-RTP-013.cisco.com (xch-rtp-013.cisco.com [64.101.220.153]) by alln-core-8.cisco.com (8.14.5/8.14.5) with ESMTP id v7JJ25IG016996 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Sat, 19 Aug 2017 19:02:06 GMT
Received: from xch-rtp-015.cisco.com (64.101.220.155) by XCH-RTP-013.cisco.com (64.101.220.153) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Sat, 19 Aug 2017 15:02:05 -0400
Received: from xch-rtp-015.cisco.com ([64.101.220.155]) by XCH-RTP-015.cisco.com ([64.101.220.155]) with mapi id 15.00.1210.000; Sat, 19 Aug 2017 15:02:05 -0400
From: "Acee Lindem (acee)" <acee@cisco.com>
To: YANG Doctors <yang-doctors@ietf.org>, "netmod@ietf.org" <netmod@ietf.org>
CC: Rodney Cummings <rodney.cummings@ni.com>
Thread-Topic: Identities vs enums 
Thread-Index: AQHTGR2lD0xqu8Yxx0SFPCqJBETSBw==
Date: Sat, 19 Aug 2017 19:02:04 +0000
Message-ID: <D5BE0363.C241B%acee@cisco.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.116.152.201]
Content-Type: multipart/alternative; boundary="_000_D5BE0363C241Baceeciscocom_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/iqheA3PZXaQaWBJY2haYIf8Tkcg>
Subject: [yang-doctors] Identities vs enums
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 19 Aug 2017 19:02:08 -0000

--_000_D5BE0363C241Baceeciscocom_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

QWxsLA0KSW4gdGhlIGNvbnRleHQgaWFuYS1yb3V0aW5nLXR5cGVzLnlhbmcsIHdl4oCZdmUgYmVl
biBoYXZpbmcgYSBkaXNjdXNzaW9uIG9mIHRoZSBtZXJpdHMgb2YgaWRlbnRpdGllcyB2cyBlbnVt
cy4gV2XigJl2ZSBmb2xsb3dlZCB0aGUgbGVhZCBvZiBSRkMgNzIyNCBhbmQgdXNlZCBpZGVudGl0
aWVzIHdoaWNoIGFsbG93IGF1Z21lbnRhdGlvbi4gSG93ZXZlciwgZm9yIElBTkEgY29kZSBwb2lu
dHMsIHRoZXJlIGNvdWxkIGJlIG1lcml0IGluIGhhdmluZyB0aGUgdHlwZSByZXByZXNlbnQgdGhl
IGFjdHVhbCBudW1lcmljIHZhbHVlLiBBbnkgdGhvdWdodHMgb24gdGhpcz8NCg0KSW4gdGhlIG5l
eHQgdmVyc2lvbiBvZiBZQU5HLCBpdCB3b3VsZCBiZSB1c2VmdWwgZm9yIGEgYmFzZSBpZGVudGl0
eSB0byBhbGxvdyBpdCB0byBoYXZlIGEgImJhc2UtdHlwZSIgKG11dHVhbGx5IGV4Y2x1c2l2ZSBv
ZiAiaWRlbnRpdHktcmVmIikuIEZvciBhbGwgaWRlbnRpdGllcyBhICJiYXNlLXZhbHVlIiB3b3Vs
ZCBiZSBhbGxvd2VkIGFzIGxvbmcgYXMgaXQgY29uZm9ybWVkIHRvIHRoZSBjb25zdHJhaW50cyBv
ZiB0aGUgYWN0dWFsIG9yIGluaGVyaXRlZCAodmlhIOKAnGlkZW50aXR5LXJlZuKAnSkg4oCcYmFz
ZS10eXBl4oCdLg0KDQpUaGFua3MsDQpBY2VlDQo=

--_000_D5BE0363C241Baceeciscocom_
Content-Type: text/html; charset="utf-8"
Content-ID: <998FD784790379479722E47E7AAC3657@emea.cisco.com>
Content-Transfer-Encoding: base64

PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i
dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjwvaGVhZD4NCjxib2R5IHN0eWxlPSJ3b3JkLXdy
YXA6IGJyZWFrLXdvcmQ7IC13ZWJraXQtbmJzcC1tb2RlOiBzcGFjZTsgLXdlYmtpdC1saW5lLWJy
ZWFrOiBhZnRlci13aGl0ZS1zcGFjZTsgY29sb3I6IHJnYigwLCAwLCAwKTsgZm9udC1zaXplOiAx
NHB4OyBmb250LWZhbWlseTogQ2FsaWJyaSwgc2Fucy1zZXJpZjsiPg0KPGRpdj5BbGwsJm5ic3A7
PC9kaXY+DQo8ZGl2PkluIHRoZSBjb250ZXh0IGlhbmEtcm91dGluZy10eXBlcy55YW5nLCB3ZeKA
mXZlIGJlZW4gaGF2aW5nIGEgZGlzY3Vzc2lvbiBvZiB0aGUgbWVyaXRzIG9mIGlkZW50aXRpZXMg
dnMgZW51bXMuIFdl4oCZdmUgZm9sbG93ZWQgdGhlIGxlYWQgb2YgUkZDIDcyMjQgYW5kIHVzZWQg
aWRlbnRpdGllcyB3aGljaCBhbGxvdyBhdWdtZW50YXRpb24uIEhvd2V2ZXIsIGZvciBJQU5BIGNv
ZGUgcG9pbnRzLCB0aGVyZSBjb3VsZCBiZSBtZXJpdCBpbiBoYXZpbmcNCiB0aGUgdHlwZSByZXBy
ZXNlbnQgdGhlIGFjdHVhbCBudW1lcmljIHZhbHVlLiBBbnkgdGhvdWdodHMgb24gdGhpcz8mbmJz
cDs8L2Rpdj4NCjxkaXY+PGJyPg0KPC9kaXY+DQo8ZGl2PkluIHRoZSBuZXh0IHZlcnNpb24gb2Yg
WUFORywgaXQgd291bGQgYmUgdXNlZnVsIGZvciBhIGJhc2UgaWRlbnRpdHkgdG8gYWxsb3cgaXQg
dG8gaGF2ZSBhICZxdW90O2Jhc2UtdHlwZSZxdW90OyAobXV0dWFsbHkgZXhjbHVzaXZlIG9mICZx
dW90O2lkZW50aXR5LXJlZiZxdW90OykuIEZvciBhbGwgaWRlbnRpdGllcyBhICZxdW90O2Jhc2Ut
dmFsdWUmcXVvdDsgd291bGQgYmUgYWxsb3dlZCBhcyBsb25nIGFzIGl0IGNvbmZvcm1lZCB0byB0
aGUgY29uc3RyYWludHMgb2YgdGhlIGFjdHVhbCBvcg0KIGluaGVyaXRlZCAodmlhIOKAnGlkZW50
aXR5LXJlZuKAnSkg4oCcYmFzZS10eXBl4oCdLiZuYnNwOzwvZGl2Pg0KPGRpdj48YnI+DQo8L2Rp
dj4NCjxkaXY+VGhhbmtzLDwvZGl2Pg0KPGRpdj5BY2VlPC9kaXY+DQo8L2JvZHk+DQo8L2h0bWw+
DQo=

--_000_D5BE0363C241Baceeciscocom_--


From nobody Sun Aug 20 01:03:15 2017
Return-Path: <j.schoenwaelder@jacobs-university.de>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3C8CD132328; Sun, 20 Aug 2017 01:03:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RnG5nogvfVq4; Sun, 20 Aug 2017 01:03:04 -0700 (PDT)
Received: from atlas5.jacobs-university.de (atlas5.jacobs-university.de [212.201.44.20]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B15CC1321B6; Sun, 20 Aug 2017 01:03:04 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas5.jacobs-university.de (Postfix) with ESMTP id BD3C799; Sun, 20 Aug 2017 10:03:02 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas5.jacobs-university.de ([10.70.0.217]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10032) with ESMTP id j5e1-Orqdygi; Sun, 20 Aug 2017 10:02:59 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas5.jacobs-university.de (Postfix) with ESMTPS; Sun, 20 Aug 2017 10:03:02 +0200 (CEST)
Received: from localhost (demetrius1.jacobs-university.de [212.201.44.46]) by hermes.jacobs-university.de (Postfix) with ESMTP id 7AE65200DF; Sun, 20 Aug 2017 10:03:02 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius1.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id 3LU5I8B0lyfw; Sun, 20 Aug 2017 10:03:02 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 0DB6E200DE; Sun, 20 Aug 2017 10:03:01 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id B508E404474A; Sun, 20 Aug 2017 10:03:01 +0200 (CEST)
Date: Sun, 20 Aug 2017 10:03:01 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: "Acee Lindem (acee)" <acee@cisco.com>
Cc: YANG Doctors <yang-doctors@ietf.org>, "netmod@ietf.org" <netmod@ietf.org>,  Rodney Cummings <rodney.cummings@ni.com>
Message-ID: <20170820080301.asf2fx6o4abupq4h@elstar.local>
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
Mail-Followup-To: "Acee Lindem (acee)" <acee@cisco.com>, YANG Doctors <yang-doctors@ietf.org>, "netmod@ietf.org" <netmod@ietf.org>, Rodney Cummings <rodney.cummings@ni.com>
References: <D5BE0363.C241B%acee@cisco.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
X-Clacks-Overhead: GNU Terry Pratchett
Content-Transfer-Encoding: 8bit
In-Reply-To: <D5BE0363.C241B%acee@cisco.com>
User-Agent: NeoMutt/20170714 (1.8.3)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/VL9QAm2lRFZcvwvCtZIb-EN0YJk>
Subject: Re: [yang-doctors] Identities vs enums
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 20 Aug 2017 08:03:07 -0000

On Sat, Aug 19, 2017 at 07:02:04PM +0000, Acee Lindem (acee) wrote:
> All,
> In the context iana-routing-types.yang, we’ve been having a discussion of the merits of identities vs enums. We’ve followed the lead of RFC 7224 and used identities which allow augmentation. However, for IANA code points, there could be merit in having the type represent the actual numeric value. Any thoughts on this?
> 
> In the next version of YANG, it would be useful for a base identity to allow it to have a "base-type" (mutually exclusive of "identity-ref"). For all identities a "base-value" would be allowed as long as it conformed to the constraints of the actual or inherited (via “identity-ref”) “base-type”.
> 

The question here really is who is charge of controlling assignments
of a name space.

- If there is a single authority controlling the assignments, an enum
  works fine.

- If the assignments are not controlled by a single authority, an
  identity works fine.

We sometimes have situations that are somewhere in between, i.e., a
central authority controlling assignments but delegating parts of the
name space to other authoritities. I agree, we do not have good
support to model this explicitly in YANG today.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Mon Aug 21 07:46:19 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AE502132626 for <yang-doctors@ietfa.amsl.com>; Mon, 21 Aug 2017 07:46:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.02
X-Spam-Level: 
X-Spam-Status: No, score=-2.02 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7CIskHbxV2_u for <yang-doctors@ietfa.amsl.com>; Mon, 21 Aug 2017 07:46:14 -0700 (PDT)
Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0118.outbound.protection.outlook.com [104.47.32.118]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E906413234B for <yang-doctors@ietf.org>; Mon, 21 Aug 2017 07:46:13 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=4OXyfVyVr42MPBPQ9GG+YbSSBArTciIJexAm8hbx/n4=; b=XMYmWyVfGqYnv8feB4efy7DnccgG9WtLqtpMZHtIfIBgeVhB/x22YHmb5IIrjlO/HMUC+NVRGTeQKvxM0i93VjkZQ3P5olre4K2g1G1RYW4AkUPD4q+qvCjTAIqamvWNkIjsUtBE8MinMAxztWYl/7e+ns0zGcD91wXB00+bDDE=
Received: from CY1PR0501MB1450.namprd05.prod.outlook.com (10.160.149.11) by CY1PR0501MB1450.namprd05.prod.outlook.com (10.160.149.11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1385.4; Mon, 21 Aug 2017 14:46:10 +0000
Received: from CY1PR0501MB1450.namprd05.prod.outlook.com ([10.160.149.11]) by CY1PR0501MB1450.namprd05.prod.outlook.com ([10.160.149.11]) with mapi id 15.01.1385.008; Mon, 21 Aug 2017 14:46:09 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: Norm Strahle <nstrahle@juniper.net>, Andy Bierman <andy@yumaworks.com>
CC: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Jan Lindblad <janl@tail-f.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, "Ing-Wher Chen" <Ing-Wher_Chen@jabil.com>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Thread-Topic: [yang-doctors] question regarding conditional/optional statements
Thread-Index: AdMWuspFVk5k9TDdRCeshA4HU2pVBgAW9agAAAZRqwAAAQt6gAAL2xKAAAn7ZgAAJSDmQACSsDmA
Date: Mon, 21 Aug 2017 14:46:09 +0000
Message-ID: <3E5048BE-1488-462C-B20D-83237FF72DA0@juniper.net>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <DC062E7E-7422-4037-82E4-52B17422B33E@juniper.net> <CABCOCHQJOBXrYLntdg_7iL3wqy9Fkcd10f0ArwPJUNKo9dZAVQ@mail.gmail.com> <DM2PR0501MB15024D3A6AA8F654C1C7B418CF800@DM2PR0501MB1502.namprd05.prod.outlook.com>
In-Reply-To: <DM2PR0501MB15024D3A6AA8F654C1C7B418CF800@DM2PR0501MB1502.namprd05.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/f.20.0.170309
authentication-results: spf=none (sender IP is ) smtp.mailfrom=kwatsen@juniper.net; 
x-originating-ip: [66.129.241.14]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; CY1PR0501MB1450; 6:wjuWS6D2PD7Y5gC4LL5NjaPQMPNer/3cGFQjOyo7BTftQcX2deQdV7ioL618n/IY0YlMEStNtdaLrJdpfZrdetJcrzjWPIX5y0w2hw8Q5GRR6h6YoYUXMjOlV6rc6pPz1w+pVWvgyxX8H6QxUdIwExQcSgl7Z4cYtlbaq6zjBI9ygMLomPWho5d0gC7y/0WfY16TKj0lAWmeq1w7xIWIgjxVfE4m48XEEews9Hq9gTA2AJBmSy5p6M17CCmtcPAvd3cWzWe7OTvdt8fLE8iD7GLGG3OS/8dAnOySvB5oXTB9CpT47S/5mMXES5D9214G4z/shaj3JIvfaahGU4ztZA==; 5:2gPugSXOyBbP+BK8ueyTzmW81vTv0HjWqnczvHIp7nfih8eLAS6ec8VwQJa2tTYZ+YbK89TOagdnu9528NHrhre9CeUrNnTVxNzCahUTYMNm8sllui9rdVQ/RvD7bryCYhiFY7X2dNLw3lvAfZQHUA==; 24:rbHtieygTGVMDvRGPLF4rTIbrrGJWKTd+RtJ7w2OBBzbTq89CaVtswNyL3MguyT2l3ORFYAInplbmV+PuJQbHRhSdOVng9YP/9Z8QA3N4DU=; 7:eKRB6Ot76jcVWFXhGuqNKNQM43EVvwFgECSCpTITqksAv7pAoY3/026mHgHl9ca+TlbMypsLfR54UsiLWRtzkCuklBU3hirPinxMet/hh2WFRpIBfeWyG02VLHXP7TV5/6rMr90nGL8//1Zz/rM8ukmVWglb1E95D6FyzB1zAkWAwV0/OAJ8vIgvFuZ9im+aBxi+SkJj7i+P+tF9Pirl2N9WkIcARKdFydi3592pbAc=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;SSOR;
x-forefront-antispam-report: SFV:SKI; SCL:-1; SFV:NSPM; SFS:(10019020)(39860400002)(377454003)(189002)(199003)(24454002)(6486002)(53546010)(966005)(86362001)(77096006)(6506006)(102836003)(3846002)(1941001)(101416001)(6116002)(6246003)(76176999)(50986999)(54356999)(606006)(25786009)(66066001)(229853002)(6436002)(2900100001)(189998001)(68736007)(2950100002)(53936002)(97736004)(3660700001)(5660300001)(33656002)(81166006)(4326008)(3280700002)(8936002)(478600001)(4001350100001)(93886005)(8676002)(81156014)(82746002)(7736002)(83716003)(36756003)(14454004)(2906002)(106356001)(54906002)(99286003)(83506001)(105586002)(54896002)(6512007)(6306002)(236005); DIR:OUT; SFP:1102; SCL:1; SRVR:CY1PR0501MB1450; H:CY1PR0501MB1450.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; 
x-ms-office365-filtering-correlation-id: 0d56f4bb-7a6b-44f6-c0a6-08d4e8a35c97
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603031)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:CY1PR0501MB1450; 
x-ms-traffictypediagnostic: CY1PR0501MB1450:
x-exchange-antispam-report-test: UriScan:(190756311086443)(158342451672863)(138986009662008)(95692535739014)(21748063052155)(21534305686606);
x-microsoft-antispam-prvs: <CY1PR0501MB14504D73DA7DBECFAD3A58B4A5870@CY1PR0501MB1450.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(10201501046)(93006095)(93001095)(100000703101)(100105400095)(3002001)(6055026)(6041248)(20161123560025)(20161123558100)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123562025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:CY1PR0501MB1450; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:CY1PR0501MB1450; 
x-forefront-prvs: 040655413E
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_3E5048BE1488462CB20D83237FF72DA0junipernet_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Aug 2017 14:46:09.4657 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0501MB1450
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/o46cdYHPIH_dj3-TQY9PzvhNQ94>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Aug 2017 14:46:18 -0000

--_000_3E5048BE1488462CB20D83237FF72DA0junipernet_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SWYgYmVpbmcgYWJsZSB0byBzcGVjaWZ5IHBlci1pbnRlcmZhY2UgaXMgY3JpdGljYWwsIHRoZW4g
Y2xlYXJseSBmZWF0dXJlcyB3b24ndCB3b3JrLg0KDQpUb28gYmFkLCBhIHN0YXRpYy9tZXRhZGF0
YSBiYXNlZCBhcHByb2FjaCB3b3VsZCBiZSBiZXR0ZXIsIGJ1dCBpdCB3b3VsZCByZXF1aXJlIHVz
IGRlZmluaW5nIHNvbWV0aGluZyBsaWtlIGEgaGFyZHdhcmUtY2F0YWxvZyB3aGVyZWJ5IGVhY2gg
aGFyZHdhcmUgY29tcG9uZW50IGNvbWVzIHdpdGggYSBtZXRhZGF0YSBmaWxlIGRlc2NyaWJpbmcg
aXQuICBJJ3ZlIGRvbmUgdGhpcyBiZWZvcmUsIGJ1dCB3ZSBoYXZlIG5vdGhpbmcgbGlrZSBpdCBp
biB0aGUgSUVURi4NCg0KSWYgeW91IHVzZSB0aGUgYml0LW1lY2hhbmlzbSwgdGhhbiB5b3UgY2hv
dWxkIGNvbnNpZGVyIHVzaW5nIHRoZSBiaXQtaXMtc2V0KCkgWFBhdGggZnVuY3Rpb24gaW4gYSAn
d2hlbicgZXhwcmVzc2lvbiB0byBtYWtlIHRoZSBpbnRlbnRpb24gY2xlYXJlciwganVzdCB0ZWNo
bmljYWwgZG9jdW1lbnRhdGlvbiwgbm90IHNvbWV0aGluZyB0aGF0IGlzIGV4cGVjdGVkIHRvIGNv
bnN0cmFpbiB0aGUgc2VydmVyLg0KDQpCZXR3ZWVuIHRoZSB0d28gY2hvaWNlcywgSSdtIG1vcmUg
Zm9yIGp1c3QgbGVhdmluZyBmaWVsZHMgb3V0IGJlY2F1c2UgaXQncyBzaW1wbGVyIGFuZCwgYXMg
YSBjbGllbnQsIEknZCByYXRoZXI6DQoNCiAgICAgICAgICAgIGZvciBlYWNoIGNoaWxkIGluIHF1
ZXVpbmctc3RhdGlzdGljcy1vcHQtMg0KICAgICAgICAgICAgICAgIHJlYWQgY2hpbGQsIGRldGVy
bWluaW5nIHdoaWNoIGNvdW50ZXIgaXQgaXMgaW4gdGhlIHByb2Nlc3MNCg0KdGhhbg0KDQogICAg
ICAgICAgICBmb3IgZWFjaCBiaXQgc2V0IGluICdzdXBwb3J0ZWQtY291bnRlcnMnDQogICAgICAg
ICAgICAgICAgICB1c2Ugc3dpdGNoL2Nhc2Ugb3IgaWYvZWxzZSB0byBtYXAgdGhlIGJpdCB0byBh
IGNvdW50ZXItbGVhZiBuYW1lDQogICAgICAgICAgICAgICAgICAgICAgcmVhZCBjb3VudGVyLWxl
YWYgdmFsdWUNCg0KDQpLZW50DQoNCg0KT24gOC8xOC8xNywgODo1OSBBTSwgIk5vcm0gU3RyYWhs
ZSIgPG5zdHJhaGxlQGp1bmlwZXIubmV0PG1haWx0bzpuc3RyYWhsZUBqdW5pcGVyLm5ldD4+IHdy
b3RlOg0KDQpIZXkgZm9sa3MsIEFwcHJlY2lhdGUgYWxsIHRoZSBmZWVkYmFjay4gIFdlIGRpc2N1
c3NlZCB5ZXN0ZXJkYXkgYW1vbmcgZGlmZnNlcnYtaWV0ZiBtb2RlbGVycyB5ZXN0ZXJkYXkgYW5k
IGhhZCBhIGNvdXBsZSBjb21tZW50czoNCg0KDQrCtyAgICAgICAgIFdlIGxpa2VkIGV4cGxpY2l0
IHN0YXRlbWVudHMgKGRldmlhdGlvbnMsIGZlYXR1cmVzLCBmbGFnLWJpdHMpIHJhdGhlciB0aGFu
IGltcGxpY2l0IOKAkyBpLmUuIG9wdGlvbiA1IOKAkyBvZiB2ZW5kb3JzIGxlYXZpbmcgdW5zdXBw
b3J0ZWQgbGVhdmVzIG91dCBvZiBjb250YWluZXJzDQoNCsK3ICAgICAgICAgV2UgdGhpbmsgaWYt
ZmVhdHVyZXMgb3IgdGhlIOKAnGJpdOKAnSBmbGFnIG1lY2hhbmlzbSBhcmUgYmV0dGVyIHRoYW4g
ZGV2aWF0aW9ucywgYXMgaXQgYXQgbGVhc3QgYWxsb3dzIGNsaWVudHMgdG8gYW50aWNpcGF0ZSB1
cCBmcm9udCB0aGF0IHNvbWUgaXRlbXMgbWF5IG5vdCBiZSBzdXBwb3J0ZWQuDQoNCsK3ICAgICAg
ICAgT25lIGFkdmFudGFnZSBvZiB1c2luZyB0aGUg4oCcYml04oCdIGZsYWcgbWVjaGFuaXNtIOKA
kyBpLmUuIG9wdGlvbiAyIC0gb3ZlciBmZWF0dXJlcyBpcyB0aGF0IHRoaXMgYWxsb3dzIGEgdmVu
ZG9yIHRvIHNwZWNpZnkgcGVyLWludGVyZmFjZSB3aGF0IGlzIHN1cHBvcnRlZC4gIFdoYXQgZmVh
dHVyZXMgYSB2ZW5kb3Igc3VwcG9ydHMgZm9yIGRpZmZzZXJ2IGlzIHZlcnkgaGFyZHdhcmUgZGVw
ZW5kZW50IGFuZCBtYXkgdmFyeSBmcm9tIGludGVyZmFjZSB0byBpbnRlcmZhY2Ugd2l0aGluIGEg
c2luZ2xlIGRldmljZS4gQSBkZXZpY2UgbWF5IGhhdmUgbXVsdGlwbGUgdHlwZXMgYW5kIGdlbmVy
YXRpb25zIG9mIGxpbmUgY2FyZHMsIGFuZCB0aHVzLCB0aGUgdHlwZXMgb2Ygc3RhdHMgc3VwcG9y
dGVkIHdpbGwgYmUgZGlmZmVyZW50LiBUaGUgYml0LWZsYWcgbWVjaGFuaXNtIGFsbG93cyBhIGRl
dmljZSB0byByZWZsZWN0IHRoYXQgdG8gdGhlIGNsaWVudCBleHBsaWNpdGx5Lg0KDQpUaG91Z2h0
cyBvbiBhbGwgdGhlIGFib3ZlIGFyZSBtdWNoIGFwcHJlY2lhdGVkLg0KVGhhbmtzLA0KTm9ybQ0K
DQpGcm9tOiBBbmR5IEJpZXJtYW4gW21haWx0bzphbmR5QHl1bWF3b3Jrcy5jb21dDQpTZW50OiBU
aHVyc2RheSwgQXVndXN0IDE3LCAyMDE3IDM6MDMgUE0NClRvOiBLZW50IFdhdHNlbiA8a3dhdHNl
bkBqdW5pcGVyLm5ldD4NCkNjOiBKdWVyZ2VuIFNjaG9lbndhZWxkZXIgPGouc2Nob2Vud2FlbGRl
ckBqYWNvYnMtdW5pdmVyc2l0eS5kZT47IEphbiBMaW5kYmxhZCA8amFubEB0YWlsLWYuY29tPjsg
eWFuZy1kb2N0b3JzQGlldGYub3JnOyBJbmctV2hlciBDaGVuIDxJbmctV2hlcl9DaGVuQGphYmls
LmNvbT47IE5vcm0gU3RyYWhsZSA8bnN0cmFobGVAanVuaXBlci5uZXQ+OyBBc2VlbSBDaG91ZGhh
cnkgKGFzZWNob3VkKSA8YXNlY2hvdWRAY2lzY28uY29tPg0KU3ViamVjdDogUmU6IFt5YW5nLWRv
Y3RvcnNdIHF1ZXN0aW9uIHJlZ2FyZGluZyBjb25kaXRpb25hbC9vcHRpb25hbCBzdGF0ZW1lbnRz
DQoNCg0KDQpPbiBUaHUsIEF1ZyAxNywgMjAxNyBhdCAxMToxNyBBTSwgS2VudCBXYXRzZW4gPGt3
YXRzZW5AanVuaXBlci5uZXQ8bWFpbHRvOmt3YXRzZW5AanVuaXBlci5uZXQ+PiB3cm90ZToNCg0K
DQoNCj4gSSBiZWxpZXZlIGEgZmVhdHVyZSBmb3IgZXZlcnkgY291bnRlciBpcyBhIG1pc3VzZSBv
ZiBZQU5HIGZlYXR1cmUNCj4gc3RhdGVtZW50cywgaXQgd2lsbCBnZXQgaG9ycmlibHkgdWdseS4g
SSByZWNlbnRseSBvYnNlcnZlIGFuIGluY3JlYXNlDQo+IG9mIGZlYXR1cmUgc3RhdGVtZW50IHVz
YWdlIGluIG9yZGVyIHRvIGFjY29tb2RhdGUgc2VydmVyDQo+IGltcGxlbWVudGF0aW9ucyBhbmQg
dGhlIHVsdGltYXRlIHNvbHV0aW9uIGlzIGEgZmVhdHVyZSBzdGF0ZW1lbnQgZm9yDQo+IGV2ZXJ5
IGxlYWYsIGxpc3QsIHJwYywgYWN0aW9uLCBub3RpZmljYXRpb24gYW5kIHBlcmhhcHMgZXZlbiBj
ZXJ0YWluDQo+IHZhbHVlIHNldHMuIFRoaXMgaXMgcmlkaWN1bG91cywgYnV0IGEgZmVhdHVyZSBm
b3IgZXZlcnkgY291bnRlciBpcw0KPiBnZXR0aW5nIGRhbW4gY2xvc2UgdG8gaXQuDQoNClRoaXMg
aXMgYSBwcm9ncmFtbWF0aWMgQVBJLiAgSSBhcHByZWNpYXRlIHRoZSBjb25jZXJuIGZvciBhIGJs
b2F0IG9mDQpiaXRzIG9uIHRoZSB3aXJlLCBidXQgcmVjYWxsIHRoYXQgZmVhdHVyZXMgYXJlIGxp
c3RlZCBpbiB5YW5nLWxpYnJhcnksDQphIHZlcnkgc3BlY2lhbCBtb2R1bGUgdGhhdCBoYXMgYSBi
dWlsdC1pbiBFVGFnLWxpa2UgaGFzaGluZyBtZWNoYW5pc20NCnRvIGFsbG93IGZvciBlZmZpY2ll
bnQgY29tcGFyaXNvbnMuICBJIGRvbid0IHNlZSB0aGUgYmxvYXQgaXNzdWUgaGVyZS4NCg0KSGF2
aW5nIGZlYXR1cmUgc3RhdGVtZW50cyBldmVyeXdoZXJlIG1heSBiZSByaWRpY3Vsb3VzLCBidXQg
bm90IGlsbGVnYWwuDQpJbXBsZW1lbnRhdGlvbnMgbmVlZCB0byBiZSBhYmxlIHRvIGhhbmRsZSBp
dCBhbHJlYWR5LCByaWdodD8NCg0KZ29vZCBwb2ludHMuDQpUaGV5IGFsbCBhcHBseSBlcXVhbGx5
IHRvIGRldmlhdGlvbnMgYW5kIGZlYXR1cmVzLg0KDQpJIHRoaW5rIHRoZSB3YXkgeW91IHVzZWQg
ZmVhdHVyZXMgaW4gdGhlIGNsaWVudC1zZXJ2ZXIgc2V0IG9mIG1vZHVsZXMgaXMgYSBnb29kIGV4
YW1wbGUNCmZvciBzb2x2aW5nIHRoaXMgc29ydCBvZiBwcm9ibGVtLiAgVGhlIGlmLWZlYXR1cmUt
c3RtdHMgYXJlIG9uIGNvbnRhaW5lcnMsIG5vdA0KaW5kaXZpZHVhbCBsZWFmcy4NCg0KSSBkb24n
dCB0aGluayBzcGVjaWFsIG9iamVjdHMgdGhhdCByZXR1cm4gd2hpY2ggb3RoZXIgb2JqZWN0cyBh
cmUgaW1wbGVtZW50ZWQNCmlzIGdvb2QgYmVjYXVzZSBpdCBpcyBub3QgYSBnZW5lcmFsaXplZCBz
b2x1dGlvbi4gIEEgYmV0dGVyIGFwcHJvYWNoIHdvdWxkIGJlDQp0byBlbmhhbmNlIHRoZSBwcm90
b2NvbHMgc28gIm5vdC1pbXBsZW1lbnRlZCIgYW5kICJ0ZW1wLXVuYXZhaWxhYmxlIiBleGNlcHRp
b25zDQpjYW4gYmUgcmV0dXJuZWQgb24gcmVxdWVzdCAoYWxhIHdpdGgtZGVmYXVsdHMpDQoNCg0K
S2VudA0KDQoNCkFuZHkNCg0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18NCnlhbmctZG9jdG9ycyBtYWlsaW5nIGxpc3QNCnlhbmctZG9jdG9yc0BpZXRmLm9y
ZzxtYWlsdG86eWFuZy1kb2N0b3JzQGlldGYub3JnPg0KaHR0cHM6Ly93d3cuaWV0Zi5vcmcvbWFp
bG1hbi9saXN0aW5mby95YW5nLWRvY3RvcnMNCg0K

--_000_3E5048BE1488462CB20D83237FF72DA0junipernet_
Content-Type: text/html; charset="utf-8"
Content-ID: <4DBB4FB3D6750A4FBB787CCBB832B9F5@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6bz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlIiB4
bWxuczp3PSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTp3b3JkIiB4bWxuczptPSJo
dHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL29mZmljZS8yMDA0LzEyL29tbWwiIHhtbG5zPSJo
dHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtaHRtbDQwIj4NCjxoZWFkPg0KPG1ldGEgaHR0cC1lcXVp
dj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiPg0KPG1l
dGEgbmFtZT0iVGl0bGUiIGNvbnRlbnQ9IiI+DQo8bWV0YSBuYW1lPSJLZXl3b3JkcyIgY29udGVu
dD0iIj4NCjxtZXRhIG5hbWU9IkdlbmVyYXRvciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUg
KGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxlPjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8N
CkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3IjsNCglwYW5vc2UtMToyIDcg
MyA5IDIgMiA1IDIgNCA0O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6V2luZ2RpbmdzOw0K
CXBhbm9zZS0xOjUgMCAwIDAgMCAwIDAgMCAwIDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWls
eToiQ2FtYnJpYSBNYXRoIjsNCglwYW5vc2UtMToyIDQgNSAzIDUgNCA2IDMgMiA0O30NCkBmb250
LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q2FsaWJyaTsNCglwYW5vc2UtMToyIDE1IDUgMiAyIDIgNCAz
IDIgNDt9DQovKiBTdHlsZSBEZWZpbml0aW9ucyAqLw0KcC5Nc29Ob3JtYWwsIGxpLk1zb05vcm1h
bCwgZGl2Lk1zb05vcm1hbA0KCXttYXJnaW46MGluOw0KCW1hcmdpbi1ib3R0b206LjAwMDFwdDsN
Cglmb250LXNpemU6MTIuMHB0Ow0KCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iO30NCmE6
bGluaywgc3Bhbi5Nc29IeXBlcmxpbmsNCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCWNvbG9y
OmJsdWU7DQoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9DQphOnZpc2l0ZWQsIHNwYW4uTXNv
SHlwZXJsaW5rRm9sbG93ZWQNCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCWNvbG9yOnB1cnBs
ZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCnAuTXNvTGlzdFBhcmFncmFwaCwgbGku
TXNvTGlzdFBhcmFncmFwaCwgZGl2Lk1zb0xpc3RQYXJhZ3JhcGgNCgl7bXNvLXN0eWxlLXByaW9y
aXR5OjM0Ow0KCW1hcmdpbi10b3A6MGluOw0KCW1hcmdpbi1yaWdodDowaW47DQoJbWFyZ2luLWJv
dHRvbTowaW47DQoJbWFyZ2luLWxlZnQ6LjVpbjsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJ
Zm9udC1zaXplOjEyLjBwdDsNCglmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjt9DQpwLm1z
b25vcm1hbDAsIGxpLm1zb25vcm1hbDAsIGRpdi5tc29ub3JtYWwwDQoJe21zby1zdHlsZS1uYW1l
Om1zb25vcm1hbDsNCgltc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzsNCgltYXJnaW4tcmlnaHQ6MGlu
Ow0KCW1zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvOw0KCW1hcmdpbi1sZWZ0OjBpbjsNCglmb250
LXNpemU6MTIuMHB0Ow0KCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iO30NCnNwYW4uRW1h
aWxTdHlsZTE5DQoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsOw0KCWZvbnQtZmFtaWx5OkNhbGli
cmk7DQoJY29sb3I6IzFGNDk3RDt9DQpzcGFuLkVtYWlsU3R5bGUyMA0KCXttc28tc3R5bGUtdHlw
ZTpwZXJzb25hbC1yZXBseTsNCglmb250LWZhbWlseTpDYWxpYnJpOw0KCWZvbnQtdmFyaWFudDpu
b3JtYWwgIWltcG9ydGFudDsNCgljb2xvcjp3aW5kb3d0ZXh0Ow0KCXRleHQtdHJhbnNmb3JtOm5v
bmU7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmUgbm9uZTsNCgl2ZXJ0aWNhbC1hbGlnbjpiYXNlbGlu
ZTt9DQpzcGFuLm1zb0lucw0KCXttc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTsNCgltc28tc3R5
bGUtbmFtZToiIjsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOw0KCWNvbG9yOnRlYWw7fQ0K
Lk1zb0NocERlZmF1bHQNCgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7DQoJZm9udC1zaXpl
OjEwLjBwdDt9DQpAcGFnZSBXb3JkU2VjdGlvbjENCgl7c2l6ZTo4LjVpbiAxMS4waW47DQoJbWFy
Z2luOjEuMGluIDEuMGluIDEuMGluIDEuMGluO30NCmRpdi5Xb3JkU2VjdGlvbjENCgl7cGFnZTpX
b3JkU2VjdGlvbjE7fQ0KLyogTGlzdCBEZWZpbml0aW9ucyAqLw0KQGxpc3QgbDANCgl7bXNvLWxp
c3QtaWQ6MTk0NDY2MDYyOw0KCW1zby1saXN0LXR5cGU6aHlicmlkOw0KCW1zby1saXN0LXRlbXBs
YXRlLWlkczoyMDU4NTEzMDE4IDY3Njk4Njg5IDY3Njk4NjkxIDY3Njk4NjkzIDY3Njk4Njg5IDY3
Njk4NjkxIDY3Njk4NjkzIDY3Njk4Njg5IDY3Njk4NjkxIDY3Njk4NjkzO30NCkBsaXN0IGwwOmxl
dmVsMQ0KCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxsZXQ7DQoJbXNvLWxldmVsLXRleHQ6
74K3Ow0KCW1zby1sZXZlbC10YWItc3RvcDpub25lOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRp
b246bGVmdDsNCgl0ZXh0LWluZGVudDotLjI1aW47DQoJZm9udC1mYW1pbHk6U3ltYm9sO30NCkBs
aXN0IGwwOmxldmVsMg0KCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxsZXQ7DQoJbXNvLWxl
dmVsLXRleHQ6bzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsNCgltc28tbGV2ZWwtbnVtYmVy
LXBvc2l0aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LS4yNWluOw0KCWZvbnQtZmFtaWx5OiJDb3Vy
aWVyIE5ldyI7fQ0KQGxpc3QgbDA6bGV2ZWwzDQoJe21zby1sZXZlbC1udW1iZXItZm9ybWF0OmJ1
bGxldDsNCgltc28tbGV2ZWwtdGV4dDrvgqc7DQoJbXNvLWxldmVsLXRhYi1zdG9wOm5vbmU7DQoJ
bXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50Oi0uMjVpbjsNCglm
b250LWZhbWlseTpXaW5nZGluZ3M7fQ0KQGxpc3QgbDA6bGV2ZWw0DQoJe21zby1sZXZlbC1udW1i
ZXItZm9ybWF0OmJ1bGxldDsNCgltc28tbGV2ZWwtdGV4dDrvgrc7DQoJbXNvLWxldmVsLXRhYi1z
dG9wOm5vbmU7DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50
Oi0uMjVpbjsNCglmb250LWZhbWlseTpTeW1ib2w7fQ0KQGxpc3QgbDA6bGV2ZWw1DQoJe21zby1s
ZXZlbC1udW1iZXItZm9ybWF0OmJ1bGxldDsNCgltc28tbGV2ZWwtdGV4dDpvOw0KCW1zby1sZXZl
bC10YWItc3RvcDpub25lOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsNCgl0ZXh0
LWluZGVudDotLjI1aW47DQoJZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijt9DQpAbGlzdCBsMDps
ZXZlbDYNCgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0
Ou+CpzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsNCgltc28tbGV2ZWwtbnVtYmVyLXBvc2l0
aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LS4yNWluOw0KCWZvbnQtZmFtaWx5OldpbmdkaW5nczt9
DQpAbGlzdCBsMDpsZXZlbDcNCgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1z
by1sZXZlbC10ZXh0Ou+CtzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsNCgltc28tbGV2ZWwt
bnVtYmVyLXBvc2l0aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LS4yNWluOw0KCWZvbnQtZmFtaWx5
OlN5bWJvbDt9DQpAbGlzdCBsMDpsZXZlbDgNCgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YnVs
bGV0Ow0KCW1zby1sZXZlbC10ZXh0Om87DQoJbXNvLWxldmVsLXRhYi1zdG9wOm5vbmU7DQoJbXNv
LWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50Oi0uMjVpbjsNCglmb250
LWZhbWlseToiQ291cmllciBOZXciO30NCkBsaXN0IGwwOmxldmVsOQ0KCXttc28tbGV2ZWwtbnVt
YmVyLWZvcm1hdDpidWxsZXQ7DQoJbXNvLWxldmVsLXRleHQ674KnOw0KCW1zby1sZXZlbC10YWIt
c3RvcDpub25lOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsNCgl0ZXh0LWluZGVu
dDotLjI1aW47DQoJZm9udC1mYW1pbHk6V2luZ2RpbmdzO30NCm9sDQoJe21hcmdpbi1ib3R0b206
MGluO30NCnVsDQoJe21hcmdpbi1ib3R0b206MGluO30NCi0tPjwvc3R5bGU+DQo8L2hlYWQ+DQo8
Ym9keSBiZ2NvbG9yPSJ3aGl0ZSIgbGFuZz0iRU4tVVMiIGxpbms9ImJsdWUiIHZsaW5rPSJwdXJw
bGUiPg0KPGRpdiBjbGFzcz0iV29yZFNlY3Rpb24xIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxz
cGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJpIj5JZiBiZWluZyBhYmxlIHRvIHNwZWNpZnkg
cGVyLWludGVyZmFjZSBpcyBjcml0aWNhbCwgdGhlbiBjbGVhcmx5IGZlYXR1cmVzIHdvbid0IHdv
cmsuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5
bGU9ImZvbnQtZmFtaWx5OkNhbGlicmkiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJpIj5Ub28g
YmFkLCBhIHN0YXRpYy9tZXRhZGF0YSBiYXNlZCBhcHByb2FjaCB3b3VsZCBiZSBiZXR0ZXIsIGJ1
dCBpdCB3b3VsZCByZXF1aXJlIHVzIGRlZmluaW5nIHNvbWV0aGluZyBsaWtlIGEgaGFyZHdhcmUt
Y2F0YWxvZyB3aGVyZWJ5IGVhY2ggaGFyZHdhcmUgY29tcG9uZW50IGNvbWVzIHdpdGggYSBtZXRh
ZGF0YSBmaWxlIGRlc2NyaWJpbmcgaXQuJm5ic3A7IEkndmUNCiBkb25lIHRoaXMgYmVmb3JlLCBi
dXQgd2UgaGF2ZSBub3RoaW5nIGxpa2UgaXQgaW4gdGhlIElFVEYuPG86cD48L286cD48L3NwYW4+
PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNhbGli
cmkiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxz
cGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJpIj5JZiB5b3UgdXNlIHRoZSBiaXQtbWVjaGFu
aXNtLCB0aGFuIHlvdSBjaG91bGQgY29uc2lkZXIgdXNpbmcgdGhlIGJpdC1pcy1zZXQoKSBYUGF0
aCBmdW5jdGlvbiBpbiBhICd3aGVuJyBleHByZXNzaW9uIHRvIG1ha2UgdGhlIGludGVudGlvbiBj
bGVhcmVyLCBqdXN0IHRlY2huaWNhbCBkb2N1bWVudGF0aW9uLCBub3Qgc29tZXRoaW5nIHRoYXQg
aXMgZXhwZWN0ZWQNCiB0byBjb25zdHJhaW4gdGhlIHNlcnZlci48bzpwPjwvbzpwPjwvc3Bhbj48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q2FsaWJy
aSI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNw
YW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNhbGlicmkiPkJldHdlZW4gdGhlIHR3byBjaG9pY2VzLCBJ
J20gbW9yZSBmb3IganVzdCBsZWF2aW5nIGZpZWxkcyBvdXQgYmVjYXVzZSBpdCdzIHNpbXBsZXIg
YW5kLCBhcyBhIGNsaWVudCwgSSdkIHJhdGhlcjo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q2FsaWJyaSI+PG86cD4m
bmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9
ImZvbnQtZmFtaWx5OkNhbGlicmkiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBmb3IgZWFjaCBjaGlsZCBpbiBxdWV1aW5n
LXN0YXRpc3RpY3Mtb3B0LTI8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q2FsaWJyaSI+Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZu
YnNwOyZuYnNwOyByZWFkIGNoaWxkLCBkZXRlcm1pbmluZyB3aGljaCBjb3VudGVyIGl0IGlzIGlu
IHRoZSBwcm9jZXNzPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+
PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNhbGlicmkiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFu
PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxp
YnJpIj50aGFuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNw
YW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNhbGlicmkiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwv
cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJp
Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsgZm9yIGVhY2ggYml0IHNldCBpbiAnc3VwcG9ydGVkLWNvdW50ZXJzJzxvOnA+
PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250
LWZhbWlseTpDYWxpYnJpIj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsgdXNlIHN3aXRjaC9jYXNlIG9yIGlmL2Vsc2UgdG8gbWFwIHRoZSBiaXQgdG8gYSBjb3Vu
dGVyLWxlYWYgbmFtZQ0KPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNhbGlicmkiPiZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3Jl
YWQgY291bnRlci1sZWFmIHZhbHVlPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNhbGlicmkiPjxvOnA+Jm5ic3A7PC9v
OnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZh
bWlseTpDYWxpYnJpIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q2FsaWJyaSI+S2VudDxvOnA+PC9vOnA+
PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWls
eTpDYWxpYnJpIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q2FsaWJyaSI+PG86cD4mbmJzcDs8L286cD48
L3NwYW4+PC9wPg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5PbiA4LzE4LzE3
LCA4OjU5IEFNLCAmcXVvdDtOb3JtIFN0cmFobGUmcXVvdDsgJmx0OzxhIGhyZWY9Im1haWx0bzpu
c3RyYWhsZUBqdW5pcGVyLm5ldCI+bnN0cmFobGVAanVuaXBlci5uZXQ8L2E+Jmd0OyB3cm90ZTo8
bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxz
cGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OkNhbGlicmk7Y29sb3I6IzFG
NDk3RCI+SGV5IGZvbGtzLCBBcHByZWNpYXRlIGFsbCB0aGUgZmVlZGJhY2suJm5ic3A7IFdlIGRp
c2N1c3NlZCB5ZXN0ZXJkYXkgYW1vbmcgZGlmZnNlcnYtaWV0ZiBtb2RlbGVycyB5ZXN0ZXJkYXkg
YW5kIGhhZCBhIGNvdXBsZSBjb21tZW50czo8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFz
cz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTpD
YWxpYnJpO2NvbG9yOiMxRjQ5N0QiPiZuYnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNs
YXNzPSJNc29MaXN0UGFyYWdyYXBoIiBzdHlsZT0idGV4dC1pbmRlbnQ6LS4yNWluO21zby1saXN0
OmwwIGxldmVsMSBsZm8yIj48IVtpZiAhc3VwcG9ydExpc3RzXT48c3BhbiBzdHlsZT0iZm9udC1m
YW1pbHk6U3ltYm9sIj48c3BhbiBzdHlsZT0ibXNvLWxpc3Q6SWdub3JlIj7CtzxzcGFuIHN0eWxl
PSJmb250OjcuMHB0ICZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7DQo8L3NwYW4+PC9zcGFuPjwvc3Bhbj48
IVtlbmRpZl0+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6Q2FsaWJy
aTtjb2xvcjojMUY0OTdEIj5XZSBsaWtlZCBleHBsaWNpdCBzdGF0ZW1lbnRzIChkZXZpYXRpb25z
LCBmZWF0dXJlcywgZmxhZy1iaXRzKSByYXRoZXIgdGhhbiBpbXBsaWNpdCDigJMgaS5lLiBvcHRp
b24gNSDigJMgb2YgdmVuZG9ycyBsZWF2aW5nIHVuc3VwcG9ydGVkIGxlYXZlcyBvdXQgb2YgY29u
dGFpbmVycw0KPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb0xpc3RQYXJhZ3Jh
cGgiIHN0eWxlPSJ0ZXh0LWluZGVudDotLjI1aW47bXNvLWxpc3Q6bDAgbGV2ZWwxIGxmbzIiPjwh
W2lmICFzdXBwb3J0TGlzdHNdPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpTeW1ib2wiPjxzcGFu
IHN0eWxlPSJtc28tbGlzdDpJZ25vcmUiPsK3PHNwYW4gc3R5bGU9ImZvbnQ6Ny4wcHQgJnF1b3Q7
VGltZXMgTmV3IFJvbWFuJnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsNCjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwhW2VuZGlmXT48c3BhbiBzdHls
ZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTpDYWxpYnJpO2NvbG9yOiMxRjQ5N0QiPldl
IHRoaW5rIGlmLWZlYXR1cmVzIG9yIHRoZSDigJxiaXTigJ0gZmxhZyBtZWNoYW5pc20gYXJlIGJl
dHRlciB0aGFuIGRldmlhdGlvbnMsIGFzIGl0IGF0IGxlYXN0IGFsbG93cyBjbGllbnRzIHRvIGFu
dGljaXBhdGUgdXAgZnJvbnQgdGhhdCBzb21lIGl0ZW1zIG1heSBub3QgYmUgc3VwcG9ydGVkLjwv
c3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29MaXN0UGFyYWdyYXBoIiBzdHlsZT0i
dGV4dC1pbmRlbnQ6LS4yNWluO21zby1saXN0OmwwIGxldmVsMSBsZm8yIj48IVtpZiAhc3VwcG9y
dExpc3RzXT48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6U3ltYm9sIj48c3BhbiBzdHlsZT0ibXNv
LWxpc3Q6SWdub3JlIj7CtzxzcGFuIHN0eWxlPSJmb250OjcuMHB0ICZxdW90O1RpbWVzIE5ldyBS
b21hbiZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7DQo8L3NwYW4+PC9zcGFuPjwvc3Bhbj48IVtlbmRpZl0+PHNwYW4gc3R5bGU9ImZvbnQtc2l6
ZToxMS4wcHQ7Zm9udC1mYW1pbHk6Q2FsaWJyaTtjb2xvcjojMUY0OTdEIj5PbmUgYWR2YW50YWdl
IG9mIHVzaW5nIHRoZSDigJxiaXTigJ0gZmxhZyBtZWNoYW5pc20g4oCTIGkuZS4gb3B0aW9uIDIg
LSBvdmVyIGZlYXR1cmVzIGlzIHRoYXQgdGhpcyBhbGxvd3MgYSB2ZW5kb3IgdG8gc3BlY2lmeSBw
ZXItaW50ZXJmYWNlIHdoYXQgaXMgc3VwcG9ydGVkLiZuYnNwOyBXaGF0IGZlYXR1cmVzDQogYSB2
ZW5kb3Igc3VwcG9ydHMgZm9yIGRpZmZzZXJ2IGlzIHZlcnkgaGFyZHdhcmUgZGVwZW5kZW50IGFu
ZCBtYXkgdmFyeSBmcm9tIGludGVyZmFjZSB0byBpbnRlcmZhY2Ugd2l0aGluIGEgc2luZ2xlIGRl
dmljZS4gQSBkZXZpY2UgbWF5IGhhdmUgbXVsdGlwbGUgdHlwZXMgYW5kIGdlbmVyYXRpb25zIG9m
IGxpbmUgY2FyZHMsIGFuZCB0aHVzLCB0aGUgdHlwZXMgb2Ygc3RhdHMgc3VwcG9ydGVkIHdpbGwg
YmUgZGlmZmVyZW50LiBUaGUgYml0LWZsYWcNCiBtZWNoYW5pc20gYWxsb3dzIGEgZGV2aWNlIHRv
IHJlZmxlY3QgdGhhdCB0byB0aGUgY2xpZW50IGV4cGxpY2l0bHkuPC9zcGFuPjxvOnA+PC9vOnA+
PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7
Zm9udC1mYW1pbHk6Q2FsaWJyaTtjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+PG86cD48L286
cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBw
dDtmb250LWZhbWlseTpDYWxpYnJpO2NvbG9yOiMxRjQ5N0QiPlRob3VnaHRzIG9uIGFsbCB0aGUg
YWJvdmUgYXJlIG11Y2ggYXBwcmVjaWF0ZWQuPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6
Q2FsaWJyaTtjb2xvcjojMUY0OTdEIj5UaGFua3MsPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1p
bHk6Q2FsaWJyaTtjb2xvcjojMUY0OTdEIj5Ob3JtPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1p
bHk6Q2FsaWJyaTtjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48Yj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250
LWZhbWlseTpDYWxpYnJpIj5Gcm9tOjwvc3Bhbj48L2I+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTox
MS4wcHQ7Zm9udC1mYW1pbHk6Q2FsaWJyaSI+IEFuZHkgQmllcm1hbiBbbWFpbHRvOmFuZHlAeXVt
YXdvcmtzLmNvbV0NCjxicj4NCjxiPlNlbnQ6PC9iPiBUaHVyc2RheSwgQXVndXN0IDE3LCAyMDE3
IDM6MDMgUE08YnI+DQo8Yj5Ubzo8L2I+IEtlbnQgV2F0c2VuICZsdDtrd2F0c2VuQGp1bmlwZXIu
bmV0Jmd0Ozxicj4NCjxiPkNjOjwvYj4gSnVlcmdlbiBTY2hvZW53YWVsZGVyICZsdDtqLnNjaG9l
bndhZWxkZXJAamFjb2JzLXVuaXZlcnNpdHkuZGUmZ3Q7OyBKYW4gTGluZGJsYWQgJmx0O2phbmxA
dGFpbC1mLmNvbSZndDs7IHlhbmctZG9jdG9yc0BpZXRmLm9yZzsgSW5nLVdoZXIgQ2hlbiAmbHQ7
SW5nLVdoZXJfQ2hlbkBqYWJpbC5jb20mZ3Q7OyBOb3JtIFN0cmFobGUgJmx0O25zdHJhaGxlQGp1
bmlwZXIubmV0Jmd0OzsgQXNlZW0gQ2hvdWRoYXJ5IChhc2VjaG91ZCkgJmx0O2FzZWNob3VkQGNp
c2NvLmNvbSZndDs8YnI+DQo8Yj5TdWJqZWN0OjwvYj4gUmU6IFt5YW5nLWRvY3RvcnNdIHF1ZXN0
aW9uIHJlZ2FyZGluZyBjb25kaXRpb25hbC9vcHRpb25hbCBzdGF0ZW1lbnRzPC9zcGFuPjxvOnA+
PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8ZGl2Pg0K
PHAgY2xhc3M9Ik1zb05vcm1hbCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8ZGl2Pg0KPHAgY2xh
c3M9Ik1zb05vcm1hbCI+T24gVGh1LCBBdWcgMTcsIDIwMTcgYXQgMTE6MTcgQU0sIEtlbnQgV2F0
c2VuICZsdDs8YSBocmVmPSJtYWlsdG86a3dhdHNlbkBqdW5pcGVyLm5ldCIgdGFyZ2V0PSJfYmxh
bmsiPmt3YXRzZW5AanVuaXBlci5uZXQ8L2E+Jmd0OyB3cm90ZTo8bzpwPjwvbzpwPjwvcD4NCjxi
bG9ja3F1b3RlIHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpzb2xpZCAjQ0NDQ0NDIDEu
MHB0O3BhZGRpbmc6MGluIDBpbiAwaW4gNi4wcHQ7bWFyZ2luLWxlZnQ6NC44cHQ7bWFyZ2luLXRv
cDo1LjBwdDttYXJnaW4tcmlnaHQ6MGluO21hcmdpbi1ib3R0b206NS4wcHQiPg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0b206MTIuMHB0Ij48YnI+DQo8YnI+DQo8YnI+
DQomZ3Q7IEkgYmVsaWV2ZSBhIGZlYXR1cmUgZm9yIGV2ZXJ5IGNvdW50ZXIgaXMgYSBtaXN1c2Ug
b2YgWUFORyBmZWF0dXJlPGJyPg0KJmd0OyBzdGF0ZW1lbnRzLCBpdCB3aWxsIGdldCBob3JyaWJs
eSB1Z2x5LiBJIHJlY2VudGx5IG9ic2VydmUgYW4gaW5jcmVhc2U8YnI+DQomZ3Q7IG9mIGZlYXR1
cmUgc3RhdGVtZW50IHVzYWdlIGluIG9yZGVyIHRvIGFjY29tb2RhdGUgc2VydmVyPGJyPg0KJmd0
OyBpbXBsZW1lbnRhdGlvbnMgYW5kIHRoZSB1bHRpbWF0ZSBzb2x1dGlvbiBpcyBhIGZlYXR1cmUg
c3RhdGVtZW50IGZvcjxicj4NCiZndDsgZXZlcnkgbGVhZiwgbGlzdCwgcnBjLCBhY3Rpb24sIG5v
dGlmaWNhdGlvbiBhbmQgcGVyaGFwcyBldmVuIGNlcnRhaW48YnI+DQomZ3Q7IHZhbHVlIHNldHMu
IFRoaXMgaXMgcmlkaWN1bG91cywgYnV0IGEgZmVhdHVyZSBmb3IgZXZlcnkgY291bnRlciBpczxi
cj4NCiZndDsgZ2V0dGluZyBkYW1uIGNsb3NlIHRvIGl0Ljxicj4NCjxicj4NClRoaXMgaXMgYSBw
cm9ncmFtbWF0aWMgQVBJLiZuYnNwOyBJIGFwcHJlY2lhdGUgdGhlIGNvbmNlcm4gZm9yIGEgYmxv
YXQgb2Y8YnI+DQpiaXRzIG9uIHRoZSB3aXJlLCBidXQgcmVjYWxsIHRoYXQgZmVhdHVyZXMgYXJl
IGxpc3RlZCBpbiB5YW5nLWxpYnJhcnksPGJyPg0KYSB2ZXJ5IHNwZWNpYWwgbW9kdWxlIHRoYXQg
aGFzIGEgYnVpbHQtaW4gRVRhZy1saWtlIGhhc2hpbmcgbWVjaGFuaXNtPGJyPg0KdG8gYWxsb3cg
Zm9yIGVmZmljaWVudCBjb21wYXJpc29ucy4mbmJzcDsgSSBkb24ndCBzZWUgdGhlIGJsb2F0IGlz
c3VlIGhlcmUuPGJyPg0KPGJyPg0KSGF2aW5nIGZlYXR1cmUgc3RhdGVtZW50cyBldmVyeXdoZXJl
IG1heSBiZSByaWRpY3Vsb3VzLCBidXQgbm90IGlsbGVnYWwuPGJyPg0KSW1wbGVtZW50YXRpb25z
IG5lZWQgdG8gYmUgYWJsZSB0byBoYW5kbGUgaXQgYWxyZWFkeSwgcmlnaHQ/PG86cD48L286cD48
L3A+DQo8L2Jsb2NrcXVvdGU+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Jm5ic3A7PG86
cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5nb29kIHBv
aW50cy48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
PlRoZXkgYWxsIGFwcGx5IGVxdWFsbHkgdG8gZGV2aWF0aW9ucyBhbmQgZmVhdHVyZXMuPG86cD48
L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj4mbmJzcDs8bzpw
PjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkkgdGhpbmsg
dGhlIHdheSB5b3UgdXNlZCBmZWF0dXJlcyBpbiB0aGUgY2xpZW50LXNlcnZlciBzZXQgb2YgbW9k
dWxlcyBpcyBhIGdvb2QgZXhhbXBsZTxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+Zm9yIHNvbHZpbmcgdGhpcyBzb3J0IG9mIHByb2JsZW0uJm5ic3A7
IFRoZSBpZi1mZWF0dXJlLXN0bXRzIGFyZSBvbiBjb250YWluZXJzLCBub3Q8bzpwPjwvbzpwPjwv
cD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPmluZGl2aWR1YWwgbGVhZnMu
PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj4mbmJz
cDs8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkkg
ZG9uJ3QgdGhpbmsgc3BlY2lhbCBvYmplY3RzIHRoYXQgcmV0dXJuIHdoaWNoIG90aGVyIG9iamVj
dHMgYXJlIGltcGxlbWVudGVkPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFz
cz0iTXNvTm9ybWFsIj5pcyBnb29kIGJlY2F1c2UgaXQgaXMgbm90IGEgZ2VuZXJhbGl6ZWQgc29s
dXRpb24uJm5ic3A7IEEgYmV0dGVyIGFwcHJvYWNoIHdvdWxkIGJlPG86cD48L286cD48L3A+DQo8
L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj50byBlbmhhbmNlIHRoZSBwcm90b2Nv
bHMgc28gJnF1b3Q7bm90LWltcGxlbWVudGVkJnF1b3Q7IGFuZCAmcXVvdDt0ZW1wLXVuYXZhaWxh
YmxlJnF1b3Q7IGV4Y2VwdGlvbnM8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPmNhbiBiZSByZXR1cm5lZCBvbiByZXF1ZXN0IChhbGEgd2l0aC1kZWZh
dWx0cyk8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
PiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxibG9ja3F1b3RlIHN0eWxlPSJib3Jk
ZXI6bm9uZTtib3JkZXItbGVmdDpzb2xpZCAjQ0NDQ0NDIDEuMHB0O3BhZGRpbmc6MGluIDBpbiAw
aW4gNi4wcHQ7bWFyZ2luLWxlZnQ6NC44cHQ7bWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tcmlnaHQ6
MGluO21hcmdpbi1ib3R0b206NS4wcHQiPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1h
cmdpbi1ib3R0b206MTIuMHB0Ij5LZW50PG86cD48L286cD48L3A+DQo8L2Jsb2NrcXVvdGU+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8L2Rpdj4N
CjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjwvZGl2
Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkFuZHk8bzpwPjwvbzpwPjwvcD4NCjwvZGl2
Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPC9k
aXY+DQo8YmxvY2txdW90ZSBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgI0ND
Q0NDQyAxLjBwdDtwYWRkaW5nOjBpbiAwaW4gMGluIDYuMHB0O21hcmdpbi1sZWZ0OjQuOHB0O21h
cmdpbi10b3A6NS4wcHQ7bWFyZ2luLXJpZ2h0OjBpbjttYXJnaW4tYm90dG9tOjUuMHB0Ij4NCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fPGJyPg0KeWFuZy1kb2N0b3JzIG1haWxpbmcgbGlzdDxicj4NCjxhIGhyZWY9Im1h
aWx0bzp5YW5nLWRvY3RvcnNAaWV0Zi5vcmciPnlhbmctZG9jdG9yc0BpZXRmLm9yZzwvYT48YnI+
DQo8YSBocmVmPSJodHRwczovL3d3dy5pZXRmLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3lhbmctZG9j
dG9ycyIgdGFyZ2V0PSJfYmxhbmsiPmh0dHBzOi8vd3d3LmlldGYub3JnL21haWxtYW4vbGlzdGlu
Zm8veWFuZy1kb2N0b3JzPC9hPjxvOnA+PC9vOnA+PC9wPg0KPC9ibG9ja3F1b3RlPg0KPC9kaXY+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9k
aXY+DQo8L2Rpdj4NCjwvYm9keT4NCjwvaHRtbD4NCg==

--_000_3E5048BE1488462CB20D83237FF72DA0junipernet_--


From nobody Mon Aug 21 08:35:45 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 34DE813239E; Mon, 21 Aug 2017 08:35:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.02
X-Spam-Level: 
X-Spam-Status: No, score=-2.02 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id g7TlPMeuLU5a; Mon, 21 Aug 2017 08:35:36 -0700 (PDT)
Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0100.outbound.protection.outlook.com [104.47.32.100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B92171321A5; Mon, 21 Aug 2017 08:35:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=W09sZAcjP+KlsQ/72ywAfGLKa+VM5Uc81ZH+Lw8a4JI=; b=ZYvzFsvvpqsy1KKeEJYnWGepCUY9tv9fu/4TSrJ4UG30K65LL725DzT92AtsOe8Ciem8kuelYxxhlPv5nN2PrUVCbTlsRaQaTCFPhi33+x2ZhA063t1wBhHDnDV3bkkXkIfY9POLxH4YE8Z+vcdmezmmUUh7sHrTIsAV2tSqRsg=
Received: from CY1PR0501MB1450.namprd05.prod.outlook.com (10.160.149.11) by CY1PR0501MB1097.namprd05.prod.outlook.com (10.160.144.139) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1385.4; Mon, 21 Aug 2017 15:35:32 +0000
Received: from CY1PR0501MB1450.namprd05.prod.outlook.com ([10.160.149.11]) by CY1PR0501MB1450.namprd05.prod.outlook.com ([10.160.149.11]) with mapi id 15.01.1385.008; Mon, 21 Aug 2017 15:35:32 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: Dean Bogdanovic <ivandean@gmail.com>, YANG Doctors <yang-doctors@ietf.org>
CC: "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: [yang-doctors] Review of draft-ietf-netconf-zerotouch-15
Thread-Index: AQHTGFSS9zAPFMzSIEGeHM0DNK2UEaKOsouA
Date: Mon, 21 Aug 2017 15:35:32 +0000
Message-ID: <611FE2EF-F273-44E9-A738-0E3653D8A788@juniper.net>
References: <3ECE1319-255E-4B06-BF97-F4EAFFC3D8B5@gmail.com>
In-Reply-To: <3ECE1319-255E-4B06-BF97-F4EAFFC3D8B5@gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/f.20.0.170309
authentication-results: spf=none (sender IP is ) smtp.mailfrom=kwatsen@juniper.net; 
x-originating-ip: [66.129.241.14]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; CY1PR0501MB1097; 6:X/29QyTV8KzdW9L6pFd3GAHs8WrfnDul9xK99NMSJpCou+c5BXEqsk2Xcjw9YYPbqo5Y5cx7unTdEeDzmOj+yxmML059UVnV3dsZjnAmxyCnnA9J+a7ny4j2urkXeazcoU6g+ghewtNV+bX0sjTmNZcDoWZdEdSq4Akjm3CG1mLGvEbKjOKTz9p8pOy1WO9dEESpD2ScoVcFIWrD3ltvfJs/9SY5j9wasGkIKY7MiA9y4E5DrOZqqOotxUdYV1/s73qEiB5IQOmO1tuqwKJMud/wurcExkSRiXiuZeyaMfLUIpaaHP0GqK9pQep4Q1VPN48VBPvy91MSSbP2olVbeA==; 5:GYSgK80HFwu8C8tENiAqUweBZ3fqiYhifilvqzAFGJz56EQQ/KOkx7GlBYyyMWFNH2hi0xxLz9GIJdaLcm4B6AJXx3HII3tiXqdELsvaYt8BgqqNvx2s6NW8Sal76oZ2nI5dkfry/4+XLS5Go8CdMg==; 24:vnv6aFiVi8L7rPbauLj3LCtzaewOoIXedDtTvcZ4HDJPSaoIP4GARsyQHos3S+rVa91EorFy3kSHG8Vr9+yfNnFQ/5r05YBqAf7dtQ/J8ZI=; 7:3dn+gkYi90Xc6v+aD/USG09BMlK7zvXnYJb9UbYHobwhPBecYStXaJi25Vg+n57KcBDp1uok2BIKqNrq1WW/+S9W3/ulAaO31/Ji74TluTtG0PxJ8KrC4z5yztGk3jDo2tQMNC/joyz0HsDHOlH/nBjc6YtL2eDDULoZQntZwH4R32FvVr/d/9VZN2T9G8d1WsTA+gAXhLNIe2WMEDCS4DHQ6UGdbSfohuBOUMQEawE=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;
x-ms-office365-filtering-correlation-id: 29750d37-ecf9-42d0-8032-08d4e8aa425f
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603031)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:CY1PR0501MB1097; 
x-ms-traffictypediagnostic: CY1PR0501MB1097:
x-exchange-antispam-report-test: UriScan:(21748063052155);
x-microsoft-antispam-prvs: <CY1PR0501MB109774D1D85551E97AC972AFA5870@CY1PR0501MB1097.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(3002001)(100000703101)(100105400095)(93006095)(93001095)(10201501046)(6055026)(6041248)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123558100)(20161123555025)(20161123560025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:CY1PR0501MB1097; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:CY1PR0501MB1097; 
x-forefront-prvs: 040655413E
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39860400002)(189002)(377454003)(24454002)(199003)(66066001)(478600001)(97736004)(6246003)(4001350100001)(6116002)(102836003)(3846002)(4326008)(3660700001)(83506001)(83716003)(68736007)(7736002)(3280700002)(5660300001)(2900100001)(36756003)(86362001)(6306002)(82746002)(6506006)(8936002)(53936002)(229853002)(33656002)(99286003)(54896002)(106356001)(6512007)(105586002)(6486002)(14454004)(54356999)(76176999)(8676002)(25786009)(2950100002)(50986999)(77096006)(236005)(101416001)(81156014)(2906002)(39060400002)(81166006)(6436002)(230783001)(189998001); DIR:OUT; SFP:1102; SCL:1; SRVR:CY1PR0501MB1097; H:CY1PR0501MB1450.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; 
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_611FE2EFF27344E9A7380E3653D8A788junipernet_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Aug 2017 15:35:32.0940 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0501MB1097
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/QpMhVR_2vU76zXJ3AYoADX_Ik5Y>
Subject: Re: [yang-doctors] Review of draft-ietf-netconf-zerotouch-15
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Aug 2017 15:35:38 -0000

--_000_611FE2EFF27344E9A7380E3653D8A788junipernet_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

W0NDLWluZyBuZXRjb25mXQ0KDQpIaSBEZWFuLA0KDQpUaGFua3MgZm9yIHlvdXIgcmV2aWV3Lg0K
DQoxKSB2YWxpZGF0aW5nIHlhbmctZGF0YSBleGFtcGxlcyBkaXJlY3RseSBpcyBjdXJyZW50bHkg
bm90IHBvc3NpYmxlLiAgTmVpdGhlciBpcyB2YWxpZGF0aW5nIFJFU1RDT05GIGV4YW1wbGVzLiAg
QnV0IG15IGtub3dsZWRnZSBpcyBsaW1pdGVkIHRvIGBweWFuZ2AgKHdoaWNoIGRvZXNuJ3QgdmFs
aWRhdGUgMS4xLWV4YW1wbGVzIGF0IGFsbCkgYW5kIGB5YW5nbGludGAgKHdoaWNoIGhhcyBmYWly
bHkgY29tcGxldGUgdmFsaWRhdGlvbiBhYmlsaXR5KQ0KDQoyKSB0aGUgbmVlZCBmb3IgemVyb3Rv
dWNoIHN1cHBvcnQgZm9yIExORXMgbmVlZHMgdG8gYmUgZGlzY3Vzc2VkIGJ5IHRoZSBXRy4gICBN
eSBwZXJzb25hbCBleHBlcmllbmNlIGlzIHRoYXQgb25seSB0aGUgaG9zdC1zeXN0ZW0gbmVlZHMg
emVyb3RvdWNoIGJvb3RzdHJhcHBpbmcsIGJ1dCBJIGNhbiBpbWFnaW5lIHplcm90b3VjaCBiZWlu
ZyB1c2VmdWwgdG8gc3VwcG9ydCBWTkZzLCBvciB2aXJ0dWFsLW1hY2hpbmVzIGluIGdlbmVyYWwu
ICAgU3VwcG9ydGluZyBWTXMgaXMgcG9zc2libGUgd2l0aCB0aGUgY3VycmVudCBkcmFmdCwgYnV0
IGl0IGVudGFpbHMgdGhlIGh5cGVydmlzb3IgYmVpbmcgYWJsZSB0byB2ZXJpZnkgdGhlIFZNIGlt
YWdlICgic2VjdXJlIGJvb3QiKSBhbmQgYWxsb2NhdGUgYSB2aXJ0dWFsIElEZXZJRCBjZXJ0aWZp
Y2F0ZSB0byB0aGUgVk0sIGJvdGggb2Ygd2hpY2ggYXJlIG91dCBvZiBzY29wZSBmb3IgdGhpcyBk
cmFmdC4gICBEbyB5b3UgdGhpbmsgd2Ugc2hvdWxkIGFkZCBhbiAiYXBwbGljYWJpbGl0eSBzdGF0
ZW1lbnQiIGluIHRoZSBiZWdpbm5pbmcsIG9yIHBlcmhhcHMgdG8gU2VjdGlvbiA1LjEsIHNvbWV0
aGluZyBsaWtlIHRoaXM6DQoNCiAgIFRoaXMgZG9jdW1lbnQgcHJpbWFyaWx5IHJlZ2FyZHMgcGh5
c2ljYWwgZGV2aWNlcywgd2hlcmUgdGhlIHNldHRpbmcNCiAgIG9mIHRoZSBpbml0aWFsICJmYWN0
b3J5IGRlZmF1bHQiIHN0YXRlIG9jY3VycyBkdXJpbmcgdGhlIGRldmljZSdzDQogICBtYW51ZmFj
dHVyaW5nIHByb2Nlc3MuICBIb3dldmVyLCB0aGUgemVyb3RvdWNoIHNvbHV0aW9uIG1heSBiZQ0K
ICAgZXh0ZW5zaWJsZSB0byB2aXJ0dWFsIG1hY2hpbmVzIHdoZXJlYnksIGZvciBpbnN0YW5jZSwg
dGhlIGhvc3Qtc3lzdGVtDQogICBoYXMgYW4gSURldklEIGNlcnRpZmljYXRlIGFuZCBzb21lIGFi
aWxpdHkgdG8gdmVyaWZ5IHRoZSB2aXJ0dWFsDQogICBtYWNoaW5lJ3MgaW1hZ2UgYmVmb3JlIGxv
YWRpbmcgaXQgYW5kIGFsc28gcHJvdmlzaW9uIGEganVzdC1pbi10aW1lDQogICBJRGV2SUQgY2Vy
dGlmaWNhdGUuICBEZXRhaWxzIGZvciBob3cgdGhpcyBtYXkgYmUgYWNjb21wbGlzaGVkIGNhbiBi
ZQ0KICAgZGVmaW5lZCBpbiBmdXR1cmUgd29yay4NCg0KVGhvdWdodHM/DQoNCktlbnQNCg0KDQpP
biA4LzE4LzE3LCAzOjAyIFBNLCAieWFuZy1kb2N0b3JzIG9uIGJlaGFsZiBvZiBEZWFuIEJvZ2Rh
bm92aWMiIDx5YW5nLWRvY3RvcnMtYm91bmNlc0BpZXRmLm9yZzxtYWlsdG86eWFuZy1kb2N0b3Jz
LWJvdW5jZXNAaWV0Zi5vcmc+IG9uIGJlaGFsZiBvZiBpdmFuZGVhbkBnbWFpbC5jb208bWFpbHRv
Oml2YW5kZWFuQGdtYWlsLmNvbT4+IHdyb3RlOg0KDQpSZXZpZXdlcjogRGVhbiBCb2dkYW5vdmlj
DQpSZXZpZXcgcmVzdWx0OiBSZWFkeSB3aXRoIGNhdmVhdA0KDQoNCk1vZHVsZXM6DQppZXRmLXpl
cm90b3VjaC1pbmZvcm1hdGlvbi55YW5nDQppZXRmLXplcm90b3VjaC1ib290c3RyYXAtc2VydmVy
LnlhbmcNCg0KWUFORyBVc2FnZToNCg0KSSBkaWQgbm90IGZpbmQgYW55dGhpbmcgd3JvbmcgaW4g
YW55IG1vZHVsZSwgYnV0IHRoZXJlIGFyZSBubyB0b29scyB0byB2YWxpZCB1c2FnZSBvZiBZQU5H
IGRhdGEsIHdoaWNoIGlzIHVzZWQgYnkgaWV0Zi16ZXJvdG91Y2gtaW5mb3JtYXRpb24ueWFuZyBt
b2R1bGUuDQpTbyBjb3VsZG7igJl0IGdldCBmdWxsIHZhbGlkYXRpb24gb2YgdGhlIG1vZHVsZSB3
aXRoIHB5YW5nIGFuZCBsaW50eWFuZyB0b29scy4NCg0KQ29tbWVudHM6DQoxLiBBcyBzdGF0ZWQg
YWJvdmUsIGNvdWxkbuKAmXQgZ2V0IHRoZSBmdWxsIHZhbGlkYXRpb24gd2l0aCB0aGUgdG9vbHMg
b2YgdGhlIG1vZHVsZXMsIGJ1dCBsb29raW5nIHRocm91Z2ggdGhlIGNvZGUgYW5kIHRoZSBkcmFm
dCwgdGhlIGF1dGhvcnMgYXJlIGZvbGxvd2luZyB0aGUgZ2VuZXJhbCByZWNvbW1lbmRhdGlvbnMg
YnkgZHJhZnQtZHNkdC1ubWRhLWd1aWRlbGluZXMuIFNheWluZyB0aGF0LCBhbSBmaW5lIHdpdGgg
bW92aW5nIHRoZSBkcmFmdCBhbG9uZywgYnV0IHRoaXMgaXMgYW4gaXNzdWVzIHRoYXQgaGFzIHRv
IGJlIGFkZHJlc3NlZCB2ZXJ5IHNvb24sIGFzIHRoZXJlIHdpbGwgYmUgbW9yZSBkcmFmdHMgdXNp
bmcgWUFORyBkYXRhIHRoYXQgd2lsbCBub3QgYmUgYWJsZSB0byBnZXQgdmFsaWRhdGVkLg0KDQoy
LiBJIGNvdWxkbuKAmXQgc2VlIGhvdyB0aGlzIG1vZHVsZXMgd291bGQgd29yayB3ZWxsIHdpdGgg
ZHJhZnQtaWV0Zi1ydGd3Zy1sbmUtbW9kZWwuIFRoYXQgZHJhZnQgZGVzY3JpYmVzIGhvdyBkaWZm
ZXJlbnQgdmlydHVhbCBzeXN0ZW1zIHdpdGggZGlmZmVyZW50IGFkbWluaXN0cmF0b3JzIGNhbiBy
dW4gb24gdGhlIHNhbWUgSFcuIEhvdyBjYW4gd2UgYm9vdCBkaWZmZXJlbnQgdmVyc2lvbnMgb2Yg
U1cgKGxuZXMpIHRvIHJ1biBvbiB0aGUgSFc/IE9yIHNob3VsZCBpdCBzdGF0ZSB0aGF0IHRoaXMg
ZHJhZnQgaGFzIG5vIHBsYW5zIHRvIHN1cHBvcnQgdXNlIGNhc2VzIGRlc2NyaWJlZCBpbiBkcmFm
dC1pZXRmLXJ0Z3dnLWxuZS1tb2RlbC4NCg0KUmVnYXJkcywNCg0KRGVhbg0KDQoNCg0K

--_000_611FE2EFF27344E9A7380E3653D8A788junipernet_
Content-Type: text/html; charset="utf-8"
Content-ID: <066E171E0AA73941BFD6EBF0F5030613@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6bz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlIiB4
bWxuczp3PSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTp3b3JkIiB4bWxuczptPSJo
dHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL29mZmljZS8yMDA0LzEyL29tbWwiIHhtbG5zPSJo
dHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtaHRtbDQwIj4NCjxoZWFkPg0KPG1ldGEgaHR0cC1lcXVp
dj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiPg0KPG1l
dGEgbmFtZT0iVGl0bGUiIGNvbnRlbnQ9IiI+DQo8bWV0YSBuYW1lPSJLZXl3b3JkcyIgY29udGVu
dD0iIj4NCjxtZXRhIG5hbWU9IkdlbmVyYXRvciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUg
KGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxlPjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8N
CkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IkNhbWJyaWEgTWF0aCI7DQoJcGFub3NlLTE6MiA0
IDUgMyA1IDQgNiAzIDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OkNhbGlicmk7DQoJ
cGFub3NlLTE6MiAxNSA1IDIgMiAyIDQgMyAyIDQ7fQ0KLyogU3R5bGUgRGVmaW5pdGlvbnMgKi8N
CnAuTXNvTm9ybWFsLCBsaS5Nc29Ob3JtYWwsIGRpdi5Nc29Ob3JtYWwNCgl7bWFyZ2luOjBpbjsN
CgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJZm9udC1zaXplOjEyLjBwdDsNCglmb250LWZhbWls
eToiVGltZXMgTmV3IFJvbWFuIjt9DQpoMQ0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTsNCgltc28t
c3R5bGUtbGluazoiSGVhZGluZyAxIENoYXIiOw0KCW1zby1tYXJnaW4tdG9wLWFsdDphdXRvOw0K
CW1hcmdpbi1yaWdodDowaW47DQoJbXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG87DQoJbWFyZ2lu
LWxlZnQ6MGluOw0KCWZvbnQtc2l6ZToyNC4wcHQ7DQoJZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBS
b21hbiI7fQ0KYTpsaW5rLCBzcGFuLk1zb0h5cGVybGluaw0KCXttc28tc3R5bGUtcHJpb3JpdHk6
OTk7DQoJY29sb3I6Ymx1ZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCmE6dmlzaXRl
ZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZA0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJ
Y29sb3I6cHVycGxlOw0KCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fQ0Kc3Bhbi5oMQ0KCXtt
c28tc3R5bGUtbmFtZTpoMTt9DQpzcGFuLkhlYWRpbmcxQ2hhcg0KCXttc28tc3R5bGUtbmFtZToi
SGVhZGluZyAxIENoYXIiOw0KCW1zby1zdHlsZS1wcmlvcml0eTo5Ow0KCW1zby1zdHlsZS1saW5r
OiJIZWFkaW5nIDEiOw0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIExpZ2h0IjsNCgljb2xvcjojMkY1
NDk2O30NCnNwYW4uRW1haWxTdHlsZTE5DQoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsLXJlcGx5
Ow0KCWZvbnQtZmFtaWx5OkNhbGlicmk7DQoJZm9udC12YXJpYW50Om5vcm1hbCAhaW1wb3J0YW50
Ow0KCWNvbG9yOndpbmRvd3RleHQ7DQoJdGV4dC10cmFuc2Zvcm06bm9uZTsNCgl0ZXh0LWRlY29y
YXRpb246bm9uZSBub25lOw0KCXZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO30NCnNwYW4ubXNvSW5z
DQoJe21zby1zdHlsZS10eXBlOmV4cG9ydC1vbmx5Ow0KCW1zby1zdHlsZS1uYW1lOiIiOw0KCXRl
eHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7DQoJY29sb3I6dGVhbDt9DQouTXNvQ2hwRGVmYXVsdA0K
CXttc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTsNCglmb250LXNpemU6MTAuMHB0O30NCkBwYWdl
IFdvcmRTZWN0aW9uMQ0KCXtzaXplOjguNWluIDExLjBpbjsNCgltYXJnaW46MS4waW4gMS4waW4g
MS4waW4gMS4waW47fQ0KZGl2LldvcmRTZWN0aW9uMQ0KCXtwYWdlOldvcmRTZWN0aW9uMTt9DQot
LT48L3N0eWxlPg0KPC9oZWFkPg0KPGJvZHkgYmdjb2xvcj0id2hpdGUiIGxhbmc9IkVOLVVTIiBs
aW5rPSJibHVlIiB2bGluaz0icHVycGxlIj4NCjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+DQo8
cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q2FsaWJyaSI+W0ND
LWluZyBuZXRjb25mXTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi
PjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJpIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bh
bj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q2Fs
aWJyaSI+SGkgRGVhbiw8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q2FsaWJyaSI+PG86cD4mbmJzcDs8L286cD48L3Nw
YW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNh
bGlicmkiPlRoYW5rcyBmb3IgeW91ciByZXZpZXcuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNhbGlicmkiPjxvOnA+
Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxl
PSJmb250LWZhbWlseTpDYWxpYnJpIj4xKSB2YWxpZGF0aW5nIHlhbmctZGF0YSBleGFtcGxlcyBk
aXJlY3RseSBpcyBjdXJyZW50bHkgbm90IHBvc3NpYmxlLiZuYnNwOyBOZWl0aGVyIGlzIHZhbGlk
YXRpbmcgUkVTVENPTkYgZXhhbXBsZXMuJm5ic3A7IEJ1dCBteSBrbm93bGVkZ2UgaXMgbGltaXRl
ZCB0byBgcHlhbmdgICh3aGljaCBkb2Vzbid0IHZhbGlkYXRlIDEuMS1leGFtcGxlcyBhdCBhbGwp
IGFuZCBgeWFuZ2xpbnRgDQogKHdoaWNoIGhhcyBmYWlybHkgY29tcGxldGUgdmFsaWRhdGlvbiBh
YmlsaXR5KTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJpIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+
DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q2FsaWJyaSI+
MikgdGhlIG5lZWQgZm9yIHplcm90b3VjaCBzdXBwb3J0IGZvciBMTkVzIG5lZWRzIHRvIGJlIGRp
c2N1c3NlZCBieSB0aGUgV0cuJm5ic3A7Jm5ic3A7IE15IHBlcnNvbmFsIGV4cGVyaWVuY2UgaXMg
dGhhdCBvbmx5IHRoZSBob3N0LXN5c3RlbSBuZWVkcyB6ZXJvdG91Y2ggYm9vdHN0cmFwcGluZywg
YnV0IEkgY2FuIGltYWdpbmUgemVyb3RvdWNoIGJlaW5nIHVzZWZ1bA0KIHRvIHN1cHBvcnQgVk5G
cywgb3IgdmlydHVhbC1tYWNoaW5lcyBpbiBnZW5lcmFsLiZuYnNwOyZuYnNwOyBTdXBwb3J0aW5n
IFZNcyBpcyBwb3NzaWJsZSB3aXRoIHRoZSBjdXJyZW50IGRyYWZ0LCBidXQgaXQgZW50YWlscyB0
aGUgaHlwZXJ2aXNvciBiZWluZyBhYmxlIHRvIHZlcmlmeSB0aGUgVk0gaW1hZ2UgKCZxdW90O3Nl
Y3VyZSBib290JnF1b3Q7KSBhbmQgYWxsb2NhdGUgYSB2aXJ0dWFsIElEZXZJRCBjZXJ0aWZpY2F0
ZSB0byB0aGUgVk0sIGJvdGggb2Ygd2hpY2ggYXJlIG91dA0KIG9mIHNjb3BlIGZvciB0aGlzIGRy
YWZ0LiZuYnNwOyZuYnNwOyBEbyB5b3UgdGhpbmsgd2Ugc2hvdWxkIGFkZCBhbiAmcXVvdDthcHBs
aWNhYmlsaXR5IHN0YXRlbWVudCZxdW90OyBpbiB0aGUgYmVnaW5uaW5nLCBvciBwZXJoYXBzIHRv
IFNlY3Rpb24gNS4xLCBzb21ldGhpbmcgbGlrZSB0aGlzOjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJpIj48
bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBz
dHlsZT0iZm9udC1mYW1pbHk6Q2FsaWJyaSI+Jm5ic3A7Jm5ic3A7IFRoaXMgZG9jdW1lbnQgcHJp
bWFyaWx5IHJlZ2FyZHMgcGh5c2ljYWwgZGV2aWNlcywgd2hlcmUgdGhlIHNldHRpbmc8bzpwPjwv
bzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1m
YW1pbHk6Q2FsaWJyaSI+Jm5ic3A7Jm5ic3A7IG9mIHRoZSBpbml0aWFsICZxdW90O2ZhY3Rvcnkg
ZGVmYXVsdCZxdW90OyBzdGF0ZSBvY2N1cnMgZHVyaW5nIHRoZSBkZXZpY2UnczxvOnA+PC9vOnA+
PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWls
eTpDYWxpYnJpIj4mbmJzcDsmbmJzcDsgbWFudWZhY3R1cmluZyBwcm9jZXNzLiZuYnNwOyBIb3dl
dmVyLCB0aGUgemVyb3RvdWNoIHNvbHV0aW9uIG1heSBiZTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJpIj4m
bmJzcDsmbmJzcDsgZXh0ZW5zaWJsZSB0byB2aXJ0dWFsIG1hY2hpbmVzIHdoZXJlYnksIGZvciBp
bnN0YW5jZSwgdGhlIGhvc3Qtc3lzdGVtPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNhbGlicmkiPiZuYnNwOyZuYnNw
OyBoYXMgYW4gSURldklEIGNlcnRpZmljYXRlIGFuZCBzb21lIGFiaWxpdHkgdG8gdmVyaWZ5IHRo
ZSB2aXJ0dWFsPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNw
YW4gc3R5bGU9ImZvbnQtZmFtaWx5OkNhbGlicmkiPiZuYnNwOyZuYnNwOyBtYWNoaW5lJ3MgaW1h
Z2UgYmVmb3JlIGxvYWRpbmcgaXQgYW5kIGFsc28gcHJvdmlzaW9uIGEganVzdC1pbi10aW1lPG86
cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZv
bnQtZmFtaWx5OkNhbGlicmkiPiZuYnNwOyZuYnNwOyBJRGV2SUQgY2VydGlmaWNhdGUuJm5ic3A7
IERldGFpbHMgZm9yIGhvdyB0aGlzIG1heSBiZSBhY2NvbXBsaXNoZWQgY2FuIGJlPG86cD48L286
cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFt
aWx5OkNhbGlicmkiPiZuYnNwOyZuYnNwOyBkZWZpbmVkIGluIGZ1dHVyZSB3b3JrLjxvOnA+PC9v
OnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZh
bWlseTpDYWxpYnJpIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q2FsaWJyaSI+VGhvdWdodHM/PG86cD48
L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQt
ZmFtaWx5OkNhbGlicmkiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJN
c29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJpIj5LZW50PG86cD48L286
cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFt
aWx5OkNhbGlicmkiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29O
b3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJpIj48bzpwPiZuYnNwOzwvbzpw
Pjwvc3Bhbj48L3A+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPk9uIDgvMTgv
MTcsIDM6MDIgUE0sICZxdW90O3lhbmctZG9jdG9ycyBvbiBiZWhhbGYgb2YgRGVhbiBCb2dkYW5v
dmljJnF1b3Q7ICZsdDs8YSBocmVmPSJtYWlsdG86eWFuZy1kb2N0b3JzLWJvdW5jZXNAaWV0Zi5v
cmciPnlhbmctZG9jdG9ycy1ib3VuY2VzQGlldGYub3JnPC9hPiBvbiBiZWhhbGYgb2YNCjxhIGhy
ZWY9Im1haWx0bzppdmFuZGVhbkBnbWFpbC5jb20iPml2YW5kZWFuQGdtYWlsLmNvbTwvYT4mZ3Q7
IHdyb3RlOjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05v
cm1hbCI+UmV2aWV3ZXI6IERlYW4gQm9nZGFub3ZpYzxicj4NClJldmlldyByZXN1bHQ6IFJlYWR5
IHdpdGggY2F2ZWF0PGJyPg0KPGJyPg0KPGJyPg0KTW9kdWxlczogPG86cD48L286cD48L3A+DQo8
ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+aWV0Zi16ZXJvdG91Y2gtaW5mb3JtYXRpb24ueWFu
ZzxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+aWV0
Zi16ZXJvdG91Y2gtYm9vdHN0cmFwLXNlcnZlci55YW5nPG86cD48L286cD48L3A+DQo8L2Rpdj4N
CjxkaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+
DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5ZQU5HIFVzYWdlOjxvOnA+PC9v
OnA+PC9wPg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48YnI+DQpJIGRpZCBub3QgZmlu
ZCBhbnl0aGluZyB3cm9uZyBpbiBhbnkgbW9kdWxlLCBidXQgdGhlcmUgYXJlIG5vIHRvb2xzIHRv
IHZhbGlkIHVzYWdlIG9mIFlBTkcgZGF0YSwgd2hpY2ggaXMgdXNlZCBieSBpZXRmLXplcm90b3Vj
aC1pbmZvcm1hdGlvbi55YW5nIG1vZHVsZS48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPlNvIGNvdWxkbuKAmXQgZ2V0IGZ1bGwgdmFsaWRhdGlvbiBv
ZiB0aGUgbW9kdWxlIHdpdGggcHlhbmcgYW5kIGxpbnR5YW5nIHRvb2xzLjxicj4NCjxicj4NCkNv
bW1lbnRzOjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1h
bCI+MS4gQXMgc3RhdGVkIGFib3ZlLCBjb3VsZG7igJl0IGdldCB0aGUgZnVsbCB2YWxpZGF0aW9u
IHdpdGggdGhlIHRvb2xzIG9mIHRoZSBtb2R1bGVzLCBidXQgbG9va2luZyB0aHJvdWdoIHRoZSBj
b2RlIGFuZCB0aGUgZHJhZnQsIHRoZSBhdXRob3JzIGFyZSBmb2xsb3dpbmcgdGhlIGdlbmVyYWwg
cmVjb21tZW5kYXRpb25zIGJ5IGRyYWZ0LWRzZHQtbm1kYS1ndWlkZWxpbmVzLiBTYXlpbmcgdGhh
dCwgYW0gZmluZSB3aXRoDQogbW92aW5nIHRoZSBkcmFmdCBhbG9uZywgYnV0IHRoaXMgaXMgYW4g
aXNzdWVzIHRoYXQgaGFzIHRvIGJlIGFkZHJlc3NlZCB2ZXJ5IHNvb24sIGFzIHRoZXJlIHdpbGwg
YmUgbW9yZSBkcmFmdHMgdXNpbmcgWUFORyBkYXRhIHRoYXQgd2lsbCBub3QgYmUgYWJsZSB0byBn
ZXQgdmFsaWRhdGVkLjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1z
b05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj4yLiBJIGNvdWxkbuKAmXQgc2VlIGhvdyB0aGlzIG1vZHVsZXMgd291bGQgd29y
ayB3ZWxsIHdpdGggZHJhZnQtaWV0Zi1ydGd3Zy1sbmUtbW9kZWwuIFRoYXQgZHJhZnQgZGVzY3Jp
YmVzIGhvdyBkaWZmZXJlbnQgdmlydHVhbCBzeXN0ZW1zIHdpdGggZGlmZmVyZW50IGFkbWluaXN0
cmF0b3JzIGNhbiBydW4gb24gdGhlIHNhbWUgSFcuIEhvdyBjYW4gd2UgYm9vdCBkaWZmZXJlbnQg
dmVyc2lvbnMgb2YgU1cgKGxuZXMpDQogdG8gcnVuIG9uIHRoZSBIVz8gT3Igc2hvdWxkIGl0IHN0
YXRlIHRoYXQgdGhpcyBkcmFmdCBoYXMgbm8gcGxhbnMgdG8gc3VwcG9ydCB1c2UgY2FzZXMgZGVz
Y3JpYmVkIGluIGRyYWZ0LWlldGYtcnRnd2ctbG5lLW1vZGVsLjxvOnA+PC9vOnA+PC9wPg0KPC9k
aXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8
L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5SZWdhcmRzLDxvOnA+PC9vOnA+PC9w
Pg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48
L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5EZWFuPG86cD48L286cD48
L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpw
PjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZu
YnNwOzwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8ZGl2Pg0KPGgxIHN0eWxlPSJtc28tbGlu
ZS1oZWlnaHQtYWx0OjBwdCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQiPjxvOnA+Jm5i
c3A7PC9vOnA+PC9zcGFuPjwvaDE+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ib2R5Pg0KPC9odG1sPg0K

--_000_611FE2EFF27344E9A7380E3653D8A788junipernet_--


From nobody Mon Aug 21 09:22:58 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BED57132A84; Mon, 21 Aug 2017 09:22:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.011
X-Spam-Level: 
X-Spam-Status: No, score=-3.011 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=-1, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id KVm7EW5Ie86K; Mon, 21 Aug 2017 09:22:53 -0700 (PDT)
Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0129.outbound.protection.outlook.com [104.47.41.129]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A2053132A78; Mon, 21 Aug 2017 09:22:53 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=TwQm/rV2gBo6l7xIXm9IeHGRLvuFWWD4JN3X2+pInw4=; b=NY2LDcwKRNGznpxPLExPLDs5kLXkv4N2bGPYN+F144p3MJirKwIlbgyr5PUcmPJ1bGU9C387RfYLtmKiQxSUVoMRaw53dKS2tggpZzQx1dKE/VoJz+qwbIkz308y/NnMfKxr6rwve++OKuMuskkveOzdxGg1ZZBHNLI02N+KPh4=
Received: from CY1PR0501MB1450.namprd05.prod.outlook.com (10.160.149.11) by CY1PR0501MB1276.namprd05.prod.outlook.com (10.160.225.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1385.4; Mon, 21 Aug 2017 16:22:51 +0000
Received: from CY1PR0501MB1450.namprd05.prod.outlook.com ([10.160.149.11]) by CY1PR0501MB1450.namprd05.prod.outlook.com ([10.160.149.11]) with mapi id 15.01.1385.008; Mon, 21 Aug 2017 16:22:51 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: Andy Bierman <andy@yumaworks.com>
CC: "yang-doctors@ietf.org" <yang-doctors@ietf.org>, "draft-ietf-netconf-restconf-client-server.all@ietf.org" <draft-ietf-netconf-restconf-client-server.all@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: Yangdoctors last call review of draft-ietf-netconf-restconf-client-server-04
Thread-Index: AQHTB+8y29TveGyQA0qavQMqV/nni6JuTX8AgAGcVwCADGTdgIABkngAgAaaqACAAEmEgIAKGzaA
Date: Mon, 21 Aug 2017 16:22:51 +0000
Message-ID: <FFE6D82C-857E-4890-94AB-1CC28BD1C786@juniper.net>
References: <150128020275.20726.13027423171798327745@ietfa.amsl.com> <A9F2ED3F-6AC5-4AEF-8EBF-1C4F89A6F0F7@juniper.net> <CABCOCHTmNdi7ZGPL_R8vyZTOKeVwJgtrqsT0ZNBCbMUT4Qo9tA@mail.gmail.com> <30CD19F8-6441-4EA3-A340-8CEDD6D4FD6A@juniper.net> <CABCOCHQrgYOUGXo1g3LGn9t8rL3-MoJwNmSG2amgAkxMp_Prhw@mail.gmail.com> <C8D279C6-B735-453D-92BF-09886CAFF403@juniper.net> <CABCOCHTr_jd8FsfHBbOrCfQfoi-TZyPW2NxRNWjyFRG691_VaQ@mail.gmail.com>
In-Reply-To: <CABCOCHTr_jd8FsfHBbOrCfQfoi-TZyPW2NxRNWjyFRG691_VaQ@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/f.20.0.170309
authentication-results: spf=none (sender IP is ) smtp.mailfrom=kwatsen@juniper.net; 
x-originating-ip: [66.129.241.14]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; CY1PR0501MB1276; 6:vi+pNWIKbF7cOUvRch9VR71z1eJ0g7MH+sWwPScy9n/ZtODHdCxFJk6tbNADUckt2/3OjL9qFPzoyosGowvWHTsZPkBoM8Gf/MuEDZnf5chGpcvWWvGIDDEDipYnWdaYlSQSDnRgfJmTEEXJghD+JtX9p0j+uLTC9oaCmwnNFRLswL3lbwyvXOLJc2cxFgrpbCVJNi+ENIb2lZjAxGZK7ZUvtM2ntPw4qivwtdMd8MPjSHkDVlEHh/67ixa9qyvY1FwcIbvmWfH6jAXMtcMFQQkIWTcUNZd4LiP+L8tAOKq/10+hufbI6VgJOiuwwPcjHS7Xzy42sh08F8x3aEEOsQ==; 5:TzsUMeoFNWqkbbc+tF0BQw86bYSOERlzkgZYBAlMybg2fgGKFei62USZbon8eACRPIi21ZVsL0DDkcOJ7pGmFNRzeCrkwG3Js6vm/6iSMqjhHmr3ojOL1TXMiOseEgslfXsv7L5sPAGnLFHI1Gpfjg==; 24:UJlcccHw44bxJX1QQan0cFglPPpB4Kt5+/tYVkOix2JUhrO1TWTNe0q0NeWr87ls2bhWpITNG6aEJl/23qgGlr5DIBBd8iBeUp/zX66LvYc=; 7:/AyI016NTnEcD3ZdJTNGME9MjQ6EbWt9nbU3RDY693W6X243K2hGMm5gcx9W8TTKbntNg3mEHl7Ic3yJK8cV21MYLIECvhqF9ATa1qixKKgcYjtZBMPH5uzcNe985AhmyKHY0yxqfYXB9papCXSdiXvAcdYkWDVC4LcSlkKg1gbOQxxOObhOv5LZ7kbf08bVs+Eozm5ZEYigHs2mw5nJ//sfc85LJd/JUidqIk9ON5s=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;
x-ms-office365-filtering-correlation-id: 0ef22762-b27b-405c-761c-08d4e8b0dee3
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603031)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:CY1PR0501MB1276; 
x-ms-traffictypediagnostic: CY1PR0501MB1276:
x-exchange-antispam-report-test: UriScan:(158342451672863)(21532816269658);
x-microsoft-antispam-prvs: <CY1PR0501MB12766EC28161B07693435A72A5870@CY1PR0501MB1276.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(3002001)(93006095)(93001095)(100000703101)(100105400095)(10201501046)(6055026)(6041248)(20161123564025)(20161123558100)(20161123562025)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:CY1PR0501MB1276; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:CY1PR0501MB1276; 
x-forefront-prvs: 040655413E
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(39860400002)(189002)(199003)(83506001)(14454004)(106356001)(478600001)(105586002)(66066001)(83716003)(6436002)(68736007)(4001350100001)(110136004)(4326008)(97736004)(6246003)(81166006)(8936002)(82746002)(6506006)(6116002)(3846002)(25786009)(102836003)(93886005)(86362001)(230783001)(81156014)(53936002)(3660700001)(54356999)(36756003)(3280700002)(54906002)(76176999)(50986999)(5660300001)(6512007)(99286003)(6486002)(77096006)(101416001)(8676002)(2906002)(305945005)(229853002)(189998001)(33656002)(6916009)(7736002)(2950100002)(2900100001); DIR:OUT; SFP:1102; SCL:1; SRVR:CY1PR0501MB1276; H:CY1PR0501MB1450.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; 
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <B9EA60C4DA853445BEF9967996204DE4@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Aug 2017 16:22:51.6638 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0501MB1276
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/Zvevao3S_IPW3O0ye-M9pTa0Wac>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-netconf-restconf-client-server-04
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Aug 2017 16:22:57 -0000

SGkgQW5keSwNCg0KVHJpbW1pbmcgZG93biB0byBqdXN0IHRoZSBzdGlsbC1vcGVuIGRpc2N1c3Np
b24gcG9pbnRzLg0KDQpUaGFua3MsDQpLZW50DQoNCg0KPj4+IFlvdSBrbm93IEkgYW0gbm90IGEg
YmlnIGZhbiBvZiBZQU5HIGNvbmZvcm1hbmNlLg0KPj4+IFdlIGhhdmUgbm90aGluZyBpbiBiZXR3
ZWVuICJhbHdheXMgbWFuZGF0b3J5IiBhbmQgInB1cmVseSBvcHRpb25hbCwNCj4+PiBzZXJ2ZXIg
ZGV2ZWxvcGVyJ3MgY2hvaWNlIi7CoCBXZSBoYXZlIG5vdGhpbmcgbGlrZSBjb25kaXRpb25hbGx5
DQo+Pj4gbWFuZGF0b3J5ICJJZiB0aGUgUkVTVENPTkYgc2VydmVyIHN1cHBvcnRzIGxpc3Rlbmlu
ZyBvbiBUTFMgLCB0aGVuDQo+Pj4gdGhlIGxpc3Rlbi10bHMgZmVhdHVyZSBNVVNUIGJlIHN1cHBv
cnRlZC4iDQo+Pg0KPj5UaGlzIHNlZW1zIHVubmVjZXNzYXJ5LsKgIEFscmVhZHkgdGhlICdpZi1m
ZWF0dXJlJyBzdGF0ZW1lbnRzIHdpbGwNCj4+Zm9yY2UgdGhlIHNlcnZlciB0byBhZHZlcnRpc2Ug
dGhlIGZlYXR1cmVzIC0gb3IgZWxzZSB0aGV5J3JlIG5vdA0KPj5jb25maWd1cmFibGUhDQo+DQo+
IE5vdGhpbmcgZm9yY2VzIHRoZSBzZXJ2ZXIgdG8gZGV2ZWxvcGVyIHRvIGltcGxlbWVudCBhIHBh
cnRpY3VsYXIgb2JqZWN0LA0KPiBiZWNhdXNlIGZlYXR1cmVzIGFyZSBwdXJlbHkgb3B0aW9uYWwu
IFRoZSBkZXNjcmlwdGlvbi1zdG10IGluIHRoZSBmZWF0dXJlDQo+IGNhbiBtYWtlIHRoaXMgY29u
ZGl0aW9uYWwgcmVxdWlyZW1lbnQuwqAgQnV0IG5vdCBhIGJpZyBkZWFsDQo+IGJlY2F1c2UgdGhl
IElFVEYgaXMgdG9vIHNlcnZlci1jZW50cmljIHRvIGNhcmUgYWJvdXQgdGhlIGNsaWVudCBQT1YN
Cj4gb2YgWUFORyBjb25mb3JtYW5jZS4NCg0KSSBkb24ndCBzZWUgdGhpcyBhcyBhIGJpZyBkZWFs
LiAgUmVnYXJkbGVzcywgaXQncyBub3QgZm9yIHRoaXMgZHJhZnQNCnRvIHJlc29sdmUsIHJpZ2h0
PyANCsKgDQoNCg0KDQoNCg0KDQo+Pj4+PiBDNToNCj4+Pj4NCj4+Pj4gSXQgc2hvdWxkIGJlIGNs
ZWFyIHRoYXQgdGhlIGNsaWVudCB3b3VsZCBoYXZlIHRvIGlzc3VlIGEgR0VUDQo+Pj4+IG9yIG1h
eWJlIFBPU1QgdG8gaW5pdGlhdGUgdGhlIHNlbmRpbmcgb2Ygc3RvcmVkIGRhdGEgbGlrZSBsb2dz
DQo+Pj4NCj4+PiBPa2F5LCBob3cgYWJvdXQgdGhpcz8NCj4+Pg0KPj4+wqAgwqAiUGVyaW9kaWNh
bGx5IGNvbm5lY3QgdG8gdGhlIFJFU1RDT05GIHNlcnZlciwgc28gdGhhdCwNCj4+PsKgIMKgIGUu
Zy4sIHRoZSBSRVNUQ09ORiBjbGllbnQgY2FuIGNvbGxlY3QgZGF0YSAobG9ncykNCj4+PsKgIMKg
IGZyb20gdGhlIFJFU1RDT05GIHNlcnZlci7CoCBUaGUgUkVTVENPTkYgY2xpZW50IG11c3QNCj4+
PsKgIMKgIGNsb3NlIHRoZSBjb25uZWN0aW9uIHdoZW4gaXQgaXMgcmVhZHkgdG8gcmVsZWFzZSBp
dC4NCj4+PsKgIMKgIE9uY2UgdGhlIGNvbm5lY3Rpb24gaXMgY2xvc2VkLCB0aGUgUkVTVENPTkYg
Y2xpZW50DQo+Pj7CoCDCoCByZXN0YXJ0cyBpdHMgdGltZXIgdW50aWwgdGhlIG5leHQgY29ubmVj
dGlvbi4iOw0KPj4NCj4+IE5vdCBzdXJlIHRoaXMgaXMgbmVlZGVkLg0KPj4gUkVTVENPTkYgZG9l
cyBub3QgZGVmaW5lIGFueSBpbnRlcmFjdGlvbnMgdGhhdCBhcmUgbm90IGluaXRpYXRlZA0KPj4g
YnkgdGhlIGNsaWVudCwgYnV0IGlmIHRoYXQgY2hhbmdlcywgdGhlbiBubyByZWFzb24gdG8gY29u
c3RyYWluDQo+PiB0aGlzIHRleHQuIEkgd291bGQgY2hhbmdlICdtdXN0JyB0byAnU0hPVUxEJyBp
biB0aGUgMm5kIHNlbnRlbmNlLg0KPg0KPiBPaCwgbm93IEkgc2VlIHlvdXIgY29uY2VybiwgaG93
IGFib3V0IHRoaXM/wqAgKEkgcmVtb3ZlZCB0aGUgc2VudGVuY2UNCj4gYWx0b2dldGhlcik6DQo+
DQo+wqAgwqAgwqAiUGVyaW9kaWNhbGx5IGNvbm5lY3QgdG8gdGhlIFJFU1RDT05GIGNsaWVudCwg
c28gdGhhdA0KPsKgIMKgIMKgIHRoZSBSRVNUQ09ORiBjbGllbnQgbWF5IGRlbGl2ZXIgbWVzc2Fn
ZXMgcGVuZGluZyBmb3INCj7CoCDCoCDCoCB0aGUgUkVTVENPTkYgc2VydmVyLsKgIE9uY2UgdGhl
IGNvbm5lY3Rpb24gaGFzIGJlZW4NCj7CoCDCoCDCoCBjbG9zZWQsIGZvciB3aGF0ZXZlciByZWFz
b24sIHRoZSBzZXJ2ZXIgd2lsbCByZXN0YXJ0DQo+wqAgwqAgwqAgaXRzIHRpbWVyIHVudGlsIHRo
ZSBuZXh0IGNvbm5lY3Rpb24uIjsNCj4NCj4gSSB3b3VsZCBjaGFuZ2UgbWVzc2FnZXMgdG8gcmVx
dWVzdHMNCg0KRG9uZS4NCg0KwqANCg0KDQo+Pj4+PiBUaGlzIGlzIDEgZXhjZXB0aW9uIC0tIGFu
b3RoZXIgaXMgY2xvc2Utc2Vzc2lvbi4NCj4+Pj4+DQo+Pj4+PsKgIMKgUE9TVCAvcmVzdGNvbmYv
b3BlcmF0aW9ucy9pZXRmLW5ldGNvbmY6Y2xvc2Utc2Vzc2lvbg0KPj4+Pj4NCj4+Pj4+IElzIHRo
aXMgc3VwcG9zZWQgdG8gZG8gYW55dGhpbmcgaW4gUkVTVENPTkY/DQo+Pj4+DQo+Pj4+IEZpcnN0
LCBJIGRvbid0IHZpZXcgdGhlIGFib3ZlIGFzIGFuIGV4Y2VwdGlvbi7CoCBXaXRoIHJlZ2FyZHMg
dG8NCj4+Pj4gJ2Nsb3NlLXNlc3Npb24nLCBkb2VzIGl0IGV2ZW4gaGF2ZSBhIG1lYW5pbmcgaW4g
UkVTVENPTkY/wqAgLSBhbmQNCj4+Pj4gaXMgdGhpcyBhY3R1YWxseSBhbiBpc3N1ZSBmb3IgUkZD
IDgwNDA/DQo+Pj4NCj4+PiBSRVNUQ09ORiBkb2VzIG5vdCBzcGVjaWZ5IGFueSBiZWhhdmlvciBm
b3Igc3BlY2lmaWMgb3BlcmF0aW9uDQo+Pj4gcmVzb3VyY2VzLsKgIEl0IGlzIGxlZnQgYXMgYW4g
aW1wbGVtZW50YXRpb24gZGV0YWlsLsKgIE91ciBzZXJ2ZXINCj4+PiB0cmVhdHMgZWFjaCBSRVNU
Q09ORiByZXF1ZXN0IGFzIGEgbmV3IG1hbmFnZW1lbnQgc2Vzc2lvbiwgc28gYQ0KPj4+IE5FVENP
TkYgb3BlcmF0aW9uIGxpa2UgPGxvY2s+IGlzIGdyYW50ZWQgYW5kIHRoZW4gcmVsZWFzZWQgcmln
aHQNCj4+PiBhZnRlcndhcmRzIGJ5IHRoZSBzZXJ2ZXIgYmVjYXVzZSB0aGUgc2Vzc2lvbiBpcyB0
ZXJtaW5hdGVkLsKgIEkNCj4+PiB0aGluayBhbnkgc3RhbmRhcmQgYmVoYXZpb3IgZm9yIGFwcGxp
Y2F0aW9uIGxheWVyIHNlc3Npb25zIHdvdWxkDQo+Pj4gbmVlZCB0byBiZSBkZWZpbmVkIGluIGEg
bmV3IHZlcnNpb25zIG9mIFJFU1RDT05GLg0KPj4NCj4+IE9rYXksIGJ1dCBjYW4geW91IGNvbm5l
Y3QgdGhpcyB0byB0aGUgZHJhZnQ/wqAgQXJlIHlvdSBhc2tpbmcgZm9yDQo+PiBhIGNoYW5nZSwg
b3IgYXJlIHlvdSBhY3R1YWxseSB0aGlua2luZyBhYm91dCBhIGNsYXJpZmljYXRpb24NCj4+IG5l
ZWRlZCBmb3IgUkZDIDgwNDA/DQo+DQo+IG5vdCBhc2tpbmcgZm9yIGEgY2hhbmdlLg0KPiBJdCBp
cyBjdXJyZW50bHkgdXAgdG8gdGhlIGltcGxlbWVudGF0aW9uLg0KPiBGb3IgZXhhbXBsZSBDR0kg
d2lsbCBjYWxsIHRoZSBzZXJ2ZXIgb25jZSBmb3IgZWFjaCByZXF1ZXN0IGJ1dA0KPiBGYXN0LUNH
SSB3aWxsIGNhbGwgdGhlIHRoaW4tY2xpZW50IG9uY2UgZm9yIGVhY2ggSFRUUCBzZXNzaW9uDQo+
IGFuZCBjYWxsIHRoZSBzZXJ2ZXIgb3ZlciBhbmQgb3ZlciBmb3IgZWFjaCByZXF1ZXN0IG9uIHRo
YXQNCj4gc2Vzc2lvbi4NCg0KT2theSwgSSdsbCBjb25zaWRlciB0aGlzIGlzc3VlIGNsb3NlZCB0
aGVuLg0KDQoNCg0KPiBBbmR5DQoNCktlbnQNCg0KDQoNCg==


From nobody Mon Aug 21 09:26:21 2017
Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B5C63132A7E for <yang-doctors@ietfa.amsl.com>; Mon, 21 Aug 2017 09:26:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 0fi6twTYJ3ov for <yang-doctors@ietfa.amsl.com>; Mon, 21 Aug 2017 09:26:18 -0700 (PDT)
Received: from mail-wr0-x22c.google.com (mail-wr0-x22c.google.com [IPv6:2a00:1450:400c:c0c::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 01CCA132A74 for <yang-doctors@ietf.org>; Mon, 21 Aug 2017 09:26:17 -0700 (PDT)
Received: by mail-wr0-x22c.google.com with SMTP id 30so31088624wrk.0 for <yang-doctors@ietf.org>; Mon, 21 Aug 2017 09:26:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=iWP2T82Cvb4FmoTPRlUGR01bZtTtG92d+C6ANlmJfIk=; b=oRtB4IuiQf2dyskYJDhkCTWAmzo7kRCtp5mB3hqaUM/dAhm+968gLBQPdwDKV9HWRc btedxovl/j95zAYUfaov5HMLxFtJ1Jugneg4tkx4ThkavfubW8OBXqEdqY4VxfVTslv1 m1AhCto+0kvVL0sV0lbzOmipkhFRNtocsTXsGgf3wXqTGC2dT7uHi2TEDPMv7taG4m+A CD+4NbUWid/a9u9d2gQq2nK2+HlqAHIqPyVP+Md5JXgk+k2FEijADgtQMrvMxTKNgRoH 2hMVEAQfxdU/pMAjApkDjv+x1p4vlRR+nFj164a0sZopJ9pXCssYy3F/EViW9PaEjgCy I5qA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=iWP2T82Cvb4FmoTPRlUGR01bZtTtG92d+C6ANlmJfIk=; b=kwh0nRuluRk0gb2K4uBN4nmEckJm2LdhaSRB1iApIfBIEFDQf/ENfxSPE8rEd7ODjc mRWmjnyvSjEC8PglM54WnIKw5g0PXvGZ+9gMmw/+1basOAT0vmanHN3xEV9y3Tp9oj0v b20iSMEVDtsMsXl9X83O8fvkYHkA41o13/kAZQyl8mJeGUEGyLfDqaxkLwqPPEi5AK5L 9zWLIUMZzYRw9nHP9owgAJaCLgnRF2XY9hn3m+tRetSgp7UYodso9Yto5A5zsoSBraKi XFwX5eDt3/OFNTme6KPHYH+uNk7BPBKCIB+7sH7yEvPXooriODUuXa/LQBapsuYHfUr/ z11Q==
X-Gm-Message-State: AHYfb5hxki28Rgy8nhWO/nWK8nt/MTU4fOKgkqrcJOEixzY6Sr1AsQjl 1uMzaqDbpTl1peN5tH4PE4vDM1YrvL9h
X-Received: by 10.223.163.20 with SMTP id c20mr12313704wrb.173.1503332776515;  Mon, 21 Aug 2017 09:26:16 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.164.129 with HTTP; Mon, 21 Aug 2017 09:26:15 -0700 (PDT)
In-Reply-To: <FFE6D82C-857E-4890-94AB-1CC28BD1C786@juniper.net>
References: <150128020275.20726.13027423171798327745@ietfa.amsl.com> <A9F2ED3F-6AC5-4AEF-8EBF-1C4F89A6F0F7@juniper.net> <CABCOCHTmNdi7ZGPL_R8vyZTOKeVwJgtrqsT0ZNBCbMUT4Qo9tA@mail.gmail.com> <30CD19F8-6441-4EA3-A340-8CEDD6D4FD6A@juniper.net> <CABCOCHQrgYOUGXo1g3LGn9t8rL3-MoJwNmSG2amgAkxMp_Prhw@mail.gmail.com> <C8D279C6-B735-453D-92BF-09886CAFF403@juniper.net> <CABCOCHTr_jd8FsfHBbOrCfQfoi-TZyPW2NxRNWjyFRG691_VaQ@mail.gmail.com> <FFE6D82C-857E-4890-94AB-1CC28BD1C786@juniper.net>
From: Andy Bierman <andy@yumaworks.com>
Date: Mon, 21 Aug 2017 09:26:15 -0700
Message-ID: <CABCOCHS+G15GzcwgMSJnguYERcrCNu735JE9LavjtYJ4Gyq0cw@mail.gmail.com>
To: Kent Watsen <kwatsen@juniper.net>
Cc: "yang-doctors@ietf.org" <yang-doctors@ietf.org>,  "draft-ietf-netconf-restconf-client-server.all@ietf.org" <draft-ietf-netconf-restconf-client-server.all@ietf.org>,  "netconf@ietf.org" <netconf@ietf.org>
Content-Type: multipart/alternative; boundary="f403045f219c1faeac055745f046"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/3fSiKievrHuA6yc1lkDrR05F1-k>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-netconf-restconf-client-server-04
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Aug 2017 16:26:21 -0000

--f403045f219c1faeac055745f046
Content-Type: text/plain; charset="UTF-8"

On Mon, Aug 21, 2017 at 9:22 AM, Kent Watsen <kwatsen@juniper.net> wrote:

> Hi Andy,
>
> Trimming down to just the still-open discussion points.
>
> Thanks,
> Kent
>
>
> >>> You know I am not a big fan of YANG conformance.
> >>> We have nothing in between "always mandatory" and "purely optional,
> >>> server developer's choice".  We have nothing like conditionally
> >>> mandatory "If the RESTCONF server supports listening on TLS , then
> >>> the listen-tls feature MUST be supported."
> >>
> >>This seems unnecessary.  Already the 'if-feature' statements will
> >>force the server to advertise the features - or else they're not
> >>configurable!
> >
> > Nothing forces the server to developer to implement a particular object,
> > because features are purely optional. The description-stmt in the feature
> > can make this conditional requirement.  But not a big deal
> > because the IETF is too server-centric to care about the client POV
> > of YANG conformance.
>
> I don't see this as a big deal.  Regardless, it's not for this draft
> to resolve, right?
>
>
>
right


>
>
>
>
>
> >>>>> C5:
> >>>>
> >>>> It should be clear that the client would have to issue a GET
> >>>> or maybe POST to initiate the sending of stored data like logs
> >>>
> >>> Okay, how about this?
> >>>
> >>>   "Periodically connect to the RESTCONF server, so that,
> >>>    e.g., the RESTCONF client can collect data (logs)
> >>>    from the RESTCONF server.  The RESTCONF client must
> >>>    close the connection when it is ready to release it.
> >>>    Once the connection is closed, the RESTCONF client
> >>>    restarts its timer until the next connection.";
> >>
> >> Not sure this is needed.
> >> RESTCONF does not define any interactions that are not initiated
> >> by the client, but if that changes, then no reason to constrain
> >> this text. I would change 'must' to 'SHOULD' in the 2nd sentence.
> >
> > Oh, now I see your concern, how about this?  (I removed the sentence
> > altogether):
> >
> >     "Periodically connect to the RESTCONF client, so that
> >      the RESTCONF client may deliver messages pending for
> >      the RESTCONF server.  Once the connection has been
> >      closed, for whatever reason, the server will restart
> >      its timer until the next connection.";
> >
> > I would change messages to requests
>
> Done.
>
>
>
>
> >>>>> This is 1 exception -- another is close-session.
> >>>>>
> >>>>>   POST /restconf/operations/ietf-netconf:close-session
> >>>>>
> >>>>> Is this supposed to do anything in RESTCONF?
> >>>>
> >>>> First, I don't view the above as an exception.  With regards to
> >>>> 'close-session', does it even have a meaning in RESTCONF?  - and
> >>>> is this actually an issue for RFC 8040?
> >>>
> >>> RESTCONF does not specify any behavior for specific operation
> >>> resources.  It is left as an implementation detail.  Our server
> >>> treats each RESTCONF request as a new management session, so a
> >>> NETCONF operation like <lock> is granted and then released right
> >>> afterwards by the server because the session is terminated.  I
> >>> think any standard behavior for application layer sessions would
> >>> need to be defined in a new versions of RESTCONF.
> >>
> >> Okay, but can you connect this to the draft?  Are you asking for
> >> a change, or are you actually thinking about a clarification
> >> needed for RFC 8040?
> >
> > not asking for a change.
> > It is currently up to the implementation.
> > For example CGI will call the server once for each request but
> > Fast-CGI will call the thin-client once for each HTTP session
> > and call the server over and over for each request on that
> > session.
>
> Okay, I'll consider this issue closed then.
>
>
>
> > Andy
>
> Kent
>
>
>
>

--f403045f219c1faeac055745f046
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Mon, Aug 21, 2017 at 9:22 AM, Kent Watsen <span dir=3D"ltr">&lt;<a h=
ref=3D"mailto:kwatsen@juniper.net" target=3D"_blank">kwatsen@juniper.net</a=
>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 =
0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Andy,<br>
<br>
Trimming down to just the still-open discussion points.<br>
<br>
Thanks,<br>
Kent<br>
<br>
<br>
&gt;&gt;&gt; You know I am not a big fan of YANG conformance.<br>
&gt;&gt;&gt; We have nothing in between &quot;always mandatory&quot; and &q=
uot;purely optional,<br>
&gt;&gt;&gt; server developer&#39;s choice&quot;.=C2=A0 We have nothing lik=
e conditionally<br>
&gt;&gt;&gt; mandatory &quot;If the RESTCONF server supports listening on T=
LS , then<br>
&gt;&gt;&gt; the listen-tls feature MUST be supported.&quot;<br>
&gt;&gt;<br>
&gt;&gt;This seems unnecessary.=C2=A0 Already the &#39;if-feature&#39; stat=
ements will<br>
&gt;&gt;force the server to advertise the features - or else they&#39;re no=
t<br>
&gt;&gt;configurable!<br>
&gt;<br>
&gt; Nothing forces the server to developer to implement a particular objec=
t,<br>
&gt; because features are purely optional. The description-stmt in the feat=
ure<br>
&gt; can make this conditional requirement.=C2=A0 But not a big deal<br>
&gt; because the IETF is too server-centric to care about the client POV<br=
>
&gt; of YANG conformance.<br>
<br>
I don&#39;t see this as a big deal.=C2=A0 Regardless, it&#39;s not for this=
 draft<br>
to resolve, right?<br>
=C2=A0<br>
<br></blockquote><div><br></div><div>right</div><div>=C2=A0</div><blockquot=
e class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc sol=
id;padding-left:1ex">
<br>
<br>
<br>
<br>
<br>
&gt;&gt;&gt;&gt;&gt; C5:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; It should be clear that the client would have to issue a G=
ET<br>
&gt;&gt;&gt;&gt; or maybe POST to initiate the sending of stored data like =
logs<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Okay, how about this?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;=C2=A0 =C2=A0&quot;Periodically connect to the RESTCONF server,=
 so that,<br>
&gt;&gt;&gt;=C2=A0 =C2=A0 e.g., the RESTCONF client can collect data (logs)=
<br>
&gt;&gt;&gt;=C2=A0 =C2=A0 from the RESTCONF server.=C2=A0 The RESTCONF clie=
nt must<br>
&gt;&gt;&gt;=C2=A0 =C2=A0 close the connection when it is ready to release =
it.<br>
&gt;&gt;&gt;=C2=A0 =C2=A0 Once the connection is closed, the RESTCONF clien=
t<br>
&gt;&gt;&gt;=C2=A0 =C2=A0 restarts its timer until the next connection.&quo=
t;;<br>
&gt;&gt;<br>
&gt;&gt; Not sure this is needed.<br>
&gt;&gt; RESTCONF does not define any interactions that are not initiated<b=
r>
&gt;&gt; by the client, but if that changes, then no reason to constrain<br=
>
&gt;&gt; this text. I would change &#39;must&#39; to &#39;SHOULD&#39; in th=
e 2nd sentence.<br>
&gt;<br>
&gt; Oh, now I see your concern, how about this?=C2=A0 (I removed the sente=
nce<br>
&gt; altogether):<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&quot;Periodically connect to the RESTCONF client, =
so that<br>
&gt;=C2=A0 =C2=A0 =C2=A0 the RESTCONF client may deliver messages pending f=
or<br>
&gt;=C2=A0 =C2=A0 =C2=A0 the RESTCONF server.=C2=A0 Once the connection has=
 been<br>
&gt;=C2=A0 =C2=A0 =C2=A0 closed, for whatever reason, the server will resta=
rt<br>
&gt;=C2=A0 =C2=A0 =C2=A0 its timer until the next connection.&quot;;<br>
&gt;<br>
&gt; I would change messages to requests<br>
<br>
Done.<br>
<br>
=C2=A0<br>
<br>
<br>
&gt;&gt;&gt;&gt;&gt; This is 1 exception -- another is close-session.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;=C2=A0 =C2=A0POST /restconf/operations/ietf-<wbr>netcon=
f:close-session<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Is this supposed to do anything in RESTCONF?<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; First, I don&#39;t view the above as an exception.=C2=A0 W=
ith regards to<br>
&gt;&gt;&gt;&gt; &#39;close-session&#39;, does it even have a meaning in RE=
STCONF?=C2=A0 - and<br>
&gt;&gt;&gt;&gt; is this actually an issue for RFC 8040?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; RESTCONF does not specify any behavior for specific operation<=
br>
&gt;&gt;&gt; resources.=C2=A0 It is left as an implementation detail.=C2=A0=
 Our server<br>
&gt;&gt;&gt; treats each RESTCONF request as a new management session, so a=
<br>
&gt;&gt;&gt; NETCONF operation like &lt;lock&gt; is granted and then releas=
ed right<br>
&gt;&gt;&gt; afterwards by the server because the session is terminated.=C2=
=A0 I<br>
&gt;&gt;&gt; think any standard behavior for application layer sessions wou=
ld<br>
&gt;&gt;&gt; need to be defined in a new versions of RESTCONF.<br>
&gt;&gt;<br>
&gt;&gt; Okay, but can you connect this to the draft?=C2=A0 Are you asking =
for<br>
&gt;&gt; a change, or are you actually thinking about a clarification<br>
&gt;&gt; needed for RFC 8040?<br>
&gt;<br>
&gt; not asking for a change.<br>
&gt; It is currently up to the implementation.<br>
&gt; For example CGI will call the server once for each request but<br>
&gt; Fast-CGI will call the thin-client once for each HTTP session<br>
&gt; and call the server over and over for each request on that<br>
&gt; session.<br>
<br>
Okay, I&#39;ll consider this issue closed then.<br>
<br>
<br>
<br>
&gt; Andy<br>
<span class=3D"HOEnZb"><font color=3D"#888888"><br>
Kent<br>
<br>
<br>
<br>
</font></span></blockquote></div><br></div></div>

--f403045f219c1faeac055745f046--


From nobody Mon Aug 21 10:08:41 2017
Return-Path: <j.schoenwaelder@jacobs-university.de>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EAE17132A85 for <yang-doctors@ietfa.amsl.com>; Mon, 21 Aug 2017 10:08:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id WJ3eCsiomZ34 for <yang-doctors@ietfa.amsl.com>; Mon, 21 Aug 2017 10:08:37 -0700 (PDT)
Received: from atlas5.jacobs-university.de (atlas5.jacobs-university.de [212.201.44.20]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 67C8B132192 for <yang-doctors@ietf.org>; Mon, 21 Aug 2017 10:08:37 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas5.jacobs-university.de (Postfix) with ESMTP id 3FD18375; Mon, 21 Aug 2017 19:08:36 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas5.jacobs-university.de ([10.70.0.217]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10032) with ESMTP id pl1VbmiOb3aq; Mon, 21 Aug 2017 19:08:31 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas5.jacobs-university.de (Postfix) with ESMTPS; Mon, 21 Aug 2017 19:08:36 +0200 (CEST)
Received: from localhost (demetrius3.jacobs-university.de [212.201.44.48]) by hermes.jacobs-university.de (Postfix) with ESMTP id F3F97200E0; Mon, 21 Aug 2017 19:08:35 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius3.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id 5c_ZLSdAbtS5; Mon, 21 Aug 2017 19:08:35 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 24C88200DF; Mon, 21 Aug 2017 19:08:35 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id B9DF64045FE5; Mon, 21 Aug 2017 19:08:33 +0200 (CEST)
Date: Mon, 21 Aug 2017 19:08:33 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Kent Watsen <kwatsen@juniper.net>
Cc: Jan Lindblad <janl@tail-f.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Message-ID: <20170821170833.nh2mi5mnqd2zrd3k@elstar.local>
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
Mail-Followup-To: Kent Watsen <kwatsen@juniper.net>, Jan Lindblad <janl@tail-f.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <DC062E7E-7422-4037-82E4-52B17422B33E@juniper.net>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <DC062E7E-7422-4037-82E4-52B17422B33E@juniper.net>
User-Agent: NeoMutt/20170714 (1.8.3)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/wXVOX7c98oqH4g5OMms1y4jg508>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Aug 2017 17:08:40 -0000

On Thu, Aug 17, 2017 at 06:17:08PM +0000, Kent Watsen wrote:
> 
> > I believe a feature for every counter is a misuse of YANG feature
> > statements, it will get horribly ugly. I recently observe an increase
> > of feature statement usage in order to accomodate server
> > implementations and the ultimate solution is a feature statement for
> > every leaf, list, rpc, action, notification and perhaps even certain
> > value sets. This is ridiculous, but a feature for every counter is
> > getting damn close to it.
> 
> This is a programmatic API.  I appreciate the concern for a bloat of
> bits on the wire, but recall that features are listed in yang-library,
> a very special module that has a built-in ETag-like hashing mechanism
> to allow for efficient comparisons.  I don't see the bloat issue here.
> 
> Having feature statements everywhere may be ridiculous, but not illegal.
> Implementations need to be able to handle it already, right?
>

Perhaps not illegal, but a misuse of the intention of the concept. A
single leaf is not what we considered a feature.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Mon Aug 21 10:17:15 2017
Return-Path: <ivandean@gmail.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 793DF132A7C; Mon, 21 Aug 2017 10:17:09 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level: 
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UMUt8V85cbSI; Mon, 21 Aug 2017 10:17:06 -0700 (PDT)
Received: from mail-qt0-x22d.google.com (mail-qt0-x22d.google.com [IPv6:2607:f8b0:400d:c0d::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A447913232C; Mon, 21 Aug 2017 10:17:06 -0700 (PDT)
Received: by mail-qt0-x22d.google.com with SMTP id 16so85574305qtz.4; Mon, 21 Aug 2017 10:17:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;  h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=vWz6DsvAVqxPo4vJQLvVSckI/A/iMOYtZZ3wHhLipNw=; b=MH7VvINoGEBpGtDRZa8OC8gS6g2Duqy1UsyQlQBLVRpHfw1r1FTRSeXTWQHbHSwTfz Kwx8lJdkCkDdlmnay97tmP6v6CjarnQ7NIQobwia1PSXdLHMaX9Q/9WUJF6epfHowUcc 1fmSso123UKaz6IKcRty9l3XKcpzs4DeaGO7dPsZ58HYTc1+2pDXlZ0/f8u9Rj8sWuIt hhjtWhop4VHAW4syMOtJIBDO8Y0rLMyHtD+8M+VWHgJOx6gQUhYs2us9tuOmIxqhtKnQ edgvODZdwRIMAs7QNWGOs5S5hHYWPcZEnLdbtw9t1dmxp4MtEt90VGgtigUqD+VI8fwD wUzw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=vWz6DsvAVqxPo4vJQLvVSckI/A/iMOYtZZ3wHhLipNw=; b=aheV98QX+Kn9J7jI3QOJsY2ICwy1GtfWTB2g5XAb+/3RsMaBf8hjSgxpk9gpI0eFHL qD58K8vusZ3nzickpHOI4M5qiK7b6u0YPT77PxLhPg102b+8+3xq0eLpevlPQfMRHtDr bDOWH2mvUjgNmcoN3TvGe0MdG3uVlVUyyJqtnKokjOq16ORG7k5lM6wlLC0B7079SGJ/ dsbPnSFoGLZw8IeQwvAjkIxuBIO7ttEWNlvyCPGJ0pcnANmsp43LrYxBMGi4tLbIsiV3 XhJZdM82ceXnwnxHG8wXf711rKt8iw9+gEJZyOUAH4RJ/TFauJVmytitOCh/+DpegoIc e0jA==
X-Gm-Message-State: AHYfb5gEVY3yiWu1l8VnDADQXAKZHJfCZQqyMkE2Rinl8GwtLsKzLWm7 hJyF5hWyGyWb6g==
X-Received: by 10.200.51.79 with SMTP id u15mr5272173qta.53.1503335825733; Mon, 21 Aug 2017 10:17:05 -0700 (PDT)
Received: from [192.168.128.129] ([144.121.38.165]) by smtp.gmail.com with ESMTPSA id t1sm8603388qkb.91.2017.08.21.10.17.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 21 Aug 2017 10:17:05 -0700 (PDT)
From: Dean Bogdanovic <ivandean@gmail.com>
Message-Id: <A6E57BFB-6787-495A-B35A-61231E90C8D0@gmail.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_41F310E7-744F-4768-A84A-35067EDE6B41"
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
Date: Mon, 21 Aug 2017 13:17:04 -0400
In-Reply-To: <611FE2EF-F273-44E9-A738-0E3653D8A788@juniper.net>
Cc: YANG Doctors <yang-doctors@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
To: Kent Watsen <kwatsen@juniper.net>
References: <3ECE1319-255E-4B06-BF97-F4EAFFC3D8B5@gmail.com> <611FE2EF-F273-44E9-A738-0E3653D8A788@juniper.net>
X-Mailer: Apple Mail (2.3273)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/3SaFio_S4LP_lOxrHqTiMP_Gp4A>
Subject: Re: [yang-doctors] Review of draft-ietf-netconf-zerotouch-15
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Aug 2017 17:17:09 -0000

--Apple-Mail=_41F310E7-744F-4768-A84A-35067EDE6B41
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Kent,

> On Aug 21, 2017, at 11:35 AM, Kent Watsen <kwatsen@juniper.net> wrote:
>=20
> [CC-ing netconf]
> =20
> Hi Dean,
> =20
> Thanks for your review.
> =20
> 1) validating yang-data examples directly is currently not possible.  =
Neither is validating RESTCONF examples.  But my knowledge is limited to =
`pyang` (which doesn't validate 1.1-examples at all) and `yanglint` =
(which has fairly complete validation ability)
> =20
> 2) the need for zerotouch support for LNEs needs to be discussed by =
the WG.   My personal experience is that only the host-system needs =
zerotouch bootstrapping, but I can imagine zerotouch being useful to =
support VNFs, or virtual-machines in general.   Supporting VMs is =
possible with the current draft, but it entails the hypervisor being =
able to verify the VM image ("secure boot") and allocate a virtual =
IDevID certificate to the VM, both of which are out of scope for this =
draft.   Do you think we should add an "applicability statement" in the =
beginning, or perhaps to Section 5.1, something like this:
> =20
>    This document primarily regards physical devices, where the setting
>    of the initial "factory default" state occurs during the device's
>    manufacturing process.  However, the zerotouch solution may be
>    extensible to virtual machines whereby, for instance, the =
host-system
>    has an IDevID certificate and some ability to verify the virtual
>    machine's image before loading it and also provision a just-in-time
>    IDevID certificate.  Details for how this may be accomplished can =
be
>    defined in future work.

Yes, I agree with this comment, as is specify more narrowly the =
intention on how to use the modules.

Dean

> =20
> Thoughts?
> =20
> Kent
> =20
> =20
> On 8/18/17, 3:02 PM, "yang-doctors on behalf of Dean Bogdanovic" =
<yang-doctors-bounces@ietf.org <mailto:yang-doctors-bounces@ietf.org> on =
behalf of ivandean@gmail.com <mailto:ivandean@gmail.com>> wrote:
> =20
> Reviewer: Dean Bogdanovic
> Review result: Ready with caveat
>=20
>=20
> Modules:=20
> ietf-zerotouch-information.yang
> ietf-zerotouch-bootstrap-server.yang
> =20
> YANG Usage:
>=20
> I did not find anything wrong in any module, but there are no tools to =
valid usage of YANG data, which is used by =
ietf-zerotouch-information.yang module.
> So couldn=E2=80=99t get full validation of the module with pyang and =
lintyang tools.
>=20
> Comments:
> 1. As stated above, couldn=E2=80=99t get the full validation with the =
tools of the modules, but looking through the code and the draft, the =
authors are following the general recommendations by =
draft-dsdt-nmda-guidelines. Saying that, am fine with moving the draft =
along, but this is an issues that has to be addressed very soon, as =
there will be more drafts using YANG data that will not be able to get =
validated.
> =20
> 2. I couldn=E2=80=99t see how this modules would work well with =
draft-ietf-rtgwg-lne-model. That draft describes how different virtual =
systems with different administrators can run on the same HW. How can we =
boot different versions of SW (lnes) to run on the HW? Or should it =
state that this draft has no plans to support use cases described in =
draft-ietf-rtgwg-lne-model.
> =20
> Regards,
> =20
> Dean
> =20
> =20
> =20
>=20


--Apple-Mail=_41F310E7-744F-4768-A84A-35067EDE6B41
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D"">Kent,<div class=3D""><br class=3D""></div><div =
class=3D""><div><blockquote type=3D"cite" class=3D""><div class=3D"">On =
Aug 21, 2017, at 11:35 AM, Kent Watsen &lt;<a =
href=3D"mailto:kwatsen@juniper.net" class=3D"">kwatsen@juniper.net</a>&gt;=
 wrote:</div><br class=3D"Apple-interchange-newline"><div class=3D""><div =
class=3D"WordSection1" style=3D"page: WordSection1; font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: =
rgb(255, 255, 255);"><div style=3D"margin: 0in 0in 0.0001pt; font-size: =
12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D"">[CC-ing netconf]<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div><div style=3D"margin: 0in 0in =
0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D""><span style=3D"font-family: Calibri;" class=3D"">Hi Dean,<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div><div style=3D"margin: 0in 0in =
0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D""><span style=3D"font-family: Calibri;" class=3D"">Thanks for =
your review.<o:p class=3D""></o:p></span></div><div style=3D"margin: 0in =
0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D""><span style=3D"font-family: Calibri;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div><div style=3D"margin: 0in 0in =
0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D""><span style=3D"font-family: Calibri;" class=3D"">1) =
validating yang-data examples directly is currently not possible.&nbsp; =
Neither is validating RESTCONF examples.&nbsp; But my knowledge is =
limited to `pyang` (which doesn't validate 1.1-examples at all) and =
`yanglint` (which has fairly complete validation ability)<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div><div style=3D"margin: 0in 0in =
0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D""><span style=3D"font-family: Calibri;" class=3D"">2) the need =
for zerotouch support for LNEs needs to be discussed by the =
WG.&nbsp;&nbsp; My personal experience is that only the host-system =
needs zerotouch bootstrapping, but I can imagine zerotouch being useful =
to support VNFs, or virtual-machines in general.&nbsp;&nbsp; Supporting =
VMs is possible with the current draft, but it entails the hypervisor =
being able to verify the VM image ("secure boot") and allocate a virtual =
IDevID certificate to the VM, both of which are out of scope for this =
draft.&nbsp;&nbsp; Do you think we should add an "applicability =
statement" in the beginning, or perhaps to Section 5.1, something like =
this:<o:p class=3D""></o:p></span></div><div style=3D"margin: 0in 0in =
0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D""><span style=3D"font-family: Calibri;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div><div style=3D"margin: 0in 0in =
0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D""><span style=3D"font-family: Calibri;" class=3D"">&nbsp;&nbsp; =
This document primarily regards physical devices, where the setting<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D"">&nbsp;&nbsp; of the initial =
"factory default" state occurs during the device's<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D"">&nbsp;&nbsp; manufacturing =
process.&nbsp; However, the zerotouch solution may be<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D"">&nbsp;&nbsp; extensible to =
virtual machines whereby, for instance, the host-system<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D"">&nbsp;&nbsp; has an IDevID =
certificate and some ability to verify the virtual<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D"">&nbsp;&nbsp; machine's image =
before loading it and also provision a just-in-time<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D"">&nbsp;&nbsp; IDevID =
certificate.&nbsp; Details for how this may be accomplished can be<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D"">&nbsp;&nbsp; defined in =
future work.</span></div></div></div></blockquote><div><br =
class=3D""></div>Yes, I agree with this comment, as is specify more =
narrowly the intention on how to use the modules.</div><div><br =
class=3D""></div><div>Dean</div><div><br class=3D""><blockquote =
type=3D"cite" class=3D""><div class=3D""><div class=3D"WordSection1" =
style=3D"page: WordSection1; font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant-caps: normal; font-weight: normal; =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255, =
255);"><div style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; =
font-family: 'Times New Roman';" class=3D""><span style=3D"font-family: =
Calibri;" class=3D""><o:p class=3D""></o:p></span></div><div =
style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times =
New Roman';" class=3D""><span style=3D"font-family: Calibri;" =
class=3D""><o:p class=3D"">&nbsp;</o:p></span></div><div style=3D"margin: =
0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D""><span style=3D"font-family: Calibri;" class=3D"">Thoughts?<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div><div style=3D"margin: 0in 0in =
0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D""><span style=3D"font-family: Calibri;" class=3D"">Kent<o:p =
class=3D""></o:p></span></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><span =
style=3D"font-family: Calibri;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div><div style=3D"margin: 0in 0in =
0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D""><span style=3D"font-family: Calibri;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></div><div class=3D""><div class=3D""><div =
style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times =
New Roman';" class=3D"">On 8/18/17, 3:02 PM, "yang-doctors on behalf of =
Dean Bogdanovic" &lt;<a href=3D"mailto:yang-doctors-bounces@ietf.org" =
style=3D"color: purple; text-decoration: underline;" =
class=3D"">yang-doctors-bounces@ietf.org</a><span =
class=3D"Apple-converted-space">&nbsp;</span>on behalf of<span =
class=3D"Apple-converted-space">&nbsp;</span><a =
href=3D"mailto:ivandean@gmail.com" style=3D"color: purple; =
text-decoration: underline;" class=3D"">ivandean@gmail.com</a>&gt; =
wrote:<o:p class=3D""></o:p></div></div></div><div class=3D""><div =
style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times =
New Roman';" class=3D""><o:p class=3D"">&nbsp;</o:p></div></div><div =
style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times =
New Roman';" class=3D"">Reviewer: Dean Bogdanovic<br class=3D"">Review =
result: Ready with caveat<br class=3D""><br class=3D""><br =
class=3D"">Modules:<span class=3D"Apple-converted-space">&nbsp;</span><o:p=
 class=3D""></o:p></div><div class=3D""><div style=3D"margin: 0in 0in =
0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D"">ietf-zerotouch-information.yang<o:p =
class=3D""></o:p></div></div><div class=3D""><div style=3D"margin: 0in =
0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D"">ietf-zerotouch-bootstrap-server.yang<o:p =
class=3D""></o:p></div></div><div class=3D""><div class=3D""><div =
style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times =
New Roman';" class=3D""><o:p class=3D"">&nbsp;</o:p></div></div><div =
class=3D""><div style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; =
font-family: 'Times New Roman';" class=3D"">YANG Usage:<o:p =
class=3D""></o:p></div></div><div style=3D"margin: 0in 0in 0.0001pt; =
font-size: 12pt; font-family: 'Times New Roman';" class=3D""><br =
class=3D"">I did not find anything wrong in any module, but there are no =
tools to valid usage of YANG data, which is used by =
ietf-zerotouch-information.yang module.<o:p =
class=3D""></o:p></div></div><div class=3D""><div style=3D"margin: 0in =
0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D"">So couldn=E2=80=99t get full validation of the module with =
pyang and lintyang tools.<br class=3D""><br class=3D"">Comments:<o:p =
class=3D""></o:p></div></div><div class=3D""><div style=3D"margin: 0in =
0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D"">1. As stated above, couldn=E2=80=99t get the full validation =
with the tools of the modules, but looking through the code and the =
draft, the authors are following the general recommendations by =
draft-dsdt-nmda-guidelines. Saying that, am fine with moving the draft =
along, but this is an issues that has to be addressed very soon, as =
there will be more drafts using YANG data that will not be able to get =
validated.<o:p class=3D""></o:p></div></div><div class=3D""><div =
style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times =
New Roman';" class=3D""><o:p class=3D"">&nbsp;</o:p></div></div><div =
class=3D""><div style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; =
font-family: 'Times New Roman';" class=3D"">2. I couldn=E2=80=99t see =
how this modules would work well with draft-ietf-rtgwg-lne-model. That =
draft describes how different virtual systems with different =
administrators can run on the same HW. How can we boot different =
versions of SW (lnes) to run on the HW? Or should it state that this =
draft has no plans to support use cases described in =
draft-ietf-rtgwg-lne-model.<o:p class=3D""></o:p></div></div><div =
class=3D""><div style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; =
font-family: 'Times New Roman';" class=3D""><o:p =
class=3D"">&nbsp;</o:p></div></div><div class=3D""><div style=3D"margin: =
0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D"">Regards,<o:p class=3D""></o:p></div></div><div class=3D""><div =
style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times =
New Roman';" class=3D""><o:p class=3D"">&nbsp;</o:p></div></div><div =
class=3D""><div style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; =
font-family: 'Times New Roman';" class=3D"">Dean<o:p =
class=3D""></o:p></div></div><div class=3D""><div style=3D"margin: 0in =
0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman';" =
class=3D""><o:p class=3D"">&nbsp;</o:p></div></div><div class=3D""><div =
class=3D""><div style=3D"margin: 0in 0in 0.0001pt; font-size: 12pt; =
font-family: 'Times New Roman';" class=3D""><o:p =
class=3D"">&nbsp;</o:p></div></div></div><div class=3D""><h1 =
style=3D"margin-right: 0in; margin-left: 0in; font-size: 24pt; =
font-family: 'Times New Roman';" class=3D""><span style=3D"font-size: =
12pt;" class=3D""><o:p =
class=3D"">&nbsp;</o:p></span></h1></div></div></div></blockquote></div><b=
r class=3D""></div></body></html>=

--Apple-Mail=_41F310E7-744F-4768-A84A-35067EDE6B41--


From nobody Mon Aug 21 10:21:34 2017
Return-Path: <j.schoenwaelder@jacobs-university.de>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AE3871323C9 for <yang-doctors@ietfa.amsl.com>; Mon, 21 Aug 2017 10:21:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yXyyDPPfWq5h for <yang-doctors@ietfa.amsl.com>; Mon, 21 Aug 2017 10:21:31 -0700 (PDT)
Received: from atlas5.jacobs-university.de (atlas5.jacobs-university.de [212.201.44.20]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E817212700F for <yang-doctors@ietf.org>; Mon, 21 Aug 2017 10:21:30 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas5.jacobs-university.de (Postfix) with ESMTP id B6BA299; Mon, 21 Aug 2017 19:21:29 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas5.jacobs-university.de ([10.70.0.217]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10032) with ESMTP id FyQqidN_byCi; Mon, 21 Aug 2017 19:21:25 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas5.jacobs-university.de (Postfix) with ESMTPS; Mon, 21 Aug 2017 19:21:29 +0200 (CEST)
Received: from localhost (demetrius1.jacobs-university.de [212.201.44.46]) by hermes.jacobs-university.de (Postfix) with ESMTP id 70471200E1; Mon, 21 Aug 2017 19:21:29 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius1.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id 3y1y2KwIjOnf; Mon, 21 Aug 2017 19:21:29 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 07F34200DF; Mon, 21 Aug 2017 19:21:29 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id E9CC14046027; Mon, 21 Aug 2017 19:21:28 +0200 (CEST)
Date: Mon, 21 Aug 2017 19:21:28 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Norm Strahle <nstrahle@juniper.net>
Cc: Andy Bierman <andy@yumaworks.com>, Kent Watsen <kwatsen@juniper.net>, Jan Lindblad <janl@tail-f.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
Message-ID: <20170821172128.ftogpej4jifxbt7m@elstar.local>
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
Mail-Followup-To: Norm Strahle <nstrahle@juniper.net>, Andy Bierman <andy@yumaworks.com>, Kent Watsen <kwatsen@juniper.net>, Jan Lindblad <janl@tail-f.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <DC062E7E-7422-4037-82E4-52B17422B33E@juniper.net> <CABCOCHQJOBXrYLntdg_7iL3wqy9Fkcd10f0ArwPJUNKo9dZAVQ@mail.gmail.com> <DM2PR0501MB15024D3A6AA8F654C1C7B418CF800@DM2PR0501MB1502.namprd05.prod.outlook.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
X-Clacks-Overhead: GNU Terry Pratchett
Content-Transfer-Encoding: 8bit
In-Reply-To: <DM2PR0501MB15024D3A6AA8F654C1C7B418CF800@DM2PR0501MB1502.namprd05.prod.outlook.com>
User-Agent: NeoMutt/20170714 (1.8.3)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/psq0ZNWaJWNaW1GqRsUvEo3dsvE>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Aug 2017 17:21:33 -0000

On Fri, Aug 18, 2017 at 12:59:10PM +0000, Norm Strahle wrote:
> Hey folks, Appreciate all the feedback.  We discussed yesterday among diffserv-ietf modelers yesterday and had a couple comments:
> 
> 
> ·       We liked explicit statements (deviations, features, flag-bits) rather than implicit – i.e. option 5 – of vendors leaving unsupported leaves out of containers
> 
> ·       We think if-features or the “bit” flag mechanism are better than deviations, as it at least allows clients to anticipate up front that some items may not be supported.

A decent implementation will expect deviations, deviations are always
possible. I think there is a circular argument here, which boils down
to "we do not want to use deviations because we do not want to process
deviations".
 
> ·       One advantage of using the “bit” flag mechanism – i.e. option 2 - over features is that this allows a vendor to specify per-interface what is supported.  What features a vendor supports for diffserv is very hardware dependent and may vary from interface to interface within a single device. A device may have multiple types and generations of line cards, and thus, the types of stats supported will be different. The bit-flag mechanism allows a device to reflect that to the client explicitly.
>

As long as we talk about non-mandatory counters, simply not reporting
counters that do not exist seems to be the most simple solution. If
you want to tell clients upfront that a counter will never exist, use
the deviation mechanism. This is why we have it.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Mon Aug 21 10:33:39 2017
Return-Path: <acee@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D05651323C9 for <yang-doctors@ietfa.amsl.com>; Mon, 21 Aug 2017 10:33:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.521
X-Spam-Level: 
X-Spam-Status: No, score=-14.521 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id vgLcYtV3pjbO for <yang-doctors@ietfa.amsl.com>; Mon, 21 Aug 2017 10:33:35 -0700 (PDT)
Received: from rcdn-iport-7.cisco.com (rcdn-iport-7.cisco.com [173.37.86.78]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B5EEF1323C0 for <yang-doctors@ietf.org>; Mon, 21 Aug 2017 10:33:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=3260; q=dns/txt; s=iport; t=1503336815; x=1504546415; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=h4lJyr1vdRTj59hXfZqrENEeritKBZd4C3Sub0PFaqI=; b=UCMCF/mq2BED10uVqmJwJmuGPlmsr/j0FJ168n6sLsGiYfPkohLwR7yk RNW93qrxOSBgohnlFFoifBnPwvu9KntsF8l5yC2MiF7nYgSb4QBl5Wd0b xdiegaTMaFAiIT0DGFdFES6BL1nh/usA0IiXTpMvaqKMMyIKnxLof8mhf A=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0DRAAB8GJtZ/4kNJK1bAxkBAQEBAQEBA?= =?us-ascii?q?QEBAQcBAQEBAYNaZIEVB4NwihuQFoFulh6CEiELhRsCGoN2PxgBAgEBAQEBAQF?= =?us-ascii?q?rKIUYAQEBAQIBAQEhEToLBQkCAgEIDgIIAgImAgICGQwLFRACBAENBRuKDggQr?= =?us-ascii?q?zyCJotdAQEBAQEBAQEBAQEBAQEBAQEBAQEBHQWBBoIdggKGVoRzFwomgkyCQh8?= =?us-ascii?q?FoE8ClECSXpYfAR84gQp3FUmHGnaJUoEPAQEB?=
X-IronPort-AV: E=Sophos;i="5.41,409,1498521600"; d="scan'208";a="283651014"
Received: from alln-core-4.cisco.com ([173.36.13.137]) by rcdn-iport-7.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 21 Aug 2017 17:33:34 +0000
Received: from XCH-RTP-001.cisco.com (xch-rtp-001.cisco.com [64.101.220.141]) by alln-core-4.cisco.com (8.14.5/8.14.5) with ESMTP id v7LHXYeJ025000 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Mon, 21 Aug 2017 17:33:34 GMT
Received: from xch-rtp-015.cisco.com (64.101.220.155) by XCH-RTP-001.cisco.com (64.101.220.141) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Mon, 21 Aug 2017 13:33:33 -0400
Received: from xch-rtp-015.cisco.com ([64.101.220.155]) by XCH-RTP-015.cisco.com ([64.101.220.155]) with mapi id 15.00.1210.000; Mon, 21 Aug 2017 13:33:33 -0400
From: "Acee Lindem (acee)" <acee@cisco.com>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Norm Strahle <nstrahle@juniper.net>
CC: "Aseem Choudhary (asechoud)" <asechoud@cisco.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>
Thread-Topic: [yang-doctors] question regarding conditional/optional statements
Thread-Index: AdMWuspFVk5k9TDdRCeshA4HU2pVBgAfV2wAAAZRrAAAAQt5gAAUPP0AAAGZewAAJZZHAACgCPQA///ARQA=
Date: Mon, 21 Aug 2017 17:33:33 +0000
Message-ID: <D5C09135.C2737%acee@cisco.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <DC062E7E-7422-4037-82E4-52B17422B33E@juniper.net> <CABCOCHQJOBXrYLntdg_7iL3wqy9Fkcd10f0ArwPJUNKo9dZAVQ@mail.gmail.com> <DM2PR0501MB15024D3A6AA8F654C1C7B418CF800@DM2PR0501MB1502.namprd05.prod.outlook.com> <20170821172128.ftogpej4jifxbt7m@elstar.local>
In-Reply-To: <20170821172128.ftogpej4jifxbt7m@elstar.local>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.116.152.201]
Content-Type: text/plain; charset="utf-8"
Content-ID: <BC023794F635EB468C589E86E1A23A89@emea.cisco.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/7BMS6q6bveUSa0yznXT3QToY7CI>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Aug 2017 17:33:38 -0000

DQoNCk9uIDgvMjEvMTcsIDE6MjEgUE0sICJ5YW5nLWRvY3RvcnMgb24gYmVoYWxmIG9mIEp1ZXJn
ZW4gU2Nob2Vud2FlbGRlciINCjx5YW5nLWRvY3RvcnMtYm91bmNlc0BpZXRmLm9yZyBvbiBiZWhh
bGYgb2YNCmouc2Nob2Vud2FlbGRlckBqYWNvYnMtdW5pdmVyc2l0eS5kZT4gd3JvdGU6DQoNCj5P
biBGcmksIEF1ZyAxOCwgMjAxNyBhdCAxMjo1OToxMFBNICswMDAwLCBOb3JtIFN0cmFobGUgd3Jv
dGU6DQo+PiBIZXkgZm9sa3MsIEFwcHJlY2lhdGUgYWxsIHRoZSBmZWVkYmFjay4gIFdlIGRpc2N1
c3NlZCB5ZXN0ZXJkYXkgYW1vbmcNCj4+ZGlmZnNlcnYtaWV0ZiBtb2RlbGVycyB5ZXN0ZXJkYXkg
YW5kIGhhZCBhIGNvdXBsZSBjb21tZW50czoNCj4+IA0KPj4gDQo+PiDCtyAgICAgICBXZSBsaWtl
ZCBleHBsaWNpdCBzdGF0ZW1lbnRzIChkZXZpYXRpb25zLCBmZWF0dXJlcywgZmxhZy1iaXRzKQ0K
Pj5yYXRoZXIgdGhhbiBpbXBsaWNpdCDigJMgaS5lLiBvcHRpb24gNSDigJMgb2YgdmVuZG9ycyBs
ZWF2aW5nIHVuc3VwcG9ydGVkDQo+PmxlYXZlcyBvdXQgb2YgY29udGFpbmVycw0KPj4gDQo+PiDC
tyAgICAgICBXZSB0aGluayBpZi1mZWF0dXJlcyBvciB0aGUg4oCcYml04oCdIGZsYWcgbWVjaGFu
aXNtIGFyZSBiZXR0ZXINCj4+dGhhbiBkZXZpYXRpb25zLCBhcyBpdCBhdCBsZWFzdCBhbGxvd3Mg
Y2xpZW50cyB0byBhbnRpY2lwYXRlIHVwIGZyb250DQo+PnRoYXQgc29tZSBpdGVtcyBtYXkgbm90
IGJlIHN1cHBvcnRlZC4NCj4NCj5BIGRlY2VudCBpbXBsZW1lbnRhdGlvbiB3aWxsIGV4cGVjdCBk
ZXZpYXRpb25zLCBkZXZpYXRpb25zIGFyZSBhbHdheXMNCj5wb3NzaWJsZS4gSSB0aGluayB0aGVy
ZSBpcyBhIGNpcmN1bGFyIGFyZ3VtZW50IGhlcmUsIHdoaWNoIGJvaWxzIGRvd24NCj50byAid2Ug
ZG8gbm90IHdhbnQgdG8gdXNlIGRldmlhdGlvbnMgYmVjYXVzZSB3ZSBkbyBub3Qgd2FudCB0byBw
cm9jZXNzDQo+ZGV2aWF0aW9ucyIuDQo+IA0KPj4gwrcgICAgICAgT25lIGFkdmFudGFnZSBvZiB1
c2luZyB0aGUg4oCcYml04oCdIGZsYWcgbWVjaGFuaXNtIOKAkyBpLmUuIG9wdGlvbiAyDQo+Pi0g
b3ZlciBmZWF0dXJlcyBpcyB0aGF0IHRoaXMgYWxsb3dzIGEgdmVuZG9yIHRvIHNwZWNpZnkgcGVy
LWludGVyZmFjZQ0KPj53aGF0IGlzIHN1cHBvcnRlZC4gIFdoYXQgZmVhdHVyZXMgYSB2ZW5kb3Ig
c3VwcG9ydHMgZm9yIGRpZmZzZXJ2IGlzIHZlcnkNCj4+aGFyZHdhcmUgZGVwZW5kZW50IGFuZCBt
YXkgdmFyeSBmcm9tIGludGVyZmFjZSB0byBpbnRlcmZhY2Ugd2l0aGluIGENCj4+c2luZ2xlIGRl
dmljZS4gQSBkZXZpY2UgbWF5IGhhdmUgbXVsdGlwbGUgdHlwZXMgYW5kIGdlbmVyYXRpb25zIG9m
IGxpbmUNCj4+Y2FyZHMsIGFuZCB0aHVzLCB0aGUgdHlwZXMgb2Ygc3RhdHMgc3VwcG9ydGVkIHdp
bGwgYmUgZGlmZmVyZW50LiBUaGUNCj4+Yml0LWZsYWcgbWVjaGFuaXNtIGFsbG93cyBhIGRldmlj
ZSB0byByZWZsZWN0IHRoYXQgdG8gdGhlIGNsaWVudA0KPj5leHBsaWNpdGx5Lg0KPj4NCj4NCj5B
cyBsb25nIGFzIHdlIHRhbGsgYWJvdXQgbm9uLW1hbmRhdG9yeSBjb3VudGVycywgc2ltcGx5IG5v
dCByZXBvcnRpbmcNCj5jb3VudGVycyB0aGF0IGRvIG5vdCBleGlzdCBzZWVtcyB0byBiZSB0aGUg
bW9zdCBzaW1wbGUgc29sdXRpb24uDQoNClRoaXMgaXMgZXhhY3RseSB3aGF0IHdlIGFyZSBkb2lu
ZyBpbiBtYW55IFJvdXRpbmcgWUFORyBtb2RlbHMuDQoNCg0KPiBJZiB5b3Ugd2FudCB0byB0ZWxs
IGNsaWVudHMgdXBmcm9udCB0aGF0IGEgY291bnRlciB3aWxsIG5ldmVyIGV4aXN0LCB1c2UNCj50
aGUgZGV2aWF0aW9uIG1lY2hhbmlzbS4gVGhpcyBpcyB3aHkgd2UgaGF2ZSBpdC4NCg0KSSB3b3Vs
ZCB0aGluayBhIGNsaWVudCBjb3VsZCBhc2NlcnRhaW4gdGhhdCBhIGNvdW50ZXIgaXMgbm90IHN1
cHBvcnRlZCBpZg0KaXQgaXMgbm90IHJldHVybmVkLg0KDQpUaGFua3MsDQpBY2VlIA0KDQoNCg0K
Pg0KPi9qcw0KPg0KPi0tIA0KPkp1ZXJnZW4gU2Nob2Vud2FlbGRlciAgICAgICAgICAgSmFjb2Jz
IFVuaXZlcnNpdHkgQnJlbWVuIGdHbWJIDQo+UGhvbmU6ICs0OSA0MjEgMjAwIDM1ODcgICAgICAg
ICBDYW1wdXMgUmluZyAxIHwgMjg3NTkgQnJlbWVuIHwgR2VybWFueQ0KPkZheDogICArNDkgNDIx
IDIwMCAzMTAzICAgICAgICAgPGh0dHA6Ly93d3cuamFjb2JzLXVuaXZlcnNpdHkuZGUvPg0KPg0K
Pl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+eWFuZy1k
b2N0b3JzIG1haWxpbmcgbGlzdA0KPnlhbmctZG9jdG9yc0BpZXRmLm9yZw0KPmh0dHBzOi8vd3d3
LmlldGYub3JnL21haWxtYW4vbGlzdGluZm8veWFuZy1kb2N0b3JzDQoNCg==


From nobody Mon Aug 21 13:06:24 2017
Return-Path: <j.schoenwaelder@jacobs-university.de>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8FEA9132AB0 for <yang-doctors@ietfa.amsl.com>; Mon, 21 Aug 2017 13:06:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id PXiBz7cBcATy for <yang-doctors@ietfa.amsl.com>; Mon, 21 Aug 2017 13:06:21 -0700 (PDT)
Received: from atlas5.jacobs-university.de (atlas5.jacobs-university.de [212.201.44.20]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 293EA132AAF for <yang-doctors@ietf.org>; Mon, 21 Aug 2017 13:06:21 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas5.jacobs-university.de (Postfix) with ESMTP id 3707E99; Mon, 21 Aug 2017 22:06:19 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas5.jacobs-university.de ([10.70.0.217]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10032) with ESMTP id llVifEuiywDu; Mon, 21 Aug 2017 22:06:14 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas5.jacobs-university.de (Postfix) with ESMTPS; Mon, 21 Aug 2017 22:06:19 +0200 (CEST)
Received: from localhost (demetrius4.jacobs-university.de [212.201.44.49]) by hermes.jacobs-university.de (Postfix) with ESMTP id 1478F200E0; Mon, 21 Aug 2017 22:06:19 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius4.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id 9lRFsB9R2tNH; Mon, 21 Aug 2017 22:06:18 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id CCFFF200DF; Mon, 21 Aug 2017 22:06:18 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id EE21C40462F6; Mon, 21 Aug 2017 22:06:17 +0200 (CEST)
Date: Mon, 21 Aug 2017 22:06:17 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: "Acee Lindem (acee)" <acee@cisco.com>
Cc: Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>
Message-ID: <20170821200617.kwczcxvzodluho3u@elstar.local>
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
Mail-Followup-To: "Acee Lindem (acee)" <acee@cisco.com>, Norm Strahle <nstrahle@juniper.net>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>, "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <DC062E7E-7422-4037-82E4-52B17422B33E@juniper.net> <CABCOCHQJOBXrYLntdg_7iL3wqy9Fkcd10f0ArwPJUNKo9dZAVQ@mail.gmail.com> <DM2PR0501MB15024D3A6AA8F654C1C7B418CF800@DM2PR0501MB1502.namprd05.prod.outlook.com> <20170821172128.ftogpej4jifxbt7m@elstar.local> <D5C09135.C2737%acee@cisco.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <D5C09135.C2737%acee@cisco.com>
User-Agent: NeoMutt/20170714 (1.8.3)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/YWOgRw6lVxl1bBuDYMtBu2QW6Io>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Aug 2017 20:06:23 -0000

On Mon, Aug 21, 2017 at 05:33:33PM +0000, Acee Lindem (acee) wrote:
> 
> I would think a client could ascertain that a counter is not supported if
> it is not returned.
>

In practice yes, in theory not. (The counter might not be returned due
to a lack of permissions).

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Tue Aug 22 06:38:22 2017
Return-Path: <mbj@tail-f.com>
X-Original-To: yang-doctors@ietf.org
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 2F227132397; Tue, 22 Aug 2017 06:38:14 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: Martin Bjorklund <mbj@tail-f.com>
To: <yang-doctors@ietf.org>
Cc: draft-ietf-opsawg-mud.all@ietf.org, opsawg@ietf.org
X-Test-IDTracker: no
X-IETF-IDTracker: 6.58.0
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <150340909415.6001.14045177084948571272@ietfa.amsl.com>
Date: Tue, 22 Aug 2017 06:38:14 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/i_AAN6jB96yVWqqXmqRPOPt6TOE>
Subject: [yang-doctors] Yangdoctors early review of draft-ietf-opsawg-mud-08
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 22 Aug 2017 13:38:14 -0000

Reviewer: Martin Bjorklund
Review result: Ready with Issues

Hi,

I am the assigned YANG doctors reviewer for this document.  Here are
my comments:


o  Section 2 says:

   The MUD file is limited to the serialization of a
   small number of YANG schema, including the models specified in the
   following documents:

   o  [I-D.ietf-netmod-acl-model]

   o  [RFC6991]

   Is the intention that *only* these models are included, or *at
   least* these models are included?

   RFC6991 doesn't define any data nodes, so I don't think it needs to
   be listed.  I suggest you are a bit more specific, and list:

     o  ietf-access-control-list [I-D.ietf-netmod-acl-model]

     o  ietf-mud [...]


o  Section 3 uses the term "element" (it is used in other places as
   well).  YANG uses the term "data node" or "node".  Or "YANG data
   node".  I suggest you use one of these terms, and import the term
   in your Terminology section.

   Also, the YANG module uses the term "element" to refer to "device":

    leaf is-supported {
      type boolean;
      description
        "The element is currently supported
         by the manufacturer.";
    }


o  In your Terminology section you introduce the term "Thing".  But
   the text often use "device".  Maybe use "device" consistently?


o  In order to get consistent indentation of the YANG modules, I
   suggest you run:

     pyang -f yang ietf-mud.yang

   (and same for ietf-acldns.yang)


o  Ensure that description statements contain proper sentences.  Also
   ensure that the descriptions are descriptive.  As an example of the
   latter, this is not a good description:

    description
      "Which way are we talking about?";

   In general, I found that the main document had better descriptions
   than the YANG module.  Consider moving the text from the main
   document to the YANG module (this also reduces the risk of
   inconsistencies).  If don't want to move text, I think you need to
   spend some effort on almost all descriptions in the YANG module.


o  In both modules, make sure you have a single revision
   statement.  Note that in IETF-terms, a revision statement is added
   when a new version of the module is publsihed as an RFC (so the
   initial RFC would have one revision statement).


o  The "ietf-mud" module is a bit unorthodox; it defines configuration
   data nodes, but it is not supposed to be implemented by a normal
   NETCONF/RESTCONF server.  Rather, it will be instantiated in a JSON
   file.  I think this should be stated in the description of the
   module.


o  I don't think the feature "mud-acl" is necessary.  It is only used
   to make the acl augment conditional on the feature.  I think that
   if this module is supported, the feature is also supported.  Or do
   you envision implementations of this module that would not support
   this feature?  If so, maybe you can explain that use case in the
   document.


o  leaf cache-validity could use a "units" statement:

     units "hours";


o  I suggest you rename the grouping "access_lists" to "access-lists"
   for consitency.


o  Should any of the leafs in "/metainfo" be mandatory?


o  The "extensions" leaf-list mentions an IANA registry for
   extensions.  It would be usefule to mention this registry by name.

   Also, shouldn't this registry be defined in the IANA Considerations
   section?


o  Section 3.7 mentions a leaf "packet-direction".  There is no such
   leaf in the YANG module.  There is one called "direction-initiated"
   though.

   But since the "/device" container contains two different ACL sets,
   one for "to" and one for "from", is this augmentation really
   necessary?


o  The model has:

      leaf local-networks {
        type empty;
        description
          "this string is used to indicate networks
           considered local in a given environment.";

   This leaf is of type "empty", but the description says it is a
   string.

   Also, what is the format of this string?  (Hmm, I think the
   description is wrong, this should indeed be type empty).


o  Would it be useful with an indication of the revision of "ietf-mud"
   that is used as the schema for a MUD file?  I.e., something like a
   leaf "mud-module-revision" in the "metainfo" container.


o  The example in section 8 has some errors, e.g., it has some
   camelCase node names.



From nobody Tue Aug 22 07:03:23 2017
Return-Path: <lear@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 415C113239C; Tue, 22 Aug 2017 07:03:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.501
X-Spam-Level: 
X-Spam-Status: No, score=-14.501 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 182b4q95RZPe; Tue, 22 Aug 2017 07:03:18 -0700 (PDT)
Received: from aer-iport-1.cisco.com (aer-iport-1.cisco.com [173.38.203.51]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 49FA8132256; Tue, 22 Aug 2017 07:03:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=6478; q=dns/txt; s=iport; t=1503410597; x=1504620197; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to; bh=d9d8Mq96mwc9t/tmEaS5iAXD1bie9SbJJQB/mbuueU8=; b=RsI6h5muAOtBGwJXm4YAlbkNQ+Znb7vXTr5GNebWQC+wb3J/zZ25VtyF 8SFSkphIDJTaVEb2FUr+x4VyhTu6y6vD0BZ8YUVS43F8Q+ivcCn71HDkd dZGZakCWsNbKi/vi7cwkYp8vUS6i2DHYzt6nFnZqWYYjf6+VBZm8cMUNe M=;
X-Files: signature.asc : 481
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0DYAABKOJxZ/xbLJq1cGgEBAQECAQEBA?= =?us-ascii?q?QgBAQEBk2Z0kHAilh+CEgeFQAKEYxgBAgEBAQEBAQFrKIUZAQUjVhALDgoqAgJ?= =?us-ascii?q?XBgEMCAEBii2sVoImi10BAQEBAQEBAQEBAQEBAQEBAQERD4MqhTErC4JxhEwRg?= =?us-ascii?q?ymCQh8FigqHEI87hDOCIYRWiRmLSocWlikfOIEKMiEIHBVJhxw+iQqCQQEBAQ?=
X-IronPort-AV: E=Sophos;i="5.41,412,1498521600";  d="asc'?scan'208";a="696684402"
Received: from aer-iport-nat.cisco.com (HELO aer-core-1.cisco.com) ([173.38.203.22]) by aer-iport-1.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 22 Aug 2017 14:03:12 +0000
Received: from [10.61.78.225] (ams3-vpn-dhcp3809.cisco.com [10.61.78.225]) by aer-core-1.cisco.com (8.14.5/8.14.5) with ESMTP id v7ME3COT012371; Tue, 22 Aug 2017 14:03:12 GMT
To: Martin Bjorklund <mbj@tail-f.com>, yang-doctors@ietf.org
Cc: draft-ietf-opsawg-mud.all@ietf.org, opsawg@ietf.org
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com>
From: Eliot Lear <lear@cisco.com>
Message-ID: <b391f249-b88c-8412-b59d-54c8a16e3fde@cisco.com>
Date: Tue, 22 Aug 2017 16:03:13 +0200
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
MIME-Version: 1.0
In-Reply-To: <150340909415.6001.14045177084948571272@ietfa.amsl.com>
Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="akLgnsE2FgsC8XkWr2VSJDKJHqoeJROo5"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/MpiKCx6I0lTtqivjA92vQ1Fhwmc>
Subject: Re: [yang-doctors] Yangdoctors early review of draft-ietf-opsawg-mud-08
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 22 Aug 2017 14:03:21 -0000

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--akLgnsE2FgsC8XkWr2VSJDKJHqoeJROo5
Content-Type: multipart/mixed; boundary="NpalEjFVgXifh93lfTC01Xe8A7jvkTiBf";
 protected-headers="v1"
From: Eliot Lear <lear@cisco.com>
To: Martin Bjorklund <mbj@tail-f.com>, yang-doctors@ietf.org
Cc: draft-ietf-opsawg-mud.all@ietf.org, opsawg@ietf.org
Message-ID: <b391f249-b88c-8412-b59d-54c8a16e3fde@cisco.com>
Subject: Re: Yangdoctors early review of draft-ietf-opsawg-mud-08
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com>
In-Reply-To: <150340909415.6001.14045177084948571272@ietfa.amsl.com>

--NpalEjFVgXifh93lfTC01Xe8A7jvkTiBf
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-US

Thanks, Martin, for your timely review.=C2=A0 We'll sort through the issu=
es
and come back to the group and to you.

Eliot


On 8/22/17 3:38 PM, Martin Bjorklund wrote:
> Reviewer: Martin Bjorklund
> Review result: Ready with Issues
>
> Hi,
>
> I am the assigned YANG doctors reviewer for this document.  Here are
> my comments:
>
>
> o  Section 2 says:
>
>    The MUD file is limited to the serialization of a
>    small number of YANG schema, including the models specified in the
>    following documents:
>
>    o  [I-D.ietf-netmod-acl-model]
>
>    o  [RFC6991]
>
>    Is the intention that *only* these models are included, or *at
>    least* these models are included?
>
>    RFC6991 doesn't define any data nodes, so I don't think it needs to
>    be listed.  I suggest you are a bit more specific, and list:
>
>      o  ietf-access-control-list [I-D.ietf-netmod-acl-model]
>
>      o  ietf-mud [...]
>
>
> o  Section 3 uses the term "element" (it is used in other places as
>    well).  YANG uses the term "data node" or "node".  Or "YANG data
>    node".  I suggest you use one of these terms, and import the term
>    in your Terminology section.
>
>    Also, the YANG module uses the term "element" to refer to "device":
>
>     leaf is-supported {
>       type boolean;
>       description
>         "The element is currently supported
>          by the manufacturer.";
>     }
>
>
> o  In your Terminology section you introduce the term "Thing".  But
>    the text often use "device".  Maybe use "device" consistently?
>
>
> o  In order to get consistent indentation of the YANG modules, I
>    suggest you run:
>
>      pyang -f yang ietf-mud.yang
>
>    (and same for ietf-acldns.yang)
>
>
> o  Ensure that description statements contain proper sentences.  Also
>    ensure that the descriptions are descriptive.  As an example of the
>    latter, this is not a good description:
>
>     description
>       "Which way are we talking about?";
>
>    In general, I found that the main document had better descriptions
>    than the YANG module.  Consider moving the text from the main
>    document to the YANG module (this also reduces the risk of
>    inconsistencies).  If don't want to move text, I think you need to
>    spend some effort on almost all descriptions in the YANG module.
>
>
> o  In both modules, make sure you have a single revision
>    statement.  Note that in IETF-terms, a revision statement is added
>    when a new version of the module is publsihed as an RFC (so the
>    initial RFC would have one revision statement).
>
>
> o  The "ietf-mud" module is a bit unorthodox; it defines configuration
>    data nodes, but it is not supposed to be implemented by a normal
>    NETCONF/RESTCONF server.  Rather, it will be instantiated in a JSON
>    file.  I think this should be stated in the description of the
>    module.
>
>
> o  I don't think the feature "mud-acl" is necessary.  It is only used
>    to make the acl augment conditional on the feature.  I think that
>    if this module is supported, the feature is also supported.  Or do
>    you envision implementations of this module that would not support
>    this feature?  If so, maybe you can explain that use case in the
>    document.
>
>
> o  leaf cache-validity could use a "units" statement:
>
>      units "hours";
>
>
> o  I suggest you rename the grouping "access_lists" to "access-lists"
>    for consitency.
>
>
> o  Should any of the leafs in "/metainfo" be mandatory?
>
>
> o  The "extensions" leaf-list mentions an IANA registry for
>    extensions.  It would be usefule to mention this registry by name.
>
>    Also, shouldn't this registry be defined in the IANA Considerations
>    section?
>
>
> o  Section 3.7 mentions a leaf "packet-direction".  There is no such
>    leaf in the YANG module.  There is one called "direction-initiated"
>    though.
>
>    But since the "/device" container contains two different ACL sets,
>    one for "to" and one for "from", is this augmentation really
>    necessary?
>
>
> o  The model has:
>
>       leaf local-networks {
>         type empty;
>         description
>           "this string is used to indicate networks
>            considered local in a given environment.";
>
>    This leaf is of type "empty", but the description says it is a
>    string.
>
>    Also, what is the format of this string?  (Hmm, I think the
>    description is wrong, this should indeed be type empty).
>
>
> o  Would it be useful with an indication of the revision of "ietf-mud"
>    that is used as the schema for a MUD file?  I.e., something like a
>    leaf "mud-module-revision" in the "metainfo" container.
>
>
> o  The example in section 8 has some errors, e.g., it has some
>    camelCase node names.
>
>
>



--NpalEjFVgXifh93lfTC01Xe8A7jvkTiBf--

--akLgnsE2FgsC8XkWr2VSJDKJHqoeJROo5
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2

iQEcBAEBCAAGBQJZnDmhAAoJEIe2a0bZ0nozuF8IAJflk0XAvIHFQa3NvYedOnOc
jNobKsTSD+0ho/uJ8zgMd+J/91VO5fziC4VOXq70Rba0LAYHI8kF4lxJWKd/s2O9
uaCvy+VXeTHf+wk+RcE+2rpguL3iMRlueUeRqVlXPWTCb+/RlqALUsgSv676zhUP
WB/SpFGrUAdbUxANkqrxqi1AThcwsBK/Da6d5f7Kmd+RtA91YX11MEcommaW3HCp
AYrwSNXsZro9cHcM5in8IPibkI+ZzeF2OfB94g93VmTuRUweLsM0TzbWH+S3rAsi
wTtWkSq8Ht8rPpSLjtrTCy9LKhd5a3Z6nel7hNXb8bdeGwcu4Ig3JfvZg/mKSqU=
=XHvi
-----END PGP SIGNATURE-----

--akLgnsE2FgsC8XkWr2VSJDKJHqoeJROo5--


From nobody Wed Aug 23 01:06:06 2017
Return-Path: <mbj@tail-f.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B73E3132BC7; Wed, 23 Aug 2017 01:06:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id LyQKZgtSlt7F; Wed, 23 Aug 2017 01:06:02 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id C6856132196; Wed, 23 Aug 2017 01:05:58 -0700 (PDT)
Received: from localhost (h-40-225.A165.priv.bahnhof.se [94.254.40.225]) by mail.tail-f.com (Postfix) with ESMTPSA id 15ADB1AE01AA; Wed, 23 Aug 2017 10:05:58 +0200 (CEST)
Date: Wed, 23 Aug 2017 10:06:59 +0200 (CEST)
Message-Id: <20170823.100659.305891042923397070.mbj@tail-f.com>
To: yang-doctors@ietf.org
Cc: draft-ietf-opsawg-mud.all@ietf.org
From: Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <150340909415.6001.14045177084948571272@ietfa.amsl.com>
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com>
X-Mailer: Mew version 6.7 on Emacs 24.5 / Mule 6.0 (HANACHIRUSATO)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/WDu5y7oMgXB13XS6H2x4PkjaANY>
Subject: Re: [yang-doctors] Yangdoctors early review of draft-ietf-opsawg-mud-08
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 23 Aug 2017 08:06:04 -0000

Hi,

I would like to direct the YANG doctors attention to one design choice
in this document:

The document defines a normal "config true" data model, but this data
model is not intended to be implemented by a server, but rather it
defines the file format of a "MUD file".

This idea is not new, it is used e.g. in the anima voucher document.
Normally, we would require that they use "rc:yang-data" to define such
a structure.

However, the MUD file is supposed to contain some top-level nodes
defined in the MUD YANG module, and also some /acl:access-lists
nodes.  So even if the MUD document could define a rc:yang-data
structure for the top-level nodes defined in the MUD document, it
cannot get the access lists into this rc:yang-data structure.

So the question to the YANG doctors is if this is ok, or if there is a
better way to define this file format.


/martin



Martin Bjorklund <mbj@tail-f.com> wrote:
> Reviewer: Martin Bjorklund
> Review result: Ready with Issues
> 
> Hi,
> 
> I am the assigned YANG doctors reviewer for this document.  Here are
> my comments:
> 
> 
> o  Section 2 says:
> 
>    The MUD file is limited to the serialization of a
>    small number of YANG schema, including the models specified in the
>    following documents:
> 
>    o  [I-D.ietf-netmod-acl-model]
> 
>    o  [RFC6991]
> 
>    Is the intention that *only* these models are included, or *at
>    least* these models are included?
> 
>    RFC6991 doesn't define any data nodes, so I don't think it needs to
>    be listed.  I suggest you are a bit more specific, and list:
> 
>      o  ietf-access-control-list [I-D.ietf-netmod-acl-model]
> 
>      o  ietf-mud [...]
> 
> 
> o  Section 3 uses the term "element" (it is used in other places as
>    well).  YANG uses the term "data node" or "node".  Or "YANG data
>    node".  I suggest you use one of these terms, and import the term
>    in your Terminology section.
> 
>    Also, the YANG module uses the term "element" to refer to "device":
> 
>     leaf is-supported {
>       type boolean;
>       description
>         "The element is currently supported
>          by the manufacturer.";
>     }
> 
> 
> o  In your Terminology section you introduce the term "Thing".  But
>    the text often use "device".  Maybe use "device" consistently?
> 
> 
> o  In order to get consistent indentation of the YANG modules, I
>    suggest you run:
> 
>      pyang -f yang ietf-mud.yang
> 
>    (and same for ietf-acldns.yang)
> 
> 
> o  Ensure that description statements contain proper sentences.  Also
>    ensure that the descriptions are descriptive.  As an example of the
>    latter, this is not a good description:
> 
>     description
>       "Which way are we talking about?";
> 
>    In general, I found that the main document had better descriptions
>    than the YANG module.  Consider moving the text from the main
>    document to the YANG module (this also reduces the risk of
>    inconsistencies).  If don't want to move text, I think you need to
>    spend some effort on almost all descriptions in the YANG module.
> 
> 
> o  In both modules, make sure you have a single revision
>    statement.  Note that in IETF-terms, a revision statement is added
>    when a new version of the module is publsihed as an RFC (so the
>    initial RFC would have one revision statement).
> 
> 
> o  The "ietf-mud" module is a bit unorthodox; it defines configuration
>    data nodes, but it is not supposed to be implemented by a normal
>    NETCONF/RESTCONF server.  Rather, it will be instantiated in a JSON
>    file.  I think this should be stated in the description of the
>    module.
> 
> 
> o  I don't think the feature "mud-acl" is necessary.  It is only used
>    to make the acl augment conditional on the feature.  I think that
>    if this module is supported, the feature is also supported.  Or do
>    you envision implementations of this module that would not support
>    this feature?  If so, maybe you can explain that use case in the
>    document.
> 
> 
> o  leaf cache-validity could use a "units" statement:
> 
>      units "hours";
> 
> 
> o  I suggest you rename the grouping "access_lists" to "access-lists"
>    for consitency.
> 
> 
> o  Should any of the leafs in "/metainfo" be mandatory?
> 
> 
> o  The "extensions" leaf-list mentions an IANA registry for
>    extensions.  It would be usefule to mention this registry by name.
> 
>    Also, shouldn't this registry be defined in the IANA Considerations
>    section?
> 
> 
> o  Section 3.7 mentions a leaf "packet-direction".  There is no such
>    leaf in the YANG module.  There is one called "direction-initiated"
>    though.
> 
>    But since the "/device" container contains two different ACL sets,
>    one for "to" and one for "from", is this augmentation really
>    necessary?
> 
> 
> o  The model has:
> 
>       leaf local-networks {
>         type empty;
>         description
>           "this string is used to indicate networks
>            considered local in a given environment.";
> 
>    This leaf is of type "empty", but the description says it is a
>    string.
> 
>    Also, what is the format of this string?  (Hmm, I think the
>    description is wrong, this should indeed be type empty).
> 
> 
> o  Would it be useful with an indication of the revision of "ietf-mud"
>    that is used as the schema for a MUD file?  I.e., something like a
>    leaf "mud-module-revision" in the "metainfo" container.
> 
> 
> o  The example in section 8 has some errors, e.g., it has some
>    camelCase node names.
> 
> 
> _______________________________________________
> yang-doctors mailing list
> yang-doctors@ietf.org
> https://www.ietf.org/mailman/listinfo/yang-doctors
> 


From nobody Wed Aug 23 09:59:51 2017
Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 80C3C120721 for <yang-doctors@ietfa.amsl.com>; Wed, 23 Aug 2017 09:59:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level: 
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id O5mhChSUDnum for <yang-doctors@ietfa.amsl.com>; Wed, 23 Aug 2017 09:59:45 -0700 (PDT)
Received: from mail-wm0-x22e.google.com (mail-wm0-x22e.google.com [IPv6:2a00:1450:400c:c09::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 29CA4124B18 for <yang-doctors@ietf.org>; Wed, 23 Aug 2017 09:59:45 -0700 (PDT)
Received: by mail-wm0-x22e.google.com with SMTP id l19so3182414wmi.1 for <yang-doctors@ietf.org>; Wed, 23 Aug 2017 09:59:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=LODwwBWKdXn3Wvvesch3ADh9faXW0854ofVGvQoq+oI=; b=MMyc7wvY+AxNEcaxYhdA201OoDSGA94TRiItLMii4ZzRiQRPt6W0Sm7WrNeynTsJ5S ksSa9fHN3CEeT/QJtlH8pe+OF2Kouef4gepAMymPclssg3U2gg1aA71DDR+CeVEYoDWr cXV9YTyh8OG3ddKdqmrS8MLVN7hJ+We/KqHiiQxxfOF87Tr/hiXuEkiwcmLChI3sXMFh EmeAXMUB+DxminN+k0x7BLOvc3tWMMeyXlZPhmQtf5TWPxgqrcBsnq2c3QycgYcXE/bB iTxqePWxsSfPnAl36kWOithOoTl3zI5G9B17z5yf12lrTu9sWP/k59grJhcPfuww7g/R CKbQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=LODwwBWKdXn3Wvvesch3ADh9faXW0854ofVGvQoq+oI=; b=ra7qphDVix8Zmkob47rhNTNtdOoAn2tDsz2w6rS/ihfCVdweqwc/k+eRdkazFCPWND JoflpiFE22isgb3IarmBfKFbjG0d8zkLhLMLcnwrhtRbBvzN0EORAhecykkWLWg6WAQ3 NF0B2rk93Z4MeHwx5D+24F06A9QvGpVmeqCKApVjthBX1vSimDOarqDJplUVs+8EKZmO dBtB/yzMUbx0ehsm1z6L4uL0VAdFEHYvpgGoGnsCzYDESooYSgif2zzZoUgam4pJGsZ9 M3IfdqB2K/RjFPrEYYNSNPPgFpitLhuOU0XPUrGPMepb+NXCDRXHfvBiEMazyiNmP1By U5Sw==
X-Gm-Message-State: AHYfb5hknsn0ZwVyfBvw/sx7LzXXZpO9I/PledlBpiSl73YjDxop00zA rmlr7do8cr8vbdFMdwH2yOA4PCeaUKVY
X-Received: by 10.28.16.133 with SMTP id 127mr1939770wmq.75.1503507583633; Wed, 23 Aug 2017 09:59:43 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.164.221 with HTTP; Wed, 23 Aug 2017 09:59:42 -0700 (PDT)
In-Reply-To: <20170823.100659.305891042923397070.mbj@tail-f.com>
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com> <20170823.100659.305891042923397070.mbj@tail-f.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Wed, 23 Aug 2017 09:59:42 -0700
Message-ID: <CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmail.com>
To: Martin Bjorklund <mbj@tail-f.com>
Cc: YANG Doctors <yang-doctors@ietf.org>, draft-ietf-opsawg-mud.all@ietf.org
Content-Type: multipart/alternative; boundary="001a1146d95070dd1105576ea32b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/5m-tV6DShcuLPwvzS5BfF5mDtu4>
Subject: Re: [yang-doctors] Yangdoctors early review of draft-ietf-opsawg-mud-08
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 23 Aug 2017 16:59:49 -0000

--001a1146d95070dd1105576ea32b
Content-Type: text/plain; charset="UTF-8"

On Wed, Aug 23, 2017 at 1:06 AM, Martin Bjorklund <mbj@tail-f.com> wrote:

> Hi,
>
> I would like to direct the YANG doctors attention to one design choice
> in this document:
>
> The document defines a normal "config true" data model, but this data
> model is not intended to be implemented by a server, but rather it
> defines the file format of a "MUD file".
>
> This idea is not new, it is used e.g. in the anima voucher document.
> Normally, we would require that they use "rc:yang-data" to define such
> a structure.
>
> However, the MUD file is supposed to contain some top-level nodes
> defined in the MUD YANG module, and also some /acl:access-lists
> nodes.  So even if the MUD document could define a rc:yang-data
> structure for the top-level nodes defined in the MUD document, it
> cannot get the access lists into this rc:yang-data structure.
>
> So the question to the YANG doctors is if this is ok, or if there is a
> better way to define this file format.
>
>
Why is it a problem to use a grouping in rc:yang-data?
This clearly needs to be rc:yang-data, not a real module with config=true
objects.
I think the artifact can contain data that matches the structure of config
data.
It is an implementation detail to convert the artifact to config data in a
datastore.



>
> /martin
>
>
>
Andy


>
> Martin Bjorklund <mbj@tail-f.com> wrote:
> > Reviewer: Martin Bjorklund
> > Review result: Ready with Issues
> >
> > Hi,
> >
> > I am the assigned YANG doctors reviewer for this document.  Here are
> > my comments:
> >
> >
> > o  Section 2 says:
> >
> >    The MUD file is limited to the serialization of a
> >    small number of YANG schema, including the models specified in the
> >    following documents:
> >
> >    o  [I-D.ietf-netmod-acl-model]
> >
> >    o  [RFC6991]
> >
> >    Is the intention that *only* these models are included, or *at
> >    least* these models are included?
> >
> >    RFC6991 doesn't define any data nodes, so I don't think it needs to
> >    be listed.  I suggest you are a bit more specific, and list:
> >
> >      o  ietf-access-control-list [I-D.ietf-netmod-acl-model]
> >
> >      o  ietf-mud [...]
> >
> >
> > o  Section 3 uses the term "element" (it is used in other places as
> >    well).  YANG uses the term "data node" or "node".  Or "YANG data
> >    node".  I suggest you use one of these terms, and import the term
> >    in your Terminology section.
> >
> >    Also, the YANG module uses the term "element" to refer to "device":
> >
> >     leaf is-supported {
> >       type boolean;
> >       description
> >         "The element is currently supported
> >          by the manufacturer.";
> >     }
> >
> >
> > o  In your Terminology section you introduce the term "Thing".  But
> >    the text often use "device".  Maybe use "device" consistently?
> >
> >
> > o  In order to get consistent indentation of the YANG modules, I
> >    suggest you run:
> >
> >      pyang -f yang ietf-mud.yang
> >
> >    (and same for ietf-acldns.yang)
> >
> >
> > o  Ensure that description statements contain proper sentences.  Also
> >    ensure that the descriptions are descriptive.  As an example of the
> >    latter, this is not a good description:
> >
> >     description
> >       "Which way are we talking about?";
> >
> >    In general, I found that the main document had better descriptions
> >    than the YANG module.  Consider moving the text from the main
> >    document to the YANG module (this also reduces the risk of
> >    inconsistencies).  If don't want to move text, I think you need to
> >    spend some effort on almost all descriptions in the YANG module.
> >
> >
> > o  In both modules, make sure you have a single revision
> >    statement.  Note that in IETF-terms, a revision statement is added
> >    when a new version of the module is publsihed as an RFC (so the
> >    initial RFC would have one revision statement).
> >
> >
> > o  The "ietf-mud" module is a bit unorthodox; it defines configuration
> >    data nodes, but it is not supposed to be implemented by a normal
> >    NETCONF/RESTCONF server.  Rather, it will be instantiated in a JSON
> >    file.  I think this should be stated in the description of the
> >    module.
> >
> >
> > o  I don't think the feature "mud-acl" is necessary.  It is only used
> >    to make the acl augment conditional on the feature.  I think that
> >    if this module is supported, the feature is also supported.  Or do
> >    you envision implementations of this module that would not support
> >    this feature?  If so, maybe you can explain that use case in the
> >    document.
> >
> >
> > o  leaf cache-validity could use a "units" statement:
> >
> >      units "hours";
> >
> >
> > o  I suggest you rename the grouping "access_lists" to "access-lists"
> >    for consitency.
> >
> >
> > o  Should any of the leafs in "/metainfo" be mandatory?
> >
> >
> > o  The "extensions" leaf-list mentions an IANA registry for
> >    extensions.  It would be usefule to mention this registry by name.
> >
> >    Also, shouldn't this registry be defined in the IANA Considerations
> >    section?
> >
> >
> > o  Section 3.7 mentions a leaf "packet-direction".  There is no such
> >    leaf in the YANG module.  There is one called "direction-initiated"
> >    though.
> >
> >    But since the "/device" container contains two different ACL sets,
> >    one for "to" and one for "from", is this augmentation really
> >    necessary?
> >
> >
> > o  The model has:
> >
> >       leaf local-networks {
> >         type empty;
> >         description
> >           "this string is used to indicate networks
> >            considered local in a given environment.";
> >
> >    This leaf is of type "empty", but the description says it is a
> >    string.
> >
> >    Also, what is the format of this string?  (Hmm, I think the
> >    description is wrong, this should indeed be type empty).
> >
> >
> > o  Would it be useful with an indication of the revision of "ietf-mud"
> >    that is used as the schema for a MUD file?  I.e., something like a
> >    leaf "mud-module-revision" in the "metainfo" container.
> >
> >
> > o  The example in section 8 has some errors, e.g., it has some
> >    camelCase node names.
> >
> >
> > _______________________________________________
> > yang-doctors mailing list
> > yang-doctors@ietf.org
> > https://www.ietf.org/mailman/listinfo/yang-doctors
> >
>
> _______________________________________________
> yang-doctors mailing list
> yang-doctors@ietf.org
> https://www.ietf.org/mailman/listinfo/yang-doctors
>

--001a1146d95070dd1105576ea32b
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Wed, Aug 23, 2017 at 1:06 AM, Martin Bjorklund <span dir=3D"ltr">&lt=
;<a href=3D"mailto:mbj@tail-f.com" target=3D"_blank">mbj@tail-f.com</a>&gt;=
</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .=
8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I would like to direct the YANG doctors attention to one design choice<br>
in this document:<br>
<br>
The document defines a normal &quot;config true&quot; data model, but this =
data<br>
model is not intended to be implemented by a server, but rather it<br>
defines the file format of a &quot;MUD file&quot;.<br>
<br>
This idea is not new, it is used e.g. in the anima voucher document.<br>
Normally, we would require that they use &quot;rc:yang-data&quot; to define=
 such<br>
a structure.<br>
<br>
However, the MUD file is supposed to contain some top-level nodes<br>
defined in the MUD YANG module, and also some /acl:access-lists<br>
nodes.=C2=A0 So even if the MUD document could define a rc:yang-data<br>
structure for the top-level nodes defined in the MUD document, it<br>
cannot get the access lists into this rc:yang-data structure.<br>
<br>
So the question to the YANG doctors is if this is ok, or if there is a<br>
better way to define this file format.<br>
<br></blockquote><div><br></div><div>Why is it a problem to use a grouping =
in rc:yang-data?</div><div>This clearly needs to be rc:yang-data, not a rea=
l module with config=3Dtrue objects.</div><div>I think the artifact can con=
tain data that matches the structure of config data.</div><div>It is an imp=
lementation detail to convert the artifact to config data in a datastore.</=
div><div><br></div><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=
=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
/martin<br>
<br>
<br></blockquote><div><br></div><div>Andy</div><div>=C2=A0</div><blockquote=
 class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc soli=
d;padding-left:1ex">
<br>
Martin Bjorklund &lt;<a href=3D"mailto:mbj@tail-f.com">mbj@tail-f.com</a>&g=
t; wrote:<br>
&gt; Reviewer: Martin Bjorklund<br>
&gt; Review result: Ready with Issues<br>
&gt;<br>
&gt; Hi,<br>
&gt;<br>
&gt; I am the assigned YANG doctors reviewer for this document.=C2=A0 Here =
are<br>
&gt; my comments:<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 Section 2 says:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 The MUD file is limited to the serialization of a<br>
&gt;=C2=A0 =C2=A0 small number of YANG schema, including the models specifi=
ed in the<br>
&gt;=C2=A0 =C2=A0 following documents:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 o=C2=A0 [I-D.ietf-netmod-acl-model]<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 o=C2=A0 [RFC6991]<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 Is the intention that *only* these models are included, o=
r *at<br>
&gt;=C2=A0 =C2=A0 least* these models are included?<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 RFC6991 doesn&#39;t define any data nodes, so I don&#39;t=
 think it needs to<br>
&gt;=C2=A0 =C2=A0 be listed.=C2=A0 I suggest you are a bit more specific, a=
nd list:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 o=C2=A0 ietf-access-control-list [I-D.ietf-netmod-=
acl-model]<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 o=C2=A0 ietf-mud [...]<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 Section 3 uses the term &quot;element&quot; (it is used in oth=
er places as<br>
&gt;=C2=A0 =C2=A0 well).=C2=A0 YANG uses the term &quot;data node&quot; or =
&quot;node&quot;.=C2=A0 Or &quot;YANG data<br>
&gt;=C2=A0 =C2=A0 node&quot;.=C2=A0 I suggest you use one of these terms, a=
nd import the term<br>
&gt;=C2=A0 =C2=A0 in your Terminology section.<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 Also, the YANG module uses the term &quot;element&quot; t=
o refer to &quot;device&quot;:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0leaf is-supported {<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0type boolean;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0description<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;The element is currently suppor=
ted<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 by the manufacturer.&quot;;<br>
&gt;=C2=A0 =C2=A0 =C2=A0}<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 In your Terminology section you introduce the term &quot;Thing=
&quot;.=C2=A0 But<br>
&gt;=C2=A0 =C2=A0 the text often use &quot;device&quot;.=C2=A0 Maybe use &q=
uot;device&quot; consistently?<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 In order to get consistent indentation of the YANG modules, I<=
br>
&gt;=C2=A0 =C2=A0 suggest you run:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 pyang -f yang ietf-mud.yang<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 (and same for ietf-acldns.yang)<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 Ensure that description statements contain proper sentences.=
=C2=A0 Also<br>
&gt;=C2=A0 =C2=A0 ensure that the descriptions are descriptive.=C2=A0 As an=
 example of the<br>
&gt;=C2=A0 =C2=A0 latter, this is not a good description:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0description<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;Which way are we talking about?&quot;;=
<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 In general, I found that the main document had better des=
criptions<br>
&gt;=C2=A0 =C2=A0 than the YANG module.=C2=A0 Consider moving the text from=
 the main<br>
&gt;=C2=A0 =C2=A0 document to the YANG module (this also reduces the risk o=
f<br>
&gt;=C2=A0 =C2=A0 inconsistencies).=C2=A0 If don&#39;t want to move text, I=
 think you need to<br>
&gt;=C2=A0 =C2=A0 spend some effort on almost all descriptions in the YANG =
module.<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 In both modules, make sure you have a single revision<br>
&gt;=C2=A0 =C2=A0 statement.=C2=A0 Note that in IETF-terms, a revision stat=
ement is added<br>
&gt;=C2=A0 =C2=A0 when a new version of the module is publsihed as an RFC (=
so the<br>
&gt;=C2=A0 =C2=A0 initial RFC would have one revision statement).<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 The &quot;ietf-mud&quot; module is a bit unorthodox; it define=
s configuration<br>
&gt;=C2=A0 =C2=A0 data nodes, but it is not supposed to be implemented by a=
 normal<br>
&gt;=C2=A0 =C2=A0 NETCONF/RESTCONF server.=C2=A0 Rather, it will be instant=
iated in a JSON<br>
&gt;=C2=A0 =C2=A0 file.=C2=A0 I think this should be stated in the descript=
ion of the<br>
&gt;=C2=A0 =C2=A0 module.<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 I don&#39;t think the feature &quot;mud-acl&quot; is necessary=
.=C2=A0 It is only used<br>
&gt;=C2=A0 =C2=A0 to make the acl augment conditional on the feature.=C2=A0=
 I think that<br>
&gt;=C2=A0 =C2=A0 if this module is supported, the feature is also supporte=
d.=C2=A0 Or do<br>
&gt;=C2=A0 =C2=A0 you envision implementations of this module that would no=
t support<br>
&gt;=C2=A0 =C2=A0 this feature?=C2=A0 If so, maybe you can explain that use=
 case in the<br>
&gt;=C2=A0 =C2=A0 document.<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 leaf cache-validity could use a &quot;units&quot; statement:<b=
r>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 units &quot;hours&quot;;<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 I suggest you rename the grouping &quot;access_lists&quot; to =
&quot;access-lists&quot;<br>
&gt;=C2=A0 =C2=A0 for consitency.<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 Should any of the leafs in &quot;/metainfo&quot; be mandatory?=
<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 The &quot;extensions&quot; leaf-list mentions an IANA registry=
 for<br>
&gt;=C2=A0 =C2=A0 extensions.=C2=A0 It would be usefule to mention this reg=
istry by name.<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 Also, shouldn&#39;t this registry be defined in the IANA =
Considerations<br>
&gt;=C2=A0 =C2=A0 section?<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 Section 3.7 mentions a leaf &quot;packet-direction&quot;.=C2=
=A0 There is no such<br>
&gt;=C2=A0 =C2=A0 leaf in the YANG module.=C2=A0 There is one called &quot;=
direction-initiated&quot;<br>
&gt;=C2=A0 =C2=A0 though.<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 But since the &quot;/device&quot; container contains two =
different ACL sets,<br>
&gt;=C2=A0 =C2=A0 one for &quot;to&quot; and one for &quot;from&quot;, is t=
his augmentation really<br>
&gt;=C2=A0 =C2=A0 necessary?<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 The model has:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0leaf local-networks {<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0type empty;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;this string is used to i=
ndicate networks<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 considered local in a given e=
nvironment.&quot;;<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 This leaf is of type &quot;empty&quot;, but the descripti=
on says it is a<br>
&gt;=C2=A0 =C2=A0 string.<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 Also, what is the format of this string?=C2=A0 (Hmm, I th=
ink the<br>
&gt;=C2=A0 =C2=A0 description is wrong, this should indeed be type empty).<=
br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 Would it be useful with an indication of the revision of &quot=
;ietf-mud&quot;<br>
&gt;=C2=A0 =C2=A0 that is used as the schema for a MUD file?=C2=A0 I.e., so=
mething like a<br>
&gt;=C2=A0 =C2=A0 leaf &quot;mud-module-revision&quot; in the &quot;metainf=
o&quot; container.<br>
&gt;<br>
&gt;<br>
&gt; o=C2=A0 The example in section 8 has some errors, e.g., it has some<br=
>
&gt;=C2=A0 =C2=A0 camelCase node names.<br>
&gt;<br>
&gt;<br>
&gt; ______________________________<wbr>_________________<br>
&gt; yang-doctors mailing list<br>
&gt; <a href=3D"mailto:yang-doctors@ietf.org">yang-doctors@ietf.org</a><br>
&gt; <a href=3D"https://www.ietf.org/mailman/listinfo/yang-doctors" rel=3D"=
noreferrer" target=3D"_blank">https://www.ietf.org/mailman/<wbr>listinfo/ya=
ng-doctors</a><br>
&gt;<br>
<br>
______________________________<wbr>_________________<br>
yang-doctors mailing list<br>
<a href=3D"mailto:yang-doctors@ietf.org">yang-doctors@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/yang-doctors" rel=3D"noref=
errer" target=3D"_blank">https://www.ietf.org/mailman/<wbr>listinfo/yang-do=
ctors</a><br>
</blockquote></div><br></div></div>

--001a1146d95070dd1105576ea32b--


From nobody Wed Aug 23 12:46:48 2017
Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0D6451323FD for <yang-doctors@ietfa.amsl.com>; Wed, 23 Aug 2017 12:46:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level: 
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xhv_phHL8DPK for <yang-doctors@ietfa.amsl.com>; Wed, 23 Aug 2017 12:46:40 -0700 (PDT)
Received: from mail-wm0-x232.google.com (mail-wm0-x232.google.com [IPv6:2a00:1450:400c:c09::232]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1C453132192 for <yang-doctors@ietf.org>; Wed, 23 Aug 2017 12:46:40 -0700 (PDT)
Received: by mail-wm0-x232.google.com with SMTP id r134so6216556wmf.0 for <yang-doctors@ietf.org>; Wed, 23 Aug 2017 12:46:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=9VRftAyTDOnL4vVPBWXBnzgBjjSIta4zvFAPCWY3O7o=; b=U6vCI4Z6Mh20tx3ZvNDkoaZzyKY/x894YSVswGcs7jDLRpqlfnic24eIdXo1KX79J8 1srzcZfLTRDHEDOLN3YzV3dx9FbshWoTHklqYAOXpCP3fJ7BL7jif9pv9dDIhw7p3/SF /bSiXiLo06RaPpd87I7nJcAVZrohxz9/jU4gO/L/WQxnK43xoGEzym4esv0yGiFwXrfb NPlW8fRfqJEPG7ds6VuuDosrI7mTn0iniIXiioM9MnaICVh+rJjAGu6hNfNFKAZHHDGj If09fnCggGtRLvAQIgKA15t50ED2WQN4ZTwd0AW3amCW+Q1y39cZ/xRKdbStn9JwOQ1a 80lA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=9VRftAyTDOnL4vVPBWXBnzgBjjSIta4zvFAPCWY3O7o=; b=UlOIX3NnGGeF2G7YmtOdNAUdgyhXg3jcgX5Lef3qtjMdlzhSF/bCukH/EzA9PiDOzB Y4bnP5HuWFkhFv3kDlQAUfRii1t8jx6YgTWPcTWCr6bqWImNRjoHOdwyud+R8OZTA/sW TCBz/dQ5mRnftJIwPT7KoBV7jOXqAeD4d06Rod+v6undbIA3H3pBlA/yArLGtCK7TK0b LHLBUyHGwYgisJUzqtu8JnQ2biGyXtWmX+ADgJuSp3xvFxckKAfx+jwfMBOWsshFk3R8 SrLxAjZR/OY/xQHePC8GwGEcy6xUBlsN0LfgevmB5aWzNHFcpIycUaQtJFw1Zd7uuo72 hhYg==
X-Gm-Message-State: AHYfb5glRgcIP2hsp9dRAs9nUHyEmhsNgvLEzKx5nRWVeSYB+zehH8q8 tPS4677izbhSZyQcsTXfLn/QfJpAsG4r
X-Received: by 10.28.101.5 with SMTP id z5mr2724325wmb.136.1503517598515; Wed, 23 Aug 2017 12:46:38 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.164.221 with HTTP; Wed, 23 Aug 2017 12:46:37 -0700 (PDT)
In-Reply-To: <20170820080301.asf2fx6o4abupq4h@elstar.local>
References: <D5BE0363.C241B%acee@cisco.com> <20170820080301.asf2fx6o4abupq4h@elstar.local>
From: Andy Bierman <andy@yumaworks.com>
Date: Wed, 23 Aug 2017 12:46:37 -0700
Message-ID: <CABCOCHRyQyCm8NaPeh_FUGrAPytcDigoPFo-EhUrySnM2_Tjbw@mail.gmail.com>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>,  "Acee Lindem (acee)" <acee@cisco.com>, YANG Doctors <yang-doctors@ietf.org>,  "netmod@ietf.org" <netmod@ietf.org>, Rodney Cummings <rodney.cummings@ni.com>
Content-Type: multipart/alternative; boundary="001a114b31165ffb5b055770f8be"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/o0z3XNs-lmfHX4R3-dFhAj_HR1c>
Subject: Re: [yang-doctors] Identities vs enums
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 23 Aug 2017 19:46:43 -0000

--001a114b31165ffb5b055770f8be
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Sun, Aug 20, 2017 at 1:03 AM, Juergen Schoenwaelder <
j.schoenwaelder@jacobs-university.de> wrote:

> On Sat, Aug 19, 2017 at 07:02:04PM +0000, Acee Lindem (acee) wrote:
> > All,
> > In the context iana-routing-types.yang, we=E2=80=99ve been having a dis=
cussion
> of the merits of identities vs enums. We=E2=80=99ve followed the lead of =
RFC 7224
> and used identities which allow augmentation. However, for IANA code
> points, there could be merit in having the type represent the actual
> numeric value. Any thoughts on this?
> >
> > In the next version of YANG, it would be useful for a base identity to
> allow it to have a "base-type" (mutually exclusive of "identity-ref"). Fo=
r
> all identities a "base-value" would be allowed as long as it conformed to
> the constraints of the actual or inherited (via =E2=80=9Cidentity-ref=E2=
=80=9D) =E2=80=9Cbase-type=E2=80=9D.
> >
>
> The question here really is who is charge of controlling assignments
> of a name space.
>
> - If there is a single authority controlling the assignments, an enum
>   works fine.
>
> - If the assignments are not controlled by a single authority, an
>   identity works fine.
>
> We sometimes have situations that are somewhere in between, i.e., a
> central authority controlling assignments but delegating parts of the
> name space to other authoritities. I agree, we do not have good
> support to model this explicitly in YANG today.
>
>
I think Acee is asking about a new feature that does not exist in YANG,
which is to add
an enum value-stmt to an identity-stmt somehow.  Seems like a valid
use-case.

It is easy to be confused into thinking the "value" and "position"
assignments have any
relevance to the protocols, but unfortunately they do not (for NETCONF and
RESTCONF).
Think of them as "reference" statements, to identify conceptual codepoints
that are never
sent on the wire. Only the enum or bit names are sent on the wire in XML or
JSON.

Actually CORE WG is developing YANG-to-CBOR, which does use the value
and position fields for the binary encoding.


/js
>
>
Andy


> --
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>
>
> _______________________________________________
> yang-doctors mailing list
> yang-doctors@ietf.org
> https://www.ietf.org/mailman/listinfo/yang-doctors
>

--001a114b31165ffb5b055770f8be
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Sun, Aug 20, 2017 at 1:03 AM, Juergen Schoenwaelder <span dir=3D"ltr=
">&lt;<a href=3D"mailto:j.schoenwaelder@jacobs-university.de" target=3D"_bl=
ank">j.schoenwaelder@jacobs-university.de</a>&gt;</span> wrote:<br><blockqu=
ote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc s=
olid;padding-left:1ex">On Sat, Aug 19, 2017 at 07:02:04PM +0000, Acee Linde=
m (acee) wrote:<br>
&gt; All,<br>
&gt; In the context iana-routing-types.yang, we=E2=80=99ve been having a di=
scussion of the merits of identities vs enums. We=E2=80=99ve followed the l=
ead of RFC 7224 and used identities which allow augmentation. However, for =
IANA code points, there could be merit in having the type represent the act=
ual numeric value. Any thoughts on this?<br>
&gt;<br>
&gt; In the next version of YANG, it would be useful for a base identity to=
 allow it to have a &quot;base-type&quot; (mutually exclusive of &quot;iden=
tity-ref&quot;). For all identities a &quot;base-value&quot; would be allow=
ed as long as it conformed to the constraints of the actual or inherited (v=
ia =E2=80=9Cidentity-ref=E2=80=9D) =E2=80=9Cbase-type=E2=80=9D.<br>
&gt;<br>
<br>
The question here really is who is charge of controlling assignments<br>
of a name space.<br>
<br>
- If there is a single authority controlling the assignments, an enum<br>
=C2=A0 works fine.<br>
<br>
- If the assignments are not controlled by a single authority, an<br>
=C2=A0 identity works fine.<br>
<br>
We sometimes have situations that are somewhere in between, i.e., a<br>
central authority controlling assignments but delegating parts of the<br>
name space to other authoritities. I agree, we do not have good<br>
support to model this explicitly in YANG today.<br>
<span class=3D"HOEnZb"><font color=3D"#888888"><br></font></span></blockquo=
te><div><br></div><div>I think Acee is asking about a new feature that does=
 not exist in YANG, which is to add</div><div>an enum value-stmt to an iden=
tity-stmt somehow.=C2=A0 Seems like a valid use-case.</div><div><br></div><=
div>It is easy to be confused into thinking the &quot;value&quot; and &quot=
;position&quot; assignments have any</div><div>relevance to the protocols, =
but unfortunately they do not (for NETCONF and RESTCONF).</div><div>Think o=
f them as &quot;reference&quot; statements, to identify conceptual codepoin=
ts that are never</div><div>sent on the wire. Only the enum or bit names ar=
e sent on the wire in XML or JSON.</div><div><br></div><div>Actually CORE W=
G is developing YANG-to-CBOR, which does use the value</div><div>and positi=
on fields for the binary encoding.=C2=A0</div><div><br></div><div><br></div=
><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1=
px #ccc solid;padding-left:1ex"><span class=3D"HOEnZb"><font color=3D"#8888=
88">
/js<br>
<br></font></span></blockquote><div><br></div><div>Andy</div><div>=C2=A0</d=
iv><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left=
:1px #ccc solid;padding-left:1ex"><span class=3D"HOEnZb"><font color=3D"#88=
8888">
--<br>
Juergen Schoenwaelder=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Jacobs Univer=
sity Bremen gGmbH<br>
Phone: +49 421 200 3587=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Campus Ring 1 | 28=
759 Bremen | Germany<br>
Fax:=C2=A0 =C2=A0+49 421 200 3103=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a h=
ref=3D"http://www.jacobs-university.de/" rel=3D"noreferrer" target=3D"_blan=
k">http://www.jacobs-university.<wbr>de/</a>&gt;<br>
<br>
______________________________<wbr>_________________<br>
yang-doctors mailing list<br>
<a href=3D"mailto:yang-doctors@ietf.org">yang-doctors@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/yang-doctors" rel=3D"noref=
errer" target=3D"_blank">https://www.ietf.org/mailman/<wbr>listinfo/yang-do=
ctors</a><br>
</font></span></blockquote></div><br></div></div>

--001a114b31165ffb5b055770f8be--


From nobody Wed Aug 23 13:36:19 2017
Return-Path: <lear@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CDCA213218E; Wed, 23 Aug 2017 13:36:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.519
X-Spam-Level: 
X-Spam-Status: No, score=-14.519 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id tHqFuB0B1_Lp; Wed, 23 Aug 2017 13:36:15 -0700 (PDT)
Received: from alln-iport-5.cisco.com (alln-iport-5.cisco.com [173.37.142.92]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C9AF1120720; Wed, 23 Aug 2017 13:36:14 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=25985; q=dns/txt; s=iport; t=1503520574; x=1504730174; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to; bh=Fr6l+YOhgMRVbtdQnInKAuLc4SODVxAHZFhH1EzUajc=; b=AlL4xX//etVflHcmZT2HcTwlIxCzjX0U4X9Mk/Or4BGZJhCpyXaRCTUe 7+dAjt1yM4s/Ol3a331yl/4Z//X7HeJGtbew7Zlv2sZZrJorzX6wVBrJS 7MFAwKhSj5IgwuTEEdqeMkoWC1dVPjxPIMyg0h84KMS0bn1sTPWFsZ0T2 s=;
X-Files: signature.asc : 481
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0C1AAAJ551Z/49dJa1dGQEBAQEBAQEBA?= =?us-ascii?q?QEBBwEBAQEBg1pkgRWOFJAWgXCWJIISBxoBCoUbAoRGPxgBAgEBAQEBAQFrKIU?= =?us-ascii?q?ZAQEBAwEBIUsLEAkCGCcDAgInHxEGAQwGAgEBii0QkQ+dZoImJ4s6AQEBAQEBA?= =?us-ascii?q?QEBAQEBAQEBAQEBAQEBDgoFgyqCAoMvK4J8hEwRgymCQh8BBIc2glSHEY89hDS?= =?us-ascii?q?CIYRWg1WFRItOhxaWLh84P0syIQgcFUmEXoI+PjaIQIJBAQEB?=
X-IronPort-AV: E=Sophos;i="5.41,417,1498521600";  d="asc'?scan'208,217";a="474138885"
Received: from rcdn-core-7.cisco.com ([173.37.93.143]) by alln-iport-5.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Aug 2017 20:36:04 +0000
Received: from [10.82.222.249] (rtp-vpn3-1778.cisco.com [10.82.222.249]) by rcdn-core-7.cisco.com (8.14.5/8.14.5) with ESMTP id v7NKa2fD019822; Wed, 23 Aug 2017 20:36:03 GMT
To: Andy Bierman <andy@yumaworks.com>, Martin Bjorklund <mbj@tail-f.com>
Cc: YANG Doctors <yang-doctors@ietf.org>, draft-ietf-opsawg-mud.all@ietf.org
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com> <20170823.100659.305891042923397070.mbj@tail-f.com> <CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmail.com>
From: Eliot Lear <lear@cisco.com>
Message-ID: <5942c1cd-111c-16db-5a5c-dc26ebd8ca1d@cisco.com>
Date: Wed, 23 Aug 2017 22:36:07 +0200
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
MIME-Version: 1.0
In-Reply-To: <CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmail.com>
Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="gFHhft6TnIEMHuIMMVQJDUCS5CkBVV0ut"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/bFLB5tcbnwzA8tMAo80JK05Eirc>
Subject: Re: [yang-doctors] Yangdoctors early review of draft-ietf-opsawg-mud-08
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 23 Aug 2017 20:36:18 -0000

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--gFHhft6TnIEMHuIMMVQJDUCS5CkBVV0ut
Content-Type: multipart/mixed; boundary="Th1x6aIHsbaBatnKI8HWVbvn1iXg3soe8";
 protected-headers="v1"
From: Eliot Lear <lear@cisco.com>
To: Andy Bierman <andy@yumaworks.com>, Martin Bjorklund <mbj@tail-f.com>
Cc: YANG Doctors <yang-doctors@ietf.org>, draft-ietf-opsawg-mud.all@ietf.org
Message-ID: <5942c1cd-111c-16db-5a5c-dc26ebd8ca1d@cisco.com>
Subject: Re: [yang-doctors] Yangdoctors early review of
 draft-ietf-opsawg-mud-08
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com>
 <20170823.100659.305891042923397070.mbj@tail-f.com>
 <CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmail.com>
In-Reply-To: <CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmail.com>

--Th1x6aIHsbaBatnKI8HWVbvn1iXg3soe8
Content-Type: multipart/alternative;
 boundary="------------7BC40B7EF97E85F2F2D24126"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------7BC40B7EF97E85F2F2D24126
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Hi Andy,

It probably *does* make sense (it didn't and then we reorged a bit).

Eliot


On 8/23/17 6:59 PM, Andy Bierman wrote:
>
>
> On Wed, Aug 23, 2017 at 1:06 AM, Martin Bjorklund <mbj@tail-f.com
> <mailto:mbj@tail-f.com>> wrote:
>
>     Hi,
>
>     I would like to direct the YANG doctors attention to one design cho=
ice
>     in this document:
>
>     The document defines a normal "config true" data model, but this da=
ta
>     model is not intended to be implemented by a server, but rather it
>     defines the file format of a "MUD file".
>
>     This idea is not new, it is used e.g. in the anima voucher document=
=2E
>     Normally, we would require that they use "rc:yang-data" to define s=
uch
>     a structure.
>
>     However, the MUD file is supposed to contain some top-level nodes
>     defined in the MUD YANG module, and also some /acl:access-lists
>     nodes.=C2=A0 So even if the MUD document could define a rc:yang-dat=
a
>     structure for the top-level nodes defined in the MUD document, it
>     cannot get the access lists into this rc:yang-data structure.
>
>     So the question to the YANG doctors is if this is ok, or if there i=
s a
>     better way to define this file format.
>
>
> Why is it a problem to use a grouping in rc:yang-data?
> This clearly needs to be rc:yang-data, not a real module with
> config=3Dtrue objects.
> I think the artifact can contain data that matches the structure of
> config data.
> It is an implementation detail to convert the artifact to config data
> in a datastore.
>
> =C2=A0
>
>
>     /martin
>
>
>
> Andy
> =C2=A0
>
>
>     Martin Bjorklund <mbj@tail-f.com <mailto:mbj@tail-f.com>> wrote:
>     > Reviewer: Martin Bjorklund
>     > Review result: Ready with Issues
>     >
>     > Hi,
>     >
>     > I am the assigned YANG doctors reviewer for this document.=C2=A0 =
Here are
>     > my comments:
>     >
>     >
>     > o=C2=A0 Section 2 says:
>     >
>     >=C2=A0 =C2=A0 The MUD file is limited to the serialization of a
>     >=C2=A0 =C2=A0 small number of YANG schema, including the models sp=
ecified
>     in the
>     >=C2=A0 =C2=A0 following documents:
>     >
>     >=C2=A0 =C2=A0 o=C2=A0 [I-D.ietf-netmod-acl-model]
>     >
>     >=C2=A0 =C2=A0 o=C2=A0 [RFC6991]
>     >
>     >=C2=A0 =C2=A0 Is the intention that *only* these models are includ=
ed, or *at
>     >=C2=A0 =C2=A0 least* these models are included?
>     >
>     >=C2=A0 =C2=A0 RFC6991 doesn't define any data nodes, so I don't th=
ink it
>     needs to
>     >=C2=A0 =C2=A0 be listed.=C2=A0 I suggest you are a bit more specif=
ic, and list:
>     >
>     >=C2=A0 =C2=A0 =C2=A0 o=C2=A0 ietf-access-control-list [I-D.ietf-ne=
tmod-acl-model]
>     >
>     >=C2=A0 =C2=A0 =C2=A0 o=C2=A0 ietf-mud [...]
>     >
>     >
>     > o=C2=A0 Section 3 uses the term "element" (it is used in other pl=
aces as
>     >=C2=A0 =C2=A0 well).=C2=A0 YANG uses the term "data node" or "node=
".=C2=A0 Or "YANG data
>     >=C2=A0 =C2=A0 node".=C2=A0 I suggest you use one of these terms, a=
nd import the term
>     >=C2=A0 =C2=A0 in your Terminology section.
>     >
>     >=C2=A0 =C2=A0 Also, the YANG module uses the term "element" to ref=
er to
>     "device":
>     >
>     >=C2=A0 =C2=A0 =C2=A0leaf is-supported {
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0type boolean;
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0description
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"The element is currently suppor=
ted
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 by the manufacturer.";
>     >=C2=A0 =C2=A0 =C2=A0}
>     >
>     >
>     > o=C2=A0 In your Terminology section you introduce the term "Thing=
".=C2=A0 But
>     >=C2=A0 =C2=A0 the text often use "device".=C2=A0 Maybe use "device=
" consistently?
>     >
>     >
>     > o=C2=A0 In order to get consistent indentation of the YANG module=
s, I
>     >=C2=A0 =C2=A0 suggest you run:
>     >
>     >=C2=A0 =C2=A0 =C2=A0 pyang -f yang ietf-mud.yang
>     >
>     >=C2=A0 =C2=A0 (and same for ietf-acldns.yang)
>     >
>     >
>     > o=C2=A0 Ensure that description statements contain proper sentenc=
es.=C2=A0
>     Also
>     >=C2=A0 =C2=A0 ensure that the descriptions are descriptive.=C2=A0 =
As an example
>     of the
>     >=C2=A0 =C2=A0 latter, this is not a good description:
>     >
>     >=C2=A0 =C2=A0 =C2=A0description
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0"Which way are we talking about?";
>     >
>     >=C2=A0 =C2=A0 In general, I found that the main document had bette=
r
>     descriptions
>     >=C2=A0 =C2=A0 than the YANG module.=C2=A0 Consider moving the text=
 from the main
>     >=C2=A0 =C2=A0 document to the YANG module (this also reduces the r=
isk of
>     >=C2=A0 =C2=A0 inconsistencies).=C2=A0 If don't want to move text, =
I think you
>     need to
>     >=C2=A0 =C2=A0 spend some effort on almost all descriptions in the =
YANG module.
>     >
>     >
>     > o=C2=A0 In both modules, make sure you have a single revision
>     >=C2=A0 =C2=A0 statement.=C2=A0 Note that in IETF-terms, a revision=
 statement is
>     added
>     >=C2=A0 =C2=A0 when a new version of the module is publsihed as an =
RFC (so the
>     >=C2=A0 =C2=A0 initial RFC would have one revision statement).
>     >
>     >
>     > o=C2=A0 The "ietf-mud" module is a bit unorthodox; it defines
>     configuration
>     >=C2=A0 =C2=A0 data nodes, but it is not supposed to be implemented=
 by a normal
>     >=C2=A0 =C2=A0 NETCONF/RESTCONF server.=C2=A0 Rather, it will be in=
stantiated in
>     a JSON
>     >=C2=A0 =C2=A0 file.=C2=A0 I think this should be stated in the des=
cription of the
>     >=C2=A0 =C2=A0 module.
>     >
>     >
>     > o=C2=A0 I don't think the feature "mud-acl" is necessary.=C2=A0 I=
t is only
>     used
>     >=C2=A0 =C2=A0 to make the acl augment conditional on the feature.=C2=
=A0 I think that
>     >=C2=A0 =C2=A0 if this module is supported, the feature is also sup=
ported.=C2=A0
>     Or do
>     >=C2=A0 =C2=A0 you envision implementations of this module that wou=
ld not
>     support
>     >=C2=A0 =C2=A0 this feature?=C2=A0 If so, maybe you can explain tha=
t use case in the
>     >=C2=A0 =C2=A0 document.
>     >
>     >
>     > o=C2=A0 leaf cache-validity could use a "units" statement:
>     >
>     >=C2=A0 =C2=A0 =C2=A0 units "hours";
>     >
>     >
>     > o=C2=A0 I suggest you rename the grouping "access_lists" to
>     "access-lists"
>     >=C2=A0 =C2=A0 for consitency.
>     >
>     >
>     > o=C2=A0 Should any of the leafs in "/metainfo" be mandatory?
>     >
>     >
>     > o=C2=A0 The "extensions" leaf-list mentions an IANA registry for
>     >=C2=A0 =C2=A0 extensions.=C2=A0 It would be usefule to mention thi=
s registry by
>     name.
>     >
>     >=C2=A0 =C2=A0 Also, shouldn't this registry be defined in the IANA=

>     Considerations
>     >=C2=A0 =C2=A0 section?
>     >
>     >
>     > o=C2=A0 Section 3.7 mentions a leaf "packet-direction".=C2=A0 The=
re is no such
>     >=C2=A0 =C2=A0 leaf in the YANG module.=C2=A0 There is one called
>     "direction-initiated"
>     >=C2=A0 =C2=A0 though.
>     >
>     >=C2=A0 =C2=A0 But since the "/device" container contains two diffe=
rent ACL
>     sets,
>     >=C2=A0 =C2=A0 one for "to" and one for "from", is this augmentatio=
n really
>     >=C2=A0 =C2=A0 necessary?
>     >
>     >
>     > o=C2=A0 The model has:
>     >
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0leaf local-networks {
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0type empty;
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"this string is used to i=
ndicate networks
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 considered local in a gi=
ven environment.";
>     >
>     >=C2=A0 =C2=A0 This leaf is of type "empty", but the description sa=
ys it is a
>     >=C2=A0 =C2=A0 string.
>     >
>     >=C2=A0 =C2=A0 Also, what is the format of this string?=C2=A0 (Hmm,=
 I think the
>     >=C2=A0 =C2=A0 description is wrong, this should indeed be type emp=
ty).
>     >
>     >
>     > o=C2=A0 Would it be useful with an indication of the revision of
>     "ietf-mud"
>     >=C2=A0 =C2=A0 that is used as the schema for a MUD file?=C2=A0 I.e=
=2E, something
>     like a
>     >=C2=A0 =C2=A0 leaf "mud-module-revision" in the "metainfo" contain=
er.
>     >
>     >
>     > o=C2=A0 The example in section 8 has some errors, e.g., it has so=
me
>     >=C2=A0 =C2=A0 camelCase node names.
>     >
>     >
>     > _______________________________________________
>     > yang-doctors mailing list
>     > yang-doctors@ietf.org <mailto:yang-doctors@ietf.org>
>     > https://www.ietf.org/mailman/listinfo/yang-doctors
>     <https://www.ietf.org/mailman/listinfo/yang-doctors>
>     >
>
>     _______________________________________________
>     yang-doctors mailing list
>     yang-doctors@ietf.org <mailto:yang-doctors@ietf.org>
>     https://www.ietf.org/mailman/listinfo/yang-doctors
>     <https://www.ietf.org/mailman/listinfo/yang-doctors>
>
>


--------------7BC40B7EF97E85F2F2D24126
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable

<html>
  <head>
    <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dutf=
-8">
  </head>
  <body text=3D"#000000" bgcolor=3D"#FFFFFF">
    <p>Hi Andy,</p>
    <p>It probably *does* make sense (it didn't and then we reorged a
      bit).</p>
    <p>Eliot<br>
    </p>
    <br>
    <div class=3D"moz-cite-prefix">On 8/23/17 6:59 PM, Andy Bierman wrote=
:<br>
    </div>
    <blockquote type=3D"cite"
cite=3D"mid:CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmai=
l.com">
      <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Du=
tf-8">
      <div dir=3D"ltr"><br>
        <div class=3D"gmail_extra"><br>
          <div class=3D"gmail_quote">On Wed, Aug 23, 2017 at 1:06 AM,
            Martin Bjorklund <span dir=3D"ltr">&lt;<a
                href=3D"mailto:mbj@tail-f.com" target=3D"_blank"
                moz-do-not-send=3D"true">mbj@tail-f.com</a>&gt;</span>
            wrote:<br>
            <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
              <br>
              I would like to direct the YANG doctors attention to one
              design choice<br>
              in this document:<br>
              <br>
              The document defines a normal "config true" data model,
              but this data<br>
              model is not intended to be implemented by a server, but
              rather it<br>
              defines the file format of a "MUD file".<br>
              <br>
              This idea is not new, it is used e.g. in the anima voucher
              document.<br>
              Normally, we would require that they use "rc:yang-data" to
              define such<br>
              a structure.<br>
              <br>
              However, the MUD file is supposed to contain some
              top-level nodes<br>
              defined in the MUD YANG module, and also some
              /acl:access-lists<br>
              nodes.=C2=A0 So even if the MUD document could define a
              rc:yang-data<br>
              structure for the top-level nodes defined in the MUD
              document, it<br>
              cannot get the access lists into this rc:yang-data
              structure.<br>
              <br>
              So the question to the YANG doctors is if this is ok, or
              if there is a<br>
              better way to define this file format.<br>
              <br>
            </blockquote>
            <div><br>
            </div>
            <div>Why is it a problem to use a grouping in rc:yang-data?</=
div>
            <div>This clearly needs to be rc:yang-data, not a real
              module with config=3Dtrue objects.</div>
            <div>I think the artifact can contain data that matches the
              structure of config data.</div>
            <div>It is an implementation detail to convert the artifact
              to config data in a datastore.</div>
            <div><br>
            </div>
            <div>=C2=A0</div>
            <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <br>
              /martin<br>
              <br>
              <br>
            </blockquote>
            <div><br>
            </div>
            <div>Andy</div>
            <div>=C2=A0</div>
            <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <br>
              Martin Bjorklund &lt;<a href=3D"mailto:mbj@tail-f.com"
                moz-do-not-send=3D"true">mbj@tail-f.com</a>&gt; wrote:<br=
>
              &gt; Reviewer: Martin Bjorklund<br>
              &gt; Review result: Ready with Issues<br>
              &gt;<br>
              &gt; Hi,<br>
              &gt;<br>
              &gt; I am the assigned YANG doctors reviewer for this
              document.=C2=A0 Here are<br>
              &gt; my comments:<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 Section 2 says:<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 The MUD file is limited to the serializat=
ion of a<br>
              &gt;=C2=A0 =C2=A0 small number of YANG schema, including th=
e models
              specified in the<br>
              &gt;=C2=A0 =C2=A0 following documents:<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 o=C2=A0 [I-D.ietf-netmod-acl-model]<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 o=C2=A0 [RFC6991]<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 Is the intention that *only* these models=
 are
              included, or *at<br>
              &gt;=C2=A0 =C2=A0 least* these models are included?<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 RFC6991 doesn't define any data nodes, so=
 I don't
              think it needs to<br>
              &gt;=C2=A0 =C2=A0 be listed.=C2=A0 I suggest you are a bit =
more specific,
              and list:<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 o=C2=A0 ietf-access-control-list
              [I-D.ietf-netmod-acl-model]<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 o=C2=A0 ietf-mud [...]<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 Section 3 uses the term "element" (it is used =
in
              other places as<br>
              &gt;=C2=A0 =C2=A0 well).=C2=A0 YANG uses the term "data nod=
e" or "node".=C2=A0
              Or "YANG data<br>
              &gt;=C2=A0 =C2=A0 node".=C2=A0 I suggest you use one of the=
se terms, and
              import the term<br>
              &gt;=C2=A0 =C2=A0 in your Terminology section.<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 Also, the YANG module uses the term "elem=
ent" to
              refer to "device":<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0leaf is-supported {<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0type boolean;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0description<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"The element is curre=
ntly supported<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 by the manufacturer.=
";<br>
              &gt;=C2=A0 =C2=A0 =C2=A0}<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 In your Terminology section you introduce the =
term
              "Thing".=C2=A0 But<br>
              &gt;=C2=A0 =C2=A0 the text often use "device".=C2=A0 Maybe =
use "device"
              consistently?<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 In order to get consistent indentation of the =
YANG
              modules, I<br>
              &gt;=C2=A0 =C2=A0 suggest you run:<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 pyang -f yang ietf-mud.yang<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 (and same for ietf-acldns.yang)<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 Ensure that description statements contain pro=
per
              sentences.=C2=A0 Also<br>
              &gt;=C2=A0 =C2=A0 ensure that the descriptions are descript=
ive.=C2=A0 As
              an example of the<br>
              &gt;=C2=A0 =C2=A0 latter, this is not a good description:<b=
r>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0description<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0"Which way are we talking ab=
out?";<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 In general, I found that the main documen=
t had
              better descriptions<br>
              &gt;=C2=A0 =C2=A0 than the YANG module.=C2=A0 Consider movi=
ng the text
              from the main<br>
              &gt;=C2=A0 =C2=A0 document to the YANG module (this also re=
duces the
              risk of<br>
              &gt;=C2=A0 =C2=A0 inconsistencies).=C2=A0 If don't want to =
move text, I
              think you need to<br>
              &gt;=C2=A0 =C2=A0 spend some effort on almost all descripti=
ons in
              the YANG module.<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 In both modules, make sure you have a single
              revision<br>
              &gt;=C2=A0 =C2=A0 statement.=C2=A0 Note that in IETF-terms,=
 a revision
              statement is added<br>
              &gt;=C2=A0 =C2=A0 when a new version of the module is publs=
ihed as
              an RFC (so the<br>
              &gt;=C2=A0 =C2=A0 initial RFC would have one revision state=
ment).<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 The "ietf-mud" module is a bit unorthodox; it
              defines configuration<br>
              &gt;=C2=A0 =C2=A0 data nodes, but it is not supposed to be
              implemented by a normal<br>
              &gt;=C2=A0 =C2=A0 NETCONF/RESTCONF server.=C2=A0 Rather, it=
 will be
              instantiated in a JSON<br>
              &gt;=C2=A0 =C2=A0 file.=C2=A0 I think this should be stated=
 in the
              description of the<br>
              &gt;=C2=A0 =C2=A0 module.<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 I don't think the feature "mud-acl" is necessa=
ry.=C2=A0
              It is only used<br>
              &gt;=C2=A0 =C2=A0 to make the acl augment conditional on th=
e
              feature.=C2=A0 I think that<br>
              &gt;=C2=A0 =C2=A0 if this module is supported, the feature =
is also
              supported.=C2=A0 Or do<br>
              &gt;=C2=A0 =C2=A0 you envision implementations of this modu=
le that
              would not support<br>
              &gt;=C2=A0 =C2=A0 this feature?=C2=A0 If so, maybe you can =
explain that
              use case in the<br>
              &gt;=C2=A0 =C2=A0 document.<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 leaf cache-validity could use a "units" statem=
ent:<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 units "hours";<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 I suggest you rename the grouping "access_list=
s"
              to "access-lists"<br>
              &gt;=C2=A0 =C2=A0 for consitency.<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 Should any of the leafs in "/metainfo" be
              mandatory?<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 The "extensions" leaf-list mentions an IANA
              registry for<br>
              &gt;=C2=A0 =C2=A0 extensions.=C2=A0 It would be usefule to =
mention this
              registry by name.<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 Also, shouldn't this registry be defined =
in the
              IANA Considerations<br>
              &gt;=C2=A0 =C2=A0 section?<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 Section 3.7 mentions a leaf "packet-direction"=
=2E=C2=A0
              There is no such<br>
              &gt;=C2=A0 =C2=A0 leaf in the YANG module.=C2=A0 There is o=
ne called
              "direction-initiated"<br>
              &gt;=C2=A0 =C2=A0 though.<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 But since the "/device" container contain=
s two
              different ACL sets,<br>
              &gt;=C2=A0 =C2=A0 one for "to" and one for "from", is this
              augmentation really<br>
              &gt;=C2=A0 =C2=A0 necessary?<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 The model has:<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0leaf local-networks {<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0type empty;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"this string i=
s used to indicate networks<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 considered lo=
cal in a given environment.";<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 This leaf is of type "empty", but the des=
cription
              says it is a<br>
              &gt;=C2=A0 =C2=A0 string.<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 Also, what is the format of this string?=C2=
=A0 (Hmm, I
              think the<br>
              &gt;=C2=A0 =C2=A0 description is wrong, this should indeed =
be type
              empty).<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 Would it be useful with an indication of the
              revision of "ietf-mud"<br>
              &gt;=C2=A0 =C2=A0 that is used as the schema for a MUD file=
?=C2=A0 I.e.,
              something like a<br>
              &gt;=C2=A0 =C2=A0 leaf "mud-module-revision" in the "metain=
fo"
              container.<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 The example in section 8 has some errors, e.g.=
, it
              has some<br>
              &gt;=C2=A0 =C2=A0 camelCase node names.<br>
              &gt;<br>
              &gt;<br>
              &gt; ______________________________<wbr>_________________<b=
r>
              &gt; yang-doctors mailing list<br>
              &gt; <a href=3D"mailto:yang-doctors@ietf.org"
                moz-do-not-send=3D"true">yang-doctors@ietf.org</a><br>
              &gt; <a
                href=3D"https://www.ietf.org/mailman/listinfo/yang-doctor=
s"
                rel=3D"noreferrer" target=3D"_blank" moz-do-not-send=3D"t=
rue">https://www.ietf.org/mailman/<wbr>listinfo/yang-doctors</a><br>
              &gt;<br>
              <br>
              ______________________________<wbr>_________________<br>
              yang-doctors mailing list<br>
              <a href=3D"mailto:yang-doctors@ietf.org"
                moz-do-not-send=3D"true">yang-doctors@ietf.org</a><br>
              <a
                href=3D"https://www.ietf.org/mailman/listinfo/yang-doctor=
s"
                rel=3D"noreferrer" target=3D"_blank" moz-do-not-send=3D"t=
rue">https://www.ietf.org/mailman/<wbr>listinfo/yang-doctors</a><br>
            </blockquote>
          </div>
          <br>
        </div>
      </div>
    </blockquote>
    <br>
  </body>
</html>

--------------7BC40B7EF97E85F2F2D24126--

--Th1x6aIHsbaBatnKI8HWVbvn1iXg3soe8--

--gFHhft6TnIEMHuIMMVQJDUCS5CkBVV0ut
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2

iQEcBAEBCAAGBQJZnec3AAoJEIe2a0bZ0noz5BYH/Ra7Li+FFPg752KqQEXWegLo
mlfPq1w0GnQQOMPiqQj6L9kb5vgU9Be7sLsibsfx7cGSWlhv69yoWB9mi3MdyvsK
7z/47FWbr34hkoqCBh4x3PKu+2uSW4Hih+d/dO3uZIIYHJeGAdjjwRDqEDSEFBlO
C9+U9z9pY1zjqr6bKKZosSdgcDCW8ScbY4kbRDMsDjd2JEOZJEg9jqglX7ARh5fi
ce5teTpHwtTSpNldVdFwVSlpthkFONIHwNQBMotb/77PpixaJBoucFOd/WbAfagz
DMNisRQHrr24iorgHrKYMVJGD31Tj2LeoXVWTpO+ngEHZyjh0/iluuTK8YGopDg=
=QAo9
-----END PGP SIGNATURE-----

--gFHhft6TnIEMHuIMMVQJDUCS5CkBVV0ut--


From nobody Wed Aug 23 13:36:38 2017
Return-Path: <j.schoenwaelder@jacobs-university.de>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 80C1C13218E; Wed, 23 Aug 2017 13:36:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level: 
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id w2ckjAOpvbDB; Wed, 23 Aug 2017 13:36:35 -0700 (PDT)
Received: from atlas5.jacobs-university.de (atlas5.jacobs-university.de [212.201.44.20]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 860C7120720; Wed, 23 Aug 2017 13:36:35 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas5.jacobs-university.de (Postfix) with ESMTP id 5E3E599; Wed, 23 Aug 2017 22:36:34 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas5.jacobs-university.de ([10.70.0.217]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10032) with ESMTP id he4bMZYzdL8y; Wed, 23 Aug 2017 22:36:33 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas5.jacobs-university.de (Postfix) with ESMTPS; Wed, 23 Aug 2017 22:36:34 +0200 (CEST)
Received: from localhost (demetrius3.jacobs-university.de [212.201.44.48]) by hermes.jacobs-university.de (Postfix) with ESMTP id 35B41200E2; Wed, 23 Aug 2017 22:36:34 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius3.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id tKNL_litf-Tk; Wed, 23 Aug 2017 22:36:33 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id BE35A200E0; Wed, 23 Aug 2017 22:36:33 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 79627404A4CB; Wed, 23 Aug 2017 22:36:33 +0200 (CEST)
Date: Wed, 23 Aug 2017 22:36:33 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Andy Bierman <andy@yumaworks.com>
Cc: "Acee Lindem (acee)" <acee@cisco.com>, YANG Doctors <yang-doctors@ietf.org>, "netmod@ietf.org" <netmod@ietf.org>, Rodney Cummings <rodney.cummings@ni.com>
Message-ID: <20170823203633.4yseukdqncuchxdf@elstar.local>
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
Mail-Followup-To: Andy Bierman <andy@yumaworks.com>, "Acee Lindem (acee)" <acee@cisco.com>, YANG Doctors <yang-doctors@ietf.org>, "netmod@ietf.org" <netmod@ietf.org>, Rodney Cummings <rodney.cummings@ni.com>
References: <D5BE0363.C241B%acee@cisco.com> <20170820080301.asf2fx6o4abupq4h@elstar.local> <CABCOCHRyQyCm8NaPeh_FUGrAPytcDigoPFo-EhUrySnM2_Tjbw@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
X-Clacks-Overhead: GNU Terry Pratchett
Content-Transfer-Encoding: 8bit
In-Reply-To: <CABCOCHRyQyCm8NaPeh_FUGrAPytcDigoPFo-EhUrySnM2_Tjbw@mail.gmail.com>
User-Agent: NeoMutt/20170714 (1.8.3)
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/MaLTIH9LWqAnmHUj0CObcI6SGCQ>
Subject: Re: [yang-doctors] Identities vs enums
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 23 Aug 2017 20:36:37 -0000

On Wed, Aug 23, 2017 at 12:46:37PM -0700, Andy Bierman wrote:
> On Sun, Aug 20, 2017 at 1:03 AM, Juergen Schoenwaelder <
> j.schoenwaelder@jacobs-university.de> wrote:
> 
> > On Sat, Aug 19, 2017 at 07:02:04PM +0000, Acee Lindem (acee) wrote:
> > > All,
> > > In the context iana-routing-types.yang, we’ve been having a discussion
> > of the merits of identities vs enums. We’ve followed the lead of RFC 7224
> > and used identities which allow augmentation. However, for IANA code
> > points, there could be merit in having the type represent the actual
> > numeric value. Any thoughts on this?
> > >
> > > In the next version of YANG, it would be useful for a base identity to
> > allow it to have a "base-type" (mutually exclusive of "identity-ref"). For
> > all identities a "base-value" would be allowed as long as it conformed to
> > the constraints of the actual or inherited (via “identity-ref”) “base-type”.
> > >
> >
> > The question here really is who is charge of controlling assignments
> > of a name space.
> >
> > - If there is a single authority controlling the assignments, an enum
> >   works fine.
> >
> > - If the assignments are not controlled by a single authority, an
> >   identity works fine.
> >
> > We sometimes have situations that are somewhere in between, i.e., a
> > central authority controlling assignments but delegating parts of the
> > name space to other authoritities. I agree, we do not have good
> > support to model this explicitly in YANG today.
> >
> >
> I think Acee is asking about a new feature that does not exist in YANG,
> which is to add
> an enum value-stmt to an identity-stmt somehow.  Seems like a valid
> use-case.

Identities can be without a central authority controlling assignments
- so there is little hope that values assigned to identities carry a
useful meaning unless there is a mechanism to partition and delegate
number spaces along the identity hierarchy.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>


From nobody Thu Aug 24 00:13:03 2017
Return-Path: <mbj@tail-f.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8864D132BE7; Thu, 24 Aug 2017 00:13:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level: 
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 42i0uv4smUjt; Thu, 24 Aug 2017 00:12:59 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id 26EE4132B9F; Thu, 24 Aug 2017 00:12:59 -0700 (PDT)
Received: from localhost (unknown [173.38.220.57]) by mail.tail-f.com (Postfix) with ESMTPSA id 311C71AE033A; Thu, 24 Aug 2017 09:12:58 +0200 (CEST)
Date: Thu, 24 Aug 2017 09:11:30 +0200 (CEST)
Message-Id: <20170824.091130.889626202711647501.mbj@tail-f.com>
To: andy@yumaworks.com
Cc: yang-doctors@ietf.org, draft-ietf-opsawg-mud.all@ietf.org
From: Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmail.com>
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com> <20170823.100659.305891042923397070.mbj@tail-f.com> <CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmail.com>
X-Mailer: Mew version 6.7 on Emacs 24.5 / Mule 6.0 (HANACHIRUSATO)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/QBvtoOtrVUFrBCBMzVsPeSOdE6A>
Subject: Re: [yang-doctors] Yangdoctors early review of draft-ietf-opsawg-mud-08
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 24 Aug 2017 07:13:01 -0000

Andy Bierman <andy@yumaworks.com> wrote:
> On Wed, Aug 23, 2017 at 1:06 AM, Martin Bjorklund <mbj@tail-f.com> wrote:
> 
> > Hi,
> >
> > I would like to direct the YANG doctors attention to one design choice
> > in this document:
> >
> > The document defines a normal "config true" data model, but this data
> > model is not intended to be implemented by a server, but rather it
> > defines the file format of a "MUD file".
> >
> > This idea is not new, it is used e.g. in the anima voucher document.
> > Normally, we would require that they use "rc:yang-data" to define such
> > a structure.
> >
> > However, the MUD file is supposed to contain some top-level nodes
> > defined in the MUD YANG module, and also some /acl:access-lists
> > nodes.  So even if the MUD document could define a rc:yang-data
> > structure for the top-level nodes defined in the MUD document, it
> > cannot get the access lists into this rc:yang-data structure.
> >
> > So the question to the YANG doctors is if this is ok, or if there is a
> > better way to define this file format.
> >
> >
> Why is it a problem to use a grouping in rc:yang-data?

That's not the issue here - I agree it is perfectly fine to use a
grouping in yang-data.

The issue is that they would like to define a file format that
contains "/acl:access-lists" nodes.  The acl module is NOT defined as
a grouping or anything.


> This clearly needs to be rc:yang-data, not a real module with config=true
> objects.
> I think the artifact can contain data that matches the structure of config
> data.

Not sure I follow this.  They would like to re-use the definition of
access lists in ietf-access-control-list.  But they want this data in
a file.

> It is an implementation detail to convert the artifact to config data in a
> datastore.

Yes, this part is actually clear in their draft.


/martin


From nobody Fri Aug 25 03:26:22 2017
Return-Path: <lear@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AA982132924; Fri, 25 Aug 2017 03:26:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.519
X-Spam-Level: 
X-Spam-Status: No, score=-14.519 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id keG3erw351nu; Fri, 25 Aug 2017 03:26:16 -0700 (PDT)
Received: from alln-iport-6.cisco.com (alln-iport-6.cisco.com [173.37.142.93]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8FBD712426E; Fri, 25 Aug 2017 03:26:16 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=30459; q=dns/txt; s=iport; t=1503656776; x=1504866376; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to; bh=04S8KpZaguaet6vtb/hJF0/034jP9Zk0HiKVCsXhtmA=; b=SnuHSPXTxohqmtQwVzzAKP+zYWsLpEPi6aSJ7To97DQjTJebtlnta43+ LDYShgqCUp4QA8ePGi1mRJaKfW4VavlhuLip8rq4cpoEpdMRwlD69cxeo caOIUb3D4z1U7h1IoWPcUcyr7EOPZEp8y2FEfFaAJZPjHGzNi2piTVRi+ o=;
X-Files: signature.asc : 481
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0D4AABC+p9Z/4sNJK0UBUMZAQEBAQEBA?= =?us-ascii?q?QEBAQEHAQEBAQGDWmSBFY4UkBiBcJYlghIHGgEKhRsCg3c/GAECAQEBAQEBAWs?= =?us-ascii?q?ohRkBAQEDAQEhBEcLEAkCGCAHAwICJx8RBgEMBgIBAYotEIhbhnGdZoFtOieLO?= =?us-ascii?q?QEBAQEBAQEBAQEBAQEBAQEBAQEBAQ4KBYMqggKDMCuCfIROEYMpgkIfAQSHOIJ?= =?us-ascii?q?VhxKPP4Q0giGEV4NVhUWCEoVkg1mHF4lyjEUfOEFMMiEIHBVJhF+CPj42h0yCQ?= =?us-ascii?q?QEBAQ?=
X-IronPort-AV: E=Sophos;i="5.41,425,1498521600";  d="asc'?scan'208,217";a="476748933"
Received: from alln-core-6.cisco.com ([173.36.13.139]) by alln-iport-6.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 25 Aug 2017 10:26:14 +0000
Received: from [10.82.222.249] (rtp-vpn3-1778.cisco.com [10.82.222.249]) by alln-core-6.cisco.com (8.14.5/8.14.5) with ESMTP id v7PAQC4L025473; Fri, 25 Aug 2017 10:26:13 GMT
To: Andy Bierman <andy@yumaworks.com>, Martin Bjorklund <mbj@tail-f.com>
Cc: YANG Doctors <yang-doctors@ietf.org>, draft-ietf-opsawg-mud.all@ietf.org
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com> <20170823.100659.305891042923397070.mbj@tail-f.com> <CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmail.com>
From: Eliot Lear <lear@cisco.com>
Message-ID: <76b23cb9-b174-c561-dee6-ad625e228fe8@cisco.com>
Date: Fri, 25 Aug 2017 12:26:19 +0200
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
MIME-Version: 1.0
In-Reply-To: <CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmail.com>
Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="rNc8PE6k3sGMIIbJxVDvQ2DPnUwlUdrXH"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/HyUhpSPde8W6q_OvGCn2w7Tj9_c>
Subject: Re: [yang-doctors] Yangdoctors early review of draft-ietf-opsawg-mud-08
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 25 Aug 2017 10:26:20 -0000

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--rNc8PE6k3sGMIIbJxVDvQ2DPnUwlUdrXH
Content-Type: multipart/mixed; boundary="8gI4I5mkCEPKFEGKe4VMHSJlxe8sDUbSv";
 protected-headers="v1"
From: Eliot Lear <lear@cisco.com>
To: Andy Bierman <andy@yumaworks.com>, Martin Bjorklund <mbj@tail-f.com>
Cc: YANG Doctors <yang-doctors@ietf.org>, draft-ietf-opsawg-mud.all@ietf.org
Message-ID: <76b23cb9-b174-c561-dee6-ad625e228fe8@cisco.com>
Subject: Re: [yang-doctors] Yangdoctors early review of
 draft-ietf-opsawg-mud-08
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com>
 <20170823.100659.305891042923397070.mbj@tail-f.com>
 <CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmail.com>
In-Reply-To: <CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmail.com>

--8gI4I5mkCEPKFEGKe4VMHSJlxe8sDUbSv
Content-Type: multipart/alternative;
 boundary="------------7FF18E69F67EC7DE39C29943"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------7FF18E69F67EC7DE39C29943
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Hi Andy and other doctors,

Following up on your note, I have been discussing with a few people how
exactly to encode stuff.=C2=A0 Below please find something of a strawman.=
=C2=A0 As
currently structured, in a MUD file there would be two root level
objects: a mud-artifact and a list of access-lists.=C2=A0 I have a few qu=
estions:

 1. Can both of these two objects, one of them being defined within
    rc:yang-data and another not, be represented in the same JSON file
    as two root level objects?
 2. In anticipation that someone might someday want to have this
    information expressed by a NETCONF server, I ponder still making the
    "mud" module below a presence container.=C2=A0 Is that legal/advisabl=
e
    within the context of rc:yang-data?

Thanks much,

Eliot

pyang --strict --lint --ietf --tree-print-yang-data -f tree ietf-mud.yang=

module: ietf-mud
  augment /acl:access-lists/acl:acl/acl:access-list-entries/acl:ace/acl:m=
atches:
    +--rw mud-acl
       +--rw manufacturer?        inet:host
       +--rw same-manufacturer?   empty
       +--rw model?               string
       +--rw local-networks?      empty
       +--rw controller?          inet:uri
       +--rw my-controller?       empty
  augment /acl:access-lists/acl:acl/acl:access-list-entries/acl:ace/acl:m=
atches/acl:tcp-acl:
    +--rw direction-initiated?   direction
  yang-data:
  mud-artifact
      +---- mud
         +---- mud-url               inet:uri
         +---- last-update           yang:date-and-time
         +---- cache-validity?       uint8
         +---- masa-server?          inet:uri
         +---- is-supported?         boolean
         +---- systeminfo?           inet:uri
         +---- extensions*           string
         +---- from-device-policy
         |  +---- access-lists
         |     +---- access-list* [acl-name acl-type]
         |        +---- acl-name    -> /acl:access-lists/acl/acl-name
         |        +---- acl-type    identityref
         +---- to-device-policy
            +---- access-lists
               +---- access-list* [acl-name acl-type]
                  +---- acl-name    -> /acl:access-lists/acl/acl-name
                  +---- acl-type    identityref


On 8/23/17 6:59 PM, Andy Bierman wrote:
>
>
> On Wed, Aug 23, 2017 at 1:06 AM, Martin Bjorklund <mbj@tail-f.com
> <mailto:mbj@tail-f.com>> wrote:
>
>     Hi,
>
>     I would like to direct the YANG doctors attention to one design cho=
ice
>     in this document:
>
>     The document defines a normal "config true" data model, but this da=
ta
>     model is not intended to be implemented by a server, but rather it
>     defines the file format of a "MUD file".
>
>     This idea is not new, it is used e.g. in the anima voucher document=
=2E
>     Normally, we would require that they use "rc:yang-data" to define s=
uch
>     a structure.
>
>     However, the MUD file is supposed to contain some top-level nodes
>     defined in the MUD YANG module, and also some /acl:access-lists
>     nodes.=C2=A0 So even if the MUD document could define a rc:yang-dat=
a
>     structure for the top-level nodes defined in the MUD document, it
>     cannot get the access lists into this rc:yang-data structure.
>
>     So the question to the YANG doctors is if this is ok, or if there i=
s a
>     better way to define this file format.
>
>
> Why is it a problem to use a grouping in rc:yang-data?
> This clearly needs to be rc:yang-data, not a real module with
> config=3Dtrue objects.
> I think the artifact can contain data that matches the structure of
> config data.
> It is an implementation detail to convert the artifact to config data
> in a datastore.
>
> =C2=A0
>
>
>     /martin
>
>
>
> Andy
> =C2=A0
>
>
>     Martin Bjorklund <mbj@tail-f.com <mailto:mbj@tail-f.com>> wrote:
>     > Reviewer: Martin Bjorklund
>     > Review result: Ready with Issues
>     >
>     > Hi,
>     >
>     > I am the assigned YANG doctors reviewer for this document.=C2=A0 =
Here are
>     > my comments:
>     >
>     >
>     > o=C2=A0 Section 2 says:
>     >
>     >=C2=A0 =C2=A0 The MUD file is limited to the serialization of a
>     >=C2=A0 =C2=A0 small number of YANG schema, including the models sp=
ecified
>     in the
>     >=C2=A0 =C2=A0 following documents:
>     >
>     >=C2=A0 =C2=A0 o=C2=A0 [I-D.ietf-netmod-acl-model]
>     >
>     >=C2=A0 =C2=A0 o=C2=A0 [RFC6991]
>     >
>     >=C2=A0 =C2=A0 Is the intention that *only* these models are includ=
ed, or *at
>     >=C2=A0 =C2=A0 least* these models are included?
>     >
>     >=C2=A0 =C2=A0 RFC6991 doesn't define any data nodes, so I don't th=
ink it
>     needs to
>     >=C2=A0 =C2=A0 be listed.=C2=A0 I suggest you are a bit more specif=
ic, and list:
>     >
>     >=C2=A0 =C2=A0 =C2=A0 o=C2=A0 ietf-access-control-list [I-D.ietf-ne=
tmod-acl-model]
>     >
>     >=C2=A0 =C2=A0 =C2=A0 o=C2=A0 ietf-mud [...]
>     >
>     >
>     > o=C2=A0 Section 3 uses the term "element" (it is used in other pl=
aces as
>     >=C2=A0 =C2=A0 well).=C2=A0 YANG uses the term "data node" or "node=
".=C2=A0 Or "YANG data
>     >=C2=A0 =C2=A0 node".=C2=A0 I suggest you use one of these terms, a=
nd import the term
>     >=C2=A0 =C2=A0 in your Terminology section.
>     >
>     >=C2=A0 =C2=A0 Also, the YANG module uses the term "element" to ref=
er to
>     "device":
>     >
>     >=C2=A0 =C2=A0 =C2=A0leaf is-supported {
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0type boolean;
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0description
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"The element is currently suppor=
ted
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 by the manufacturer.";
>     >=C2=A0 =C2=A0 =C2=A0}
>     >
>     >
>     > o=C2=A0 In your Terminology section you introduce the term "Thing=
".=C2=A0 But
>     >=C2=A0 =C2=A0 the text often use "device".=C2=A0 Maybe use "device=
" consistently?
>     >
>     >
>     > o=C2=A0 In order to get consistent indentation of the YANG module=
s, I
>     >=C2=A0 =C2=A0 suggest you run:
>     >
>     >=C2=A0 =C2=A0 =C2=A0 pyang -f yang ietf-mud.yang
>     >
>     >=C2=A0 =C2=A0 (and same for ietf-acldns.yang)
>     >
>     >
>     > o=C2=A0 Ensure that description statements contain proper sentenc=
es.=C2=A0
>     Also
>     >=C2=A0 =C2=A0 ensure that the descriptions are descriptive.=C2=A0 =
As an example
>     of the
>     >=C2=A0 =C2=A0 latter, this is not a good description:
>     >
>     >=C2=A0 =C2=A0 =C2=A0description
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0"Which way are we talking about?";
>     >
>     >=C2=A0 =C2=A0 In general, I found that the main document had bette=
r
>     descriptions
>     >=C2=A0 =C2=A0 than the YANG module.=C2=A0 Consider moving the text=
 from the main
>     >=C2=A0 =C2=A0 document to the YANG module (this also reduces the r=
isk of
>     >=C2=A0 =C2=A0 inconsistencies).=C2=A0 If don't want to move text, =
I think you
>     need to
>     >=C2=A0 =C2=A0 spend some effort on almost all descriptions in the =
YANG module.
>     >
>     >
>     > o=C2=A0 In both modules, make sure you have a single revision
>     >=C2=A0 =C2=A0 statement.=C2=A0 Note that in IETF-terms, a revision=
 statement is
>     added
>     >=C2=A0 =C2=A0 when a new version of the module is publsihed as an =
RFC (so the
>     >=C2=A0 =C2=A0 initial RFC would have one revision statement).
>     >
>     >
>     > o=C2=A0 The "ietf-mud" module is a bit unorthodox; it defines
>     configuration
>     >=C2=A0 =C2=A0 data nodes, but it is not supposed to be implemented=
 by a normal
>     >=C2=A0 =C2=A0 NETCONF/RESTCONF server.=C2=A0 Rather, it will be in=
stantiated in
>     a JSON
>     >=C2=A0 =C2=A0 file.=C2=A0 I think this should be stated in the des=
cription of the
>     >=C2=A0 =C2=A0 module.
>     >
>     >
>     > o=C2=A0 I don't think the feature "mud-acl" is necessary.=C2=A0 I=
t is only
>     used
>     >=C2=A0 =C2=A0 to make the acl augment conditional on the feature.=C2=
=A0 I think that
>     >=C2=A0 =C2=A0 if this module is supported, the feature is also sup=
ported.=C2=A0
>     Or do
>     >=C2=A0 =C2=A0 you envision implementations of this module that wou=
ld not
>     support
>     >=C2=A0 =C2=A0 this feature?=C2=A0 If so, maybe you can explain tha=
t use case in the
>     >=C2=A0 =C2=A0 document.
>     >
>     >
>     > o=C2=A0 leaf cache-validity could use a "units" statement:
>     >
>     >=C2=A0 =C2=A0 =C2=A0 units "hours";
>     >
>     >
>     > o=C2=A0 I suggest you rename the grouping "access_lists" to
>     "access-lists"
>     >=C2=A0 =C2=A0 for consitency.
>     >
>     >
>     > o=C2=A0 Should any of the leafs in "/metainfo" be mandatory?
>     >
>     >
>     > o=C2=A0 The "extensions" leaf-list mentions an IANA registry for
>     >=C2=A0 =C2=A0 extensions.=C2=A0 It would be usefule to mention thi=
s registry by
>     name.
>     >
>     >=C2=A0 =C2=A0 Also, shouldn't this registry be defined in the IANA=

>     Considerations
>     >=C2=A0 =C2=A0 section?
>     >
>     >
>     > o=C2=A0 Section 3.7 mentions a leaf "packet-direction".=C2=A0 The=
re is no such
>     >=C2=A0 =C2=A0 leaf in the YANG module.=C2=A0 There is one called
>     "direction-initiated"
>     >=C2=A0 =C2=A0 though.
>     >
>     >=C2=A0 =C2=A0 But since the "/device" container contains two diffe=
rent ACL
>     sets,
>     >=C2=A0 =C2=A0 one for "to" and one for "from", is this augmentatio=
n really
>     >=C2=A0 =C2=A0 necessary?
>     >
>     >
>     > o=C2=A0 The model has:
>     >
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0leaf local-networks {
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0type empty;
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"this string is used to i=
ndicate networks
>     >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 considered local in a gi=
ven environment.";
>     >
>     >=C2=A0 =C2=A0 This leaf is of type "empty", but the description sa=
ys it is a
>     >=C2=A0 =C2=A0 string.
>     >
>     >=C2=A0 =C2=A0 Also, what is the format of this string?=C2=A0 (Hmm,=
 I think the
>     >=C2=A0 =C2=A0 description is wrong, this should indeed be type emp=
ty).
>     >
>     >
>     > o=C2=A0 Would it be useful with an indication of the revision of
>     "ietf-mud"
>     >=C2=A0 =C2=A0 that is used as the schema for a MUD file?=C2=A0 I.e=
=2E, something
>     like a
>     >=C2=A0 =C2=A0 leaf "mud-module-revision" in the "metainfo" contain=
er.
>     >
>     >
>     > o=C2=A0 The example in section 8 has some errors, e.g., it has so=
me
>     >=C2=A0 =C2=A0 camelCase node names.
>     >
>     >
>     > _______________________________________________
>     > yang-doctors mailing list
>     > yang-doctors@ietf.org <mailto:yang-doctors@ietf.org>
>     > https://www.ietf.org/mailman/listinfo/yang-doctors
>     <https://www.ietf.org/mailman/listinfo/yang-doctors>
>     >
>
>     _______________________________________________
>     yang-doctors mailing list
>     yang-doctors@ietf.org <mailto:yang-doctors@ietf.org>
>     https://www.ietf.org/mailman/listinfo/yang-doctors
>     <https://www.ietf.org/mailman/listinfo/yang-doctors>
>
>


--------------7FF18E69F67EC7DE39C29943
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable

<html>
  <head>
    <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dutf=
-8">
  </head>
  <body text=3D"#000000" bgcolor=3D"#FFFFFF">
    <p>Hi Andy and other doctors,<br>
    </p>
    <p>Following up on your note, I have been discussing with a few
      people how exactly to encode stuff.=C2=A0 Below please find somethi=
ng
      of a strawman.=C2=A0 As currently structured, in a MUD file there w=
ould
      be two root level objects: a mud-artifact and a list of
      access-lists.=C2=A0 I have a few questions:<br>
    </p>
    <ol>
      <li>Can both of these two objects, one of them being defined
        within rc:yang-data and another not, be represented in the same
        JSON file as two root level objects?</li>
      <li>In anticipation that someone might someday want to have this
        information expressed by a NETCONF server, I ponder still making
        the "mud" module below a presence container.=C2=A0 Is that
        legal/advisable within the context of rc:yang-data?<br>
      </li>
    </ol>
    Thanks much,<br>
    <br>
    Eliot<br>
    <pre>pyang --strict --lint --ietf --tree-print-yang-data -f tree ietf=
-mud.yang
module: ietf-mud
  augment /acl:access-lists/acl:acl/acl:access-list-entries/acl:ace/acl:m=
atches:
    +--rw mud-acl
       +--rw manufacturer?        inet:host
       +--rw same-manufacturer?   empty
       +--rw model?               string
       +--rw local-networks?      empty
       +--rw controller?          inet:uri
       +--rw my-controller?       empty
  augment /acl:access-lists/acl:acl/acl:access-list-entries/acl:ace/acl:m=
atches/acl:tcp-acl:
    +--rw direction-initiated?   direction
  yang-data:
  mud-artifact
      +---- mud
         +---- mud-url               inet:uri
         +---- last-update           yang:date-and-time
         +---- cache-validity?       uint8
         +---- masa-server?          inet:uri
         +---- is-supported?         boolean
         +---- systeminfo?           inet:uri
         +---- extensions*           string
         +---- from-device-policy
         |  +---- access-lists
         |     +---- access-list* [acl-name acl-type]
         |        +---- acl-name    -&gt; /acl:access-lists/acl/acl-name
         |        +---- acl-type    identityref
         +---- to-device-policy
            +---- access-lists
               +---- access-list* [acl-name acl-type]
                  +---- acl-name    -&gt; /acl:access-lists/acl/acl-name
                  +---- acl-type    identityref
</pre>
    <br>
    <div class=3D"moz-cite-prefix">On 8/23/17 6:59 PM, Andy Bierman wrote=
:<br>
    </div>
    <blockquote type=3D"cite"
cite=3D"mid:CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmai=
l.com">
      <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Du=
tf-8">
      <div dir=3D"ltr"><br>
        <div class=3D"gmail_extra"><br>
          <div class=3D"gmail_quote">On Wed, Aug 23, 2017 at 1:06 AM,
            Martin Bjorklund <span dir=3D"ltr">&lt;<a
                href=3D"mailto:mbj@tail-f.com" target=3D"_blank"
                moz-do-not-send=3D"true">mbj@tail-f.com</a>&gt;</span>
            wrote:<br>
            <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
              <br>
              I would like to direct the YANG doctors attention to one
              design choice<br>
              in this document:<br>
              <br>
              The document defines a normal "config true" data model,
              but this data<br>
              model is not intended to be implemented by a server, but
              rather it<br>
              defines the file format of a "MUD file".<br>
              <br>
              This idea is not new, it is used e.g. in the anima voucher
              document.<br>
              Normally, we would require that they use "rc:yang-data" to
              define such<br>
              a structure.<br>
              <br>
              However, the MUD file is supposed to contain some
              top-level nodes<br>
              defined in the MUD YANG module, and also some
              /acl:access-lists<br>
              nodes.=C2=A0 So even if the MUD document could define a
              rc:yang-data<br>
              structure for the top-level nodes defined in the MUD
              document, it<br>
              cannot get the access lists into this rc:yang-data
              structure.<br>
              <br>
              So the question to the YANG doctors is if this is ok, or
              if there is a<br>
              better way to define this file format.<br>
              <br>
            </blockquote>
            <div><br>
            </div>
            <div>Why is it a problem to use a grouping in rc:yang-data?</=
div>
            <div>This clearly needs to be rc:yang-data, not a real
              module with config=3Dtrue objects.</div>
            <div>I think the artifact can contain data that matches the
              structure of config data.</div>
            <div>It is an implementation detail to convert the artifact
              to config data in a datastore.</div>
            <div><br>
            </div>
            <div>=C2=A0</div>
            <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <br>
              /martin<br>
              <br>
              <br>
            </blockquote>
            <div><br>
            </div>
            <div>Andy</div>
            <div>=C2=A0</div>
            <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <br>
              Martin Bjorklund &lt;<a href=3D"mailto:mbj@tail-f.com"
                moz-do-not-send=3D"true">mbj@tail-f.com</a>&gt; wrote:<br=
>
              &gt; Reviewer: Martin Bjorklund<br>
              &gt; Review result: Ready with Issues<br>
              &gt;<br>
              &gt; Hi,<br>
              &gt;<br>
              &gt; I am the assigned YANG doctors reviewer for this
              document.=C2=A0 Here are<br>
              &gt; my comments:<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 Section 2 says:<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 The MUD file is limited to the serializat=
ion of a<br>
              &gt;=C2=A0 =C2=A0 small number of YANG schema, including th=
e models
              specified in the<br>
              &gt;=C2=A0 =C2=A0 following documents:<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 o=C2=A0 [I-D.ietf-netmod-acl-model]<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 o=C2=A0 [RFC6991]<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 Is the intention that *only* these models=
 are
              included, or *at<br>
              &gt;=C2=A0 =C2=A0 least* these models are included?<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 RFC6991 doesn't define any data nodes, so=
 I don't
              think it needs to<br>
              &gt;=C2=A0 =C2=A0 be listed.=C2=A0 I suggest you are a bit =
more specific,
              and list:<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 o=C2=A0 ietf-access-control-list
              [I-D.ietf-netmod-acl-model]<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 o=C2=A0 ietf-mud [...]<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 Section 3 uses the term "element" (it is used =
in
              other places as<br>
              &gt;=C2=A0 =C2=A0 well).=C2=A0 YANG uses the term "data nod=
e" or "node".=C2=A0
              Or "YANG data<br>
              &gt;=C2=A0 =C2=A0 node".=C2=A0 I suggest you use one of the=
se terms, and
              import the term<br>
              &gt;=C2=A0 =C2=A0 in your Terminology section.<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 Also, the YANG module uses the term "elem=
ent" to
              refer to "device":<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0leaf is-supported {<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0type boolean;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0description<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"The element is curre=
ntly supported<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 by the manufacturer.=
";<br>
              &gt;=C2=A0 =C2=A0 =C2=A0}<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 In your Terminology section you introduce the =
term
              "Thing".=C2=A0 But<br>
              &gt;=C2=A0 =C2=A0 the text often use "device".=C2=A0 Maybe =
use "device"
              consistently?<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 In order to get consistent indentation of the =
YANG
              modules, I<br>
              &gt;=C2=A0 =C2=A0 suggest you run:<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 pyang -f yang ietf-mud.yang<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 (and same for ietf-acldns.yang)<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 Ensure that description statements contain pro=
per
              sentences.=C2=A0 Also<br>
              &gt;=C2=A0 =C2=A0 ensure that the descriptions are descript=
ive.=C2=A0 As
              an example of the<br>
              &gt;=C2=A0 =C2=A0 latter, this is not a good description:<b=
r>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0description<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0"Which way are we talking ab=
out?";<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 In general, I found that the main documen=
t had
              better descriptions<br>
              &gt;=C2=A0 =C2=A0 than the YANG module.=C2=A0 Consider movi=
ng the text
              from the main<br>
              &gt;=C2=A0 =C2=A0 document to the YANG module (this also re=
duces the
              risk of<br>
              &gt;=C2=A0 =C2=A0 inconsistencies).=C2=A0 If don't want to =
move text, I
              think you need to<br>
              &gt;=C2=A0 =C2=A0 spend some effort on almost all descripti=
ons in
              the YANG module.<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 In both modules, make sure you have a single
              revision<br>
              &gt;=C2=A0 =C2=A0 statement.=C2=A0 Note that in IETF-terms,=
 a revision
              statement is added<br>
              &gt;=C2=A0 =C2=A0 when a new version of the module is publs=
ihed as
              an RFC (so the<br>
              &gt;=C2=A0 =C2=A0 initial RFC would have one revision state=
ment).<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 The "ietf-mud" module is a bit unorthodox; it
              defines configuration<br>
              &gt;=C2=A0 =C2=A0 data nodes, but it is not supposed to be
              implemented by a normal<br>
              &gt;=C2=A0 =C2=A0 NETCONF/RESTCONF server.=C2=A0 Rather, it=
 will be
              instantiated in a JSON<br>
              &gt;=C2=A0 =C2=A0 file.=C2=A0 I think this should be stated=
 in the
              description of the<br>
              &gt;=C2=A0 =C2=A0 module.<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 I don't think the feature "mud-acl" is necessa=
ry.=C2=A0
              It is only used<br>
              &gt;=C2=A0 =C2=A0 to make the acl augment conditional on th=
e
              feature.=C2=A0 I think that<br>
              &gt;=C2=A0 =C2=A0 if this module is supported, the feature =
is also
              supported.=C2=A0 Or do<br>
              &gt;=C2=A0 =C2=A0 you envision implementations of this modu=
le that
              would not support<br>
              &gt;=C2=A0 =C2=A0 this feature?=C2=A0 If so, maybe you can =
explain that
              use case in the<br>
              &gt;=C2=A0 =C2=A0 document.<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 leaf cache-validity could use a "units" statem=
ent:<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 units "hours";<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 I suggest you rename the grouping "access_list=
s"
              to "access-lists"<br>
              &gt;=C2=A0 =C2=A0 for consitency.<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 Should any of the leafs in "/metainfo" be
              mandatory?<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 The "extensions" leaf-list mentions an IANA
              registry for<br>
              &gt;=C2=A0 =C2=A0 extensions.=C2=A0 It would be usefule to =
mention this
              registry by name.<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 Also, shouldn't this registry be defined =
in the
              IANA Considerations<br>
              &gt;=C2=A0 =C2=A0 section?<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 Section 3.7 mentions a leaf "packet-direction"=
=2E=C2=A0
              There is no such<br>
              &gt;=C2=A0 =C2=A0 leaf in the YANG module.=C2=A0 There is o=
ne called
              "direction-initiated"<br>
              &gt;=C2=A0 =C2=A0 though.<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 But since the "/device" container contain=
s two
              different ACL sets,<br>
              &gt;=C2=A0 =C2=A0 one for "to" and one for "from", is this
              augmentation really<br>
              &gt;=C2=A0 =C2=A0 necessary?<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 The model has:<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0leaf local-networks {<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0type empty;<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"this string i=
s used to indicate networks<br>
              &gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 considered lo=
cal in a given environment.";<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 This leaf is of type "empty", but the des=
cription
              says it is a<br>
              &gt;=C2=A0 =C2=A0 string.<br>
              &gt;<br>
              &gt;=C2=A0 =C2=A0 Also, what is the format of this string?=C2=
=A0 (Hmm, I
              think the<br>
              &gt;=C2=A0 =C2=A0 description is wrong, this should indeed =
be type
              empty).<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 Would it be useful with an indication of the
              revision of "ietf-mud"<br>
              &gt;=C2=A0 =C2=A0 that is used as the schema for a MUD file=
?=C2=A0 I.e.,
              something like a<br>
              &gt;=C2=A0 =C2=A0 leaf "mud-module-revision" in the "metain=
fo"
              container.<br>
              &gt;<br>
              &gt;<br>
              &gt; o=C2=A0 The example in section 8 has some errors, e.g.=
, it
              has some<br>
              &gt;=C2=A0 =C2=A0 camelCase node names.<br>
              &gt;<br>
              &gt;<br>
              &gt; ______________________________<wbr>_________________<b=
r>
              &gt; yang-doctors mailing list<br>
              &gt; <a href=3D"mailto:yang-doctors@ietf.org"
                moz-do-not-send=3D"true">yang-doctors@ietf.org</a><br>
              &gt; <a
                href=3D"https://www.ietf.org/mailman/listinfo/yang-doctor=
s"
                rel=3D"noreferrer" target=3D"_blank" moz-do-not-send=3D"t=
rue">https://www.ietf.org/mailman/<wbr>listinfo/yang-doctors</a><br>
              &gt;<br>
              <br>
              ______________________________<wbr>_________________<br>
              yang-doctors mailing list<br>
              <a href=3D"mailto:yang-doctors@ietf.org"
                moz-do-not-send=3D"true">yang-doctors@ietf.org</a><br>
              <a
                href=3D"https://www.ietf.org/mailman/listinfo/yang-doctor=
s"
                rel=3D"noreferrer" target=3D"_blank" moz-do-not-send=3D"t=
rue">https://www.ietf.org/mailman/<wbr>listinfo/yang-doctors</a><br>
            </blockquote>
          </div>
          <br>
        </div>
      </div>
    </blockquote>
    <br>
  </body>
</html>

--------------7FF18E69F67EC7DE39C29943--

--8gI4I5mkCEPKFEGKe4VMHSJlxe8sDUbSv--

--rNc8PE6k3sGMIIbJxVDvQ2DPnUwlUdrXH
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2

iQEcBAEBCAAGBQJZn/tLAAoJEIe2a0bZ0nozcMcH/j9q9/JBg+2MiOmovnNqwXYN
7NH26bZMSIq3VSa/GLyjpfo8fSI7sijtxbiFFUpygoGbBWz9tNFXt8gxG4/jB+r6
J8ylRVVhRsSBdyqkEzMHjt5NRuZ5T67TPEulTwRzHB4xh60Ckj1CnvUkppahiR6/
LdJE1vX9ypVASyMJEh2+RLGql08PUrMgvDjnMFnjZzgyfyqAhEi/geIFdTsa6ErO
y6/5kiI/8OuybJP+2ExYL0epDpIibWZO8/6WEOXbzMNCl9VSSFcu0R/c7W0Evwcf
+TRJJULM8X1PtHEaRLpBukJh+chXec5HeCuuEgDw07ruwe+8sDJ/oalCpyEJqGI=
=AkbP
-----END PGP SIGNATURE-----

--rNc8PE6k3sGMIIbJxVDvQ2DPnUwlUdrXH--


From nobody Fri Aug 25 06:57:28 2017
Return-Path: <kwatsen@juniper.net>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 02F8C1326EC; Fri, 25 Aug 2017 06:57:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.019
X-Spam-Level: 
X-Spam-Status: No, score=-2.019 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=juniper.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id vCTP-mCHN_us; Fri, 25 Aug 2017 06:57:23 -0700 (PDT)
Received: from NAM02-BL2-obe.outbound.protection.outlook.com (mail-bl2nam02on0100.outbound.protection.outlook.com [104.47.38.100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5E40B13238E; Fri, 25 Aug 2017 06:57:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=/pT4qFWcSsgTD/2QfPQ098SFe5bT5btbQa9XiBCuOeQ=; b=kBwHSj9VbnaZAq5/l5sLFA4uhJIckF6nyMFIS+6mNIh5lva+pjnmcoDxQ+BH3V1YkImOlwbMZzqgy029MZYh2bbxLZPao12JW5z3rkNmUvnhsG8W+Rgbjbxbp8CcIkX9YZDEK2J1+REIkdLWcQ/IxbZfC1TBWRuiO/Fxt+f+Qok=
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com (10.160.117.151) by BN3PR0501MB1188.namprd05.prod.outlook.com (10.160.113.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.13.2; Fri, 25 Aug 2017 13:57:21 +0000
Received: from BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) by BN3PR0501MB1442.namprd05.prod.outlook.com ([10.160.117.151]) with mapi id 15.20.0013.005; Fri, 25 Aug 2017 13:57:21 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: Eliot Lear <lear@cisco.com>, Andy Bierman <andy@yumaworks.com>, "Martin Bjorklund" <mbj@tail-f.com>
CC: "draft-ietf-opsawg-mud.all@ietf.org" <draft-ietf-opsawg-mud.all@ietf.org>,  YANG Doctors <yang-doctors@ietf.org>
Thread-Topic: [yang-doctors] Yangdoctors early review of draft-ietf-opsawg-mud-08
Thread-Index: AQHTG0vqpYVdM6T1UkmxTgNqWPFBt6KRlv6AgACU1wCAArbBgP//9+cA
Date: Fri, 25 Aug 2017 13:57:21 +0000
Message-ID: <9DC534F4-5510-49F3-AA73-752CB1222343@juniper.net>
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com> <20170823.100659.305891042923397070.mbj@tail-f.com> <CABCOCHQznpgCYssekPz+-EjST13tisrdeuv_k6PppW0XpONA0w@mail.gmail.com> <76b23cb9-b174-c561-dee6-ad625e228fe8@cisco.com>
In-Reply-To: <76b23cb9-b174-c561-dee6-ad625e228fe8@cisco.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Microsoft-MacOutlook/f.20.0.170309
x-originating-ip: [66.129.241.14]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BN3PR0501MB1188; 6:zHmfwv8fPgtpO/z4NR1G9bAWWiImPrEn0I1ebC8QAacgKrQkt5T7RO9TnTc5SpAOiWlk+yBSeLNAZ45J8yHVcJkUyG0zGbQz+agvr77xzxhsXv83B6NMOtfhy4EexvOK16zT13Dp0Egc273rK03sI0KVsm83SbqeZcyIu0MKDxgvqD/xGtJyiQ09aPcWemzYyWnZGVKqAJtT9F4fgoruMzexbkX9I4B36u7HoZsDFvTm4HuQZ6KT9T8YnPYScUuVT/nwjmJo769FqvD223xm7nlYlwJ7hRx93Bk/j5mYeFGlL5o1brlrvkVutpf9tVafrJzjwO2Gd5/qtHncTOXVqg==; 5:1SOeEMAkUqW184wRW+uabnxkF/DQ+1I89HCQRMzYo0nK/tfD52RtBKs/YOCpjQqpW4HTcZ2vocnqMnomIRliEk33iBgQklEE32+adDEoDxPMyLEn/wefLm5mwFcJK6xJ55Gz5SMfDFQ8u9iJLL2f3A==; 24:Uok7QRiWBgH8pqWu6P2Ha8vHFI4af9EyYbnKDvboGtqqNZmZvX+ew3qNOw8Q6pKhBD3KGKtz9gPTddTSXNDq0Ymk4jo3619CswOPadq4qj8=; 7:QkoPay+nRJw9l4DRWtbRr4cZyFDWPTyR/T3Og87fwtbMZ3MSw7JAwopz+gDTTiI+7JWfR888tt4xrJEKmV8v+bHtIzXefCDIGv1fPyk8GckWbtudWX9XYpRc8gbCHH5SkhVRXc4wH+W9pfM7MplUiSAhfV2cc3aDL6k/wddV5jHzcqYxnkuUIyd2fSFchhiGxh5SPe1p1bOyW213WjUX4ne95NutcZ9N87SyC0Xod08=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;
x-ms-office365-filtering-correlation-id: 797192e9-1705-4044-a997-08d4ebc13504
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(300000502095)(300135100095)(22001)(2017030254152)(300000503095)(300135400095)(48565401081)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:BN3PR0501MB1188; 
x-ms-traffictypediagnostic: BN3PR0501MB1188:
x-exchange-antispam-report-test: UriScan:(158342451672863)(95692535739014)(21748063052155); 
x-microsoft-antispam-prvs: <BN3PR0501MB11880AD84B6EFCE3859B5F9FA59B0@BN3PR0501MB1188.namprd05.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(10201501046)(100000703101)(100105400095)(93006095)(93001095)(3002001)(6055026)(6041248)(20161123560025)(20161123555025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123564025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN3PR0501MB1188; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN3PR0501MB1188; 
x-forefront-prvs: 041032FF37
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39860400002)(189002)(199003)(24454002)(377454003)(25786009)(106356001)(2900100001)(82746002)(105586002)(8936002)(4001350100001)(33656002)(2950100002)(5660300001)(478600001)(102836003)(3846002)(77096006)(6486002)(6506006)(68736007)(101416001)(6116002)(6436002)(14454004)(4326008)(3280700002)(230783001)(236005)(3660700001)(6512007)(54896002)(6306002)(53936002)(81166006)(81156014)(229853002)(54906002)(99286003)(36756003)(6246003)(2906002)(8676002)(83716003)(97736004)(86362001)(66066001)(189998001)(54356999)(50986999)(76176999)(93886005)(83506001)(7736002); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR0501MB1188; H:BN3PR0501MB1442.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; 
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
authentication-results: spf=none (sender IP is ) smtp.mailfrom=kwatsen@juniper.net; 
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_9DC534F4551049F3AA73752CB1222343junipernet_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Aug 2017 13:57:21.5858 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0501MB1188
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/dB6tOoSI6_cIW-KLDXTTZVkEfkI>
Subject: Re: [yang-doctors] Yangdoctors early review of draft-ietf-opsawg-mud-08
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 25 Aug 2017 13:57:26 -0000

--_000_9DC534F4551049F3AA73752CB1222343junipernet_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

DQoxLiBjYW4gdGhleT8geWVzLiAgaXMgaXQgYSB2YWxpZCBpbnN0YW5jZSBkb2N1bWVudD8gbm8u
DQoNCjIuIHlvdSBtZWFuIHRoZSAibXVkIiAqY29udGFpbmVyKiwgcmlnaHQ/ICBJcyBpdCBsZWdh
bD8gbWF5YmUuIFJGQyA4MDQwIGRvZXNuJ3QgcHJlY2x1ZGUgaXQgYW5kLCBvYnZpb3VzbHksIGlm
IGl0IGRvZXNuJ3QgZXhpc3QsIHRoZW4gbm8gb25lJ3MgZ29pbmcgdG8gZ2VuZXJhdGUgYSB5YW5n
LWRhdGEgZmlsZSBmb3IgaXQuDQoNCksuDQoNCg0KT24gOC8yNS8xNywgNjoyNiBBTSwgInlhbmct
ZG9jdG9ycyBvbiBiZWhhbGYgb2YgRWxpb3QgTGVhciIgPHlhbmctZG9jdG9ycy1ib3VuY2VzQGll
dGYub3JnPG1haWx0bzp5YW5nLWRvY3RvcnMtYm91bmNlc0BpZXRmLm9yZz4gb24gYmVoYWxmIG9m
IGxlYXJAY2lzY28uY29tPG1haWx0bzpsZWFyQGNpc2NvLmNvbT4+IHdyb3RlOg0KDQoNCkhpIEFu
ZHkgYW5kIG90aGVyIGRvY3RvcnMsDQoNCkZvbGxvd2luZyB1cCBvbiB5b3VyIG5vdGUsIEkgaGF2
ZSBiZWVuIGRpc2N1c3Npbmcgd2l0aCBhIGZldyBwZW9wbGUgaG93IGV4YWN0bHkgdG8gZW5jb2Rl
IHN0dWZmLiAgQmVsb3cgcGxlYXNlIGZpbmQgc29tZXRoaW5nIG9mIGEgc3RyYXdtYW4uICBBcyBj
dXJyZW50bHkgc3RydWN0dXJlZCwgaW4gYSBNVUQgZmlsZSB0aGVyZSB3b3VsZCBiZSB0d28gcm9v
dCBsZXZlbCBvYmplY3RzOiBhIG11ZC1hcnRpZmFjdCBhbmQgYSBsaXN0IG9mIGFjY2Vzcy1saXN0
cy4gIEkgaGF2ZSBhIGZldyBxdWVzdGlvbnM6DQoNCiAgMS4gIENhbiBib3RoIG9mIHRoZXNlIHR3
byBvYmplY3RzLCBvbmUgb2YgdGhlbSBiZWluZyBkZWZpbmVkIHdpdGhpbiByYzp5YW5nLWRhdGEg
YW5kIGFub3RoZXIgbm90LCBiZSByZXByZXNlbnRlZCBpbiB0aGUgc2FtZSBKU09OIGZpbGUgYXMg
dHdvIHJvb3QgbGV2ZWwgb2JqZWN0cz8NCiAgMi4gIEluIGFudGljaXBhdGlvbiB0aGF0IHNvbWVv
bmUgbWlnaHQgc29tZWRheSB3YW50IHRvIGhhdmUgdGhpcyBpbmZvcm1hdGlvbiBleHByZXNzZWQg
YnkgYSBORVRDT05GIHNlcnZlciwgSSBwb25kZXIgc3RpbGwgbWFraW5nIHRoZSAibXVkIiBtb2R1
bGUgYmVsb3cgYSBwcmVzZW5jZSBjb250YWluZXIuICBJcyB0aGF0IGxlZ2FsL2FkdmlzYWJsZSB3
aXRoaW4gdGhlIGNvbnRleHQgb2YgcmM6eWFuZy1kYXRhPw0KVGhhbmtzIG11Y2gsDQoNCkVsaW90
DQoNCnB5YW5nIC0tc3RyaWN0IC0tbGludCAtLWlldGYgLS10cmVlLXByaW50LXlhbmctZGF0YSAt
ZiB0cmVlIGlldGYtbXVkLnlhbmcNCg0KbW9kdWxlOiBpZXRmLW11ZA0KDQogIGF1Z21lbnQgL2Fj
bDphY2Nlc3MtbGlzdHMvYWNsOmFjbC9hY2w6YWNjZXNzLWxpc3QtZW50cmllcy9hY2w6YWNlL2Fj
bDptYXRjaGVzOg0KDQogICAgKy0tcncgbXVkLWFjbA0KDQogICAgICAgKy0tcncgbWFudWZhY3R1
cmVyPyAgICAgICAgaW5ldDpob3N0DQoNCiAgICAgICArLS1ydyBzYW1lLW1hbnVmYWN0dXJlcj8g
ICBlbXB0eQ0KDQogICAgICAgKy0tcncgbW9kZWw/ICAgICAgICAgICAgICAgc3RyaW5nDQoNCiAg
ICAgICArLS1ydyBsb2NhbC1uZXR3b3Jrcz8gICAgICBlbXB0eQ0KDQogICAgICAgKy0tcncgY29u
dHJvbGxlcj8gICAgICAgICAgaW5ldDp1cmkNCg0KICAgICAgICstLXJ3IG15LWNvbnRyb2xsZXI/
ICAgICAgIGVtcHR5DQoNCiAgYXVnbWVudCAvYWNsOmFjY2Vzcy1saXN0cy9hY2w6YWNsL2FjbDph
Y2Nlc3MtbGlzdC1lbnRyaWVzL2FjbDphY2UvYWNsOm1hdGNoZXMvYWNsOnRjcC1hY2w6DQoNCiAg
ICArLS1ydyBkaXJlY3Rpb24taW5pdGlhdGVkPyAgIGRpcmVjdGlvbg0KDQogIHlhbmctZGF0YToN
Cg0KICBtdWQtYXJ0aWZhY3QNCg0KICAgICAgKy0tLS0gbXVkDQoNCiAgICAgICAgICstLS0tIG11
ZC11cmwgICAgICAgICAgICAgICBpbmV0OnVyaQ0KDQogICAgICAgICArLS0tLSBsYXN0LXVwZGF0
ZSAgICAgICAgICAgeWFuZzpkYXRlLWFuZC10aW1lDQoNCiAgICAgICAgICstLS0tIGNhY2hlLXZh
bGlkaXR5PyAgICAgICB1aW50OA0KDQogICAgICAgICArLS0tLSBtYXNhLXNlcnZlcj8gICAgICAg
ICAgaW5ldDp1cmkNCg0KICAgICAgICAgKy0tLS0gaXMtc3VwcG9ydGVkPyAgICAgICAgIGJvb2xl
YW4NCg0KICAgICAgICAgKy0tLS0gc3lzdGVtaW5mbz8gICAgICAgICAgIGluZXQ6dXJpDQoNCiAg
ICAgICAgICstLS0tIGV4dGVuc2lvbnMqICAgICAgICAgICBzdHJpbmcNCg0KICAgICAgICAgKy0t
LS0gZnJvbS1kZXZpY2UtcG9saWN5DQoNCiAgICAgICAgIHwgICstLS0tIGFjY2Vzcy1saXN0cw0K
DQogICAgICAgICB8ICAgICArLS0tLSBhY2Nlc3MtbGlzdCogW2FjbC1uYW1lIGFjbC10eXBlXQ0K
DQogICAgICAgICB8ICAgICAgICArLS0tLSBhY2wtbmFtZSAgICAtPiAvYWNsOmFjY2Vzcy1saXN0
cy9hY2wvYWNsLW5hbWUNCg0KICAgICAgICAgfCAgICAgICAgKy0tLS0gYWNsLXR5cGUgICAgaWRl
bnRpdHlyZWYNCg0KICAgICAgICAgKy0tLS0gdG8tZGV2aWNlLXBvbGljeQ0KDQogICAgICAgICAg
ICArLS0tLSBhY2Nlc3MtbGlzdHMNCg0KICAgICAgICAgICAgICAgKy0tLS0gYWNjZXNzLWxpc3Qq
IFthY2wtbmFtZSBhY2wtdHlwZV0NCg0KICAgICAgICAgICAgICAgICAgKy0tLS0gYWNsLW5hbWUg
ICAgLT4gL2FjbDphY2Nlc3MtbGlzdHMvYWNsL2FjbC1uYW1lDQoNCiAgICAgICAgICAgICAgICAg
ICstLS0tIGFjbC10eXBlICAgIGlkZW50aXR5cmVmDQoNCg0K

--_000_9DC534F4551049F3AA73752CB1222343junipernet_
Content-Type: text/html; charset="utf-8"
Content-ID: <9E03E7D36CD1D041969AE97258416A91@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64

PGh0bWwgeG1sbnM6bz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlIiB4
bWxuczp3PSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTp3b3JkIiB4bWxuczptPSJo
dHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL29mZmljZS8yMDA0LzEyL29tbWwiIHhtbG5zPSJo
dHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtaHRtbDQwIj4NCjxoZWFkPg0KPG1ldGEgaHR0cC1lcXVp
dj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiPg0KPG1l
dGEgbmFtZT0iVGl0bGUiIGNvbnRlbnQ9IiI+DQo8bWV0YSBuYW1lPSJLZXl3b3JkcyIgY29udGVu
dD0iIj4NCjxtZXRhIG5hbWU9IkdlbmVyYXRvciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUg
KGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxlPjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8N
CkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3IjsNCglwYW5vc2UtMToyIDcg
MyA5IDIgMiA1IDIgNCA0O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IkNhbWJyaWEgTWF0
aCI7DQoJcGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQt
ZmFtaWx5OkNhbGlicmk7DQoJcGFub3NlLTE6MiAxNSA1IDIgMiAyIDQgMyAyIDQ7fQ0KLyogU3R5
bGUgRGVmaW5pdGlvbnMgKi8NCnAuTXNvTm9ybWFsLCBsaS5Nc29Ob3JtYWwsIGRpdi5Nc29Ob3Jt
YWwNCgl7bWFyZ2luOjBpbjsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJZm9udC1zaXplOjEy
LjBwdDsNCglmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjt9DQphOmxpbmssIHNwYW4uTXNv
SHlwZXJsaW5rDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgljb2xvcjpibHVlOw0KCXRleHQt
ZGVjb3JhdGlvbjp1bmRlcmxpbmU7fQ0KYTp2aXNpdGVkLCBzcGFuLk1zb0h5cGVybGlua0ZvbGxv
d2VkDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgljb2xvcjpwdXJwbGU7DQoJdGV4dC1kZWNv
cmF0aW9uOnVuZGVybGluZTt9DQpwDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgltc28tbWFy
Z2luLXRvcC1hbHQ6YXV0bzsNCgltYXJnaW4tcmlnaHQ6MGluOw0KCW1zby1tYXJnaW4tYm90dG9t
LWFsdDphdXRvOw0KCW1hcmdpbi1sZWZ0OjBpbjsNCglmb250LXNpemU6MTIuMHB0Ow0KCWZvbnQt
ZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iO30NCnByZQ0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7
DQoJbXNvLXN0eWxlLWxpbms6IkhUTUwgUHJlZm9ybWF0dGVkIENoYXIiOw0KCW1hcmdpbjowaW47
DQoJbWFyZ2luLWJvdHRvbTouMDAwMXB0Ow0KCWZvbnQtc2l6ZToxMC4wcHQ7DQoJZm9udC1mYW1p
bHk6IkNvdXJpZXIgTmV3Ijt9DQpzcGFuLkhUTUxQcmVmb3JtYXR0ZWRDaGFyDQoJe21zby1zdHls
ZS1uYW1lOiJIVE1MIFByZWZvcm1hdHRlZCBDaGFyIjsNCgltc28tc3R5bGUtcHJpb3JpdHk6OTk7
DQoJbXNvLXN0eWxlLWxpbms6IkhUTUwgUHJlZm9ybWF0dGVkIjsNCglmb250LWZhbWlseTpDb3Vy
aWVyO30NCnNwYW4uRW1haWxTdHlsZTIwDQoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsLXJlcGx5
Ow0KCWZvbnQtZmFtaWx5OkNhbGlicmk7DQoJZm9udC12YXJpYW50Om5vcm1hbCAhaW1wb3J0YW50
Ow0KCWNvbG9yOndpbmRvd3RleHQ7DQoJdGV4dC10cmFuc2Zvcm06bm9uZTsNCgl0ZXh0LWRlY29y
YXRpb246bm9uZSBub25lOw0KCXZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO30NCnNwYW4ubXNvSW5z
DQoJe21zby1zdHlsZS10eXBlOmV4cG9ydC1vbmx5Ow0KCW1zby1zdHlsZS1uYW1lOiIiOw0KCXRl
eHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7DQoJY29sb3I6dGVhbDt9DQouTXNvQ2hwRGVmYXVsdA0K
CXttc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTsNCglmb250LXNpemU6MTAuMHB0O30NCkBwYWdl
IFdvcmRTZWN0aW9uMQ0KCXtzaXplOjguNWluIDExLjBpbjsNCgltYXJnaW46MS4waW4gMS4waW4g
MS4waW4gMS4waW47fQ0KZGl2LldvcmRTZWN0aW9uMQ0KCXtwYWdlOldvcmRTZWN0aW9uMTt9DQov
KiBMaXN0IERlZmluaXRpb25zICovDQpAbGlzdCBsMA0KCXttc28tbGlzdC1pZDoxMzkwMzI5MTc7
DQoJbXNvLWxpc3QtdGVtcGxhdGUtaWRzOjI0Mzg1MjY2O30NCm9sDQoJe21hcmdpbi1ib3R0b206
MGluO30NCnVsDQoJe21hcmdpbi1ib3R0b206MGluO30NCi0tPjwvc3R5bGU+DQo8L2hlYWQ+DQo8
Ym9keSBiZ2NvbG9yPSJ3aGl0ZSIgbGFuZz0iRU4tVVMiIGxpbms9ImJsdWUiIHZsaW5rPSJwdXJw
bGUiPg0KPGRpdiBjbGFzcz0iV29yZFNlY3Rpb24xIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxz
cGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJpIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48
L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q2FsaWJy
aSI+MS4gY2FuIHRoZXk/IHllcy4mbmJzcDsgaXMgaXQgYSB2YWxpZCBpbnN0YW5jZSBkb2N1bWVu
dD8gbm8uPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g
c3R5bGU9ImZvbnQtZmFtaWx5OkNhbGlicmkiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJpIj4y
LiB5b3UgbWVhbiB0aGUgJnF1b3Q7bXVkJnF1b3Q7ICpjb250YWluZXIqLCByaWdodD8mbmJzcDsg
SXMgaXQgbGVnYWw/IG1heWJlLiBSRkMgODA0MCBkb2Vzbid0IHByZWNsdWRlIGl0IGFuZCwgb2J2
aW91c2x5LCBpZiBpdCBkb2Vzbid0IGV4aXN0LCB0aGVuIG5vIG9uZSdzIGdvaW5nIHRvIGdlbmVy
YXRlIGEgeWFuZy1kYXRhIGZpbGUgZm9yIGl0LjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpDYWxpYnJpIj48bzpwPiZu
YnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0i
Zm9udC1mYW1pbHk6Q2FsaWJyaSI+Sy48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6Q2FsaWJyaSI+PG86cD4mbmJzcDs8
L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQt
ZmFtaWx5OkNhbGlicmkiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxkaXY+DQo8ZGl2
Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+T24gOC8yNS8xNywgNjoyNiBBTSwgJnF1b3Q7eWFuZy1k
b2N0b3JzIG9uIGJlaGFsZiBvZiBFbGlvdCBMZWFyJnF1b3Q7ICZsdDs8YSBocmVmPSJtYWlsdG86
eWFuZy1kb2N0b3JzLWJvdW5jZXNAaWV0Zi5vcmciPnlhbmctZG9jdG9ycy1ib3VuY2VzQGlldGYu
b3JnPC9hPiBvbiBiZWhhbGYgb2YNCjxhIGhyZWY9Im1haWx0bzpsZWFyQGNpc2NvLmNvbSI+bGVh
ckBjaXNjby5jb208L2E+Jmd0OyB3cm90ZTo8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPC9kaXY+
DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8L2Rp
dj4NCjxwPkhpIEFuZHkgYW5kIG90aGVyIGRvY3RvcnMsPG86cD48L286cD48L3A+DQo8cD5Gb2xs
b3dpbmcgdXAgb24geW91ciBub3RlLCBJIGhhdmUgYmVlbiBkaXNjdXNzaW5nIHdpdGggYSBmZXcg
cGVvcGxlIGhvdyBleGFjdGx5IHRvIGVuY29kZSBzdHVmZi4mbmJzcDsgQmVsb3cgcGxlYXNlIGZp
bmQgc29tZXRoaW5nIG9mIGEgc3RyYXdtYW4uJm5ic3A7IEFzIGN1cnJlbnRseSBzdHJ1Y3R1cmVk
LCBpbiBhIE1VRCBmaWxlIHRoZXJlIHdvdWxkIGJlIHR3byByb290IGxldmVsIG9iamVjdHM6IGEg
bXVkLWFydGlmYWN0IGFuZCBhIGxpc3Qgb2YgYWNjZXNzLWxpc3RzLiZuYnNwOw0KIEkgaGF2ZSBh
IGZldyBxdWVzdGlvbnM6PG86cD48L286cD48L3A+DQo8b2wgc3RhcnQ9IjEiIHR5cGU9IjEiPg0K
PGxpIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28t
bWFyZ2luLWJvdHRvbS1hbHQ6YXV0bzttc28tbGlzdDpsMCBsZXZlbDEgbGZvMSI+DQpDYW4gYm90
aCBvZiB0aGVzZSB0d28gb2JqZWN0cywgb25lIG9mIHRoZW0gYmVpbmcgZGVmaW5lZCB3aXRoaW4g
cmM6eWFuZy1kYXRhIGFuZCBhbm90aGVyIG5vdCwgYmUgcmVwcmVzZW50ZWQgaW4gdGhlIHNhbWUg
SlNPTiBmaWxlIGFzIHR3byByb290IGxldmVsIG9iamVjdHM/DQo8bzpwPjwvbzpwPjwvbGk+PGxp
IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFy
Z2luLWJvdHRvbS1hbHQ6YXV0bzttc28tbGlzdDpsMCBsZXZlbDEgbGZvMSI+DQpJbiBhbnRpY2lw
YXRpb24gdGhhdCBzb21lb25lIG1pZ2h0IHNvbWVkYXkgd2FudCB0byBoYXZlIHRoaXMgaW5mb3Jt
YXRpb24gZXhwcmVzc2VkIGJ5IGEgTkVUQ09ORiBzZXJ2ZXIsIEkgcG9uZGVyIHN0aWxsIG1ha2lu
ZyB0aGUgJnF1b3Q7bXVkJnF1b3Q7IG1vZHVsZSBiZWxvdyBhIHByZXNlbmNlIGNvbnRhaW5lci4m
bmJzcDsgSXMgdGhhdCBsZWdhbC9hZHZpc2FibGUgd2l0aGluIHRoZSBjb250ZXh0IG9mIHJjOnlh
bmctZGF0YT88bzpwPjwvbzpwPjwvbGk+PC9vbD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPlRoYW5r
cyBtdWNoLDxicj4NCjxicj4NCkVsaW90PG86cD48L286cD48L3A+DQo8cHJlPnB5YW5nIC0tc3Ry
aWN0IC0tbGludCAtLWlldGYgLS10cmVlLXByaW50LXlhbmctZGF0YSAtZiB0cmVlIGlldGYtbXVk
Lnlhbmc8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5tb2R1bGU6IGlldGYtbXVkPG86cD48L286cD48
L3ByZT4NCjxwcmU+Jm5ic3A7IGF1Z21lbnQgL2FjbDphY2Nlc3MtbGlzdHMvYWNsOmFjbC9hY2w6
YWNjZXNzLWxpc3QtZW50cmllcy9hY2w6YWNlL2FjbDptYXRjaGVzOjxvOnA+PC9vOnA+PC9wcmU+
DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyAmIzQzOy0tcncgbXVkLWFjbDxvOnA+PC9vOnA+PC9w
cmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmIzQzOy0tcncg
bWFudWZhY3R1cmVyPyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBp
bmV0Omhvc3Q8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsgJiM0MzstLXJ3IHNhbWUtbWFudWZhY3R1cmVyPyZuYnNwOyZuYnNwOyBlbXB0
eTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyAmIzQzOy0tcncgbW9kZWw/Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHN0cmluZzxv
OnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyAmIzQzOy0tcncgbG9jYWwtbmV0d29ya3M/Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
IGVtcHR5PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7ICYjNDM7LS1ydyBjb250cm9sbGVyPyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpbmV0OnVyaTxvOnA+PC9vOnA+PC9wcmU+DQo8
cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmIzQzOy0tcncgbXktY29u
dHJvbGxlcj8mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZW1wdHk8bzpwPjwv
bzpwPjwvcHJlPg0KPHByZT4mbmJzcDsgYXVnbWVudCAvYWNsOmFjY2Vzcy1saXN0cy9hY2w6YWNs
L2FjbDphY2Nlc3MtbGlzdC1lbnRyaWVzL2FjbDphY2UvYWNsOm1hdGNoZXMvYWNsOnRjcC1hY2w6
PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7ICYjNDM7LS1ydyBkaXJl
Y3Rpb24taW5pdGlhdGVkPyZuYnNwOyZuYnNwOyBkaXJlY3Rpb248bzpwPjwvbzpwPjwvcHJlPg0K
PHByZT4mbmJzcDsgeWFuZy1kYXRhOjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyBtdWQt
YXJ0aWZhY3Q8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsgJiM0MzstLS0tIG11ZDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmIzQzOy0tLS0gbXVkLXVybCZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpbmV0OnVyaTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmIzQzOy0tLS0g
bGFzdC11cGRhdGUmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsgeWFuZzpkYXRlLWFuZC10aW1lPG86cD48L286cD48L3ByZT4NCjxwcmU+
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICYjNDM7LS0t
LSBjYWNoZS12YWxpZGl0eT8mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdWlu
dDg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsgJiM0MzstLS0tIG1hc2Etc2VydmVyPyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpbmV0OnVyaTxvOnA+PC9vOnA+
PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyAmIzQzOy0tLS0gaXMtc3VwcG9ydGVkPyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyBib29sZWFuPG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICYjNDM7LS0tLSBzeXN0
ZW1pbmZvPyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyBpbmV0OnVyaTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmIzQzOy0tLS0gZXh0ZW5zaW9ucyom
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsgc3RyaW5nPG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICYjNDM7LS0tLSBmcm9tLWRldmljZS1wb2xpY3k8bzpw
PjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsgfCZuYnNwOyAmIzQzOy0tLS0gYWNjZXNzLWxpc3RzPG86cD48L286cD48L3By
ZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
IHwmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJiM0MzstLS0tIGFjY2Vzcy1saXN0KiBbYWNsLW5h
bWUgYWNsLXR5cGVdPG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsgJiM0MzstLS0tIGFjbC1uYW1lJm5ic3A7Jm5ic3A7Jm5ic3A7IC0mZ3Q7
IC9hY2w6YWNjZXNzLWxpc3RzL2FjbC9hY2wtbmFtZTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICYjNDM7LS0tLSBhY2wtdHlwZSZuYnNw
OyZuYnNwOyZuYnNwOyBpZGVudGl0eXJlZjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmIzQzOy0tLS0gdG8tZGV2
aWNlLXBvbGljeTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmIzQzOy0tLS0gYWNj
ZXNzLWxpc3RzPG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7ICYjNDM7LS0tLSBhY2Nlc3MtbGlzdCogW2FjbC1uYW1lIGFjbC10eXBlXTxvOnA+PC9vOnA+
PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu
YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw
OyAmIzQzOy0tLS0gYWNsLW5hbWUmbmJzcDsmbmJzcDsmbmJzcDsgLSZndDsgL2FjbDphY2Nlc3Mt
bGlzdHMvYWNsL2FjbC1uYW1lPG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICYjNDM7LS0tLSBhY2wtdHlwZSZuYnNwOyZu
YnNwOyZuYnNwOyBpZGVudGl0eXJlZjxvOnA+PC9vOnA+PC9wcmU+DQo8cCBjbGFzcz0iTXNvTm9y
bWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5i
c3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2JvZHk+DQo8L2h0bWw+DQo=

--_000_9DC534F4551049F3AA73752CB1222343junipernet_--


From nobody Mon Aug 28 01:32:05 2017
Return-Path: <lear@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1BBAA132CEF; Mon, 28 Aug 2017 01:32:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.5
X-Spam-Level: 
X-Spam-Status: No, score=-14.5 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Qv2a5GOU4MHI; Mon, 28 Aug 2017 01:32:00 -0700 (PDT)
Received: from aer-iport-2.cisco.com (aer-iport-2.cisco.com [173.38.203.52]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 868AF132025; Mon, 28 Aug 2017 01:31:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=18653; q=dns/txt; s=iport; t=1503909120; x=1505118720; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to; bh=jKDtCfQWBoCvmqacSDM7y9sirWQAuzC/6oAhU0e3fio=; b=aykh8zZDPzqL0Oinj6hHfEt0Zq004IoZKv5pDi1qjIfcqZVrRqUNQsIy 4paE1HevKz/iVnOBR3QBFyvHnhuBe4Z9AS6zET0FerJ4ezDnSKjLD+PZ5 FmP3xII+Bgbs+qnINUXsyHJ9io93LeL+iZGwHBrlNfQZCV95R8p1HeL8b M=;
X-Files: signature.asc : 481
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0BPAQD006NZ/xbLJq1bGgEBAQECAQEBA?= =?us-ascii?q?QgBAQEBgm+GW4oddJESkGiFPg6CBAeFQAKELhgBAgEBAQEBAQFrKIUZAQQBI1Y?= =?us-ascii?q?FCwsONAICVwYBDAgBAYolCLIRgicnizIBAQEBAQEBAwEBAQEBAQEBAQEBDg+DK?= =?us-ascii?q?oUzK4J9hE4PAoMpgkIfBYoNhxSHCYg6hDSCIYRXiRqCEoVmg1mHF4l0jEkfOIE?= =?us-ascii?q?NMiEIHBVJhx0+iF2CQQEBAQ?=
X-IronPort-AV: E=Sophos;i="5.41,440,1498521600";  d="asc'?scan'208,217";a="654230079"
Received: from aer-iport-nat.cisco.com (HELO aer-core-2.cisco.com) ([173.38.203.22]) by aer-iport-2.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Aug 2017 08:31:55 +0000
Received: from [10.61.198.200] ([10.61.198.200]) by aer-core-2.cisco.com (8.14.5/8.14.5) with ESMTP id v7S8VsC8018749; Mon, 28 Aug 2017 08:31:54 GMT
To: Martin Bjorklund <mbj@tail-f.com>, yang-doctors@ietf.org
Cc: draft-ietf-opsawg-mud.all@ietf.org, opsawg@ietf.org
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com>
From: Eliot Lear <lear@cisco.com>
Message-ID: <eec794de-73b4-2e95-b014-fc1bfab82873@cisco.com>
Date: Mon, 28 Aug 2017 10:31:54 +0200
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
MIME-Version: 1.0
In-Reply-To: <150340909415.6001.14045177084948571272@ietfa.amsl.com>
Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="Ms80gB9GTWU6M7pfNQSOrbCm6J39Nenac"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/4A3ttMzg-NMZHG3QcJiYz34TLC4>
Subject: Re: [yang-doctors] Yangdoctors early review of draft-ietf-opsawg-mud-08
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 28 Aug 2017 08:32:03 -0000

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--Ms80gB9GTWU6M7pfNQSOrbCm6J39Nenac
Content-Type: multipart/mixed; boundary="Wp4IGo5rKcnlqcO8gmEmVG1WhuX67JoGm";
 protected-headers="v1"
From: Eliot Lear <lear@cisco.com>
To: Martin Bjorklund <mbj@tail-f.com>, yang-doctors@ietf.org
Cc: draft-ietf-opsawg-mud.all@ietf.org, opsawg@ietf.org
Message-ID: <eec794de-73b4-2e95-b014-fc1bfab82873@cisco.com>
Subject: Re: Yangdoctors early review of draft-ietf-opsawg-mud-08
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com>
In-Reply-To: <150340909415.6001.14045177084948571272@ietfa.amsl.com>

--Wp4IGo5rKcnlqcO8gmEmVG1WhuX67JoGm
Content-Type: multipart/alternative;
 boundary="------------3EEC0AC16D5F76F97C91F768"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------3EEC0AC16D5F76F97C91F768
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Hi Martin,

Thanks for performing the review.  Please see responses below.

=C2=A0On 8/22/17 3:38 PM, Martin Bjorklund wrote:

> Reviewer: Martin Bjorklund
> Review result: Ready with Issues
>
> Hi,
>
> I am the assigned YANG doctors reviewer for this document.  Here are
> my comments:
>
>
> o  Section 2 says:
>
>    The MUD file is limited to the serialization of a
>    small number of YANG schema, including the models specified in the
>    following documents:
>
>    o  [I-D.ietf-netmod-acl-model]
>
>    o  [RFC6991]
>
>    Is the intention that *only* these models are included, or *at
>    least* these models are included?

ONLY.

>    RFC6991 doesn't define any data nodes, so I don't think it needs to
>    be listed. =20

Will remove.

> I suggest you are a bit more specific, and list:
>
>      o  ietf-access-control-list [I-D.ietf-netmod-acl-model]
>
>      o  ietf-mud [...]

Will do.

> o  Section 3 uses the term "element" (it is used in other places as
>    well).  YANG uses the term "data node" or "node".  Or "YANG data
>    node".  I suggest you use one of these terms, and import the term
>    in your Terminology section.

Will replace.

>    Also, the YANG module uses the term "element" to refer to "device":
>
>     leaf is-supported {
>       type boolean;
>       description
>         "The element is currently supported
>          by the manufacturer.";
>     }
>
Will correct.

> o  In your Terminology section you introduce the term "Thing".  But
>    the text often use "device".  Maybe use "device" consistently?
>
Will correct.

> o  In order to get consistent indentation of the YANG modules, I
>    suggest you run:
>
>      pyang -f yang ietf-mud.yang
>
>    (and same for ietf-acldns.yang)
>
We are making some changes, and are making heavy use of pyang --ietf
--strict...

> o  Ensure that description statements contain proper sentences.  Also
>    ensure that the descriptions are descriptive.  As an example of the
>    latter, this is not a good description:
>
>     description
>       "Which way are we talking about?";
>
>    In general, I found that the main document had better descriptions
>    than the YANG module.  Consider moving the text from the main
>    document to the YANG module (this also reduces the risk of
>    inconsistencies).  If don't want to move text, I think you need to
>    spend some effort on almost all descriptions in the YANG module.

As we move toward completion I may ask for your help.=C2=A0 I am nervous =
of
simply moving chunks of text into the descriptions because I think we
have a fairly readable document outside of the model.=C2=A0=C2=A0 I am pe=
rfectly
happy to copy text in, however.

> o  In both modules, make sure you have a single revision
>    statement.  Note that in IETF-terms, a revision statement is added
>    when a new version of the module is publsihed as an RFC (so the
>    initial RFC would have one revision statement).

Ok.

> o  The "ietf-mud" module is a bit unorthodox; it defines configuration
>    data nodes, but it is not supposed to be implemented by a normal
>    NETCONF/RESTCONF server.  Rather, it will be instantiated in a JSON
>    file.  I think this should be stated in the description of the
>    module.
>
Ok.

> o  I don't think the feature "mud-acl" is necessary.  It is only used
>    to make the acl augment conditional on the feature.  I think that
>    if this module is supported, the feature is also supported.  Or do
>    you envision implementations of this module that would not support
>    this feature?  If so, maybe you can explain that use case in the
>    document.

Fair point.=C2=A0 This was included in keeping with the acl model's
direction, but given that it is already an augment, you're right.

> o  leaf cache-validity could use a "units" statement:
>
>      units "hours";
>
Ok.

> o  I suggest you rename the grouping "access_lists" to "access-lists"
>    for consitency.

Ok.

> o  Should any of the leafs in "/metainfo" be mandatory?
>
Yes.=C2=A0 This has been the subject of considerable discussion.  I propo=
se to modify the model to include an rc:yang-data statement, as well as t=
o make the mud container a presence container.  I believe either would al=
low us to address this matter.  In addition, we'll add a mud-url element =
to make it possible for the entry to be self-identifying.  This would all=
ow for a very simply "uses", should someone want to borrow the model to b=
uild out a configuration data store.

Indeed, based on these changes, we're attempting to consolidate the # of =
containers (or at least avoid an explosion of them).

Finally, this leaves open precisely which nodes should be mandatory.  To =
me, last-update should be mandatory, as well as the mud-url.  Joe would l=
ike "is-supported" covered, and I am not adverse.  I don't think "cache-v=
alidity" needs to be mandatory, but rather should have a default value of=
 48 hours.
=C2=A0

> o  The "extensions" leaf-list mentions an IANA registry for
>    extensions.  It would be usefule to mention this registry by name.
>
>    Also, shouldn't this registry be defined in the IANA Considerations
>    section?

Yes.

> o  Section 3.7 mentions a leaf "packet-direction".  There is no such
>    leaf in the YANG module.  There is one called "direction-initiated"
>    though.

This is an artifact of an earlier version that needs to be removed.

>    But since the "/device" container contains two different ACL sets,
>    one for "to" and one for "from", is this augmentation really
>    necessary?

Precisely so.=C2=A0 I've updated the working copy.

> o  The model has:
>
>       leaf local-networks {
>         type empty;
>         description
>           "this string is used to indicate networks
>            considered local in a given environment.";
>
>    This leaf is of type "empty", but the description says it is a
>    string.
>    Also, what is the format of this string?  (Hmm, I think the
>    description is wrong, this should indeed be type empty).
>
That shouldn't say string.=C2=A0 It's empty.

> o  Would it be useful with an indication of the revision of "ietf-mud"
>    that is used as the schema for a MUD file?  I.e., something like a
>    leaf "mud-module-revision" in the "metainfo" container.

For what purpose?

> o  The example in section 8 has some errors, e.g., it has some
>    camelCase node names.

That's corrected.


Thanks VERY much again.

There are still finishing touches to do to the model, such that it is wel=
l documented and easily serialized, given the above changes.

Eliot



--------------3EEC0AC16D5F76F97C91F768
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable

<html>
  <head>
    <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dutf=
-8">
  </head>
  <body text=3D"#000000" bgcolor=3D"#FFFFFF">
    <div class=3D"moz-text-plain" wrap=3D"true" style=3D"font-family:
      -moz-fixed; font-size: 12px;" lang=3D"x-unicode">
      <pre wrap=3D"">Hi Martin,

Thanks for performing the review.  Please see responses below.

=C2=A0On 8/22/17 3:38 PM, Martin Bjorklund wrote:
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">Reviewer: Martin Bjorklund
Review result: Ready with Issues

Hi,

I am the assigned YANG doctors reviewer for this document.  Here are
my comments:


o  Section 2 says:

   The MUD file is limited to the serialization of a
   small number of YANG schema, including the models specified in the
   following documents:

   o  [I-D.ietf-netmod-acl-model]

   o  [RFC6991]

   Is the intention that <b class=3D"moz-txt-star"><span class=3D"moz-txt=
-tag">*</span>only<span class=3D"moz-txt-tag">*</span></b> these models a=
re included, or *at
   least* these models are included?
</pre>
      </blockquote>
      <pre wrap=3D"">ONLY.
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">   RFC6991 doesn't define any data nodes, so I don=
't think it needs to
   be listed. =20
</pre>
      </blockquote>
      <pre wrap=3D"">Will remove.

</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">I suggest you are a bit more specific, and list:

     o  ietf-access-control-list [I-D.ietf-netmod-acl-model]

     o  ietf-mud [...]
</pre>
      </blockquote>
      <pre wrap=3D"">Will do.
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">
o  Section 3 uses the term "element" (it is used in other places as
   well).  YANG uses the term "data node" or "node".  Or "YANG data
   node".  I suggest you use one of these terms, and import the term
   in your Terminology section.
</pre>
      </blockquote>
      <pre wrap=3D"">Will replace.
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">   Also, the YANG module uses the term "element" t=
o refer to "device":

    leaf is-supported {
      type boolean;
      description
        "The element is currently supported
         by the manufacturer.";
    }

</pre>
      </blockquote>
      <pre wrap=3D"">Will correct.
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">o  In your Terminology section you introduce the t=
erm "Thing".  But
   the text often use "device".  Maybe use "device" consistently?

</pre>
      </blockquote>
      <pre wrap=3D"">Will correct.

</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">o  In order to get consistent indentation of the Y=
ANG modules, I
   suggest you run:

     pyang -f yang ietf-mud.yang

   (and same for ietf-acldns.yang)

</pre>
      </blockquote>
      <pre wrap=3D"">We are making some changes, and are making heavy use=
 of pyang --ietf
--strict...

</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">o  Ensure that description statements contain prop=
er sentences.  Also
   ensure that the descriptions are descriptive.  As an example of the
   latter, this is not a good description:

    description
      "Which way are we talking about?";

   In general, I found that the main document had better descriptions
   than the YANG module.  Consider moving the text from the main
   document to the YANG module (this also reduces the risk of
   inconsistencies).  If don't want to move text, I think you need to
   spend some effort on almost all descriptions in the YANG module.
</pre>
      </blockquote>
      <pre wrap=3D"">As we move toward completion I may ask for your help=
=2E=C2=A0 I am nervous of
simply moving chunks of text into the descriptions because I think we
have a fairly readable document outside of the model.=C2=A0=C2=A0 I am pe=
rfectly
happy to copy text in, however.

</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">o  In both modules, make sure you have a single re=
vision
   statement.  Note that in IETF-terms, a revision statement is added
   when a new version of the module is publsihed as an RFC (so the
   initial RFC would have one revision statement).
</pre>
      </blockquote>
      <pre wrap=3D"">Ok.
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">o  The "ietf-mud" module is a bit unorthodox; it d=
efines configuration
   data nodes, but it is not supposed to be implemented by a normal
   NETCONF/RESTCONF server.  Rather, it will be instantiated in a JSON
   file.  I think this should be stated in the description of the
   module.

</pre>
      </blockquote>
      <pre wrap=3D"">Ok.

</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">o  I don't think the feature "mud-acl" is necessar=
y.  It is only used
   to make the acl augment conditional on the feature.  I think that
   if this module is supported, the feature is also supported.  Or do
   you envision implementations of this module that would not support
   this feature?  If so, maybe you can explain that use case in the
   document.
</pre>
      </blockquote>
      <pre wrap=3D"">Fair point.=C2=A0 This was included in keeping with =
the acl model's
direction, but given that it is already an augment, you're right.
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">o  leaf cache-validity could use a "units" stateme=
nt:

     units "hours";

</pre>
      </blockquote>
      <pre wrap=3D"">Ok.

</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">o  I suggest you rename the grouping "access_lists=
" to "access-lists"
   for consitency.
</pre>
      </blockquote>
      <pre wrap=3D"">Ok.
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">o  Should any of the leafs in "/metainfo" be manda=
tory?

</pre>
      </blockquote>
      <pre wrap=3D"">Yes.=C2=A0 This has been the subject of considerable=
 discussion.  I propose to modify the model to include an rc:yang-data st=
atement, as well as to make the mud container a presence container.  I be=
lieve either would allow us to address this matter.  In addition, we'll a=
dd a mud-url element to make it possible for the entry to be self-identif=
ying.  This would allow for a very simply "uses", should someone want to =
borrow the model to build out a configuration data store.

Indeed, based on these changes, we're attempting to consolidate the # of =
containers (or at least avoid an explosion of them).

Finally, this leaves open precisely which nodes should be mandatory.  To =
me, last-update should be mandatory, as well as the mud-url.  Joe would l=
ike "is-supported" covered, and I am not adverse.  I don't think "cache-v=
alidity" needs to be mandatory, but rather should have a default value of=
 48 hours.
=C2=A0
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">o  The "extensions" leaf-list mentions an IANA reg=
istry for
   extensions.  It would be usefule to mention this registry by name.

   Also, shouldn't this registry be defined in the IANA Considerations
   section?
</pre>
      </blockquote>
      <pre wrap=3D"">Yes.
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">
o  Section 3.7 mentions a leaf "packet-direction".  There is no such
   leaf in the YANG module.  There is one called "direction-initiated"
   though.
</pre>
      </blockquote>
      <pre wrap=3D"">This is an artifact of an earlier version that needs=
 to be removed.
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">   But since the "/device" container contains two =
different ACL sets,
   one for "to" and one for "from", is this augmentation really
   necessary?
</pre>
      </blockquote>
      <pre wrap=3D"">Precisely so.=C2=A0 I've updated the working copy.
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">o  The model has:

      leaf local-networks {
        type empty;
        description
          "this string is used to indicate networks
           considered local in a given environment.";

   This leaf is of type "empty", but the description says it is a
   string.
</pre>
      </blockquote>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">   Also, what is the format of this string?  (Hmm,=
 I think the
   description is wrong, this should indeed be type empty).

</pre>
      </blockquote>
      <pre wrap=3D"">That shouldn't say string.=C2=A0 It's empty.
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">o  Would it be useful with an indication of the re=
vision of "ietf-mud"
   that is used as the schema for a MUD file?  I.e., something like a
   leaf "mud-module-revision" in the "metainfo" container.
</pre>
      </blockquote>
      <pre wrap=3D"">For what purpose?
</pre>
      <blockquote type=3D"cite" style=3D"color: #000000;">
        <pre wrap=3D"">
o  The example in section 8 has some errors, e.g., it has some
   camelCase node names.
</pre>
      </blockquote>
      <pre wrap=3D"">That's corrected.


Thanks VERY much again.

There are still finishing touches to do to the model, such that it is wel=
l documented and easily serialized, given the above changes.

Eliot


</pre>
    </div>
  </body>
</html>

--------------3EEC0AC16D5F76F97C91F768--

--Wp4IGo5rKcnlqcO8gmEmVG1WhuX67JoGm--

--Ms80gB9GTWU6M7pfNQSOrbCm6J39Nenac
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2

iQEcBAEBCAAGBQJZo9T6AAoJEIe2a0bZ0noz3HEH/AiH43atQSpYPbhpBLCpWqYc
OXJOA4WWUZ5o560qZ98KGUAyb3iZDpaL8DTZ8wlpjIKQEwKESncFWu0HUDmFcF7U
qgT9UiX/T+jiVrceoGlaIx46Sd2Uj90TnGylA31vzvskmk6XQeT/SO4QbiElDnt6
p54QJ8SlE6uBFtNaaWCqK+sb/8jaiSdKyTzh0IaXlDCEbLbo/5YGmXquMTgWUDni
vjtdsLArDtgzLvmN2LMoPnObKof2oARRxU4Uj9KmVdeJSqaslmEnA/FtgBDGtR3L
PdOFxqY3lePz7nZL0fkWWONnHhUGtUoEOo0xDjf2ePgIoEHHeRCbW+IbB5YVEio=
=/K+6
-----END PGP SIGNATURE-----

--Ms80gB9GTWU6M7pfNQSOrbCm6J39Nenac--


From nobody Mon Aug 28 01:54:22 2017
Return-Path: <mbj@tail-f.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DDEC7132358; Mon, 28 Aug 2017 01:54:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level: 
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8SdmP0KaIZK5; Mon, 28 Aug 2017 01:54:12 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id 71193132A65; Mon, 28 Aug 2017 01:54:11 -0700 (PDT)
Received: from localhost (unknown [173.38.220.57]) by mail.tail-f.com (Postfix) with ESMTPSA id 7F0261AE02C9; Mon, 28 Aug 2017 10:54:09 +0200 (CEST)
Date: Mon, 28 Aug 2017 10:52:42 +0200 (CEST)
Message-Id: <20170828.105242.1597048530111501551.mbj@tail-f.com>
To: lear@cisco.com
Cc: yang-doctors@ietf.org, draft-ietf-opsawg-mud.all@ietf.org, opsawg@ietf.org
From: Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <eec794de-73b4-2e95-b014-fc1bfab82873@cisco.com>
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com> <150340909415.6001.14045177084948571272@ietfa.amsl.com> <eec794de-73b4-2e95-b014-fc1bfab82873@cisco.com>
X-Mailer: Mew version 6.7 on Emacs 24.5 / Mule 6.0 (HANACHIRUSATO)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-8859-1
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/UoA4Ebh_R2IQKp1QDA9FSCSKlw4>
Subject: Re: [yang-doctors] Yangdoctors early review of draft-ietf-opsawg-mud-08, Re: Yangdoctors early review of draft-ietf-opsawg-mud-08
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 28 Aug 2017 08:54:15 -0000

Eliot Lear <lear@cisco.com> wrote:
> Hi Martin,
> =

> Thanks for performing the review.  Please see responses below.
> =

> =A0On 8/22/17 3:38 PM, Martin Bjorklund wrote:
> =

> > Reviewer: Martin Bjorklund
> > Review result: Ready with Issues
> >
> > Hi,
> >
> > I am the assigned YANG doctors reviewer for this document.  Here ar=
e
> > my comments:
> >
> >
> > o  Section 2 says:
> >
> >    The MUD file is limited to the serialization of a
> >    small number of YANG schema, including the models specified in t=
he
> >    following documents:
> >
> >    o  [I-D.ietf-netmod-acl-model]
> >
> >    o  [RFC6991]
> >
> >    Is the intention that *only* these models are included, or *at
> >    least* these models are included?
> =

> ONLY.

Ok.  The text says "a small number ... including ...".  I suggest this
is clarified.

> >    RFC6991 doesn't define any data nodes, so I don't think it needs=
 to
> >    be listed.  =

> =

> Will remove.
> =

> > I suggest you are a bit more specific, and list:
> >
> >      o  ietf-access-control-list [I-D.ietf-netmod-acl-model]
> >
> >      o  ietf-mud [...]
> =

> Will do.
> =

> > o  Section 3 uses the term "element" (it is used in other places as=

> >    well).  YANG uses the term "data node" or "node".  Or "YANG data=

> >    node".  I suggest you use one of these terms, and import the ter=
m
> >    in your Terminology section.
> =

> Will replace.
> =

> >    Also, the YANG module uses the term "element" to refer to "devic=
e":
> >
> >     leaf is-supported {
> >       type boolean;
> >       description
> >         "The element is currently supported
> >          by the manufacturer.";
> >     }
> >
> Will correct.
> =

> > o  In your Terminology section you introduce the term "Thing".  But=

> >    the text often use "device".  Maybe use "device" consistently?
> >
> Will correct.
> =

> > o  In order to get consistent indentation of the YANG modules, I
> >    suggest you run:
> >
> >      pyang -f yang ietf-mud.yang
> >
> >    (and same for ietf-acldns.yang)
> >
> We are making some changes, and are making heavy use of pyang --ietf
> --strict...

Ok, but --ietf does not check indentation etc.

> > o  Ensure that description statements contain proper sentences.  Al=
so
> >    ensure that the descriptions are descriptive.  As an example of =
the
> >    latter, this is not a good description:
> >
> >     description
> >       "Which way are we talking about?";
> >
> >    In general, I found that the main document had better descriptio=
ns
> >    than the YANG module.  Consider moving the text from the main
> >    document to the YANG module (this also reduces the risk of
> >    inconsistencies).  If don't want to move text, I think you need =
to
> >    spend some effort on almost all descriptions in the YANG module.=

> =

> As we move toward completion I may ask for your help.=A0 I am nervous=
 of
> simply moving chunks of text into the descriptions because I think we=

> have a fairly readable document outside of the model.=A0=A0 I am perf=
ectly
> happy to copy text in, however.

Ok.

> > o  In both modules, make sure you have a single revision
> >    statement.  Note that in IETF-terms, a revision statement is add=
ed
> >    when a new version of the module is publsihed as an RFC (so the
> >    initial RFC would have one revision statement).
> =

> Ok.
> =

> > o  The "ietf-mud" module is a bit unorthodox; it defines configurat=
ion
> >    data nodes, but it is not supposed to be implemented by a normal=

> >    NETCONF/RESTCONF server.  Rather, it will be instantiated in a J=
SON
> >    file.  I think this should be stated in the description of the
> >    module.
> >
> Ok.
> =

> > o  I don't think the feature "mud-acl" is necessary.  It is only us=
ed
> >    to make the acl augment conditional on the feature.  I think tha=
t
> >    if this module is supported, the feature is also supported.  Or =
do
> >    you envision implementations of this module that would not suppo=
rt
> >    this feature?  If so, maybe you can explain that use case in the=

> >    document.
> =

> Fair point.=A0 This was included in keeping with the acl model's
> direction, but given that it is already an augment, you're right.
> =

> > o  leaf cache-validity could use a "units" statement:
> >
> >      units "hours";
> >
> Ok.
> =

> > o  I suggest you rename the grouping "access_lists" to "access-list=
s"
> >    for consitency.
> =

> Ok.
> =

> > o  Should any of the leafs in "/metainfo" be mandatory?
> >
> Yes.=A0 This has been the subject of considerable discussion.  I
> propose to modify the model to include an rc:yang-data
> statement,

Ok, but note that this makes your usage of access-lists problematic -
if you define "rc:yang-data mud", you cannot have a file with
"access-lists" within the "mud" container.  I don't know how to solve
this...


> as well as to make the mud container a presence container.  I believe=
 either would allow us to address this matter.  In addition, we'll add =
a mud-url element to make it possible for the entry to be self-identify=
ing.  This would allow for a very simply "uses", should someone want to=
 borrow the model to build out a configuration data store.
> =

> Indeed, based on these changes, we're attempting to consolidate the #=
 of containers (or at least avoid an explosion of them).
> =

> Finally, this leaves open precisely which nodes should be mandatory. =
 To me, last-update should be mandatory, as well as the mud-url.  Joe w=
ould like "is-supported" covered, and I am not adverse.  I don't think =
"cache-validity" needs to be mandatory, but rather should have a defaul=
t value of 48 hours.
> =A0
> =

> > o  The "extensions" leaf-list mentions an IANA registry for
> >    extensions.  It would be usefule to mention this registry by nam=
e.
> >
> >    Also, shouldn't this registry be defined in the IANA Considerati=
ons
> >    section?
> =

> Yes.
> =

> > o  Section 3.7 mentions a leaf "packet-direction".  There is no suc=
h
> >    leaf in the YANG module.  There is one called "direction-initiat=
ed"
> >    though.
> =

> This is an artifact of an earlier version that needs to be removed.
> =

> >    But since the "/device" container contains two different ACL set=
s,
> >    one for "to" and one for "from", is this augmentation really
> >    necessary?
> =

> Precisely so.=A0 I've updated the working copy.
> =

> > o  The model has:
> >
> >       leaf local-networks {
> >         type empty;
> >         description
> >           "this string is used to indicate networks
> >            considered local in a given environment.";
> >
> >    This leaf is of type "empty", but the description says it is a
> >    string.
> >    Also, what is the format of this string?  (Hmm, I think the
> >    description is wrong, this should indeed be type empty).
> >
> That shouldn't say string.=A0 It's empty.
> =

> > o  Would it be useful with an indication of the revision of "ietf-m=
ud"
> >    that is used as the schema for a MUD file?  I.e., something like=
 a
> >    leaf "mud-module-revision" in the "metainfo" container.
> =

> For what purpose?

So that the MUD controller knows how to parse the mud file?  OTOH, if
it turns out to be necessary, you can add it as a mandatory leaf in a
future model.

> > o  The example in section 8 has some errors, e.g., it has some
> >    camelCase node names.
> =

> That's corrected.
> =

> =

> Thanks VERY much again.
> =

> There are still finishing touches to do to the model, such that it is=
 well documented and easily serialized, given the above changes.
> =

> Eliot



/martin


From nobody Mon Aug 28 02:54:06 2017
Return-Path: <lear@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B0D87132932; Mon, 28 Aug 2017 02:53:59 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.501
X-Spam-Level: 
X-Spam-Status: No, score=-14.501 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8aRBJ9uAKFEJ; Mon, 28 Aug 2017 02:53:58 -0700 (PDT)
Received: from aer-iport-3.cisco.com (aer-iport-3.cisco.com [173.38.203.53]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BA952132811; Mon, 28 Aug 2017 02:53:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=3007; q=dns/txt; s=iport; t=1503914038; x=1505123638; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to; bh=1NIFh+QlrJeGecORVSNsA27F1uomxsb9zIaPOxsOUnI=; b=JyU5JczZxHH73T9p2on/jRk+vGmlTLk07PQSAyo/4EIVu3ukDLd3tcsT 0DFdC83EUpYxaKvAEdMD28W3Qz6I+v/V2Kndol4iIsHjPRfsV/5YThwQZ f+6EZa++evgKwSgXjzY5AecCgycy27RnBsQJJMFfoaKsNNbecShPvUs4D I=;
X-Files: signature.asc : 481
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0CSAwDN56NZ/xbLJq1cGgEBAQECAQEBA?= =?us-ascii?q?QgBAQEBiUqLEZBwIpg4B4VAAoQ2FQECAQEBAQEBAWsohRkBBAEjVgULCw4tBwI?= =?us-ascii?q?CVwYNCAEBiiUIsXCCJ4taAQEBAQEBAQMBAQEBAQEBEg+DKoUzKwuCcogIgkIfB?= =?us-ascii?q?ZgqiDqENIIhjXGLUYcXlj01IoENMiEIHBWGFoFQPoseAQEB?=
X-IronPort-AV: E=Sophos;i="5.41,441,1498521600";  d="asc'?scan'208";a="655254859"
Received: from aer-iport-nat.cisco.com (HELO aer-core-2.cisco.com) ([173.38.203.22]) by aer-iport-3.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Aug 2017 09:53:53 +0000
Received: from [10.61.198.200] ([10.61.198.200]) by aer-core-2.cisco.com (8.14.5/8.14.5) with ESMTP id v7S9rrqC004014; Mon, 28 Aug 2017 09:53:53 GMT
To: Martin Bjorklund <mbj@tail-f.com>
Cc: yang-doctors@ietf.org, draft-ietf-opsawg-mud.all@ietf.org, opsawg@ietf.org
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com> <150340909415.6001.14045177084948571272@ietfa.amsl.com> <eec794de-73b4-2e95-b014-fc1bfab82873@cisco.com> <20170828.105242.1597048530111501551.mbj@tail-f.com>
From: Eliot Lear <lear@cisco.com>
Message-ID: <fc390fd3-2471-3535-e552-38b51678d427@cisco.com>
Date: Mon, 28 Aug 2017 11:53:53 +0200
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
MIME-Version: 1.0
In-Reply-To: <20170828.105242.1597048530111501551.mbj@tail-f.com>
Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="iTUdKj5bInqGgappmd7oUDr40Da7RgBNm"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/JiTbv4eZWdjcCOG882Mi_TDZjy4>
Subject: Re: [yang-doctors] Yangdoctors early review of draft-ietf-opsawg-mud-08, Re: Yangdoctors early review of draft-ietf-opsawg-mud-08
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 28 Aug 2017 09:54:00 -0000

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--iTUdKj5bInqGgappmd7oUDr40Da7RgBNm
Content-Type: multipart/mixed; boundary="4GiV0TGcHOToQNdP3wPBbrcg8WQOJUd0u";
 protected-headers="v1"
From: Eliot Lear <lear@cisco.com>
To: Martin Bjorklund <mbj@tail-f.com>
Cc: yang-doctors@ietf.org, draft-ietf-opsawg-mud.all@ietf.org, opsawg@ietf.org
Message-ID: <fc390fd3-2471-3535-e552-38b51678d427@cisco.com>
Subject: Re: Yangdoctors early review of draft-ietf-opsawg-mud-08,Re:
 Yangdoctors early review of draft-ietf-opsawg-mud-08
References: <150340909415.6001.14045177084948571272@ietfa.amsl.com>
 <150340909415.6001.14045177084948571272@ietfa.amsl.com>
 <eec794de-73b4-2e95-b014-fc1bfab82873@cisco.com>
 <20170828.105242.1597048530111501551.mbj@tail-f.com>
In-Reply-To: <20170828.105242.1597048530111501551.mbj@tail-f.com>

--4GiV0TGcHOToQNdP3wPBbrcg8WQOJUd0u
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-US

Hi Martin,

Trimming:


On 8/28/17 10:52 AM, Martin Bjorklund wrote:

>> ONLY.
> Ok.  The text says "a small number ... including ...".  I suggest this
> is clarified.

So clarified.

> Ok, but --ietf does not check indentation etc.

Ok.

>> Yes.=C2=A0 This has been the subject of considerable discussion.  I
>> propose to modify the model to include an rc:yang-data
>> statement,
> Ok, but note that this makes your usage of access-lists problematic -
> if you define "rc:yang-data mud", you cannot have a file with
> "access-lists" within the "mud" container.  I don't know how to solve
> this...

That would be quite bad.=C2=A0 Then in the alternative, if we go without
rc:yang-data, could we then simply leave the mud container as a presence
container?=C2=A0 Given the presence of the MUD-URL this has roughly the
concept intended with presence as I understand it.
>
>> For what purpose?
> So that the MUD controller knows how to parse the mud file?  OTOH, if
> it turns out to be necessary, you can add it as a mandatory leaf in a
> future model.

ok.=C2=A0 Let's have a think about that one.=C2=A0 If the file is aiming =
towards
self-describing, then this is a good add.

Eliot


--4GiV0TGcHOToQNdP3wPBbrcg8WQOJUd0u--

--iTUdKj5bInqGgappmd7oUDr40Da7RgBNm
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2

iQEcBAEBCAAGBQJZo+gxAAoJEIe2a0bZ0nozpM0H/j9WyG/SeVckcpQxJqlwUPk6
76Xxnn0OQIrV3z9DR9gYtAbSzpmJLiq/EyIlMG83p+BwgVdID3JlBAOO2VqbQlQA
fQjMwjkZFC2nlwa0FlQ7Bf/3vN15w7cVvU7PShEHQVGT28zgjR5O2DvNuDwzJVAf
VkRPIMhI+3zjCKkLyaeh2lL177EVJwNBA3ay7zSWPefJzxnXB5XsgbCGjISypdXo
x5LziIocs3pgRy7vH1fGHF2xna34vRQhIZ1psZZ6gy6BYFtM7TBE/Uxslyt6/56m
GGtHsof0EnVy8Yc++FM0PcJyE1AkIt7gqqD7/ovePm7rSgiD1Nx8JV8/yUqDxMA=
=jQzp
-----END PGP SIGNATURE-----

--iTUdKj5bInqGgappmd7oUDr40Da7RgBNm--


From nobody Mon Aug 28 05:53:24 2017
Return-Path: <bclaise@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9B6CD132C38; Mon, 28 Aug 2017 05:53:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.501
X-Spam-Level: 
X-Spam-Status: No, score=-14.501 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Mbic6LaVJKto; Mon, 28 Aug 2017 05:53:22 -0700 (PDT)
Received: from aer-iport-3.cisco.com (aer-iport-3.cisco.com [173.38.203.53]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 58BA11329F9; Mon, 28 Aug 2017 05:53:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=402; q=dns/txt; s=iport; t=1503924801; x=1505134401; h=to:from:subject:message-id:date:mime-version: content-transfer-encoding; bh=ANIz9lp5LUHA2SJo81okn77SYmNU+xJx3kHoiMvfPjg=; b=U2abvCk+vFBT61bPnkEBYeJTLfFr6Re2ZUgt9rkTquN8ul2k2phAsx0X LiU6YK9qW2iQ5qzs0Zy2yssdJr6nmPTsDq/CjQkwlocD08OHrwZgh46GN r5mV22Uj3N/pZaEBggfB9sOEMO0VSxkxBjlMB4PVCtzmcFgrYviipC4Zj A=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0CWAwC/EKRZ/xbLJq1dGgEBAQECAQEBA?= =?us-ascii?q?QgBAQEBhD6BFYN3ijlYkHOWVoIELIURhEgUAQIBAQEBAQEBayiFQhV2AiYCXwE?= =?us-ascii?q?MCAEBii0QsRSCJ4tfAQEBAQYCJoENgh2DUIIOC4QugwErgyCCYQWgZIdWjHACg?= =?us-ascii?q?XgBF1qFDINZhU6BSY1LiHI2IYENMiEIHBWFbYF5PjYBiCgrghQBAQE?=
X-IronPort-AV: E=Sophos;i="5.41,441,1498521600"; d="scan'208";a="655257805"
Received: from aer-iport-nat.cisco.com (HELO aer-core-1.cisco.com) ([173.38.203.22]) by aer-iport-3.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Aug 2017 12:53:17 +0000
Received: from [10.55.221.36] (ams-bclaise-nitro3.cisco.com [10.55.221.36]) by aer-core-1.cisco.com (8.14.5/8.14.5) with ESMTP id v7SCrHAZ012860; Mon, 28 Aug 2017 12:53:17 GMT
To: NETMOD Working Group <netmod@ietf.org>, YANG Doctors <yang-doctors@ietf.org>
From: Benoit Claise <bclaise@cisco.com>
Message-ID: <26131545-049c-9a1a-eb2b-cdad6fce3190@cisco.com>
Date: Mon, 28 Aug 2017 14:53:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/p8TanhLPQB_4NDEPD_zH-NyrXhY>
Subject: [yang-doctors] YumaPro SDK 17.10-B3 and yanglint 0.13.49 upgraded on claise.be
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 28 Aug 2017 12:53:23 -0000

Dear all,

With these two upgrades, we received way more warnings. Most comes from 
yanglint, to be candid.
Please check your YANG modules at 
http://www.claise.be/IETFYANGPageCompilation.html
About 50 YANG modules PASSED previously and now report PASSED WITH WARNINGS.

It's great that validators check more and more things. This leads to 
increased quality YANG modules.

Regards, Benoit



From nobody Wed Aug 30 07:10:28 2017
Return-Path: <bclaise@cisco.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3306C132E99 for <yang-doctors@ietfa.amsl.com>; Wed, 30 Aug 2017 07:10:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.5
X-Spam-Level: 
X-Spam-Status: No, score=-14.5 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id DlaAp8HsExJg for <yang-doctors@ietfa.amsl.com>; Wed, 30 Aug 2017 07:10:18 -0700 (PDT)
Received: from aer-iport-2.cisco.com (aer-iport-2.cisco.com [173.38.203.52]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 50763132E92 for <yang-doctors@ietf.org>; Wed, 30 Aug 2017 07:10:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=28520; q=dns/txt; s=iport; t=1504102217; x=1505311817; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to; bh=qp+sAuHmwbm8l5RBzavZhScOahvsvSGKKPSIKpIHjQE=; b=ZVo07i2o4C2854dqctwOvHtVwpsZK+weq6YPn1Jb9NECh/tU8N7sifyW WrbowzP/Pi/i3orSq5FN/IGCYyu9hdD/H3VmlTD49PAMAHnuiBdTv3p1c XRJkyvwfa3A0G/q7lmHF/onXMRyPUt0bOwhLIpLdBL+5U9HF/6eXMO82m s=;
X-IronPort-AV: E=Sophos;i="5.41,448,1498521600";  d="scan'208,217";a="654285231"
Received: from aer-iport-nat.cisco.com (HELO aer-core-1.cisco.com) ([173.38.203.22]) by aer-iport-2.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Aug 2017 14:10:15 +0000
Received: from [10.55.221.36] (ams-bclaise-nitro3.cisco.com [10.55.221.36]) by aer-core-1.cisco.com (8.14.5/8.14.5) with ESMTP id v7UEAEUK020641; Wed, 30 Aug 2017 14:10:15 GMT
To: Andy Bierman <andy@yumaworks.com>, Norm Strahle <nstrahle@juniper.net>
Cc: "yang-doctors@ietf.org" <yang-doctors@ietf.org>, Ing-Wher Chen <Ing-Wher_Chen@jabil.com>, "Aseem Choudhary (asechoud)" <asechoud@cisco.com>
References: <BN1PR0201MB0833B05FB5307BDEF2E8E3F5C3820@BN1PR0201MB0833.namprd02.prod.outlook.com> <20170817050647.apfeuvfhfw23ws6n@elstar.local> <BCE95ECB-360D-46E0-B062-371931C0F46A@tail-f.com> <20170817083739.u4vfbtkm34vf5utw@elstar.local> <6991455A-91A6-42A6-86A6-F19A95BCD133@tail-f.com> <20170817120451.syz54lblctjitbm7@elstar.local> <3EA7384C-2D5D-4C00-8479-75277389DE5B@tail-f.com> <CABCOCHR9ooj7VQZhqAzJkAR=9vn4C0okTDKQJ842p-Qa_2YZDg@mail.gmail.com> <36E052B8-9028-4EE6-A393-F68EA3EF926B@tail-f.com> <E180B2C6-3E5F-43A9-9A20-E7D056D2E23D@cisco.com> <CABCOCHTVM-XCSsUsCKPnvzYNWj8+OWD5LJOhOSGfHx2k2XEHzw@mail.gmail.com> <DM2PR0501MB15021350F3E533671AFEA5CDCF830@DM2PR0501MB1502.namprd05.prod.outlook.com> <CABCOCHRr8YokU+rx9F6jvQ=6GOZp0K9J-a+TXY3RHQUTq5M=4A@mail.gmail.com>
From: Benoit Claise <bclaise@cisco.com>
Message-ID: <17685d4e-7c4b-d0c7-acae-c9732cd2e479@cisco.com>
Date: Wed, 30 Aug 2017 16:10:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
MIME-Version: 1.0
In-Reply-To: <CABCOCHRr8YokU+rx9F6jvQ=6GOZp0K9J-a+TXY3RHQUTq5M=4A@mail.gmail.com>
Content-Type: multipart/alternative; boundary="------------84348082288EDF84A5E32C50"
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/-3LPoJyUTCaeC4nX1aApBgjZWxk>
Subject: Re: [yang-doctors] question regarding conditional/optional statements
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate  <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 30 Aug 2017 14:10:26 -0000

This is a multi-part message in MIME format.
--------------84348082288EDF84A5E32C50
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit

Ing-Wher,

Reviewing the email thread now, do you have your conclusions?

Regards, B.
> Hi,
>
> I guess it depends on what kind of functionality is being provided to 
> the client.
> In this case it looks like there is no expectation of consistency or 
> requirement
> for specific functionality. Features and deviations are both probably 
> overkill.
>
> SMIv2 has the concept of GROUP and MANDATORY-GROUP.
> In some ways SMIv2 conformance is much better than YANG,
> except SNMP never got the capability discovery right.
>
> Usually the groups have descriptions to say when a server should 
> implement the group.
> If the criteria is "who knows, just implement it if you want" then the 
> module should make
> that clear.
>
>
> Andy
>
>
> On Thu, Aug 17, 2017 at 9:15 AM, Norm Strahle <nstrahle@juniper.net 
> <mailto:nstrahle@juniper.net>> wrote:
>
>     In our particular case, queue counters, there are several counters
>     and rates associated with a given queue (packets, bytes,
>     transmitted, dropped, queued, tail drop, current depth, peak,
>     average, max, transmit rate, drop rate, etc.)  It is easy to see
>     where most manufactures support most, but likely not all.  So,
>     likely all vendors would need to indicate which it is not
>     supporting.  To me it would seem that a feature at least gives the
>     client developer the hint up-front that this item is not required
>     to be supported and to handle the case.  There is no clue from a
>     model that a deviation is likely, so no way to anticipate. So,
>     wouldn’t a feature be better in this case than a deviation?
>
>     *From:*Andy Bierman [mailto:andy@yumaworks.com
>     <mailto:andy@yumaworks.com>]
>     *Sent:* Thursday, August 17, 2017 12:06 PM
>     *To:* Giles Heron (giheron) <giheron@cisco.com
>     <mailto:giheron@cisco.com>>
>     *Cc:* Jan Lindblad <janl@tail-f.com <mailto:janl@tail-f.com>>;
>     yang-doctors@ietf.org <mailto:yang-doctors@ietf.org>; Ing-Wher
>     Chen <Ing-Wher_Chen@jabil.com <mailto:Ing-Wher_Chen@jabil.com>>;
>     Norm Strahle <nstrahle@juniper.net <mailto:nstrahle@juniper.net>>;
>     Aseem Choudhary (asechoud) <asechoud@cisco.com
>     <mailto:asechoud@cisco.com>>
>     *Subject:* Re: [yang-doctors] question regarding
>     conditional/optional statements
>
>     On Thu, Aug 17, 2017 at 8:56 AM, Giles Heron (giheron)
>     <giheron@cisco.com <mailto:giheron@cisco.com>> wrote:
>
>         On 17 Aug 2017, at 16:49, Jan Lindblad <janl@tail-f.com
>         <mailto:janl@tail-f.com>> wrote:
>
>                     Have you ever seen a smart client that can cope
>                     with randomly deviated YANG models, unless a
>                     programmer has intervened and created special code
>                     for handing that particular deviating device type?
>                     I have not.
>
>                 Doesn't your client build a session-specific schema
>                 tree based on the advertised modules?
>
>                 Deviations are clearly better than just not returning
>                 anything.
>
>                 They tell the client that the missing counters are not
>                 implemented as opposed
>
>                 to possibly a temporary, recoverable condition.
>
>                 Deviations are known at session startup time but they
>                 can also be known in advance.
>
>                 Vendors use naming conventions to specify the
>                 platform-specific deviations.
>
>                 Tools likeyangcatalog.org <http://yangcatalog.org/>can
>                 make this process automated and de-facto standardized.
>
>             NSO itself will be just fine, but I'm worried about the
>             people building applications on top of NSO, e.g. an L3VPN
>             application. Let's say a deviation comes up at session
>             start, what's the application supposed to do then? I can't
>             think of much that doesn't involve a programmer.
>
>             Declared deviations are clearly better than deviating and
>             not telling. But they are only really worth anything if
>             they are known to the application programmer before he
>             finishes his code. Yangcatalog.org
>             <http://yangcatalog.org/> helps, but not all modules will
>             be there and there's also a time dimension. Deviations
>             found at session start are probably not worth anything
>             other than as triggers for that special code someone wrote
>             to handle the situation.
>
>             I feel deviations should not be recommended lightly. In
>             the particular case that started this discussion, they'd
>             bring little value.
>
>         right - isn’t deviation supposed to be for the case where you
>         don’t support something that implementations are generally
>         expected to support?
>
>         for what Helen wants features seem to be a better fit - at
>         least to me.
>
>     Features are intended to convey that the functionality is optional.
>
>     Presumably the data model is attempting to deliver some
>     functionality to the client developer.
>
>     Features correspond well to optional protocol capabilities.
>
>     Generally a single counter is not considered to be high-level
>     functionality.
>
>     Ask the question "Why is counter FOO missing?"
>
>     A1) because device XYZ does not support it
>
>     A2) because it counts the FIZZBANG protocol, and that protocol is
>     not used on every device
>
>     If A1 then use deviations. If A2 then use features.
>
>         Giles
>
>     Andy
>
>
>
>
> _______________________________________________
> yang-doctors mailing list
> yang-doctors@ietf.org
> https://www.ietf.org/mailman/listinfo/yang-doctors


--------------84348082288EDF84A5E32C50
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">Ing-Wher,<br>
      <br>
      Reviewing the email thread now, do you have your conclusions?<br>
      <br>
      Regards, B.<br>
    </div>
    <blockquote type="cite"
cite="mid:CABCOCHRr8YokU+rx9F6jvQ=6GOZp0K9J-a+TXY3RHQUTq5M=4A@mail.gmail.com">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <div dir="ltr">Hi,
        <div><br>
        </div>
        <div>I guess it depends on what kind of functionality is being
          provided to the client.</div>
        <div>In this case it looks like there is no expectation of
          consistency or requirement</div>
        <div>for specific functionality. Features and deviations are
          both probably overkill.</div>
        <div><br>
        </div>
        <div>SMIv2 has the concept of GROUP and MANDATORY-GROUP.</div>
        <div>In some ways SMIv2 conformance is much better than YANG,</div>
        <div>except SNMP never got the capability discovery right.</div>
        <div><br>
        </div>
        <div>Usually the groups have descriptions to say when a server
          should implement the group.</div>
        <div>If the criteria is "who knows, just implement it if you
          want" then the module should make</div>
        <div>that clear.</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>Andy</div>
        <div><br>
        </div>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On Thu, Aug 17, 2017 at 9:15 AM, Norm
          Strahle <span dir="ltr">&lt;<a
              href="mailto:nstrahle@juniper.net" target="_blank"
              moz-do-not-send="true">nstrahle@juniper.net</a>&gt;</span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div link="blue" vlink="purple" lang="EN-US">
              <div class="m_219146844697508737WordSection1">
                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:#1f497d">In
                    our particular case, queue counters, there are
                    several counters and rates associated with a given
                    queue (packets, bytes, transmitted, dropped, queued,
                    tail drop, current depth, peak, average, max,
                    transmit rate, drop rate, etc.)  It is easy to see
                    where most manufactures support most, but likely not
                    all.  So, likely all vendors would need to indicate
                    which it is not supporting.  To me it would seem
                    that a feature at least gives the client developer
                    the hint up-front that this item is not required to
                    be supported and to handle the case.  There is no
                    clue from a model that a deviation is likely, so no
                    way to anticipate. So, wouldn’t a feature be better
                    in this case than a deviation?</span></p>
                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif;color:#1f497d"> </span></p>
                <p class="MsoNormal"><b><span
                      style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif">From:</span></b><span
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,sans-serif">
                    Andy Bierman [mailto:<a
                      href="mailto:andy@yumaworks.com" target="_blank"
                      moz-do-not-send="true">andy@yumaworks.com</a>]
                    <br>
                    <b>Sent:</b> Thursday, August 17, 2017 12:06 PM<br>
                    <b>To:</b> Giles Heron (giheron) &lt;<a
                      href="mailto:giheron@cisco.com" target="_blank"
                      moz-do-not-send="true">giheron@cisco.com</a>&gt;<br>
                    <b>Cc:</b> Jan Lindblad &lt;<a
                      href="mailto:janl@tail-f.com" target="_blank"
                      moz-do-not-send="true">janl@tail-f.com</a>&gt;; <a
                      href="mailto:yang-doctors@ietf.org"
                      target="_blank" moz-do-not-send="true">yang-doctors@ietf.org</a>;
                    Ing-Wher Chen &lt;<a
                      href="mailto:Ing-Wher_Chen@jabil.com"
                      target="_blank" moz-do-not-send="true">Ing-Wher_Chen@jabil.com</a>&gt;;
                    Norm Strahle &lt;<a
                      href="mailto:nstrahle@juniper.net" target="_blank"
                      moz-do-not-send="true">nstrahle@juniper.net</a>&gt;;
                    Aseem Choudhary (asechoud) &lt;<a
                      href="mailto:asechoud@cisco.com" target="_blank"
                      moz-do-not-send="true">asechoud@cisco.com</a>&gt;<br>
                    <b>Subject:</b> Re: [yang-doctors] question
                    regarding conditional/optional statements</span></p>
                <p class="MsoNormal"> </p>
                <div>
                  <p class="MsoNormal"> </p>
                  <div>
                    <p class="MsoNormal"> </p>
                    <div>
                      <p class="MsoNormal">On Thu, Aug 17, 2017 at 8:56
                        AM, Giles Heron (giheron) &lt;<a
                          href="mailto:giheron@cisco.com"
                          target="_blank" moz-do-not-send="true">giheron@cisco.com</a>&gt;
                        wrote:</p>
                      <blockquote style="border:none;border-left:solid
                        #cccccc 1.0pt;padding:0in 0in 0in
                        6.0pt;margin-left:4.8pt;margin-right:0in">
                        <div>
                          <p class="MsoNormal">On 17 Aug 2017, at 16:49,
                            Jan Lindblad &lt;<a
                              href="mailto:janl@tail-f.com"
                              target="_blank" moz-do-not-send="true">janl@tail-f.com</a>&gt;
                            wrote:</p>
                          <div>
                            <blockquote
                              style="margin-top:5.0pt;margin-bottom:5.0pt">
                              <p class="MsoNormal"> </p>
                              <div>
                                <div>
                                  <div>
                                    <blockquote
                                      style="margin-top:5.0pt;margin-bottom:5.0pt">
                                      <div>
                                        <blockquote
                                          style="border:none;border-left:solid
                                          #cccccc 1.0pt;padding:0in 0in
                                          0in
                                          6.0pt;margin-left:4.8pt;margin-right:0in">
                                          <p class="MsoNormal"><span
                                              style="font-size:10.5pt;font-family:&quot;TimesNewRomanPSMT&quot;,serif">Have
                                              you ever seen a smart
                                              client that can cope with
                                              randomly deviated YANG
                                              models, unless a
                                              programmer has intervened
                                              and created special code
                                              for handing that
                                              particular deviating
                                              device type? I have not.</span></p>
                                        </blockquote>
                                        <div>
                                          <p class="MsoNormal"><span
                                              style="font-size:10.5pt;font-family:&quot;TimesNewRomanPSMT&quot;,serif"> </span></p>
                                        </div>
                                        <div>
                                          <p class="MsoNormal"><span
                                              style="font-size:10.5pt;font-family:&quot;TimesNewRomanPSMT&quot;,serif"> </span></p>
                                        </div>
                                        <div>
                                          <p class="MsoNormal"><span
                                              style="font-size:10.5pt;font-family:&quot;TimesNewRomanPSMT&quot;,serif">Doesn't
                                              your client build a
                                              session-specific schema
                                              tree based on the
                                              advertised modules?</span></p>
                                        </div>
                                        <div>
                                          <p class="MsoNormal"><span
                                              style="font-size:10.5pt;font-family:&quot;TimesNewRomanPSMT&quot;,serif"> </span></p>
                                        </div>
                                        <div>
                                          <p class="MsoNormal"><span
                                              style="font-size:10.5pt;font-family:&quot;TimesNewRomanPSMT&quot;,serif">Deviations
                                              are clearly better than
                                              just not returning
                                              anything.</span></p>
                                        </div>
                                        <div>
                                          <p class="MsoNormal"><span
                                              style="font-size:10.5pt;font-family:&quot;TimesNewRomanPSMT&quot;,serif">They
                                              tell the client that the
                                              missing counters are not
                                              implemented as opposed</span></p>
                                        </div>
                                        <div>
                                          <p class="MsoNormal"><span
                                              style="font-size:10.5pt;font-family:&quot;TimesNewRomanPSMT&quot;,serif">to
                                              possibly a temporary,
                                              recoverable condition.</span></p>
                                        </div>
                                        <div>
                                          <p class="MsoNormal"><span
                                              style="font-size:10.5pt;font-family:&quot;TimesNewRomanPSMT&quot;,serif"> </span></p>
                                        </div>
                                        <div>
                                          <p class="MsoNormal"><span
                                              style="font-size:10.5pt;font-family:&quot;TimesNewRomanPSMT&quot;,serif">Deviations
                                              are known at session
                                              startup time but they can
                                              also be known in advance.</span></p>
                                        </div>
                                        <div>
                                          <p class="MsoNormal"><span
                                              style="font-size:10.5pt;font-family:&quot;TimesNewRomanPSMT&quot;,serif">Vendors
                                              use naming conventions to
                                              specify the
                                              platform-specific
                                              deviations.</span></p>
                                        </div>
                                        <div>
                                          <p class="MsoNormal"><span
                                              style="font-size:10.5pt;font-family:&quot;TimesNewRomanPSMT&quot;,serif">Tools
                                              like<span
                                                class="m_219146844697508737m4931857417286260717apple-converted-space"> </span><a
href="http://yangcatalog.org/" target="_blank" moz-do-not-send="true">yangcatalog.org</a><span
class="m_219146844697508737m4931857417286260717apple-converted-space"> </span>can
                                              make this process
                                              automated and de-facto
                                              standardized.</span></p>
                                        </div>
                                      </div>
                                    </blockquote>
                                    <div>
                                      <p class="MsoNormal"> </p>
                                    </div>
                                    <div>
                                      <p class="MsoNormal">NSO itself
                                        will be just fine, but I'm
                                        worried about the people
                                        building applications on top of
                                        NSO, e.g. an L3VPN application.
                                        Let's say a deviation comes up
                                        at session start, what's the
                                        application supposed to do then?
                                        I can't think of much that
                                        doesn't involve a programmer.</p>
                                    </div>
                                    <div>
                                      <p class="MsoNormal"> </p>
                                    </div>
                                    <div>
                                      <p class="MsoNormal">Declared
                                        deviations are clearly better
                                        than deviating and not telling.
                                        But they are only really worth
                                        anything if they are known to
                                        the application programmer
                                        before he finishes his code.
                                        <a
                                          href="http://yangcatalog.org/"
                                          target="_blank"
                                          moz-do-not-send="true">Yangcatalog.org</a> helps,
                                        but not all modules will be
                                        there and there's also a time
                                        dimension. Deviations found at
                                        session start are probably not
                                        worth anything other than as
                                        triggers for that special code
                                        someone wrote to handle the
                                        situation.</p>
                                    </div>
                                    <div>
                                      <p class="MsoNormal"> </p>
                                    </div>
                                    <div>
                                      <p class="MsoNormal">I feel
                                        deviations should not be
                                        recommended lightly. In the
                                        particular case that started
                                        this discussion, they'd bring
                                        little value.</p>
                                    </div>
                                  </div>
                                </div>
                              </div>
                            </blockquote>
                            <div>
                              <p class="MsoNormal"> </p>
                            </div>
                            <p class="MsoNormal">right - isn’t deviation
                              supposed to be for the case where you
                              don’t support something that
                              implementations are generally expected to
                              support?</p>
                          </div>
                          <div>
                            <p class="MsoNormal"> </p>
                          </div>
                          <div>
                            <p class="MsoNormal">for what Helen wants
                              features seem to be a better fit - at
                              least to me.</p>
                          </div>
                          <div>
                            <p class="MsoNormal"><span
                                style="color:#888888"> </span></p>
                          </div>
                        </div>
                      </blockquote>
                      <div>
                        <p class="MsoNormal"> </p>
                      </div>
                      <div>
                        <p class="MsoNormal">Features are intended to
                          convey that the functionality is optional.</p>
                      </div>
                      <div>
                        <p class="MsoNormal">Presumably the data model
                          is attempting to deliver some functionality to
                          the client developer.</p>
                      </div>
                      <div>
                        <p class="MsoNormal">Features correspond well to
                          optional protocol capabilities.</p>
                      </div>
                      <div>
                        <p class="MsoNormal">Generally a single counter
                          is not considered to be high-level
                          functionality.</p>
                      </div>
                      <div>
                        <p class="MsoNormal"> </p>
                      </div>
                      <div>
                        <p class="MsoNormal">Ask the question "Why is
                          counter FOO missing?"</p>
                      </div>
                      <div>
                        <p class="MsoNormal"> </p>
                      </div>
                      <div>
                        <p class="MsoNormal">A1) because device XYZ does
                          not support it</p>
                      </div>
                      <div>
                        <p class="MsoNormal"> </p>
                      </div>
                      <div>
                        <p class="MsoNormal">A2) because it counts the
                          FIZZBANG protocol, and that protocol is not
                          used on every device</p>
                      </div>
                      <div>
                        <p class="MsoNormal"> </p>
                      </div>
                      <div>
                        <p class="MsoNormal"> </p>
                      </div>
                      <div>
                        <p class="MsoNormal">If A1 then use deviations.
                          If A2 then use features.</p>
                      </div>
                      <div>
                        <p class="MsoNormal"> </p>
                      </div>
                      <div>
                        <p class="MsoNormal"> </p>
                      </div>
                      <div>
                        <p class="MsoNormal"> </p>
                      </div>
                      <blockquote style="border:none;border-left:solid
                        #cccccc 1.0pt;padding:0in 0in 0in
                        6.0pt;margin-left:4.8pt;margin-right:0in">
                        <div>
                          <div>
                            <p class="MsoNormal"><span
                                style="color:#888888">Giles</span></p>
                          </div>
                          <div>
                            <p class="MsoNormal"><span
                                style="color:#888888"> </span></p>
                          </div>
                        </div>
                      </blockquote>
                    </div>
                    <p class="MsoNormal"> </p>
                  </div>
                  <div>
                    <p class="MsoNormal"> </p>
                  </div>
                  <div>
                    <p class="MsoNormal">Andy</p>
                  </div>
                  <div>
                    <p class="MsoNormal"> </p>
                  </div>
                </div>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
yang-doctors mailing list
<a class="moz-txt-link-abbreviated" href="mailto:yang-doctors@ietf.org">yang-doctors@ietf.org</a>
<a class="moz-txt-link-freetext" href="https://www.ietf.org/mailman/listinfo/yang-doctors">https://www.ietf.org/mailman/listinfo/yang-doctors</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>

--------------84348082288EDF84A5E32C50--

