removing undesired padding from action_id structs
diff --git a/loxi_ir/ir.py b/loxi_ir/ir.py
index 6a053c6..76c92cb 100644
--- a/loxi_ir/ir.py
+++ b/loxi_ir/ir.py
@@ -33,6 +33,8 @@
 from collections import namedtuple, OrderedDict
 from generic_utils import find, memoize, OrderedSet
 from loxi_ir import ir_offset
+#from loxi_ir.ir import *
+import loxi_ir.ir
 import loxi_front_end.frontend_ir as frontend_ir
 
 logger = logging.getLogger(__name__)
@@ -459,6 +461,10 @@
         members.extend( build_member(c, fe_member, member_lengths[fe_member])
                   for fe_member in fe.members)
 
+        if not 'bsn' in name:
+            for m in c.members:
+                if isinstance(m, OFPadMember): c.members.remove(m)
+
         name_classes[name] = c
         return c
 
diff --git a/openflow_input/standard-1.3 b/openflow_input/standard-1.3
index 764ad21..6010880 100644
--- a/openflow_input/standard-1.3
+++ b/openflow_input/standard-1.3
@@ -758,7 +758,6 @@
 struct of_action_id {
     uint16_t type;
     uint16_t len;
-    pad(4);
 };
 
 struct of_action_output : of_action {
@@ -878,6 +877,11 @@
     pad(4);
 };
 
+struct of_instruction_id {
+    uint16_t type;
+    uint16_t len;
+};
+
 struct of_instruction {
     uint16_t type == ?;
     uint16_t len;
@@ -1611,13 +1615,13 @@
     uint16_t         type == 0;
     uint16_t         length;
     // FIXME Check if instruction_t is right for ids here
-    list(of_instruction_t)   instruction_ids;
+    list(of_instruction_id_t)   instruction_ids;
 };
 
 struct of_table_feature_prop_instructions_miss : of_table_feature_prop {
     uint16_t         type == 1;
     uint16_t         length;
-    list(of_instruction_t)   instruction_ids;
+    list(of_instruction_id_t)   instruction_ids;
 };
 
 struct of_table_feature_prop_next_tables : of_table_feature_prop {