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