* Accept both base10 and base16 format for (almost) all integer arguments
  when specified by the user.

* Print ethernetFrameType as hex (because it is the typical convention).
diff --git a/web/add_flow.py b/web/add_flow.py
index d8788ee..7adaf98 100755
--- a/web/add_flow.py
+++ b/web/add_flow.py
@@ -175,7 +175,7 @@
       # Just mark whether inPort matching is enabled
       matchInPortEnabled = arg2 in ['True', 'true']
       # inPort = {}
-      # inPort['value'] = int(arg2)
+      # inPort['value'] = int(arg2, 0)
       # match['inPort'] = inPort
       ## match['matchInPort'] = True
     elif arg1 == "matchSrcMac":
@@ -189,19 +189,19 @@
       match['dstMac'] = dstMac
       # match['matchDstMac'] = True
     elif arg1 == "matchVlanId":
-      match['vlanId'] = int(arg2)
+      match['vlanId'] = int(arg2, 0)
       # match['matchVlanId'] = True
     elif arg1 == "matchVlanPriority":
-      match['vlanPriority'] = int(arg2)
+      match['vlanPriority'] = int(arg2, 0)
       # match['matchVlanPriority'] = True
     elif arg1 == "matchEthernetFrameType":
-      match['ethernetFrameType'] = int(arg2)
+      match['ethernetFrameType'] = int(arg2, 0)
       # match['matchEthernetFrameType'] = True
     elif arg1 == "matchIpToS":
-      match['ipToS'] = int(arg2)
+      match['ipToS'] = int(arg2, 0)
       # match['matchIpToS'] = True
     elif arg1 == "matchIpProto":
-      match['ipProto'] = int(arg2)
+      match['ipProto'] = int(arg2, 0)
       # match['matchIpProto'] = True
     elif arg1 == "matchSrcIPv4Net":
       srcIPv4Net = {}
@@ -214,10 +214,10 @@
       match['dstIPv4Net'] = dstIPv4Net
       # match['matchDstIPv4Net'] = True
     elif arg1 == "matchSrcTcpUdpPort":
-      match['srcTcpUdpPort'] = int(arg2)
+      match['srcTcpUdpPort'] = int(arg2, 0)
       # match['matchSrcTcpUdpPort'] = True
     elif arg1 == "matchDstTcpUdpPort":
-      match['dstTcpUdpPort'] = int(arg2)
+      match['dstTcpUdpPort'] = int(arg2, 0)
       # match['matchDstTcpUdpPort'] = True
     elif arg1 == "actionOutput":
       # Just mark whether ACTION_OUTPUT action is enabled
@@ -226,40 +226,40 @@
       # TODO: Complete the implementation for ACTION_OUTPUT
       #   actionOutput = {}
       #   outPort = {}
-      #   outPort['value'] = int(arg2)
+      #   outPort['value'] = int(arg2, 0)
       #   actionOutput['port'] = outPort
-      #   actionOutput['maxLen'] = int(arg3)
+      #   actionOutput['maxLen'] = int(arg3, 0)
       #   action['actionOutput'] = actionOutput
       #   # action['actionType'] = 'ACTION_OUTPUT'
       #   actions.append(action)
       #
     elif arg1 == "actionSetVlanId":
       vlanId = {}
-      vlanId['vlanId'] = int(arg2)
+      vlanId['vlanId'] = int(arg2, 0)
       action['actionSetVlanId'] = vlanId
       # action['actionType'] = 'ACTION_SET_VLAN_VID'
       actions.append(copy.deepcopy(action))
     elif arg1 == "actionSetVlanPriority":
       vlanPriority = {}
-      vlanPriority['vlanPriority'] = int(arg2)
+      vlanPriority['vlanPriority'] = int(arg2, 0)
       action['actionSetVlanPriority'] = vlanPriority
       # action['actionType'] = 'ACTION_SET_VLAN_PCP'
       actions.append(copy.deepcopy(action))
     elif arg1 == "actionSetIpToS":
       ipToS = {}
-      ipToS['ipToS'] = int(arg2)
+      ipToS['ipToS'] = int(arg2, 0)
       action['actionSetIpToS'] = ipToS
       # action['actionType'] = 'ACTION_SET_NW_TOS'
       actions.append(copy.deepcopy(action))
     elif arg1 == "actionSetTcpUdpSrcPort":
       tcpUdpSrcPort = {}
-      tcpUdpSrcPort['port'] = int(arg2)
+      tcpUdpSrcPort['port'] = int(arg2, 0)
       action['actionSetTcpUdpSrcPort'] = tcpUdpSrcPort
       # action['actionType'] = 'ACTION_SET_TP_SRC'
       actions.append(copy.deepcopy(action))
     elif arg1 == "actionSetTcpUdpDstPort":
       tcpUdpDstPort = {}
-      tcpUdpDstPort['port'] = int(arg2)
+      tcpUdpDstPort['port'] = int(arg2, 0)
       action['actionSetTcpUdpDstPort'] = tcpUdpDstPort
       # action['actionType'] = 'ACTION_SET_TP_DST'
       actions.append(copy.deepcopy(action))
@@ -304,9 +304,9 @@
     elif arg1 == "actionEnqueue":
       # TODO: Implement ACTION_ENQUEUE
       actionEnqueue = {}
-      #   actionEnqueue['queueId'] = int(arg2)
+      #   actionEnqueue['queueId'] = int(arg2, 0)
       #   enqueuePort = {}
-      #   enqueuePort['value'] = int(arg3)
+      #   enqueuePort['value'] = int(arg3, 0)
       #   actionEnqueue['port'] = enqueuePort
       #   action['actionEnqueue'] = actionEnqueue
       #   # action['actionType'] = 'ACTION_ENQUEUE'
diff --git a/web/delete_flow.py b/web/delete_flow.py
index f6f3d39..412d02f 100755
--- a/web/delete_flow.py
+++ b/web/delete_flow.py
@@ -59,4 +59,5 @@
     exit(1)
 
   # Do the work
-  delete_flow_path(sys.argv[1]);
+  flow_id_arg = int(sys.argv[1], 0)
+  delete_flow_path(flow_id_arg);
diff --git a/web/get_flow.py b/web/get_flow.py
index 65def9b..fdaa10b 100755
--- a/web/get_flow.py
+++ b/web/get_flow.py
@@ -92,7 +92,7 @@
       if matchVlanPriority == True:
 	print "    vlanPriority: %s" % vlanPriority
       if matchEthernetFrameType == True:
-	print "    ethernetFrameType: %s" % ethernetFrameType
+	print "    ethernetFrameType: %s" % hex(ethernetFrameType)
       if matchIpToS == True:
 	print "    ipToS: %s" % ipToS
       if matchIpProto == True: