Rework OpenFlowPluginProviderImpl connection provider tracking
[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     import opendaylight-direct-statistics {prefix directstat;revision-date "2016-05-11";}
20     import ietf-inet-types { prefix "inet"; revision-date "2013-07-15"; }
21     import opendaylight-match-types {prefix match; revision-date "2013-10-26";}
22
23     description
24         "Nicira openflow action extensions.";
25
26     revision "2014-07-14" {
27         description "Initial revision";
28     }
29
30     identity nx-action-reg-load-key {
31         base ext-gen:extension-key;
32     }
33     identity nx-action-reg-move-key {
34         base ext-gen:extension-key;
35     }
36
37     grouping nxm-nx-reg-grouping {
38         leaf nx-reg {
39             type identityref {
40                 base nicira-match:nxm-nx-reg;
41             }
42         }
43     }
44     grouping nxm-nx-tun-id-grouping {
45         leaf nx-tun-id {
46             type empty;
47         }
48     }
49     grouping nxm-nx-arp-sha-grouping {
50         leaf nx-arp-sha {
51             type empty;
52         }
53     }
54     grouping nxm-nx-arp-tha-grouping {
55         leaf nx-arp-tha {
56             type empty;
57         }
58     }
59     grouping oxm-of-mpls-label-grouping {
60         leaf of-mpls-label {
61             type empty;
62         }
63     }
64     grouping oxm-of-metadata-grouping {
65         leaf of-metadata {
66             type empty;
67         }
68     }
69     grouping nxm-of-arp-op-grouping {
70         leaf of-arp-op {
71             type empty;
72         }
73     }
74     grouping nxm-of-arp-spa-grouping {
75         leaf of-arp-spa {
76             type empty;
77         }
78     }
79     grouping nxm-of-arp-tpa-grouping {
80         leaf of-arp-tpa {
81             type empty;
82         }
83     }
84     grouping nxm-of-in-port-grouping {
85         leaf of-in-port {
86             type empty;
87         }
88     }
89     grouping nxm-nx-tun-ipv4-dst-grouping {
90         leaf nx-tun-ipv4-dst {
91             type empty;
92         }
93     }
94     grouping nxm-nx-tun-ipv4-src-grouping {
95         leaf nx-tun-ipv4-src {
96             type empty;
97         }
98     }
99     grouping nxm-of-eth-src-grouping {
100         leaf of-eth-src {
101             type empty;
102         }
103     }
104     grouping nxm-of-eth-dst-grouping {
105         leaf of-eth-dst {
106             type empty;
107         }
108     }
109     grouping nxm-of-eth-type-grouping {
110         leaf of-eth-type {
111             type empty;
112         }
113     }
114     grouping nxm-nx-nsp-grouping {
115         leaf nx-nsp-dst {
116             type empty;
117         }
118     }
119     grouping nxm-nx-nsi-grouping {
120         leaf nx-nsi-dst {
121             type empty;
122         }
123     }
124     grouping nxm-nx-nshc-1-grouping {
125         leaf nx-nshc-1-dst {
126             type empty;
127         }
128     }
129     grouping nxm-nx-nshc-2-grouping {
130         leaf nx-nshc-2-dst {
131             type empty;
132         }
133     }
134     grouping nxm-nx-nshc-3-grouping {
135         leaf nx-nshc-3-dst {
136             type empty;
137         }
138     }
139     grouping nxm-nx-nshc-4-grouping {
140         leaf nx-nshc-4-dst {
141             type empty;
142         }
143     }
144     grouping nxm-of-ip-src-grouping {
145         leaf of-ip-src {
146             type empty;
147         }
148     }
149     grouping nxm-of-ip-dst-grouping {
150         leaf of-ip-dst {
151             type empty;
152         }
153     }
154     grouping nxm-nx-ipv6-src-grouping {
155         leaf nx-ipv6-src {
156             type empty;
157         }
158     }
159     grouping nxm-nx-ipv6-dst-grouping {
160         leaf nx-ipv6-dst {
161             type empty;
162         }
163     }
164     grouping nxm-of-icmp-type-grouping {
165         leaf of-icmp-type {
166             type empty;
167         }
168     }
169     grouping nxm-nx-nsh-flags-grouping {
170         leaf nx-nsh-flags {
171             type empty;
172         }
173     }
174     grouping nxm-nx-nsh-mdtype-grouping {
175         leaf nx-nsh-mdtype {
176             type empty;
177         }
178     }
179     grouping nxm-nx-nsh-np-grouping {
180         leaf nx-nsh-np {
181             type empty;
182         }
183     }
184     grouping nxm-nx-nsh-ttl-grouping {
185         leaf nx-nsh-ttl {
186             type empty;
187         }
188     }
189
190     grouping dst-choice-grouping {
191         choice dst-choice {
192             case dst-nx-reg-case {
193                 uses nxm-nx-reg-grouping;
194             }
195             case dst-nx-tun-id-case {
196                 uses nxm-nx-tun-id-grouping;
197             }
198             case dst-of-mpls-label-case {
199                  uses oxm-of-mpls-label-grouping;
200             }
201             case dst-of-metadata-case {
202                 uses oxm-of-metadata-grouping;
203             }
204             case dst-nx-arp-sha-case {
205                 uses nxm-nx-arp-sha-grouping;
206             }
207             case dst-nx-arp-tha-case {
208                 uses nxm-nx-arp-tha-grouping;
209             }
210             case dst-of-arp-op-case {
211                 uses nxm-of-arp-op-grouping;
212             }
213             case dst-of-arp-spa-case {
214                 uses nxm-of-arp-spa-grouping;
215             }
216             case dst-of-arp-tpa-case {
217                 uses nxm-of-arp-tpa-grouping;
218             }
219             case dst-nx-of-in-port-case {
220                 uses nxm-of-in-port-grouping;
221             }
222             case dst-nx-tun-ipv4-dst-case {
223                 uses nxm-nx-tun-ipv4-dst-grouping;
224             }
225             case dst-nx-tun-ipv4-src-case {
226                 uses nxm-nx-tun-ipv4-src-grouping;
227             }
228             case dst-of-eth-src-case {
229                 uses nxm-of-eth-src-grouping;
230             }
231             case dst-of-eth-dst-case {
232                 uses nxm-of-eth-dst-grouping;
233             }
234             case dst-nx-nsp-case {
235                 uses nxm-nx-nsp-grouping;
236             }
237             case dst-nx-nsi-case {
238                 uses nxm-nx-nsi-grouping;
239             }
240             case dst-nx-nshc-1-case {
241                 uses nxm-nx-nshc-1-grouping;
242             }
243             case dst-nx-nshc-2-case {
244                 uses nxm-nx-nshc-2-grouping;
245             }
246             case dst-nx-nshc-3-case {
247                 uses nxm-nx-nshc-3-grouping;
248             }
249             case dst-nx-nshc-4-case {
250                 uses nxm-nx-nshc-4-grouping;
251             }
252             case dst-of-ip-src-case {
253                 uses nxm-of-ip-src-grouping;
254             }
255             case dst-of-ip-dst-case {
256                 uses nxm-of-ip-dst-grouping;
257             }
258             case dst-nx-ipv6-src-case {
259                 uses nxm-nx-ipv6-src-grouping;
260             }
261             case dst-nx-ipv6-dst-case {
262                 uses nxm-nx-ipv6-dst-grouping;
263             }
264             case dst-of-icmp-type-case {
265                 uses nxm-of-icmp-type-grouping;
266             }
267             case dst-nx-nsh-flags-case {
268                 uses nxm-nx-nsh-flags-grouping;
269             }
270             case dst-nx-nsh-ttl-case {
271                 uses nxm-nx-nsh-ttl-grouping;
272             }
273         }
274     }
275
276     grouping src-choice-grouping {
277         choice src-choice {
278             case src-nx-reg-case {
279                 uses nxm-nx-reg-grouping;
280             }
281             case src-nx-tun-id-case {
282                 uses nxm-nx-tun-id-grouping;
283             }
284             case src-nx-of-mpls-label-case {
285                 uses oxm-of-mpls-label-grouping;
286             }
287             case src-nx-of-metadata-case {
288                 uses oxm-of-metadata-grouping;
289             }
290             case src-nx-arp-sha-case {
291                 uses nxm-nx-arp-sha-grouping;
292             }
293             case src-nx-arp-tha-case {
294                 uses nxm-nx-arp-tha-grouping;
295             }
296             case src-of-arp-op-case {
297                 uses nxm-of-arp-op-grouping;
298             }
299             case src-of-arp-spa-case {
300                 uses nxm-of-arp-spa-grouping;
301             }
302             case src-of-arp-tpa-case {
303                 uses nxm-of-arp-tpa-grouping;
304             }
305             case src-nx-of-in-port-case {
306                 uses nxm-of-in-port-grouping;
307             }
308             case src-nx-tun-ipv4-dst-case {
309                 uses nxm-nx-tun-ipv4-dst-grouping;
310             }
311             case src-nx-tun-ipv4-src-case {
312                 uses nxm-nx-tun-ipv4-src-grouping;
313             }
314             case src-of-eth-src-case {
315                 uses nxm-of-eth-src-grouping;
316             }
317             case src-of-eth-dst-case {
318                 uses nxm-of-eth-dst-grouping;
319             }
320             case src-of-eth-type-case {
321                 uses nxm-of-eth-type-grouping;
322             }
323             case src-nx-nsp-case {
324                 uses nxm-nx-nsp-grouping;
325             }
326             case src-nx-nsi-case {
327                 uses nxm-nx-nsi-grouping;
328             }
329             case src-nx-nshc-1-case {
330                 uses nxm-nx-nshc-1-grouping;
331             }
332             case src-nx-nshc-2-case {
333                 uses nxm-nx-nshc-2-grouping;
334             }
335             case src-nx-nshc-3-case {
336                 uses nxm-nx-nshc-3-grouping;
337             }
338             case src-nx-nshc-4-case {
339                 uses nxm-nx-nshc-4-grouping;
340             }
341             case src-of-ip-src-case {
342                 uses nxm-of-ip-src-grouping;
343             }
344             case src-of-ip-dst-case {
345                 uses nxm-of-ip-dst-grouping;
346             }
347             case src-nx-ipv6-src-case {
348                 uses nxm-nx-ipv6-src-grouping;
349             }
350             case src-nx-ipv6-dst-case {
351                 uses nxm-nx-ipv6-dst-grouping;
352             }
353             case src-nx-nsh-flags-case {
354                 uses nxm-nx-nsh-flags-grouping;
355             }
356             case src-nx-nsh-mdtype-case {
357                 uses nxm-nx-nsh-mdtype-grouping;
358             }
359             case src-nx-nsh-np-case {
360                 uses nxm-nx-nsh-np-grouping;
361             }
362             case src-nx-nsh-ttl-case {
363                 uses nxm-nx-nsh-ttl-grouping;
364             }
365         }
366     }
367
368     grouping range-grouping {
369         leaf start {
370             description "Include value.";
371             type uint16;
372         }
373         leaf end {
374             description "Include value.";
375             type uint16;
376         }
377     }
378
379     grouping nx-action-reg-load-grouping {
380         container nx-reg-load {
381             container dst {
382                 description "Writes value to bits start through end, inclusive, in field dst.";
383                 uses dst-choice-grouping;
384                 uses range-grouping;
385             }
386             leaf value {
387                 type uint64;
388             }
389         }
390     }
391
392     grouping nx-action-reg-move-grouping {
393         container nx-reg-move {
394             container src {
395                 description "Writes value to bits start through end, inclusive, in field src.";
396                 uses src-choice-grouping;
397                 uses range-grouping;
398             }
399             container dst {
400                 description "Writes value to bits start through end, inclusive, in field dst.";
401                 uses dst-choice-grouping;
402                 uses range-grouping;
403             }
404         }
405     }
406     grouping nx-action-output-reg-grouping {
407         container nx-output-reg {
408             container src {
409                 description "Choose the register with the OpenFlow output port, using the number of
410 bits specified from the register.";
411                 uses src-choice-grouping;
412                 leaf ofs_nbits {
413                     type uint16;
414                 }
415             }
416             leaf max_len {
417                 description "The number of bytes to send when the chosen port is OFPP_CONTROLLER";
418                 type uint16;
419             }
420         }
421     }
422
423     grouping nx-action-resubmit-grouping {
424         container nx-resubmit {
425             description "Re-searches OpenFlow flow table (or the table whose number is specified by table)
426             with the in-port field replaced  by port (if port is specified) and executes the actions found";
427             leaf in-port {
428                 type uint16;
429                 default 0xfff8; // OFPP_INPORT
430             }
431             leaf table {
432                 type uint8 {
433                     range "0 .. 255";
434                 }
435                 default 255; // Current Table
436             }
437         }
438     }
439
440     grouping nx-action-fin-timeout-grouping {
441         container nx-action-fin-timeout {
442             leaf fin-idle-timeout {
443                 type uint16;
444             }
445             leaf fin-hard-timeout  {
446                 type uint16;
447             }
448         }
449     }
450
451     grouping nx-action-multipath-grouping {
452         container nx-multipath {
453             leaf fields {
454                 type nicira-action:ofj-nx-hash-fields;
455             }
456             leaf basis {
457                 type uint16;
458                 default 0x400;
459             }
460             leaf algorithm {
461                 type nicira-action:ofj-nx-mp-algorithm;
462             }
463             leaf max-link {
464                 type uint16;
465             }
466             leaf arg {
467                 type uint32;
468             }
469             container dst {
470                 description "Writes value to bits start through end, inclusive, in field dst.";
471                 uses dst-choice-grouping;
472                 uses range-grouping;
473             }
474         }
475     }
476
477     grouping nx-action-conntrack-grouping {
478         container nx-conntrack {
479             leaf flags {
480                 type uint16;
481             }
482             leaf zone-src {
483                 type uint32;
484             }
485             leaf conntrack-zone {
486                 type uint16;
487             }
488             leaf recirc-table {
489                 type uint8;
490             }
491             list ct-actions{
492                 uses ofpact-actions;
493             }
494         }
495     }
496
497     grouping nx-action-ct-clear-grouping {
498         container nx-ct-clear {
499             presence "no content action";
500             description "Clear Ct states from the flow";
501         }
502     }
503
504     grouping ofpact-actions {
505         description
506            "Actions to be performed with conntrack.";
507         choice ofpact-actions {
508             case nx-action-nat-case {
509                 container nx-action-nat {
510                     leaf flags {
511                         type uint16;
512                     }
513                     leaf range_present {
514                         type uint16;
515                     }
516                     leaf ip-address-min {
517                         type inet:ip-address;
518                     }
519                     leaf ip-address-max {
520                         type inet:ip-address;
521                     }
522                     leaf port-min {
523                         type uint16;
524                     }
525                     leaf port-max {
526                         type uint16;
527                     }
528                 }
529             }
530             case nx-action-ct-mark-case {
531                 container nx-action-ct-mark {
532                     leaf ct-mark {
533                         type uint32;
534                     }
535                     // TODO: ct_mark mask is not supported yet
536                 }
537             }
538         }
539     }
540
541     grouping flow-mod-spec {
542         description
543            "flow mod spec indicates the actions that should be performed to create a new flow which was learned from learn action.";
544         choice flow-mod-spec{
545             case flow-mod-add-match-from-field-case{
546                 container flow-mod-add-match-from-field{
547                         leaf flow-mod-num-bits{
548                         type uint16;
549                     }
550
551                     leaf src-field{
552                         type uint32;
553                     }
554
555                     leaf src-ofs{
556                         type uint16;
557                     }
558
559                     leaf dst-field{
560                         type uint32;
561                     }
562
563                     leaf dst-ofs{
564                         type uint16;
565                     }
566                 }
567             }
568             case flow-mod-add-match-from-value-case{
569                 container flow-mod-add-match-from-value{
570                         leaf flow-mod-num-bits{
571                         type uint16;
572                     }
573
574                     leaf value{
575                         type uint16;
576                     }
577
578                     leaf src-field{
579                         type uint32;
580                     }
581
582                     leaf src-ofs{
583                         type uint16;
584                     }
585                 }
586             }
587             case flow-mod-copy-field-into-field-case{
588                 container flow-mod-copy-field-into-field{
589                         leaf flow-mod-num-bits{
590                         type uint16;
591                     }
592
593                     leaf src-field{
594                         type uint32;
595                     }
596
597                     leaf src-ofs{
598                         type uint16;
599                     }
600
601                     leaf dst-field{
602                         type uint32;
603                     }
604
605                     leaf dst-ofs{
606                         type uint16;
607                     }
608                 }
609             }
610             case flow-mod-copy-value-into-field-case{
611                 container flow-mod-copy-value-into-field{
612                         leaf flow-mod-num-bits{
613                         type uint16;
614                     }
615
616                     leaf value{
617                         type uint16;
618                     }
619
620                     leaf dst-field{
621                         type uint32;
622                     }
623
624                     leaf dst-ofs{
625                         type uint16;
626                     }
627                 }
628             }
629             case flow-mod-output-to-port-case{
630                 container flow-mod-output-to-port{
631                         leaf flow-mod-num-bits{
632                         type uint16;
633                     }
634
635                     leaf src-field{
636                         type uint32;
637                     }
638
639                     leaf src-ofs{
640                         type uint16;
641                     }
642                 }
643             }
644         }
645     }
646
647     grouping nx-action-learn-grouping {
648         container nx-learn {
649             leaf idle-timeout {
650                 type uint16;
651             }
652             leaf hard-timeout {
653                 type uint16;
654             }
655             leaf priority {
656                 type uint16;
657             }
658             leaf cookie {
659                 type uint64;
660             }
661             leaf flags {
662                 type uint16;
663             }
664             leaf table-id {
665                 type uint8;
666             }
667             leaf fin-idle-timeout {
668                 type uint16;
669             }
670             leaf fin-hard-timeout {
671                 type uint16;
672             }
673
674             list flow-mods{
675                 uses flow-mod-spec;
676             }
677         }
678     }
679
680     grouping nx-action-encap-grouping {
681         container nx-encap {
682             uses match:packet-type-fields {
683                 refine packet-type {
684                     mandatory true;
685                 }
686             }
687         }
688     }
689
690     grouping nx-action-decap-grouping {
691         container nx-decap {
692             uses match:packet-type-fields {
693                 refine packet-type {
694                     default "0xFFFE"; // USE NEXT PROTO
695                 }
696             }
697         }
698     }
699
700     grouping nx-action-dec-nsh-ttl-grouping {
701         container nx-dec-nsh-ttl {
702             presence "no content action";
703             description "Decrease NSH TTL";
704         }
705     }
706
707
708     // ACTION augmentations
709     // RPCS
710     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" {
711         case nx-action-reg-load-rpc-add-flow-write-actions-case {
712             uses nx-action-reg-load-grouping;
713         }
714     }
715     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" {
716         case nx-action-reg-move-rpc-add-flow-write-actions-case {
717             uses nx-action-reg-move-grouping;
718         }
719     }
720     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" {
721         case nx-action-output-reg-rpc-add-flow-write-actions-case {
722             uses nx-action-output-reg-grouping;
723         }
724     }
725     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" {
726         case nx-action-resubmit-rpc-add-flow-write-actions-case {
727             uses nx-action-resubmit-grouping;
728         }
729     }
730     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" {
731         case nx-action-fin-timeout-rpc-add-flow-write-actions-case {
732             uses nx-action-fin-timeout-grouping;
733         }
734     }
735     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" {
736         case nx-action-multipath-rpc-add-flow-write-actions-case {
737             uses nx-action-multipath-grouping;
738         }
739     }
740     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" {
741         case nx-action-conntrack-rpc-add-flow-write-actions-case {
742             uses nx-action-conntrack-grouping;
743         }
744     }
745     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" {
746         case nx-action-ct-clear-rpc-add-flow-write-actions-case {
747             uses nx-action-ct-clear-grouping;
748         }
749     }
750     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" {
751         case nx-action-learn-rpc-add-flow-write-actions-case {
752             uses nx-action-learn-grouping;
753         }
754     }
755     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" {
756         case nx-action-encap-rpc-add-flow-write-actions-case {
757             uses nx-action-encap-grouping;
758         }
759     }
760     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" {
761         case nx-action-decap-rpc-add-flow-write-actions-case {
762             uses nx-action-decap-grouping;
763         }
764     }
765     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" {
766         case nx-action-dec-nsh-ttl-rpc-add-flow-write-actions-case {
767             uses nx-action-dec-nsh-ttl-grouping;
768         }
769     }
770
771     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" {
772         case nx-action-reg-load-rpc-add-flow-apply-actions-case {
773             uses nx-action-reg-load-grouping;
774         }
775     }
776     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" {
777         case nx-action-reg-move-rpc-add-flow-apply-actions-case {
778             uses nx-action-reg-move-grouping;
779         }
780     }
781     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" {
782         case nx-action-output-reg-rpc-add-flow-apply-actions-case {
783             uses nx-action-output-reg-grouping;
784         }
785     }
786     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" {
787         case nx-action-resubmit-rpc-add-flow-apply-actions-case {
788             uses nx-action-resubmit-grouping;
789         }
790     }
791     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" {
792         case nx-action-fin-timeout-rpc-add-flow-apply-actions-case {
793             uses nx-action-fin-timeout-grouping;
794         }
795     }
796     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" {
797         case nx-action-multipath-rpc-add-flow-apply-actions-case {
798             uses nx-action-multipath-grouping;
799         }
800     }
801
802     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" {
803         case nx-action-conntrack-rpc-add-flow-apply-actions-case {
804             uses nx-action-conntrack-grouping;
805         }
806     }
807     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" {
808         case nx-action-ct-clear-rpc-add-flow-apply-actions-case {
809             uses nx-action-ct-clear-grouping;
810         }
811     }
812     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" {
813         case nx-action-learn-rpc-add-flow-apply-actions-case {
814             uses nx-action-learn-grouping;
815         }
816     }
817     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" {
818         case nx-action-encap-rpc-add-flow-apply-actions-case {
819             uses nx-action-encap-grouping;
820         }
821     }
822     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" {
823         case nx-action-decap-rpc-add-flow-apply-actions-case {
824           uses nx-action-decap-grouping;
825         }
826     }
827     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" {
828         case nx-action-dec-nsh-ttl-rpc-add-flow-apply-actions-case {
829             uses nx-action-dec-nsh-ttl-grouping;
830         }
831     }
832
833     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" {
834         case "nx-action-reg-load-rpc-remove-flow-write-actions-case" {
835             uses nx-action-reg-load-grouping;
836         }
837     }
838     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" {
839         case "nx-action-reg-move-rpc-remove-flow-write-actions-case" {
840             uses nx-action-reg-move-grouping;
841         }
842     }
843     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" {
844         case "nx-action-output-reg-rpc-remove-flow-write-actions-case" {
845             uses nx-action-output-reg-grouping;
846         }
847     }
848     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" {
849         case nx-action-resubmit-rpc-remove-flow-write-actions-case {
850             uses nx-action-resubmit-grouping;
851         }
852     }
853     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" {
854         case nx-action-fin-timeout-rpc-remove-flow-write-actions-case {
855             uses nx-action-fin-timeout-grouping;
856         }
857     }
858     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" {
859         case nx-action-multipath-rpc-remove-flow-write-actions-case {
860             uses nx-action-multipath-grouping;
861         }
862     }
863     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" {
864         case nx-action-conntrack-rpc-remove-flow-write-actions-case {
865             uses nx-action-conntrack-grouping;
866         }
867     }
868     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" {
869         case nx-action-ct-clear-rpc-remove-flow-write-actions-case {
870             uses nx-action-ct-clear-grouping;
871         }
872     }
873     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" {
874         case nx-action-learn-rpc-remove-flow-write-actions-case {
875             uses nx-action-learn-grouping;
876         }
877     }
878     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" {
879         case nx-action-encap-rpc-remove-flow-write-actions-case {
880             uses nx-action-encap-grouping;
881         }
882     }
883     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" {
884         case nx-action-decap-rpc-remove-flow-write-actions-case {
885             uses nx-action-decap-grouping;
886         }
887     }
888     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" {
889         case nx-action-dec-nsh-ttl-rpc-remove-flow-write-actions-case {
890             uses nx-action-dec-nsh-ttl-grouping;
891         }
892     }
893
894     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" {
895         case "nx-action-reg-load-rpc-remove-flow-apply-actions-case" {
896             uses nx-action-reg-load-grouping;
897         }
898     }
899     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" {
900         case "nx-action-reg-move-rpc-remove-flow-apply-actions-case" {
901             uses nx-action-reg-move-grouping;
902         }
903     }
904     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" {
905         case "nx-action-output-reg-rpc-remove-flow-apply-actions-case" {
906             uses nx-action-output-reg-grouping;
907         }
908     }
909     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" {
910         case nx-action-resubmit-rpc-remove-flow-apply-actions-case {
911             uses nx-action-resubmit-grouping;
912         }
913     }
914     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" {
915         case nx-action-fin-timeout-rpc-remove-flow-apply-actions-case {
916             uses nx-action-fin-timeout-grouping;
917         }
918     }
919     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" {
920         case nx-action-multipath-rpc-remove-flow-apply-actions-case {
921             uses nx-action-multipath-grouping;
922         }
923     }
924     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" {
925         case nx-action-conntrack-rpc-remove-flow-apply-actions-case {
926             uses nx-action-conntrack-grouping;
927         }
928     }
929     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" {
930         case nx-action-ct-clear-rpc-remove-flow-apply-actions-case {
931             uses nx-action-ct-clear-grouping;
932         }
933     }
934     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" {
935         case nx-action-learn-rpc-remove-flow-apply-actions-case {
936             uses nx-action-learn-grouping;
937         }
938     }
939     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" {
940         case nx-action-encap-rpc-remove-flow-apply-actions-case {
941             uses nx-action-encap-grouping;
942         }
943     }
944     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" {
945         case nx-action-decap-rpc-remove-flow-apply-actions-case {
946             uses nx-action-decap-grouping;
947         }
948     }
949     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" {
950         case nx-action-dec-nsh-ttl-rpc-remove-flow-apply-actions-case {
951             uses nx-action-dec-nsh-ttl-grouping;
952         }
953     }
954
955     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" {
956         case "nx-action-reg-load-rpc-update-flow-original-write-actions-case" {
957             uses nx-action-reg-load-grouping;
958         }
959     }
960     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" {
961         case "nx-action-reg-move-rpc-update-flow-original-write-actions-case" {
962             uses nx-action-reg-move-grouping;
963         }
964     }
965     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" {
966         case "nx-action-output-reg-rpc-update-flow-original-write-actions-case" {
967             uses nx-action-output-reg-grouping;
968         }
969     }
970     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" {
971         case "nx-action-resubmit-rpc-update-flow-original-write-actions-case" {
972             uses nx-action-resubmit-grouping;
973         }
974     }
975     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" {
976         case "nx-action-fin-timeout-rpc-update-flow-original-write-actions-case" {
977             uses nx-action-fin-timeout-grouping;
978         }
979     }
980     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" {
981         case "nx-action-multipath-rpc-update-flow-original-write-actions-case" {
982             uses nx-action-multipath-grouping;
983         }
984     }
985     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" {
986         case "nx-action-conntrack-rpc-update-flow-original-write-actions-case" {
987             uses nx-action-conntrack-grouping;
988         }
989     }
990     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" {
991         case "nx-action-ct-clear-rpc-update-flow-original-write-actions-case" {
992             uses nx-action-ct-clear-grouping;
993         }
994     }
995     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" {
996         case "nx-action-learn-rpc-update-flow-original-write-actions-case" {
997             uses nx-action-learn-grouping;
998         }
999     }
1000     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" {
1001         case "nx-action-encap-rpc-update-flow-original-write-actions-case" {
1002             uses nx-action-encap-grouping;
1003         }
1004     }
1005     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" {
1006         case "nx-action-decap-rpc-update-flow-original-write-actions-case" {
1007             uses nx-action-decap-grouping;
1008         }
1009     }
1010     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" {
1011         case "nx-action-dec-nsh-ttl-rpc-update-flow-original-write-actions-case" {
1012             uses nx-action-dec-nsh-ttl-grouping;
1013         }
1014     }
1015
1016     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" {
1017         case "nx-action-reg-load-rpc-update-flow-original-apply-actions-case" {
1018             uses nx-action-reg-load-grouping;
1019         }
1020     }
1021     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" {
1022         case "nx-action-reg-move-rpc-update-flow-original-apply-actions-case" {
1023             uses nx-action-reg-move-grouping;
1024         }
1025     }
1026     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" {
1027         case "nx-action-output-reg-rpc-update-flow-original-apply-actions-case" {
1028             uses nx-action-output-reg-grouping;
1029         }
1030     }
1031     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" {
1032         case "nx-action-resubmit-rpc-update-flow-original-apply-actions-case" {
1033             uses nx-action-resubmit-grouping;
1034         }
1035     }
1036     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" {
1037         case "nx-action-fin-timeout-rpc-update-flow-original-apply-actions-case" {
1038             uses nx-action-fin-timeout-grouping;
1039         }
1040     }
1041     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" {
1042         case "nx-action-multipath-rpc-update-flow-original-apply-actions-case" {
1043             uses nx-action-multipath-grouping;
1044         }
1045     }
1046     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" {
1047         case "nx-action-conntrack-rpc-update-flow-original-apply-actions-case" {
1048             uses nx-action-conntrack-grouping;
1049         }
1050     }
1051     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" {
1052         case "nx-action-ct-clear-rpc-update-flow-original-apply-actions-case" {
1053             uses nx-action-ct-clear-grouping;
1054         }
1055     }
1056     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" {
1057         case "nx-action-learn-rpc-update-flow-original-apply-actions-case" {
1058             uses nx-action-learn-grouping;
1059         }
1060     }
1061     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" {
1062         case "nx-action-encap-rpc-update-flow-original-apply-actions-case" {
1063             uses nx-action-encap-grouping;
1064         }
1065     }
1066     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" {
1067         case "nx-action-decap-rpc-update-flow-original-apply-actions-case" {
1068             uses nx-action-decap-grouping;
1069         }
1070     }
1071     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" {
1072         case "nx-action-dec-nsh-ttl-rpc-update-flow-original-apply-actions-case" {
1073             uses nx-action-dec-nsh-ttl-grouping;
1074         }
1075     }
1076
1077     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" {
1078         case "nx-action-reg-load-rpc-update-flow-updated-write-actions-case" {
1079             uses nx-action-reg-load-grouping;
1080         }
1081     }
1082     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" {
1083         case "nx-action-reg-move-rpc-update-flow-updated-write-actions-case" {
1084             uses nx-action-reg-move-grouping;
1085         }
1086     }
1087     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" {
1088         case "nx-action-output-reg-rpc-update-flow-updated-write-actions-case" {
1089             uses nx-action-output-reg-grouping;
1090         }
1091     }
1092     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" {
1093         case "nx-action-resubmit-rpc-update-flow-updated-write-actions-case" {
1094             uses nx-action-resubmit-grouping;
1095         }
1096     }
1097     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" {
1098         case "nx-action-fin-timeout-rpc-update-flow-updated-write-actions-case" {
1099             uses nx-action-fin-timeout-grouping;
1100         }
1101     }
1102     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" {
1103         case "nx-action-multipath-rpc-update-flow-updated-write-actions-case" {
1104             uses nx-action-multipath-grouping;
1105         }
1106     }
1107     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" {
1108         case "nx-action-conntrack-rpc-update-flow-updated-write-actions-case" {
1109             uses nx-action-conntrack-grouping;
1110         }
1111     }
1112     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" {
1113         case "nx-action-ct-clear-rpc-update-flow-updated-write-actions-case" {
1114             uses nx-action-ct-clear-grouping;
1115         }
1116     }
1117     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" {
1118         case "nx-action-learn-rpc-update-flow-updated-write-actions-case" {
1119             uses nx-action-learn-grouping;
1120         }
1121     }
1122     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" {
1123         case "nx-action-encap-rpc-update-flow-updated-write-actions-case" {
1124             uses nx-action-encap-grouping;
1125         }
1126     }
1127     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" {
1128         case "nx-action-decap-rpc-update-flow-updated-write-actions-case" {
1129             uses nx-action-decap-grouping;
1130         }
1131     }
1132     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" {
1133         case "nx-action-dec-nsh-ttl-rpc-update-flow-updated-write-actions-case" {
1134             uses nx-action-dec-nsh-ttl-grouping;
1135         }
1136     }
1137
1138     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" {
1139         case "nx-action-reg-load-rpc-update-flow-updated-apply-actions-case" {
1140             uses nx-action-reg-load-grouping;
1141         }
1142     }
1143     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" {
1144         case "nx-action-reg-move-rpc-update-flow-updated-apply-actions-case" {
1145             uses nx-action-reg-move-grouping;
1146         }
1147     }
1148     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" {
1149         case "nx-action-output-reg-rpc-update-flow-updated-apply-actions-case" {
1150             uses nx-action-output-reg-grouping;
1151         }
1152     }
1153     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" {
1154         case "nx-action-resubmit-rpc-update-flow-updated-apply-actions-case" {
1155             uses nx-action-resubmit-grouping;
1156         }
1157     }
1158     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" {
1159         case "nx-action-fin-timeout-rpc-update-flow-updated-apply-actions-case" {
1160             uses nx-action-fin-timeout-grouping;
1161         }
1162     }
1163     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" {
1164         case "nx-action-multipath-rpc-update-flow-updated-apply-actions-case" {
1165             uses nx-action-multipath-grouping;
1166         }
1167     }
1168     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" {
1169         case "nx-action-conntrack-rpc-update-flow-updated-apply-actions-case" {
1170             uses nx-action-conntrack-grouping;
1171         }
1172     }
1173     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" {
1174         case "nx-action-ct-clear-rpc-update-flow-updated-apply-actions-case" {
1175             uses nx-action-ct-clear-grouping;
1176         }
1177     }
1178     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" {
1179         case "nx-action-learn-rpc-update-flow-updated-apply-actions-case" {
1180             uses nx-action-learn-grouping;
1181         }
1182     }
1183     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" {
1184         case "nx-action-encap-rpc-update-flow-updated-apply-actions-case" {
1185             uses nx-action-encap-grouping;
1186         }
1187     }
1188     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" {
1189         case "nx-action-decap-rpc-update-flow-updated-apply-actions-case" {
1190             uses nx-action-decap-grouping;
1191         }
1192     }
1193     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" {
1194         case "nx-action-dec-nsh-ttl-rpc-update-flow-updated-apply-actions-case" {
1195             uses nx-action-dec-nsh-ttl-grouping;
1196         }
1197     }
1198
1199     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1200         case "nx-action-reg-load-rpc-add-group-case" {
1201             uses nx-action-reg-load-grouping;
1202         }
1203     }
1204     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1205         case "nx-action-reg-move-rpc-add-group-case" {
1206             uses nx-action-reg-move-grouping;
1207         }
1208     }
1209     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1210         case "nx-action-output-reg-rpc-add-group-case" {
1211             uses nx-action-output-reg-grouping;
1212         }
1213     }
1214     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1215         case "nx-action-resubmit-rpc-add-group-case" {
1216             uses nx-action-resubmit-grouping;
1217         }
1218     }
1219     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1220         case "nx-action-fin-timeout-rpc-add-group-case" {
1221             uses nx-action-fin-timeout-grouping;
1222         }
1223     }
1224     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1225         case "nx-action-multipath-rpc-add-group-case" {
1226             uses nx-action-multipath-grouping;
1227         }
1228     }
1229     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1230         case "nx-action-conntrack-rpc-add-group-case" {
1231             uses nx-action-conntrack-grouping;
1232         }
1233     }
1234     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1235         case "nx-action-ct-clear-rpc-add-group-case" {
1236             uses nx-action-ct-clear-grouping;
1237         }
1238     }
1239     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1240         case "nx-action-learn-rpc-add-group-case" {
1241             uses nx-action-learn-grouping;
1242         }
1243     }
1244     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1245         case "nx-action-encap-rpc-add-group-case" {
1246             uses nx-action-encap-grouping;
1247         }
1248     }
1249     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1250         case "nx-action-decap-rpc-add-group-case" {
1251             uses nx-action-decap-grouping;
1252         }
1253     }
1254     augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1255         case "nx-action-dec-nsh-ttl-rpc-add-group-case" {
1256             uses nx-action-dec-nsh-ttl-grouping;
1257         }
1258     }
1259
1260     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1261         case "nx-action-reg-load-rpc-remove-group-case" {
1262             uses nx-action-reg-load-grouping;
1263         }
1264     }
1265     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1266         case "nx-action-reg-move-rpc-remove-group-case" {
1267             uses nx-action-reg-move-grouping;
1268         }
1269     }
1270     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1271         case "nx-action-output-reg-rpc-remove-group-case" {
1272             uses nx-action-output-reg-grouping;
1273         }
1274     }
1275     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1276         case "nx-action-resubmit-rpc-remove-group-case" {
1277             uses nx-action-resubmit-grouping;
1278         }
1279     }
1280     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1281         case "nx-action-fin-timeout-rpc-remove-group-case" {
1282             uses nx-action-fin-timeout-grouping;
1283         }
1284     }
1285     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1286         case "nx-action-multipath-rpc-remove-group-case" {
1287             uses nx-action-multipath-grouping;
1288         }
1289     }
1290     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1291         case "nx-action-conntrack-rpc-remove-group-case" {
1292             uses nx-action-conntrack-grouping;
1293         }
1294     }
1295     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1296         case "nx-action-ct-clear-rpc-remove-group-case" {
1297             uses nx-action-ct-clear-grouping;
1298         }
1299     }
1300     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1301         case "nx-action-learn-rpc-remove-group-case" {
1302             uses nx-action-learn-grouping;
1303         }
1304     }
1305     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1306         case "nx-action-encap-rpc-remove-group-case" {
1307             uses nx-action-encap-grouping;
1308         }
1309     }
1310     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1311         case "nx-action-decap-rpc-remove-group-case" {
1312             uses nx-action-decap-grouping;
1313         }
1314     }
1315     augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1316         case "nx-action-dec-nsh-ttl-rpc-remove-group-case" {
1317             uses nx-action-dec-nsh-ttl-grouping;
1318         }
1319     }
1320
1321     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1322         case "nx-action-reg-load-rpc-update-group-original-case" {
1323             uses nx-action-reg-load-grouping;
1324         }
1325     }
1326     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1327         case "nx-action-reg-move-rpc-update-group-original-case" {
1328             uses nx-action-reg-move-grouping;
1329         }
1330     }
1331     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1332         case "nx-action-output-reg-rpc-update-group-original-case" {
1333             uses nx-action-output-reg-grouping;
1334         }
1335     }
1336     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1337         case "nx-action-resubmit-rpc-update-group-original-case" {
1338             uses nx-action-resubmit-grouping;
1339         }
1340     }
1341     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1342         case "nx-action-fin-timeout-rpc-update-group-original-case" {
1343             uses nx-action-fin-timeout-grouping;
1344         }
1345     }
1346     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1347         case "nx-action-multipath-rpc-update-group-original-case" {
1348             uses nx-action-multipath-grouping;
1349         }
1350     }
1351     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1352         case "nx-action-conntrack-rpc-update-group-original-case" {
1353             uses nx-action-conntrack-grouping;
1354         }
1355     }
1356     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1357         case "nx-action-ct-clear-rpc-update-group-original-case" {
1358             uses nx-action-ct-clear-grouping;
1359         }
1360     }
1361     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1362         case "nx-action-learn-rpc-update-group-original-case" {
1363             uses nx-action-learn-grouping;
1364         }
1365     }
1366     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1367         case "nx-action-encap-rpc-update-group-original-case" {
1368             uses nx-action-encap-grouping;
1369         }
1370     }
1371     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1372         case "nx-action-decap-rpc-update-group-original-case" {
1373             uses nx-action-decap-grouping;
1374         }
1375     }
1376     augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1377         case "nx-action-dec-nsh-ttl-rpc-update-group-original-case" {
1378             uses nx-action-dec-nsh-ttl-grouping;
1379         }
1380     }
1381
1382     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1383         case "nx-action-reg-load-rpc-update-group-updated-case" {
1384             uses nx-action-reg-load-grouping;
1385         }
1386     }
1387     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1388         case "nx-action-reg-move-rpc-update-group-updated-case" {
1389             uses nx-action-reg-move-grouping;
1390         }
1391     }
1392     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1393         case "nx-action-output-reg-rpc-update-group-updated-case" {
1394             uses nx-action-output-reg-grouping;
1395         }
1396     }
1397     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1398         case "nx-action-resubmit-rpc-update-group-updated-case" {
1399             uses nx-action-resubmit-grouping;
1400         }
1401     }
1402     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1403         case "nx-action-fin-timeout-rpc-update-group-updated-case" {
1404             uses nx-action-fin-timeout-grouping;
1405         }
1406     }
1407     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1408         case "nx-action-multipath-rpc-update-group-updated-case" {
1409             uses nx-action-multipath-grouping;
1410         }
1411     }
1412     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1413         case "nx-action-conntrack-rpc-update-group-updated-case" {
1414             uses nx-action-conntrack-grouping;
1415         }
1416     }
1417     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1418         case "nx-action-ct-clear-rpc-update-group-updated-case" {
1419             uses nx-action-ct-clear-grouping;
1420         }
1421     }
1422     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1423         case "nx-action-learn-rpc-update-group-updated-case" {
1424             uses nx-action-learn-grouping;
1425         }
1426     }
1427     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1428         case "nx-action-encap-rpc-update-group-updated-case" {
1429             uses nx-action-encap-grouping;
1430         }
1431     }
1432     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1433         case "nx-action-decap-rpc-update-group-updated-case" {
1434             uses nx-action-decap-grouping;
1435         }
1436     }
1437     augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
1438         case "nx-action-dec-nsh-ttl-rpc-update-group-updated-case" {
1439             uses nx-action-dec-nsh-ttl-grouping;
1440         }
1441     }
1442
1443     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1444         case "nx-action-reg-load-rpc-transmit-packet-case" {
1445             uses nx-action-reg-load-grouping;
1446         }
1447     }
1448     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1449         case "nx-action-reg-move-rpc-transmit-packet-case" {
1450             uses nx-action-reg-move-grouping;
1451         }
1452     }
1453     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1454         case "nx-action-output-reg-rpc-transmit-packet-case" {
1455             uses nx-action-output-reg-grouping;
1456         }
1457     }
1458     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1459         case "nx-action-resubmit-rpc-transmit-packet-case" {
1460             uses nx-action-resubmit-grouping;
1461         }
1462     }
1463     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1464         case "nx-action-fin-timeout-rpc-transmit-packet-case" {
1465             uses nx-action-fin-timeout-grouping;
1466         }
1467     }
1468     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1469         case "nx-action-multipath-rpc-transmit-packet-case" {
1470             uses nx-action-multipath-grouping;
1471         }
1472     }
1473     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1474         case "nx-action-conntrack-rpc-transmit-packet-case" {
1475             uses nx-action-conntrack-grouping;
1476         }
1477     }
1478     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1479         case "nx-action-ct-clear-rpc-transmit-packet-case" {
1480             uses nx-action-ct-clear-grouping;
1481         }
1482     }
1483     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1484         case "nx-action-learn-rpc-transmit-packet-case" {
1485             uses nx-action-learn-grouping;
1486         }
1487     }
1488     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1489         case "nx-action-encap-rpc-transmit-packet-case" {
1490             uses nx-action-encap-grouping;
1491         }
1492     }
1493     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1494         case "nx-action-decap-rpc-transmit-packet-case" {
1495             uses nx-action-decap-grouping;
1496         }
1497     }
1498     augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
1499         case "nx-action-dec-nsh-ttl-rpc-transmit-packet-case" {
1500             uses nx-action-dec-nsh-ttl-grouping;
1501         }
1502     }
1503
1504     // DATA
1505     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" {
1506         case "nx-action-reg-load-nodes-node-table-flow-write-actions-case" {
1507             uses nx-action-reg-load-grouping;
1508         }
1509     }
1510     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" {
1511         case "nx-action-reg-move-nodes-node-table-flow-write-actions-case" {
1512             uses nx-action-reg-move-grouping;
1513         }
1514     }
1515     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" {
1516         case "nx-action-output-reg-nodes-node-table-flow-write-actions-case" {
1517             uses nx-action-output-reg-grouping;
1518         }
1519     }
1520     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" {
1521         case "nx-action-resubmit-nodes-node-table-flow-write-actions-case" {
1522             uses nx-action-resubmit-grouping;
1523         }
1524     }
1525     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" {
1526         case "nx-action-fin-timeout-nodes-node-table-flow-write-actions-case" {
1527             uses nx-action-fin-timeout-grouping;
1528         }
1529     }
1530     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" {
1531         case "nx-action-multipath-nodes-node-table-flow-write-actions-case" {
1532             uses nx-action-multipath-grouping;
1533         }
1534     }
1535     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" {
1536         case "nx-action-conntrack-nodes-node-table-flow-write-actions-case" {
1537             uses nx-action-conntrack-grouping;
1538         }
1539     }
1540     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" {
1541         case "nx-action-ct-clear-nodes-node-table-flow-write-actions-case" {
1542             uses nx-action-ct-clear-grouping;
1543         }
1544     }
1545     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" {
1546         case "nx-action-learn-nodes-node-table-flow-write-actions-case" {
1547             uses nx-action-learn-grouping;
1548         }
1549     }
1550     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" {
1551         case "nx-action-encap-nodes-node-table-flow-write-actions-case" {
1552             uses nx-action-encap-grouping;
1553         }
1554     }
1555     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" {
1556         case "nx-action-decap-nodes-node-table-flow-write-actions-case" {
1557             uses nx-action-decap-grouping;
1558         }
1559     }
1560     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" {
1561         case "nx-action-dec-nsh-ttl-nodes-node-table-flow-write-actions-case" {
1562             uses nx-action-dec-nsh-ttl-grouping;
1563         }
1564     }
1565
1566     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" {
1567         case "nx-action-reg-load-nodes-node-table-flow-apply-actions-case" {
1568             uses nx-action-reg-load-grouping;
1569         }
1570     }
1571     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" {
1572         case "nx-action-reg-move-nodes-node-table-flow-apply-actions-case" {
1573             uses nx-action-reg-move-grouping;
1574         }
1575     }
1576     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" {
1577         case "nx-action-output-reg-nodes-node-table-flow-apply-actions-case" {
1578             uses nx-action-output-reg-grouping;
1579         }
1580     }
1581     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" {
1582         case "nx-action-resubmit-nodes-node-table-flow-apply-actions-case" {
1583             uses nx-action-resubmit-grouping;
1584         }
1585     }
1586     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" {
1587         case "nx-action-fin-timeout-nodes-node-table-flow-apply-actions-case" {
1588             uses nx-action-fin-timeout-grouping;
1589         }
1590     }
1591     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" {
1592         case "nx-action-multipath-nodes-node-table-flow-apply-actions-case" {
1593             uses nx-action-multipath-grouping;
1594         }
1595     }
1596     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" {
1597         case "nx-action-conntrack-nodes-node-table-flow-apply-actions-case" {
1598             uses nx-action-conntrack-grouping;
1599         }
1600     }
1601     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" {
1602         case "nx-action-ct-clear-nodes-node-table-flow-apply-actions-case" {
1603             uses nx-action-ct-clear-grouping;
1604         }
1605     }
1606     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" {
1607         case "nx-action-learn-nodes-node-table-flow-apply-actions-case" {
1608             uses nx-action-learn-grouping;
1609         }
1610     }
1611     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" {
1612         case "nx-action-encap-nodes-node-table-flow-apply-actions-case" {
1613             uses nx-action-encap-grouping;
1614         }
1615     }
1616     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" {
1617         case "nx-action-decap-nodes-node-table-flow-apply-actions-case" {
1618             uses nx-action-decap-grouping;
1619         }
1620     }
1621     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" {
1622         case "nx-action-dec-nsh-ttl-nodes-node-table-flow-apply-actions-case" {
1623             uses nx-action-dec-nsh-ttl-grouping;
1624         }
1625     }
1626
1627     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1628         case "nx-action-reg-load-nodes-node-group-buckets-bucket-actions-case" {
1629             uses nx-action-reg-load-grouping;
1630         }
1631     }
1632     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1633         case "nx-action-reg-move-nodes-node-group-buckets-bucket-actions-case" {
1634             uses nx-action-reg-move-grouping;
1635         }
1636     }
1637     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1638         case "nx-action-output-reg-nodes-node-group-buckets-bucket-actions-case" {
1639             uses nx-action-output-reg-grouping;
1640         }
1641     }
1642     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1643         case "nx-action-resubmit-nodes-node-group-buckets-bucket-actions-case" {
1644             uses nx-action-resubmit-grouping;
1645         }
1646     }
1647     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1648         case "nx-action-fin-timeout-nodes-node-group-buckets-bucket-actions-case" {
1649             uses nx-action-fin-timeout-grouping;
1650         }
1651     }
1652     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1653         case "nx-action-multipath-nodes-node-group-buckets-bucket-actions-case" {
1654             uses nx-action-multipath-grouping;
1655         }
1656     }
1657     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1658         case "nx-action-conntrack-nodes-node-group-buckets-bucket-actions-case" {
1659             uses nx-action-conntrack-grouping;
1660         }
1661     }
1662     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1663         case "nx-action-ct-clear-nodes-node-group-buckets-bucket-actions-case" {
1664             uses nx-action-ct-clear-grouping;
1665         }
1666     }
1667     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1668         case "nx-action-learn-nodes-node-group-buckets-bucket-actions-case" {
1669             uses nx-action-learn-grouping;
1670         }
1671     }
1672     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1673         case "nx-action-encap-nodes-node-group-buckets-bucket-actions-case" {
1674             uses nx-action-encap-grouping;
1675         }
1676     }
1677     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1678         case "nx-action-decap-nodes-node-group-buckets-bucket-actions-case" {
1679             uses nx-action-decap-grouping;
1680         }
1681     }
1682     augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
1683         case "nx-action-dec-nsh-ttl-nodes-node-group-buckets-bucket-actions-case" {
1684             uses nx-action-dec-nsh-ttl-grouping;
1685         }
1686     }
1687
1688     // NOTIFICATIONS
1689     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" {
1690         case "nx-action-reg-load-notif-flows-statistics-update-write-actions-case" {
1691             uses nx-action-reg-load-grouping;
1692         }
1693     }
1694     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" {
1695         case "nx-action-reg-move-notif-flows-statistics-update-write-actions-case" {
1696             uses nx-action-reg-move-grouping;
1697         }
1698     }
1699     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" {
1700         case "nx-action-output-reg-notif-flows-statistics-update-write-actions-case" {
1701             uses nx-action-output-reg-grouping;
1702         }
1703     }
1704     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" {
1705         case "nx-action-resubmit-notif-flows-statistics-update-write-actions-case" {
1706             uses nx-action-resubmit-grouping;
1707         }
1708     }
1709     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" {
1710         case "nx-action-fin-timeout-notif-flows-statistics-update-write-actions-case" {
1711             uses nx-action-fin-timeout-grouping;
1712         }
1713     }
1714     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" {
1715         case "nx-action-multipath-notif-flows-statistics-update-write-actions-case" {
1716             uses nx-action-multipath-grouping;
1717         }
1718     }
1719     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" {
1720         case "nx-action-conntrack-notif-flows-statistics-update-write-actions-case" {
1721             uses nx-action-conntrack-grouping;
1722         }
1723     }
1724     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" {
1725         case "nx-action-ct-clear-notif-flows-statistics-update-write-actions-case" {
1726             uses nx-action-ct-clear-grouping;
1727         }
1728     }
1729     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" {
1730         case "nx-action-learn-notif-flows-statistics-update-write-actions-case" {
1731             uses nx-action-learn-grouping;
1732         }
1733     }
1734     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" {
1735         case "nx-action-encap-notif-flows-statistics-update-write-actions-case" {
1736             uses nx-action-encap-grouping;
1737         }
1738     }
1739     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" {
1740         case "nx-action-decap-notif-flows-statistics-update-write-actions-case" {
1741             uses nx-action-decap-grouping;
1742         }
1743     }
1744     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" {
1745         case "nx-action-dec-nsh-ttl-notif-flows-statistics-update-write-actions-case" {
1746             uses nx-action-dec-nsh-ttl-grouping;
1747         }
1748     }
1749
1750     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" {
1751         case "nx-action-reg-load-notif-flows-statistics-update-apply-actions-case" {
1752             uses nx-action-reg-load-grouping;
1753         }
1754     }
1755     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" {
1756         case "nx-action-reg-move-notif-flows-statistics-update-apply-actions-case" {
1757             uses nx-action-reg-move-grouping;
1758         }
1759     }
1760     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" {
1761         case "nx-action-output-reg-notif-flows-statistics-update-apply-actions-case" {
1762             uses nx-action-output-reg-grouping;
1763         }
1764     }
1765     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" {
1766         case "nx-action-resubmit-notif-flows-statistics-update-apply-actions-case" {
1767             uses nx-action-resubmit-grouping;
1768         }
1769     }
1770     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" {
1771         case "nx-action-fin-timeout-notif-flows-statistics-update-apply-actions-case" {
1772             uses nx-action-fin-timeout-grouping;
1773         }
1774     }
1775     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" {
1776         case "nx-action-multipath-notif-flows-statistics-update-apply-actions-case" {
1777             uses nx-action-multipath-grouping;
1778         }
1779     }
1780     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" {
1781         case "nx-action-conntrack-notif-flows-statistics-update-apply-actions-case" {
1782             uses nx-action-conntrack-grouping;
1783         }
1784     }
1785     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" {
1786         case "nx-action-ct-clear-notif-flows-statistics-update-apply-actions-case" {
1787             uses nx-action-ct-clear-grouping;
1788         }
1789     }
1790     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" {
1791         case "nx-action-learn-notif-flows-statistics-update-apply-actions-case" {
1792             uses nx-action-learn-grouping;
1793         }
1794     }
1795     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" {
1796         case "nx-action-encap-notif-flows-statistics-update-apply-actions-case" {
1797             uses nx-action-encap-grouping;
1798         }
1799     }
1800     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" {
1801         case "nx-action-decap-notif-flows-statistics-update-apply-actions-case" {
1802             uses nx-action-decap-grouping;
1803         }
1804     }
1805     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" {
1806         case "nx-action-dec-nsh-ttl-notif-flows-statistics-update-apply-actions-case" {
1807             uses nx-action-dec-nsh-ttl-grouping;
1808         }
1809     }
1810
1811     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" {
1812         case "nx-action-reg-load-notif-group-desc-stats-updated-case" {
1813             uses nx-action-reg-load-grouping;
1814         }
1815     }
1816     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" {
1817         case "nx-action-reg-move-notif-group-desc-stats-updated-case" {
1818             uses nx-action-reg-move-grouping;
1819         }
1820     }
1821     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" {
1822         case "nx-action-output-reg-notif-group-desc-stats-updated-case" {
1823             uses nx-action-output-reg-grouping;
1824         }
1825     }
1826     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" {
1827         case "nx-action-resubmit-notif-group-desc-stats-updated-case" {
1828             uses nx-action-resubmit-grouping;
1829         }
1830     }
1831     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" {
1832         case "nx-action-fin-timeout-notif-group-desc-stats-updated-case" {
1833             uses nx-action-fin-timeout-grouping;
1834         }
1835     }
1836     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" {
1837         case "nx-action-multipath-notif-group-desc-stats-updated-case" {
1838             uses nx-action-multipath-grouping;
1839         }
1840     }
1841     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" {
1842         case "nx-action-conntrack-notif-group-desc-stats-updated-case" {
1843             uses nx-action-conntrack-grouping;
1844         }
1845     }
1846     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" {
1847         case "nx-action-ct-clear-notif-group-desc-stats-updated-case" {
1848             uses nx-action-ct-clear-grouping;
1849         }
1850     }
1851     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" {
1852         case "nx-action-learn-notif-group-desc-stats-updated-case" {
1853             uses nx-action-learn-grouping;
1854         }
1855     }
1856     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" {
1857         case "nx-action-encap-notif-group-desc-stats-updated-case" {
1858             uses nx-action-encap-grouping;
1859         }
1860     }
1861     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" {
1862         case "nx-action-decap-notif-group-desc-stats-updated-case" {
1863             uses nx-action-decap-grouping;
1864         }
1865     }
1866     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" {
1867         case "nx-action-dec-nsh-ttl-notif-group-desc-stats-updated-case" {
1868             uses nx-action-dec-nsh-ttl-grouping;
1869         }
1870     }
1871     augment "/directstat:get-flow-statistics/directstat:output/directstat:flow-and-statistics-map-list/directstat:instructions/directstat:instruction/directstat:instruction/directstat:apply-actions-case/directstat:apply-actions/directstat:action/directstat:action" {
1872         case "nx-action-reg-load-notif-direct-statistics-update-apply-actions-case" {
1873             uses nx-action-reg-load-grouping;
1874         }
1875         case "nx-action-reg-move-notif-direct-statistics-update-apply-actions-case" {
1876             uses nx-action-reg-move-grouping;
1877         }
1878         case "nx-action-output-reg-notif-direct-statistics-update-apply-actions-case" {
1879             uses nx-action-output-reg-grouping;
1880         }
1881         case "nx-action-resubmit-notif-direct-statistics-update-apply-actions-case" {
1882             uses nx-action-resubmit-grouping;
1883         }
1884         case "nx-action-fin-timeout-notif-direct-statistics-update-apply-actions-case" {
1885             uses nx-action-fin-timeout-grouping;
1886         }
1887         case "nx-action-multipath-notif-direct-statistics-update-apply-actions-case" {
1888             uses nx-action-multipath-grouping;
1889         }
1890         case "nx-action-conntrack-notif-direct-statistics-update-apply-actions-case" {
1891             uses nx-action-conntrack-grouping;
1892         }
1893         case "nx-action-ct-clear-notif-direct-statistics-update-apply-actions-case" {
1894             uses nx-action-ct-clear-grouping;
1895         }
1896         case "nx-action-learn-notif-direct-statistics-update-apply-actions-case" {
1897             uses nx-action-learn-grouping;
1898         }
1899         case "nx-action-encap-notif-direct-statistics-update-apply-actions-case" {
1900             uses nx-action-encap-grouping;
1901         }
1902         case "nx-action-decap-notif-direct-statistics-update-apply-actions-case" {
1903             uses nx-action-decap-grouping;
1904         }
1905         case "nx-action-dec-nsh-ttl-notif-direct-statistics-update-apply-actions-case" {
1906             uses nx-action-dec-nsh-ttl-grouping;
1907         }
1908     }
1909
1910     augment "/directstat:get-flow-statistics/directstat:output/directstat:flow-and-statistics-map-list/directstat:instructions/directstat:instruction/directstat:instruction/directstat:write-actions-case/directstat:write-actions/directstat:action/directstat:action" {
1911         case "nx-action-reg-load-notif-direct-statistics-update-write-actions-case" {
1912             uses nx-action-reg-load-grouping;
1913         }
1914         case "nx-action-reg-move-notif-direct-statistics-update-write-actions-case" {
1915             uses nx-action-reg-move-grouping;
1916         }
1917         case "nx-action-output-reg-notif-direct-statistics-update-write-actions-case" {
1918             uses nx-action-output-reg-grouping;
1919         }
1920         case "nx-action-resubmit-notif-direct-statistics-update-write-actions-case" {
1921             uses nx-action-resubmit-grouping;
1922         }
1923         case "nx-action-fin-timeout-notif-direct-statistics-update-write-actions-case" {
1924             uses nx-action-fin-timeout-grouping;
1925         }
1926         case "nx-action-multipath-notif-direct-statistics-update-write-actions-case" {
1927             uses nx-action-multipath-grouping;
1928         }
1929         case "nx-action-conntrack-notif-direct-statistics-update-write-actions-case" {
1930             uses nx-action-conntrack-grouping;
1931         }
1932         case "nx-action-ct-clear-notif-direct-statistics-update-write-actions-case" {
1933             uses nx-action-ct-clear-grouping;
1934         }
1935         case "nx-action-learn-notif-direct-statistics-update-write-actions-case" {
1936             uses nx-action-learn-grouping;
1937         }
1938         case "nx-action-encap-notif-direct-statistics-update-write-actions-case" {
1939             uses nx-action-encap-grouping;
1940         }
1941         case "nx-action-decap-notif-direct-statistics-update-write-actions-case" {
1942             uses nx-action-decap-grouping;
1943         }
1944         case "nx-action-dec-nsh-ttl-notif-direct-statistics-update-write-actions-case" {
1945             uses nx-action-dec-nsh-ttl-grouping;
1946         }
1947     }
1948 }