6 optional string dynamic_str = 1 [(nanopb).type = FT_POINTER];
7 repeated string dynamic_str_arr = 2 [(nanopb).type = FT_POINTER];
8 repeated SubMessage dynamic_submsg = 3 [(nanopb).type = FT_POINTER];
13 required SubMessage static_req_submsg = 1 [(nanopb).type = FT_STATIC];
14 optional SubMessage dynamic_submsg = 2 [(nanopb).type = FT_POINTER];
15 optional SubMessage static_opt_submsg = 3 [(nanopb).type = FT_STATIC];
16 extensions 100 to 200;
21 optional SubMessage dynamic_ext = 100 [(nanopb).type = FT_POINTER];
22 optional SubMessage static_ext = 101 [(nanopb).type = FT_STATIC];
27 required int32 first = 1;
33 required int32 last = 4;