Merge "Added Conntrack Support in Nicira Extenstion."
[openflowplugin.git] / extension / openflowplugin-extension-nicira / src / main / yang / openflowplugin-extension-nicira-action.yang
1 module openflowplugin-extension-nicira-action {
2     yang-version 1;
3
4     namespace "urn:opendaylight:openflowplugin:extension:nicira:action";
5     prefix "openflowplugin-nicira-action";
6
7     import yang-ext {prefix ext; revision-date "2013-07-09";}
8     import flow-node-inventory {prefix fni; revision-date 2013-08-19; }
9     import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
10     import sal-flow {prefix sal-flow;revision-date "2013-08-19";}
11     import sal-group {prefix sal-group;revision-date "2013-09-18";}
12     import packet-processing {prefix sal-packet;revision-date "2013-07-09";}
13     import opendaylight-flow-statistics {prefix odl-flow-stats;revision-date "2013-08-19";}
14     import opendaylight-group-statistics {prefix odl-group-stats;revision-date "2013-11-11";}
15     import nicira-match {prefix nicira-match;revision-date "2014-04-21";}
16     import openflowplugin-extension-general {prefix ext-gen;revision-date "2014-07-14";}
17     import openflow-action {prefix ofaction;revision-date "2015-02-03";}
18     import nicira-action {prefix nicira-action;revision-date "2014-04-21";}
19
20     description
21         "Nicira openflow action extensions.";
22
23     revision "2014-07-14" {
24         description "Initial revision";
25     }
26
27     identity nx-action-reg-load-key {
28         base ext-gen:extension-key;
29     }
30     identity nx-action-reg-move-key {
31         base ext-gen:extension-key;
32     }
33
34     grouping nxm-nx-reg-grouping {
35         leaf nx-reg {
36             type identityref {
37                 base nicira-match:nxm-nx-reg;
38             }
39         }
40     }
41     grouping nxm-nx-tun-id-grouping {
42         leaf nx-tun-id {
43             type empty;
44         }
45     }
46     grouping nxm-nx-arp-sha-grouping {
47         leaf nx-arp-sha {
48             type empty;
49         }
50     }
51     grouping nxm-nx-arp-tha-grouping {
52         leaf nx-arp-tha {
53             type empty;
54         }
55     }
56     grouping nxm-of-arp-op-grouping {
57         leaf of-arp-op {
58             type empty;
59         }
60     }
61     grouping nxm-of-arp-spa-grouping {
62         leaf of-arp-spa {
63             type empty;
64         }
65     }
66     grouping nxm-of-arp-tpa-grouping {
67         leaf of-arp-tpa {
68             type empty;
69         }
70     }
71     grouping nxm-nx-tun-ipv4-dst-grouping {
72         leaf nx-tun-ipv4-dst {
73             type empty;
74         }
75     }
76     grouping nxm-nx-tun-ipv4-src-grouping {
77         leaf nx-tun-ipv4-src {
78             type empty;
79         }
80     }
81     grouping nxm-of-eth-src-grouping {
82         leaf of-eth-src {
83             type empty;
84         }
85     }
86     grouping nxm-of-eth-dst-grouping {
87         leaf of-eth-dst {
88             type empty;
89         }
90     }
91     grouping nxm-of-eth-type-grouping {
92         leaf of-eth-type {
93             type empty;
94         }
95     }
96     grouping nxm-nx-nsp-grouping {
97         leaf nx-nsp-dst {
98             type empty;
99         }
100     }
101     grouping nxm-nx-nsi-grouping {
102         leaf nx-nsi-dst {
103             type empty;
104         }
105     }
106     grouping nxm-nx-nshc-1-grouping {
107         leaf nx-nshc-1-dst {
108             type empty;
109         }
110     }
111     grouping nxm-nx-nshc-2-grouping {
112         leaf nx-nshc-2-dst {
113             type empty;
114         }
115     }
116     grouping nxm-nx-nshc-3-grouping {
117         leaf nx-nshc-3-dst {
118             type empty;
119         }
120     }
121     grouping nxm-nx-nshc-4-grouping {
122         leaf nx-nshc-4-dst {
123             type empty;
124         }
125     }
126
127     grouping dst-choice-grouping {
128         choice dst-choice {
129             case dst-nx-reg-case {
130                 uses nxm-nx-reg-grouping;
131             }
132             case dst-nx-tun-id-case {
133                 uses nxm-nx-tun-id-grouping;
134             }
135             case dst-nx-arp-sha-case {
136                 uses nxm-nx-arp-sha-grouping;
137             }
138             case dst-nx-arp-tha-case {
139                 uses nxm-nx-arp-tha-grouping;
140             }
141             case dst-of-arp-op-case {
142                 uses nxm-of-arp-op-grouping;
143             }
144             case dst-of-arp-spa-case {
145                 uses nxm-of-arp-spa-grouping;
146             }
147             case dst-of-arp-tpa-case {
148                 uses nxm-of-arp-tpa-grouping;
149             }
150             case dst-nx-tun-ipv4-dst-case {
151                 uses nxm-nx-tun-ipv4-dst-grouping;
152             }
153             case dst-nx-tun-ipv4-src-case {
154                 uses nxm-nx-tun-ipv4-src-grouping;
155             }
156             case dst-of-eth-src-case {
157                 uses nxm-of-eth-src-grouping;
158             }
159             case dst-of-eth-dst-case {
160                 uses nxm-of-eth-dst-grouping;
161             }
162             case dst-nx-nsp-case {
163                 uses nxm-nx-nsp-grouping;
164             }
165             case dst-nx-nsi-case {
166                 uses nxm-nx-nsi-grouping;
167             }
168             case dst-nx-nshc-1-case {
169                 uses nxm-nx-nshc-1-grouping;
170             }
171             case dst-nx-nshc-2-case {
172                 uses nxm-nx-nshc-2-grouping;
173             }
174             case dst-nx-nshc-3-case {
175                 uses nxm-nx-nshc-3-grouping;
176             }
177             case dst-nx-nshc-4-case {
178                 uses nxm-nx-nshc-4-grouping;
179             }
180         }
181     }
182
183     grouping src-choice-grouping {
184         choice src-choice {
185             case src-nx-reg-case {
186                 uses nxm-nx-reg-grouping;
187             }
188             case src-nx-tun-id-case {
189                 uses nxm-nx-tun-id-grouping;
190             }
191             case src-nx-arp-sha-case {
192                 uses nxm-nx-arp-sha-grouping;
193             }
194             case src-nx-arp-tha-case {
195                 uses nxm-nx-arp-tha-grouping;
196             }
197             case src-of-arp-op-case {
198                 uses nxm-of-arp-op-grouping;
199             }
200             case src-of-arp-spa-case {
201                 uses nxm-of-arp-spa-grouping;
202             }
203             case src-of-arp-tpa-case {
204                 uses nxm-of-arp-tpa-grouping;
205             }
206             case src-nx-tun-ipv4-dst-case {
207                 uses nxm-nx-tun-ipv4-dst-grouping;
208             }
209             case src-nx-tun-ipv4-src-case {
210                 uses nxm-nx-tun-ipv4-src-grouping;
211             }
212             case src-of-eth-src-case {
213                 uses nxm-of-eth-src-grouping;
214             }
215             case src-of-eth-dst-case {
216                 uses nxm-of-eth-dst-grouping;
217             }
218             case src-of-eth-type-case {
219                 uses nxm-of-eth-type-grouping;
220             }
221             case src-nx-nsp-case {
222                 uses nxm-nx-nsp-grouping;
223             }
224             case src-nx-nsi-case {
225                 uses nxm-nx-nsi-grouping;
226             }
227             case src-nx-nshc-1-case {
228                 uses nxm-nx-nshc-1-grouping;
229             }
230             case src-nx-nshc-2-case {
231                 uses nxm-nx-nshc-2-grouping;
232             }
233             case src-nx-nshc-3-case {
234                 uses nxm-nx-nshc-3-grouping;
235             }
236             case src-nx-nshc-4-case {
237                 uses nxm-nx-nshc-4-grouping;
238             }
239         }
240     }
241
242     grouping range-grouping {
243         leaf start {
244             description "Include value.";
245             type uint16;
246         }
247         leaf end {
248             description "Include value.";
249             type uint16;
250         }
251     }
252
253     grouping nx-action-reg-load-grouping {
254         container nx-reg-load {
255             container dst {
256                 description "Writes value to bits start through end, inclusive, in field dst.";
257                 uses dst-choice-grouping;
258                 uses range-grouping;
259             }
260             leaf value {
261                 type uint64;
262             }
263         }
264     }
265
266     grouping nx-action-reg-move-grouping {
267         container nx-reg-move {
268             container src {
269                 description "Writes value to bits start through end, inclusive, in field src.";
270                 uses src-choice-grouping;
271                 uses range-grouping;
272             }
273             container dst {
274                 description "Writes value to bits start through end, inclusive, in field dst.";
275                 uses dst-choice-grouping;
276                 uses range-grouping;
277             }
278         }
279     }
280     grouping nx-action-output-reg-grouping {
281         container nx-output-reg {
282             container src {
283                 description "Choose the register with the OpenFlow output port, using the number of
284 bits specified from the register.";
285                 uses src-choice-grouping;
286                 leaf ofs_nbits {
287                     type uint16;
288                 }
289             }
290             leaf max_len {
291                 description "The number of bytes to send when the chosen port is OFPP_CONTROLLER";
292                 type uint16;
293             }
294         }
295     }
296
297     grouping nx-action-resubmit-grouping {
298         container nx-resubmit {
299             description "Re-searches OpenFlow flow table (or the table whose number is specified by table)
300             with the in-port field replaced  by port (if port is specified) and executes the actions found";
301             leaf in-port {
302                 type uint16;
303                 default 0xfff8; // OFPP_INPORT
304             }
305             leaf table {
306                 type uint8 {
307                     range "0 .. 255";
308                 }
309                 default 255; // Current Table
310             }
311         }
312     }
313
314     grouping nx-action-multipath-grouping {
315         container nx-multipath {
316             leaf fields {
317                 type nicira-action:ofj-nx-hash-fields;
318             }
319             leaf basis {
320                 type uint16;
321                 default 0x400;
322             }
323             leaf algorithm {
324                 type nicira-action:ofj-nx-mp-algorithm;
325             }
326             leaf max-link {
327                 type uint16;
328             }
329             leaf arg {
330                 type uint32;
331             }
332             container dst {
333                 description "Writes value to bits start through end, inclusive, in field dst.";
334                 uses dst-choice-grouping;
335                 uses range-grouping;
336             }
337         }
338     }
339
340     grouping nx-action-set-nsp-grouping {
341         container nx-set-nsp {
342             description "Sets NSP header"
343             + " Sets NSH Service Path ID (NSP) header";
344             leaf nsp {
345                 type uint32;
346             }
347         }
348     }
349
350     grouping nx-action-set-nsi-grouping {
351         container nx-set-nsi {
352             description "Sets NSH Service Index (NSI) header";
353             leaf nsi {
354                 type uint8;
355             }
356         }
357     }
358
359     grouping nx-action-set-nshc-grouping {
360         leaf nshc {
361             type uint32;
362         }
363     }
364
365     grouping nx-action-set-nshc-1-grouping {
366         container nx-set-nshc-1 {
367             description "Sets NSC1 header";
368             uses nx-action-set-nshc-grouping;
369         }
370     }
371
372     grouping nx-action-set-nshc-2-grouping {
373         container nx-set-nshc-2 {
374             description "Sets NSC2 header";
375             uses nx-action-set-nshc-grouping;
376         }
377     }
378
379     grouping nx-action-set-nshc-3-grouping {
380         container nx-set-nshc-3 {
381             description "Sets NSC3 header";
382             uses nx-action-set-nshc-grouping;
383         }
384     }
385
386     grouping nx-action-set-nshc-4-grouping {
387         container nx-set-nshc-4 {
388             description "Sets NSC4 header";
389             uses nx-action-set-nshc-grouping;
390         }
391     }
392
393     grouping nx-action-conntrack-grouping {
394         container nx-conntrack {
395             leaf flags {
396                 type uint16;
397             }
398             leaf zone-src {
399                 type uint32;
400             }
401             leaf conntrack-zone {
402                 type uint16;
403             }
404             leaf recirc-table {
405                 type uint8;
406             }
407         }
408     }
409     // ACTION augmentations
410     // RPCS
411     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
412         case nx-action-reg-load-rpc-add-flow-write-actions-case {
413             uses nx-action-reg-load-grouping;
414         }
415     }
416     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
417         case nx-action-reg-move-rpc-add-flow-write-actions-case {
418             uses nx-action-reg-move-grouping;
419         }
420     }
421     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
422         case nx-action-output-reg-rpc-add-flow-write-actions-case {
423             uses nx-action-output-reg-grouping;
424         }
425     }
426     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
427         case nx-action-resubmit-rpc-add-flow-write-actions-case {
428             uses nx-action-resubmit-grouping;
429         }
430     }
431     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
432         case nx-action-multipath-rpc-add-flow-write-actions-case {
433             uses nx-action-multipath-grouping;
434         }
435     }
436     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
437         case nx-action-set-nsp-rpc-add-flow-write-actions-case {
438             uses nx-action-set-nsp-grouping;
439         }
440     }
441     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
442         case nx-action-set-nshc-1-rpc-add-flow-write-actions-case {
443             uses nx-action-set-nshc-1-grouping;
444         }
445     }
446     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
447         case nx-action-set-nshc-2-rpc-add-flow-write-actions-case {
448             uses nx-action-set-nshc-2-grouping;
449         }
450     }
451     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
452         case nx-action-set-nshc-3-rpc-add-flow-write-actions-case {
453             uses nx-action-set-nshc-3-grouping;
454         }
455     }
456     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
457         case nx-action-set-nshc-4-rpc-add-flow-write-actions-case {
458             uses nx-action-set-nshc-4-grouping;
459         }
460     }
461     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
462         case nx-action-set-nsi-rpc-add-flow-write-actions-case {
463             uses nx-action-set-nsi-grouping;
464         }
465     }
466      augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
467         case nx-action-conntrack-rpc-add-flow-write-actions-case {
468             uses nx-action-conntrack-grouping;
469         }
470     }
471
472     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
473         case nx-action-reg-load-rpc-add-flow-apply-actions-case {
474             uses nx-action-reg-load-grouping;
475         }
476     }
477     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
478         case nx-action-reg-move-rpc-add-flow-apply-actions-case {
479             uses nx-action-reg-move-grouping;
480         }
481     }
482     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
483         case nx-action-output-reg-rpc-add-flow-apply-actions-case {
484             uses nx-action-output-reg-grouping;
485         }
486     }
487     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
488         case nx-action-resubmit-rpc-add-flow-apply-actions-case {
489             uses nx-action-resubmit-grouping;
490         }
491     }
492     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
493         case nx-action-multipath-rpc-add-flow-apply-actions-case {
494             uses nx-action-multipath-grouping;
495         }
496     }
497     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
498         case nx-action-set-nsp-rpc-add-flow-apply-actions-case {
499             uses nx-action-set-nsp-grouping;
500         }
501     }
502     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
503         case nx-action-set-nshc-1-rpc-add-flow-apply-actions-case {
504             uses nx-action-set-nshc-1-grouping;
505         }
506     }
507     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
508         case nx-action-set-nshc-2-rpc-add-flow-apply-actions-case {
509             uses nx-action-set-nshc-2-grouping;
510         }
511     }
512     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
513         case nx-action-set-nshc-3-rpc-add-flow-apply-actions-case {
514             uses nx-action-set-nshc-3-grouping;
515         }
516     }
517
518     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
519         case nx-action-set-nshc-4-rpc-add-flow-apply-actions-case {
520             uses nx-action-set-nshc-4-grouping;
521         }
522     }
523     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
524         case nx-action-conntrack-rpc-add-flow-apply-actions-case {
525             uses nx-action-conntrack-grouping;
526         }
527     }
528
529     augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
530         case nx-action-set-nsi-rpc-add-flow-apply-actions-case {
531             uses nx-action-set-nsi-grouping;
532         }
533     }
534
535     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
536         case "nx-action-reg-load-rpc-remove-flow-write-actions-case" {
537             uses nx-action-reg-load-grouping;
538         }
539     }
540     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
541         case "nx-action-reg-move-rpc-remove-flow-write-actions-case" {
542             uses nx-action-reg-move-grouping;
543         }
544     }
545     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
546         case "nx-action-output-reg-rpc-remove-flow-write-actions-case" {
547             uses nx-action-output-reg-grouping;
548         }
549     }
550     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
551         case nx-action-resubmit-rpc-remove-flow-write-actions-case {
552             uses nx-action-resubmit-grouping;
553         }
554     }
555     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
556         case nx-action-multipath-rpc-remove-flow-write-actions-case {
557             uses nx-action-multipath-grouping;
558         }
559     }
560     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
561         case nx-action-set-nsp-rpc-remove-flow-write-actions-case {
562             uses nx-action-set-nsp-grouping;
563         }
564     }
565     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
566         case nx-action-set-nshc-1-rpc-remove-flow-write-actions-case {
567             uses nx-action-set-nshc-1-grouping;
568         }
569     }
570     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
571         case nx-action-set-nshc-2-rpc-remove-flow-write-actions-case {
572             uses nx-action-set-nshc-2-grouping;
573         }
574     }
575     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
576         case nx-action-set-nshc-3-rpc-remove-flow-write-actions-case {
577             uses nx-action-set-nshc-3-grouping;
578         }
579     }
580     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
581         case nx-action-set-nshc-4-rpc-remove-flow-write-actions-case {
582             uses nx-action-set-nshc-4-grouping;
583         }
584     }
585     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
586         case nx-action-set-nsi-rpc-remove-flow-write-actions-case {
587             uses nx-action-set-nsi-grouping;
588         }
589     }
590     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
591         case nx-action-conntrack-rpc-remove-flow-write-actions-case {
592             uses nx-action-conntrack-grouping;
593         }
594     }
595
596     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
597         case "nx-action-reg-load-rpc-remove-flow-apply-actions-case" {
598             uses nx-action-reg-load-grouping;
599         }
600     }
601     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
602         case "nx-action-reg-move-rpc-remove-flow-apply-actions-case" {
603             uses nx-action-reg-move-grouping;
604         }
605     }
606     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
607         case "nx-action-output-reg-rpc-remove-flow-apply-actions-case" {
608             uses nx-action-output-reg-grouping;
609         }
610     }
611     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
612         case nx-action-resubmit-rpc-remove-flow-apply-actions-case {
613             uses nx-action-resubmit-grouping;
614         }
615     }
616     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
617         case nx-action-multipath-rpc-remove-flow-apply-actions-case {
618             uses nx-action-multipath-grouping;
619         }
620     }
621     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
622         case nx-action-set-nsp-rpc-remove-flow-apply-actions-case {
623             uses nx-action-set-nsp-grouping;
624         }
625     }
626     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
627         case nx-action-set-nshc-1-rpc-remove-flow-apply-actions-case {
628             uses nx-action-set-nshc-1-grouping;
629         }
630     }
631     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
632         case nx-action-set-nshc-2-rpc-remove-flow-apply-actions-case {
633             uses nx-action-set-nshc-2-grouping;
634         }
635     }
636     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
637         case nx-action-set-nshc-3-rpc-remove-flow-apply-actions-case {
638             uses nx-action-set-nshc-3-grouping;
639         }
640     }
641     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
642         case nx-action-set-nshc-4-rpc-remove-flow-apply-actions-case {
643             uses nx-action-set-nshc-4-grouping;
644         }
645     }
646     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
647         case nx-action-set-nsi-rpc-remove-flow-apply-actions-case {
648             uses nx-action-set-nsi-grouping;
649         }
650     }
651     augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
652         case nx-action-conntrack-rpc-remove-flow-apply-actions-case {
653             uses nx-action-conntrack-grouping;
654         }
655     }
656
657     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
658         case "nx-action-reg-load-rpc-update-flow-original-write-actions-case" {
659             uses nx-action-reg-load-grouping;
660         }
661     }
662     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
663         case "nx-action-reg-move-rpc-update-flow-original-write-actions-case" {
664             uses nx-action-reg-move-grouping;
665         }
666     }
667     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
668         case "nx-action-output-reg-rpc-update-flow-original-write-actions-case" {
669             uses nx-action-output-reg-grouping;
670         }
671     }
672     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
673         case "nx-action-resubmit-rpc-update-flow-original-write-actions-case" {
674             uses nx-action-resubmit-grouping;
675         }
676     }
677     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
678         case "nx-action-multipath-rpc-update-flow-original-write-actions-case" {
679             uses nx-action-multipath-grouping;
680         }
681     }
682     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
683         case "nx-action-set-nsp-rpc-update-flow-original-write-actions-case" {
684             uses nx-action-set-nsp-grouping;
685         }
686     }
687     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
688         case "nx-action-set-nshc-1-rpc-update-flow-original-write-actions-case" {
689             uses nx-action-set-nshc-1-grouping;
690         }
691     }
692     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
693         case "nx-action-set-nshc-2-rpc-update-flow-original-write-actions-case" {
694             uses nx-action-set-nshc-2-grouping;
695         }
696     }
697     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
698         case "nx-action-set-nshc-3-rpc-update-flow-original-write-actions-case" {
699             uses nx-action-set-nshc-3-grouping;
700         }
701     }
702     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
703         case "nx-action-set-nshc-4-rpc-update-flow-original-write-actions-case" {
704             uses nx-action-set-nshc-4-grouping;
705         }
706     }
707     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
708         case "nx-action-set-nsi-rpc-update-flow-original-write-actions-case" {
709             uses nx-action-set-nsi-grouping;
710         }
711     }
712     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
713         case "nx-action-conntrack-rpc-update-flow-original-write-actions-case" {
714             uses nx-action-conntrack-grouping;
715         }
716     }
717
718     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
719         case "nx-action-reg-load-rpc-update-flow-original-apply-actions-case" {
720             uses nx-action-reg-load-grouping;
721         }
722     }
723     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
724         case "nx-action-reg-move-rpc-update-flow-original-apply-actions-case" {
725             uses nx-action-reg-move-grouping;
726         }
727     }
728     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
729         case "nx-action-output-reg-rpc-update-flow-original-apply-actions-case" {
730             uses nx-action-output-reg-grouping;
731         }
732     }
733     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
734         case "nx-action-resubmit-rpc-update-flow-original-apply-actions-case" {
735             uses nx-action-resubmit-grouping;
736         }
737     }
738     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
739         case "nx-action-multipath-rpc-update-flow-original-apply-actions-case" {
740             uses nx-action-multipath-grouping;
741         }
742     }
743     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
744         case "nx-action-set-nsp-rpc-update-flow-original-apply-actions-case" {
745             uses nx-action-set-nsp-grouping;
746         }
747     }
748     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
749         case "nx-action-set-nshc-1-rpc-update-flow-original-apply-actions-case" {
750             uses nx-action-set-nshc-1-grouping;
751         }
752     }
753     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
754         case "nx-action-set-nshc-2-rpc-update-flow-original-apply-actions-case" {
755             uses nx-action-set-nshc-2-grouping;
756         }
757     }
758     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
759         case "nx-action-set-nshc-3-rpc-update-flow-original-apply-actions-case" {
760             uses nx-action-set-nshc-3-grouping;
761         }
762     }
763     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
764         case "nx-action-set-nshc-4-rpc-update-flow-original-apply-actions-case" {
765             uses nx-action-set-nshc-4-grouping;
766         }
767     }
768     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
769         case "nx-action-set-nsi-rpc-update-flow-original-apply-actions-case" {
770             uses nx-action-set-nsi-grouping;
771         }
772     }
773     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
774         case "nx-action-conntrack-rpc-update-flow-original-apply-actions-case" {
775             uses nx-action-conntrack-grouping;
776         }
777     }
778
779     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
780         case "nx-action-reg-load-rpc-update-flow-updated-write-actions-case" {
781             uses nx-action-reg-load-grouping;
782         }
783     }
784     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
785         case "nx-action-reg-move-rpc-update-flow-updated-write-actions-case" {
786             uses nx-action-reg-move-grouping;
787         }
788     }
789     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
790         case "nx-action-output-reg-rpc-update-flow-updated-write-actions-case" {
791             uses nx-action-output-reg-grouping;
792         }
793     }
794     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
795         case "nx-action-resubmit-rpc-update-flow-updated-write-actions-case" {
796             uses nx-action-resubmit-grouping;
797         }
798     }
799     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
800         case "nx-action-multipath-rpc-update-flow-updated-write-actions-case" {
801             uses nx-action-multipath-grouping;
802         }
803     }
804     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
805         case "nx-action-set-nsp-rpc-update-flow-updated-write-actions-case" {
806             uses nx-action-set-nsp-grouping;
807         }
808     }
809     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
810         case "nx-action-set-nshc-1-rpc-update-flow-updated-write-actions-case" {
811             uses nx-action-set-nshc-1-grouping;
812         }
813     }
814     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
815         case "nx-action-set-nshc-2-rpc-update-flow-updated-write-actions-case" {
816             uses nx-action-set-nshc-2-grouping;
817         }
818     }
819     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
820         case "nx-action-set-nshc-3-rpc-update-flow-updated-write-actions-case" {
821             uses nx-action-set-nshc-3-grouping;
822         }
823     }
824     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
825         case "nx-action-set-nshc-4-rpc-update-flow-updated-write-actions-case" {
826             uses nx-action-set-nshc-4-grouping;
827         }
828     }
829     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
830         case "nx-action-set-nsi-rpc-update-flow-updated-write-actions-case" {
831             uses nx-action-set-nsi-grouping;
832         }
833     }
834      augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
835         case "nx-action-conntrack-rpc-update-flow-updated-write-actions-case" {
836             uses nx-action-conntrack-grouping;
837         }
838     }
839
840     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
841         case "nx-action-reg-load-rpc-update-flow-updated-apply-actions-case" {
842             uses nx-action-reg-load-grouping;
843         }
844     }
845     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
846         case "nx-action-reg-move-rpc-update-flow-updated-apply-actions-case" {
847             uses nx-action-reg-move-grouping;
848         }
849     }
850     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
851         case "nx-action-output-reg-rpc-update-flow-updated-apply-actions-case" {
852             uses nx-action-output-reg-grouping;
853         }
854     }
855     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
856         case "nx-action-resubmit-rpc-update-flow-updated-apply-actions-case" {
857             uses nx-action-resubmit-grouping;
858         }
859     }
860     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
861         case "nx-action-multipath-rpc-update-flow-updated-apply-actions-case" {
862             uses nx-action-multipath-grouping;
863         }
864     }
865     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
866         case "nx-action-set-nsp-rpc-update-flow-updated-apply-actions-case" {
867             uses nx-action-set-nsp-grouping;
868         }
869     }
870     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
871         case "nx-action-set-nshc-1-rpc-update-flow-updated-apply-actions-case" {
872             uses nx-action-set-nshc-1-grouping;
873         }
874     }
875     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
876         case "nx-action-set-nshc-2-rpc-update-flow-updated-apply-actions-case" {
877             uses nx-action-set-nshc-2-grouping;
878         }
879     }
880     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
881         case "nx-action-set-nshc-3-rpc-update-flow-updated-apply-actions-case" {
882             uses nx-action-set-nshc-3-grouping;
883         }
884     }
885     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
886         case "nx-action-set-nshc-4-rpc-update-flow-updated-apply-actions-case" {
887             uses nx-action-set-nshc-4-grouping;
888         }
889     }
890     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
891         case "nx-action-set-nsi-rpc-update-flow-updated-apply-actions-case" {
892             uses nx-action-set-nsi-grouping;
893         }
894     }
895     augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
896         case "nx-action-conntrack-rpc-update-flow-updated-apply-actions-case" {
897             uses nx-action-conntrack-grouping;
898         }
899     }
900
901     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
902         case "nx-action-reg-load-rpc-add-group-case" {
903             uses nx-action-reg-load-grouping;
904         }
905     }
906     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
907         case "nx-action-reg-move-rpc-add-group-case" {
908             uses nx-action-reg-move-grouping;
909         }
910     }
911     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
912         case "nx-action-output-reg-rpc-add-group-case" {
913             uses nx-action-output-reg-grouping;
914         }
915     }
916     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
917         case "nx-action-resubmit-rpc-add-group-case" {
918             uses nx-action-resubmit-grouping;
919         }
920     }
921     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
922         case "nx-action-multipath-rpc-add-group-case" {
923             uses nx-action-multipath-grouping;
924         }
925     }
926     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
927         case "nx-action-set-nsp-rpc-add-group-case" {
928             uses nx-action-set-nsp-grouping;
929         }
930     }
931     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
932         case "nx-action-set-nshc-1-rpc-add-group-case" {
933             uses nx-action-set-nshc-1-grouping;
934         }
935     }
936     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
937         case "nx-action-set-nshc-2-rpc-add-group-case" {
938             uses nx-action-set-nshc-2-grouping;
939         }
940     }
941     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
942         case "nx-action-set-nshc-3-rpc-add-group-case" {
943             uses nx-action-set-nshc-3-grouping;
944         }
945     }
946     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
947         case "nx-action-set-nshc-4-rpc-add-group-case" {
948             uses nx-action-set-nshc-4-grouping;
949         }
950     }
951     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
952         case "nx-action-set-nsi-rpc-add-group-case" {
953             uses nx-action-set-nsi-grouping;
954         }
955     }
956     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
957         case "nx-action-conntrack-rpc-add-group-case" {
958             uses nx-action-conntrack-grouping;
959         }
960     }
961
962     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
963         case "nx-action-reg-load-rpc-remove-group-case" {
964             uses nx-action-reg-load-grouping;
965         }
966     }
967     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
968         case "nx-action-reg-move-rpc-remove-group-case" {
969             uses nx-action-reg-move-grouping;
970         }
971     }
972     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
973         case "nx-action-output-reg-rpc-remove-group-case" {
974             uses nx-action-output-reg-grouping;
975         }
976     }
977     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
978         case "nx-action-resubmit-rpc-remove-group-case" {
979             uses nx-action-resubmit-grouping;
980         }
981     }
982     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
983         case "nx-action-multipath-rpc-remove-group-case" {
984             uses nx-action-multipath-grouping;
985         }
986     }
987     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
988         case "nx-action-set-nsp-rpc-remove-group-case" {
989             uses nx-action-set-nsp-grouping;
990         }
991     }
992     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
993         case "nx-action-set-nshc-1-rpc-remove-group-case" {
994             uses nx-action-set-nshc-1-grouping;
995         }
996     }
997     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
998         case "nx-action-set-nshc-2-rpc-remove-group-case" {
999             uses nx-action-set-nshc-2-grouping;
1000         }
1001     }
1002     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1003         case "nx-action-set-nshc-3-rpc-remove-group-case" {
1004             uses nx-action-set-nshc-3-grouping;
1005         }
1006     }
1007     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1008         case "nx-action-set-nshc-4-rpc-remove-group-case" {
1009             uses nx-action-set-nshc-4-grouping;
1010         }
1011     }
1012     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1013         case "nx-action-set-nsi-rpc-remove-group-case" {
1014             uses nx-action-set-nsi-grouping;
1015         }
1016     }
1017     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1018         case "nx-action-conntrack-rpc-remove-group-case" {
1019             uses nx-action-conntrack-grouping;
1020         }
1021     }
1022
1023     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1024         case "nx-action-reg-load-rpc-update-group-original-case" {
1025             uses nx-action-reg-load-grouping;
1026         }
1027     }
1028     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1029         case "nx-action-reg-move-rpc-update-group-original-case" {
1030             uses nx-action-reg-move-grouping;
1031         }
1032     }
1033     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1034         case "nx-action-output-reg-rpc-update-group-original-case" {
1035             uses nx-action-output-reg-grouping;
1036         }
1037     }
1038     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1039         case "nx-action-resubmit-rpc-update-group-original-case" {
1040             uses nx-action-resubmit-grouping;
1041         }
1042     }
1043     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1044         case "nx-action-multipath-rpc-update-group-original-case" {
1045             uses nx-action-multipath-grouping;
1046         }
1047     }
1048     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1049         case "nx-action-set-nsp-rpc-update-group-original-case" {
1050             uses nx-action-set-nsp-grouping;
1051         }
1052     }
1053     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1054         case "nx-action-set-nshc-1-rpc-update-group-original-case" {
1055             uses nx-action-set-nshc-1-grouping;
1056         }
1057     }
1058     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1059         case "nx-action-set-nshc-2-rpc-update-group-original-case" {
1060             uses nx-action-set-nshc-2-grouping;
1061         }
1062     }
1063     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1064         case "nx-action-set-nshc-3-rpc-update-group-original-case" {
1065             uses nx-action-set-nshc-3-grouping;
1066         }
1067     }
1068     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1069         case "nx-action-set-nshc-4-rpc-update-group-original-case" {
1070             uses nx-action-set-nshc-4-grouping;
1071         }
1072     }
1073     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1074         case "nx-action-set-nsi-rpc-update-group-original-case" {
1075             uses nx-action-set-nsi-grouping;
1076         }
1077     }
1078     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1079         case "nx-action-conntrack-rpc-update-group-original-case" {
1080             uses nx-action-conntrack-grouping;
1081         }
1082     }
1083
1084     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1085         case "nx-action-reg-load-rpc-update-group-updated-case" {
1086             uses nx-action-reg-load-grouping;
1087         }
1088     }
1089     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1090         case "nx-action-reg-move-rpc-update-group-updated-case" {
1091             uses nx-action-reg-move-grouping;
1092         }
1093     }
1094     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1095         case "nx-action-output-reg-rpc-update-group-updated-case" {
1096             uses nx-action-output-reg-grouping;
1097         }
1098     }
1099     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1100         case "nx-action-resubmit-rpc-update-group-updated-case" {
1101             uses nx-action-resubmit-grouping;
1102         }
1103     }
1104     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1105         case "nx-action-multipath-rpc-update-group-updated-case" {
1106             uses nx-action-multipath-grouping;
1107         }
1108     }
1109     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1110         case "nx-action-set-nsp-rpc-update-group-updated-case" {
1111             uses nx-action-set-nsp-grouping;
1112         }
1113     }
1114     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1115         case "nx-action-set-nshc-1-rpc-update-group-updated-case" {
1116             uses nx-action-set-nshc-1-grouping;
1117         }
1118     }
1119     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1120         case "nx-action-set-nshc-2-rpc-update-group-updated-case" {
1121             uses nx-action-set-nshc-2-grouping;
1122         }
1123     }
1124     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1125         case "nx-action-set-nshc-3-rpc-update-group-updated-case" {
1126             uses nx-action-set-nshc-3-grouping;
1127         }
1128     }
1129     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1130         case "nx-action-set-nshc-4-rpc-update-group-updated-case" {
1131             uses nx-action-set-nshc-4-grouping;
1132         }
1133     }
1134     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1135         case "nx-action-set-nsi-rpc-update-group-updated-case" {
1136             uses nx-action-set-nsi-grouping;
1137         }
1138     }
1139     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1140         case "nx-action-conntrack-rpc-update-group-updated-case" {
1141             uses nx-action-conntrack-grouping;
1142         }
1143     }
1144
1145     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1146         case "nx-action-reg-load-rpc-transmit-packet-case" {
1147             uses nx-action-reg-load-grouping;
1148         }
1149     }
1150     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1151         case "nx-action-reg-move-rpc-transmit-packet-case" {
1152             uses nx-action-reg-move-grouping;
1153         }
1154     }
1155     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1156         case "nx-action-output-reg-rpc-transmit-packet-case" {
1157             uses nx-action-output-reg-grouping;
1158         }
1159     }
1160     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1161         case "nx-action-resubmit-rpc-transmit-packet-case" {
1162             uses nx-action-resubmit-grouping;
1163         }
1164     }
1165     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1166         case "nx-action-multipath-rpc-transmit-packet-case" {
1167             uses nx-action-multipath-grouping;
1168         }
1169     }
1170     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1171         case "nx-action-set-nsp-rpc-transmit-packet-case" {
1172             uses nx-action-set-nsp-grouping;
1173         }
1174     }
1175     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1176         case "nx-action-set-nshc-1-rpc-transmit-packet-case" {
1177             uses nx-action-set-nshc-1-grouping;
1178         }
1179     }
1180     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1181         case "nx-action-set-nshc-2-rpc-transmit-packet-case" {
1182             uses nx-action-set-nshc-2-grouping;
1183         }
1184     }
1185     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1186         case "nx-action-set-nshc-3-rpc-transmit-packet-case" {
1187             uses nx-action-set-nshc-3-grouping;
1188         }
1189     }
1190     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1191         case "nx-action-set-nshc-4-rpc-transmit-packet-case" {
1192             uses nx-action-set-nshc-4-grouping;
1193         }
1194     }
1195     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1196         case "nx-action-set-nsi-rpc-transmit-packet-case" {
1197             uses nx-action-set-nsi-grouping;
1198         }
1199     }
1200     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1201         case "nx-action-conntrack-rpc-transmit-packet-case" {
1202             uses nx-action-conntrack-grouping;
1203         }
1204     }
1205
1206     // DATA
1207     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
1208         case "nx-action-reg-load-nodes-node-table-flow-write-actions-case" {
1209             uses nx-action-reg-load-grouping;
1210         }
1211     }
1212     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
1213         case "nx-action-reg-move-nodes-node-table-flow-write-actions-case" {
1214             uses nx-action-reg-move-grouping;
1215         }
1216     }
1217     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
1218         case "nx-action-output-reg-nodes-node-table-flow-write-actions-case" {
1219             uses nx-action-output-reg-grouping;
1220         }
1221     }
1222     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
1223         case "nx-action-resubmit-nodes-node-table-flow-write-actions-case" {
1224             uses nx-action-resubmit-grouping;
1225         }
1226     }
1227     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
1228         case "nx-action-multipath-nodes-node-table-flow-write-actions-case" {
1229             uses nx-action-multipath-grouping;
1230         }
1231     }
1232     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
1233         case "nx-action-set-nsp-nodes-node-table-flow-write-actions-case" {
1234             uses nx-action-set-nsp-grouping;
1235         }
1236     }
1237     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
1238         case "nx-action-set-nshc-1-nodes-node-table-flow-write-actions-case" {
1239             uses nx-action-set-nshc-1-grouping;
1240         }
1241     }
1242     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
1243         case "nx-action-set-nshc-2-nodes-node-table-flow-write-actions-case" {
1244             uses nx-action-set-nshc-2-grouping;
1245         }
1246     }
1247     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
1248         case "nx-action-set-nshc-3-nodes-node-table-flow-write-actions-case" {
1249             uses nx-action-set-nshc-3-grouping;
1250         }
1251     }
1252     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
1253         case "nx-action-set-nshc-4-nodes-node-table-flow-write-actions-case" {
1254             uses nx-action-set-nshc-4-grouping;
1255         }
1256     }
1257     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
1258         case "nx-action-set-nsi-nodes-node-table-flow-write-actions-case" {
1259             uses nx-action-set-nsi-grouping;
1260         }
1261     }
1262     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
1263         case "nx-action-conntrack-nodes-node-table-flow-write-actions-case" {
1264             uses nx-action-conntrack-grouping;
1265         }
1266     }
1267
1268     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
1269         case "nx-action-reg-load-nodes-node-table-flow-apply-actions-case" {
1270             uses nx-action-reg-load-grouping;
1271         }
1272     }
1273     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
1274         case "nx-action-reg-move-nodes-node-table-flow-apply-actions-case" {
1275             uses nx-action-reg-move-grouping;
1276         }
1277     }
1278     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
1279         case "nx-action-output-reg-nodes-node-table-flow-apply-actions-case" {
1280             uses nx-action-output-reg-grouping;
1281         }
1282     }
1283     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
1284         case "nx-action-resubmit-nodes-node-table-flow-apply-actions-case" {
1285             uses nx-action-resubmit-grouping;
1286         }
1287     }
1288     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
1289         case "nx-action-multipath-nodes-node-table-flow-apply-actions-case" {
1290             uses nx-action-multipath-grouping;
1291         }
1292     }
1293     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
1294         case "nx-action-set-nsp-nodes-node-table-flow-apply-actions-case" {
1295             uses nx-action-set-nsp-grouping;
1296         }
1297     }
1298     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
1299         case "nx-action-set-nshc-1-nodes-node-table-flow-apply-actions-case" {
1300             uses nx-action-set-nshc-1-grouping;
1301         }
1302     }
1303     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
1304         case "nx-action-set-nshc-2-nodes-node-table-flow-apply-actions-case" {
1305             uses nx-action-set-nshc-2-grouping;
1306         }
1307     }
1308     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
1309         case "nx-action-set-nshc-3-nodes-node-table-flow-apply-actions-case" {
1310             uses nx-action-set-nshc-3-grouping;
1311         }
1312     }
1313     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
1314         case "nx-action-set-nshc-4-nodes-node-table-flow-apply-actions-case" {
1315             uses nx-action-set-nshc-4-grouping;
1316         }
1317     }
1318     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
1319         case "nx-action-set-nsi-nodes-node-table-flow-apply-actions-case" {
1320             uses nx-action-set-nsi-grouping;
1321         }
1322     }
1323     augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
1324         case "nx-action-conntrack-nodes-node-table-flow-apply-actions-case" {
1325             uses nx-action-conntrack-grouping;
1326         }
1327     }
1328
1329     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1330         case "nx-action-reg-load-nodes-node-group-buckets-bucket-actions-case" {
1331             uses nx-action-reg-load-grouping;
1332         }
1333     }
1334     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1335         case "nx-action-reg-move-nodes-node-group-buckets-bucket-actions-case" {
1336             uses nx-action-reg-move-grouping;
1337         }
1338     }
1339     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1340         case "nx-action-output-reg-nodes-node-group-buckets-bucket-actions-case" {
1341             uses nx-action-output-reg-grouping;
1342         }
1343     }
1344     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1345         case "nx-action-resubmit-nodes-node-group-buckets-bucket-actions-case" {
1346             uses nx-action-resubmit-grouping;
1347         }
1348     }
1349     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1350         case "nx-action-multipath-nodes-node-group-buckets-bucket-actions-case" {
1351             uses nx-action-multipath-grouping;
1352         }
1353     }
1354     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1355         case "nx-action-set-nsp-nodes-node-group-buckets-bucket-actions-case" {
1356             uses nx-action-set-nsp-grouping;
1357         }
1358     }
1359     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1360         case "nx-action-set-nshc-1-nodes-node-group-buckets-bucket-actions-case" {
1361             uses nx-action-set-nshc-1-grouping;
1362         }
1363     }
1364     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1365         case "nx-action-set-nshc-2-nodes-node-group-buckets-bucket-actions-case" {
1366             uses nx-action-set-nshc-2-grouping;
1367         }
1368     }
1369     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1370         case "nx-action-set-nshc-3-nodes-node-group-buckets-bucket-actions-case" {
1371             uses nx-action-set-nshc-3-grouping;
1372         }
1373     }
1374     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1375         case "nx-action-set-nshc-4-nodes-node-group-buckets-bucket-actions-case" {
1376             uses nx-action-set-nshc-4-grouping;
1377         }
1378     }
1379     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1380         case "nx-action-set-nsi-nodes-node-group-buckets-bucket-actions-case" {
1381             uses nx-action-set-nsi-grouping;
1382         }
1383     }
1384     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1385         case "nx-action-conntrack-nodes-node-group-buckets-bucket-actions-case" {
1386             uses nx-action-conntrack-grouping;
1387         }
1388     }
1389
1390     // NOTIFICATIONS
1391     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
1392         case "nx-action-reg-load-notif-flows-statistics-update-write-actions-case" {
1393             uses nx-action-reg-load-grouping;
1394         }
1395     }
1396     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
1397         case "nx-action-reg-move-notif-flows-statistics-update-write-actions-case" {
1398             uses nx-action-reg-move-grouping;
1399         }
1400     }
1401     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
1402         case "nx-action-output-reg-notif-flows-statistics-update-write-actions-case" {
1403             uses nx-action-output-reg-grouping;
1404         }
1405     }
1406     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
1407         case "nx-action-resubmit-notif-flows-statistics-update-write-actions-case" {
1408             uses nx-action-resubmit-grouping;
1409         }
1410     }
1411     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
1412         case "nx-action-multipath-notif-flows-statistics-update-write-actions-case" {
1413             uses nx-action-multipath-grouping;
1414         }
1415     }
1416     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
1417         case "nx-action-set-nsp-notif-flows-statistics-update-write-actions-case" {
1418             uses nx-action-set-nsp-grouping;
1419         }
1420     }
1421     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
1422         case "nx-action-set-nshc-1-notif-flows-statistics-update-write-actions-case" {
1423             uses nx-action-set-nshc-1-grouping;
1424         }
1425     }
1426     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
1427         case "nx-action-set-nshc-2-notif-flows-statistics-update-write-actions-case" {
1428             uses nx-action-set-nshc-2-grouping;
1429         }
1430     }
1431     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
1432         case "nx-action-set-nshc-3-notif-flows-statistics-update-write-actions-case" {
1433             uses nx-action-set-nshc-3-grouping;
1434         }
1435     }
1436     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
1437         case "nx-action-set-nshc-4-notif-flows-statistics-update-write-actions-case" {
1438             uses nx-action-set-nshc-4-grouping;
1439         }
1440     }
1441     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
1442         case "nx-action-set-nsi-notif-flows-statistics-update-write-actions-case" {
1443             uses nx-action-set-nsi-grouping;
1444         }
1445     }
1446     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
1447         case "nx-action-conntrack-notif-flows-statistics-update-write-actions-case" {
1448             uses nx-action-conntrack-grouping;
1449         }
1450     }
1451
1452     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
1453         case "nx-action-reg-load-notif-flows-statistics-update-apply-actions-case" {
1454             uses nx-action-reg-load-grouping;
1455         }
1456     }
1457     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
1458         case "nx-action-reg-move-notif-flows-statistics-update-apply-actions-case" {
1459             uses nx-action-reg-move-grouping;
1460         }
1461     }
1462     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
1463         case "nx-action-output-reg-notif-flows-statistics-update-apply-actions-case" {
1464             uses nx-action-output-reg-grouping;
1465         }
1466     }
1467     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
1468         case "nx-action-resubmit-notif-flows-statistics-update-apply-actions-case" {
1469             uses nx-action-resubmit-grouping;
1470         }
1471     }
1472     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
1473         case "nx-action-multipath-notif-flows-statistics-update-apply-actions-case" {
1474             uses nx-action-multipath-grouping;
1475         }
1476     }
1477     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
1478         case "nx-action-set-nsp-notif-flows-statistics-update-apply-actions-case" {
1479             uses nx-action-set-nsp-grouping;
1480         }
1481     }
1482     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
1483         case "nx-action-set-nshc-1-notif-flows-statistics-update-apply-actions-case" {
1484             uses nx-action-set-nshc-1-grouping;
1485         }
1486     }
1487     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
1488         case "nx-action-set-nshc-2-notif-flows-statistics-update-apply-actions-case" {
1489             uses nx-action-set-nshc-2-grouping;
1490         }
1491     }
1492     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
1493         case "nx-action-set-nshc-3-notif-flows-statistics-update-apply-actions-case" {
1494             uses nx-action-set-nshc-3-grouping;
1495         }
1496     }
1497     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
1498         case "nx-action-set-nshc-4-notif-flows-statistics-update-apply-actions-case" {
1499             uses nx-action-set-nshc-4-grouping;
1500         }
1501     }
1502     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
1503         case "nx-action-set-nsi-notif-flows-statistics-update-apply-actions-case" {
1504             uses nx-action-set-nsi-grouping;
1505         }
1506     }
1507     augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
1508         case "nx-action-conntrack-notif-flows-statistics-update-apply-actions-case" {
1509             uses nx-action-conntrack-grouping;
1510         }
1511     }
1512
1513     augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
1514         case "nx-action-reg-load-notif-group-desc-stats-updated-case" {
1515             uses nx-action-reg-load-grouping;
1516         }
1517     }
1518     augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
1519         case "nx-action-reg-move-notif-group-desc-stats-updated-case" {
1520             uses nx-action-reg-move-grouping;
1521         }
1522     }
1523     augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
1524         case "nx-action-output-reg-notif-group-desc-stats-updated-case" {
1525             uses nx-action-output-reg-grouping;
1526         }
1527     }
1528     augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
1529         case "nx-action-resubmit-notif-group-desc-stats-updated-case" {
1530             uses nx-action-resubmit-grouping;
1531         }
1532     }
1533     augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
1534         case "nx-action-multipath-notif-group-desc-stats-updated-case" {
1535             uses nx-action-multipath-grouping;
1536         }
1537     }
1538     augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
1539         case "nx-action-set-nsp-notif-group-desc-stats-updated-case" {
1540             uses nx-action-set-nsp-grouping;
1541         }
1542     }
1543     augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
1544         case "nx-action-set-nshc-1-notif-group-desc-stats-updated-case" {
1545             uses nx-action-set-nshc-1-grouping;
1546         }
1547     }
1548     augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
1549         case "nx-action-set-nshc-2-notif-group-desc-stats-updated-case" {
1550             uses nx-action-set-nshc-2-grouping;
1551         }
1552     }
1553     augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
1554         case "nx-action-set-nshc-3-notif-group-desc-stats-updated-case" {
1555             uses nx-action-set-nshc-3-grouping;
1556         }
1557     }
1558     augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
1559         case "nx-action-set-nshc-4-notif-group-desc-stats-updated-case" {
1560             uses nx-action-set-nshc-4-grouping;
1561         }
1562     }
1563     augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
1564         case "nx-action-set-nsi-notif-group-desc-stats-updated-case" {
1565             uses nx-action-set-nsi-grouping;
1566         }
1567     }
1568      augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
1569         case "nx-action-conntrack-notif-group-desc-stats-updated-case" {
1570             uses nx-action-conntrack-grouping;
1571         }
1572     }
1573 }