+let zero = 0;;
+exception ParseError of string * string * string;;
+type t = { net_device_dev_addr : string; net_device_name : string };;
+let parser_1 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(2240), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_1", "failed to match kernel structure"));;
+let parser_2 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(4288), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_2", "failed to match kernel structure"));;
+let parser_3 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(2496), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_3", "failed to match kernel structure"));;
+let parser_4 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(2688), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_4", "failed to match kernel structure"));;
+let parser_5 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(3392), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_5", "failed to match kernel structure"));;
+let parser_6 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(2528), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_6", "failed to match kernel structure"));;
+let parser_7 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(4416), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_7", "failed to match kernel structure"));;
+let parser_8 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(4416), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_8", "failed to match kernel structure"));;
+let parser_9 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(2528), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_9", "failed to match kernel structure"));;
+let parser_10 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(2592), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_10", "failed to match kernel structure"));;
+let parser_11 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(3264), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_11", "failed to match kernel structure"));;
+let parser_12 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(1728), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_12", "failed to match kernel structure"));;
+let parser_13 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(4288), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_13", "failed to match kernel structure"));;
+let parser_14 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(1728), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_14", "failed to match kernel structure"));;
+let parser_15 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(3392), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_15", "failed to match kernel structure"));;
+let parser_16 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(1696), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_16", "failed to match kernel structure"));;
+let parser_17 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(2752), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_17", "failed to match kernel structure"));;
+let parser_18 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(2624), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_18", "failed to match kernel structure"));;
+let parser_19 bits = bitmatch bits with
+ | { net_device_name : 128 : offset(0), string;
+ net_device_dev_addr : 256 : offset(1696), string } -> { net_device_name = net_device_name;
+ net_device_dev_addr = net_device_dev_addr }
+ | { _ } -> raise (ParseError ("net_device", "parser_19", "failed to match kernel structure"));;