Merge branch 'develop'
diff --git a/erpnext/__version__.py b/erpnext/__version__.py
index dd21361..9ce5576 100644
--- a/erpnext/__version__.py
+++ b/erpnext/__version__.py
@@ -1,2 +1,2 @@
 from __future__ import unicode_literals
-__version__ = '5.4.0'
+__version__ = '5.4.1'
diff --git a/erpnext/hooks.py b/erpnext/hooks.py
index ec3e5f8..227206f 100644
--- a/erpnext/hooks.py
+++ b/erpnext/hooks.py
@@ -27,7 +27,7 @@
 """
 app_icon = "icon-th"
 app_color = "#e74c3c"
-app_version = "5.4.0"
+app_version = "5.4.1"
 github_link = "https://github.com/frappe/erpnext"
 
 error_report_email = "support@erpnext.com"
diff --git a/erpnext/hr/doctype/leave_application/leave_application.py b/erpnext/hr/doctype/leave_application/leave_application.py
index d1ec4b1..228f2bd 100755
--- a/erpnext/hr/doctype/leave_application/leave_application.py
+++ b/erpnext/hr/doctype/leave_application/leave_application.py
@@ -239,14 +239,15 @@
 	if not leave_app.half_day:
 		tot_days = date_diff(leave_app.to_date, leave_app.from_date) + 1
 		if frappe.db.get_value("Leave Type", leave_app.leave_type, "include_holiday"):
+			ret = {
+				'total_leave_days' : flt(tot_days)
+			}
+		else:
 			holidays = leave_app.get_holidays()
 			ret = {
 				'total_leave_days' : flt(tot_days)-flt(holidays)
 			}
-		else:
-			ret = {
-				'total_leave_days' : flt(tot_days)
-			}
+
 	return ret
 
 @frappe.whitelist()
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 9e03e3e..75c1dff 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -180,6 +180,7 @@
 erpnext.patches.v5_1.rename_roles
 erpnext.patches.v5_1.default_bom
 execute:frappe.delete_doc("DocType", "Party Type")
-erpnext.patches.v5_4.fix_reserved_qty_and_sle_for_packed_items
+execute:frappe.delete_doc("Module Def", "Contacts")
+erpnext.patches.v5_4.fix_reserved_qty_and_sle_for_packed_items # 30-07-2015
 execute:frappe.reload_doctype("Leave Type")
-execute:frappe.db.sql("update `tabLeave Type` set include_holiday=1")
\ No newline at end of file
+execute:frappe.db.sql("update `tabLeave Type` set include_holiday=0")
\ No newline at end of file
diff --git a/erpnext/patches/v5_4/fix_reserved_qty_and_sle_for_packed_items.py b/erpnext/patches/v5_4/fix_reserved_qty_and_sle_for_packed_items.py
index 0d46d99..f1632ab 100644
--- a/erpnext/patches/v5_4/fix_reserved_qty_and_sle_for_packed_items.py
+++ b/erpnext/patches/v5_4/fix_reserved_qty_and_sle_for_packed_items.py
@@ -10,15 +10,19 @@
 		where docstatus = 2 and ifnull(update_stock, 0) = 1""")
 
 	if cancelled_invoices:
+		repost_for = frappe.db.sql("""select distinct item_code, warehouse from `tabStock Ledger Entry`
+			where voucher_type = 'Sales Invoice' and voucher_no in (%s)""" 
+			% (', '.join(['%s']*len(cancelled_invoices))), tuple(cancelled_invoices))
+			
 		frappe.db.sql("""delete from `tabStock Ledger Entry` 
 			where voucher_type = 'Sales Invoice' and voucher_no in (%s)""" 
 			% (', '.join(['%s']*len(cancelled_invoices))), tuple(cancelled_invoices))
 			
-	for item_code, warehouse in frappe.db.sql("select item_code, warehouse from tabBin where ifnull(reserved_qty, 0) < 0"):
-		
-		repost_actual_qty(item_code, warehouse)
-		
-		update_bin_qty(item_code, warehouse, {
-			"reserved_qty": get_reserved_qty(item_code, warehouse)
-		})
-	
\ No newline at end of file
+		for item_code, warehouse in repost_for:
+			repost_actual_qty(item_code, warehouse)
+			
+	for item_code, warehouse in frappe.db.sql("""select distinct item_code, warehouse 
+		from `tabPacked Item` where parenttype = 'Sales Invoice' and docstatus = 1"""):
+			update_bin_qty(item_code, warehouse, {
+				"reserved_qty": get_reserved_qty(item_code, warehouse)
+			})
\ No newline at end of file
diff --git a/erpnext/stock/doctype/item/item.json b/erpnext/stock/doctype/item/item.json
index b0bc85a..9a52a23 100644
--- a/erpnext/stock/doctype/item/item.json
+++ b/erpnext/stock/doctype/item/item.json
@@ -1,1018 +1,1008 @@
 {
- "allow_import": 1, 
- "allow_rename": 1, 
- "autoname": "field:item_code", 
- "creation": "2013-05-03 10:45:46", 
- "default_print_format": "Standard", 
- "description": "A Product or a Service that is bought, sold or kept in stock.", 
- "docstatus": 0, 
- "doctype": "DocType", 
- "document_type": "Master", 
+ "allow_import": 1,
+ "allow_rename": 1,
+ "autoname": "field:item_code",
+ "creation": "2013-05-03 10:45:46",
+ "default_print_format": "Standard",
+ "description": "A Product or a Service that is bought, sold or kept in stock.",
+ "docstatus": 0,
+ "doctype": "DocType",
+ "document_type": "Master",
  "fields": [
   {
-   "fieldname": "name_and_description_section", 
-   "fieldtype": "Section Break", 
-   "label": "", 
-   "no_copy": 0, 
-   "oldfieldtype": "Section Break", 
-   "options": "icon-flag", 
-   "permlevel": 0, 
+   "fieldname": "name_and_description_section",
+   "fieldtype": "Section Break",
+   "label": "",
+   "no_copy": 0,
+   "oldfieldtype": "Section Break",
+   "options": "icon-flag",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "naming_series", 
-   "fieldtype": "Select", 
-   "label": "Series", 
-   "options": "ITEM-", 
-   "permlevel": 0, 
+   "fieldname": "naming_series",
+   "fieldtype": "Select",
+   "label": "Series",
+   "options": "ITEM-",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "description": "", 
-   "fieldname": "item_code", 
-   "fieldtype": "Data", 
-   "in_filter": 0, 
-   "label": "Item Code", 
-   "no_copy": 1, 
-   "oldfieldname": "item_code", 
-   "oldfieldtype": "Data", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 0, 
+   "description": "",
+   "fieldname": "item_code",
+   "fieldtype": "Data",
+   "in_filter": 0,
+   "label": "Item Code",
+   "no_copy": 1,
+   "oldfieldname": "item_code",
+   "oldfieldtype": "Data",
+   "permlevel": 0,
+   "read_only": 0,
+   "reqd": 0,
    "search_index": 0
-  }, 
+  },
   {
-   "depends_on": "variant_of", 
-   "description": "If item is a variant of another item then description, image, pricing, taxes etc will be set from the template unless explicitly specified", 
-   "fieldname": "variant_of", 
-   "fieldtype": "Link", 
-   "label": "Variant Of", 
-   "options": "Item", 
-   "permlevel": 0, 
-   "precision": "", 
+   "depends_on": "variant_of",
+   "description": "If item is a variant of another item then description, image, pricing, taxes etc will be set from the template unless explicitly specified",
+   "fieldname": "variant_of",
+   "fieldtype": "Link",
+   "label": "Variant Of",
+   "options": "Item",
+   "permlevel": 0,
+   "precision": "",
    "read_only": 1
-  }, 
+  },
   {
-   "fieldname": "item_name", 
-   "fieldtype": "Data", 
-   "in_filter": 1, 
-   "in_list_view": 0, 
-   "label": "Item Name", 
-   "oldfieldname": "item_name", 
-   "oldfieldtype": "Data", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 1, 
+   "fieldname": "item_name",
+   "fieldtype": "Data",
+   "in_filter": 1,
+   "in_list_view": 0,
+   "label": "Item Name",
+   "oldfieldname": "item_name",
+   "oldfieldtype": "Data",
+   "permlevel": 0,
+   "read_only": 0,
+   "reqd": 1,
    "search_index": 1
-  }, 
+  },
   {
-   "description": "", 
-   "fieldname": "item_group", 
-   "fieldtype": "Link", 
-   "in_filter": 1, 
-   "in_list_view": 1, 
-   "label": "Item Group", 
-   "oldfieldname": "item_group", 
-   "oldfieldtype": "Link", 
-   "options": "Item Group", 
-   "permlevel": 0, 
-   "read_only": 0, 
+   "description": "",
+   "fieldname": "item_group",
+   "fieldtype": "Link",
+   "in_filter": 1,
+   "in_list_view": 1,
+   "label": "Item Group",
+   "oldfieldname": "item_group",
+   "oldfieldtype": "Link",
+   "options": "Item Group",
+   "permlevel": 0,
+   "read_only": 0,
    "reqd": 1
-  }, 
+  },
   {
-   "description": "", 
-   "fieldname": "stock_uom", 
-   "fieldtype": "Link", 
-   "ignore_user_permissions": 1, 
-   "label": "Default Unit of Measure", 
-   "oldfieldname": "stock_uom", 
-   "oldfieldtype": "Link", 
-   "options": "UOM", 
-   "permlevel": 0, 
-   "read_only": 0, 
+   "description": "",
+   "fieldname": "stock_uom",
+   "fieldtype": "Link",
+   "ignore_user_permissions": 1,
+   "label": "Default Unit of Measure",
+   "oldfieldname": "stock_uom",
+   "oldfieldtype": "Link",
+   "options": "UOM",
+   "permlevel": 0,
+   "read_only": 0,
    "reqd": 1
-  }, 
+  },
   {
-   "fieldname": "brand", 
-   "fieldtype": "Link", 
-   "hidden": 0, 
-   "label": "Brand", 
-   "oldfieldname": "brand", 
-   "oldfieldtype": "Link", 
-   "options": "Brand", 
-   "permlevel": 0, 
-   "print_hide": 1, 
-   "read_only": 0, 
+   "fieldname": "brand",
+   "fieldtype": "Link",
+   "hidden": 0,
+   "label": "Brand",
+   "oldfieldname": "brand",
+   "oldfieldtype": "Link",
+   "options": "Brand",
+   "permlevel": 0,
+   "print_hide": 1,
+   "read_only": 0,
    "reqd": 0
-  }, 
+  },
   {
-   "fieldname": "barcode", 
-   "fieldtype": "Data", 
-   "label": "Barcode", 
-   "no_copy": 1, 
-   "permlevel": 0, 
+   "fieldname": "barcode",
+   "fieldtype": "Data",
+   "label": "Barcode",
+   "no_copy": 1,
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "column_break0", 
-   "fieldtype": "Column Break", 
-   "permlevel": 0, 
+   "fieldname": "column_break0",
+   "fieldtype": "Column Break",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "image", 
-   "fieldtype": "Attach", 
-   "label": "Image", 
-   "options": "image", 
-   "permlevel": 0, 
+   "fieldname": "image",
+   "fieldtype": "Attach",
+   "label": "Image",
+   "options": "image",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "fieldname": "image_view", 
-   "fieldtype": "Image", 
-   "in_list_view": 1, 
-   "label": "Image View", 
-   "options": "image", 
-   "permlevel": 0, 
+   "fieldname": "image_view",
+   "fieldtype": "Image",
+   "in_list_view": 1,
+   "label": "Image View",
+   "options": "image",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "fieldname": "section_break_11", 
-   "fieldtype": "Section Break", 
-   "permlevel": 0, 
+   "fieldname": "section_break_11",
+   "fieldtype": "Section Break",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "fieldname": "description", 
-   "fieldtype": "Text Editor", 
-   "in_filter": 0, 
-   "in_list_view": 0, 
-   "label": "Description", 
-   "oldfieldname": "description", 
-   "oldfieldtype": "Text", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 1, 
+   "fieldname": "description",
+   "fieldtype": "Text Editor",
+   "in_filter": 0,
+   "in_list_view": 0,
+   "label": "Description",
+   "oldfieldname": "description",
+   "oldfieldtype": "Text",
+   "permlevel": 0,
+   "read_only": 0,
+   "reqd": 1,
    "search_index": 0
-  }, 
+  },
   {
-   "fieldname": "inventory", 
-   "fieldtype": "Section Break", 
-   "label": "Inventory", 
-   "oldfieldtype": "Section Break", 
-   "options": "icon-truck", 
-   "permlevel": 0, 
+   "fieldname": "inventory",
+   "fieldtype": "Section Break",
+   "label": "Inventory",
+   "oldfieldtype": "Section Break",
+   "options": "icon-truck",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "default": "1", 
-   "description": "", 
-   "fieldname": "is_stock_item", 
-   "fieldtype": "Check", 
-   "label": "Maintain Stock", 
-   "oldfieldname": "is_stock_item", 
-   "oldfieldtype": "Select", 
-   "options": "", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 1
-  }, 
+   "default": "1",
+   "description": "",
+   "fieldname": "is_stock_item",
+   "fieldtype": "Check",
+   "label": "Maintain Stock",
+   "oldfieldname": "is_stock_item",
+   "oldfieldtype": "Select",
+   "options": "",
+   "permlevel": 0,
+   "read_only": 0
+  },
   {
-   "default": "", 
-   "depends_on": "eval:doc.is_stock_item", 
-   "fieldname": "has_batch_no", 
-   "fieldtype": "Check", 
-   "label": "Has Batch No", 
-   "oldfieldname": "has_batch_no", 
-   "oldfieldtype": "Select", 
-   "options": "", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 1
-  }, 
+   "default": "",
+   "depends_on": "eval:doc.is_stock_item",
+   "fieldname": "has_batch_no",
+   "fieldtype": "Check",
+   "label": "Has Batch No",
+   "oldfieldname": "has_batch_no",
+   "oldfieldtype": "Select",
+   "options": "",
+   "permlevel": 0,
+   "read_only": 0
+  },
   {
-   "default": "", 
-   "depends_on": "eval:doc.is_stock_item", 
-   "description": "Selecting \"Yes\" will give a unique identity to each entity of this item which can be viewed in the Serial No master.", 
-   "fieldname": "has_serial_no", 
-   "fieldtype": "Check", 
-   "in_filter": 1, 
-   "label": "Has Serial No", 
-   "oldfieldname": "has_serial_no", 
-   "oldfieldtype": "Select", 
-   "options": "", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 1
-  }, 
+   "default": "",
+   "depends_on": "eval:doc.is_stock_item",
+   "description": "Selecting \"Yes\" will give a unique identity to each entity of this item which can be viewed in the Serial No master.",
+   "fieldname": "has_serial_no",
+   "fieldtype": "Check",
+   "in_filter": 1,
+   "label": "Has Serial No",
+   "oldfieldname": "has_serial_no",
+   "oldfieldtype": "Select",
+   "options": "",
+   "permlevel": 0,
+   "read_only": 0
+  },
   {
-   "depends_on": "has_serial_no", 
-   "description": "Example: ABCD.#####\nIf series is set and Serial No is not mentioned in transactions, then automatic serial number will be created based on this series. If you always want to explicitly mention Serial Nos for this item. leave this blank.", 
-   "fieldname": "serial_no_series", 
-   "fieldtype": "Data", 
-   "label": "Serial Number Series", 
-   "no_copy": 0, 
+   "depends_on": "has_serial_no",
+   "description": "Example: ABCD.#####\nIf series is set and Serial No is not mentioned in transactions, then automatic serial number will be created based on this series. If you always want to explicitly mention Serial Nos for this item. leave this blank.",
+   "fieldname": "serial_no_series",
+   "fieldtype": "Data",
+   "label": "Serial Number Series",
+   "no_copy": 0,
    "permlevel": 0
-  }, 
+  },
   {
-   "default": "", 
-   "depends_on": "eval:doc.is_stock_item", 
-   "description": "", 
-   "fieldname": "is_asset_item", 
-   "fieldtype": "Check", 
-   "label": "Is Fixed Asset Item", 
-   "oldfieldname": "is_asset_item", 
-   "oldfieldtype": "Select", 
-   "options": "", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 1
-  }, 
+   "default": "",
+   "depends_on": "eval:doc.is_stock_item",
+   "description": "",
+   "fieldname": "is_asset_item",
+   "fieldtype": "Check",
+   "label": "Is Fixed Asset Item",
+   "oldfieldname": "is_asset_item",
+   "oldfieldtype": "Select",
+   "options": "",
+   "permlevel": 0,
+   "read_only": 0
+  },
   {
-   "depends_on": "is_stock_item", 
-   "fieldname": "column_break1", 
-   "fieldtype": "Column Break", 
-   "oldfieldtype": "Column Break", 
-   "permlevel": 0, 
-   "read_only": 0, 
+   "depends_on": "is_stock_item",
+   "fieldname": "column_break1",
+   "fieldtype": "Column Break",
+   "oldfieldtype": "Column Break",
+   "permlevel": 0,
+   "read_only": 0,
    "width": "50%"
-  }, 
+  },
   {
-   "depends_on": "", 
-   "description": "", 
-   "fieldname": "default_warehouse", 
-   "fieldtype": "Link", 
-   "ignore_user_permissions": 1, 
-   "label": "Default Warehouse", 
-   "oldfieldname": "default_warehouse", 
-   "oldfieldtype": "Link", 
-   "options": "Warehouse", 
-   "permlevel": 0, 
+   "depends_on": "",
+   "description": "",
+   "fieldname": "default_warehouse",
+   "fieldtype": "Link",
+   "ignore_user_permissions": 1,
+   "label": "Default Warehouse",
+   "oldfieldname": "default_warehouse",
+   "oldfieldtype": "Link",
+   "options": "Warehouse",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "is_stock_item", 
-   "description": "", 
-   "fieldname": "tolerance", 
-   "fieldtype": "Float", 
-   "label": "Allow over delivery or receipt upto this percent", 
-   "oldfieldname": "tolerance", 
-   "oldfieldtype": "Currency", 
-   "permlevel": 0, 
+   "depends_on": "is_stock_item",
+   "description": "",
+   "fieldname": "tolerance",
+   "fieldtype": "Float",
+   "label": "Allow over delivery or receipt upto this percent",
+   "oldfieldname": "tolerance",
+   "oldfieldtype": "Currency",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "is_stock_item", 
-   "fieldname": "valuation_method", 
-   "fieldtype": "Select", 
-   "label": "Valuation Method", 
-   "options": "\nFIFO\nMoving Average", 
-   "permlevel": 0, 
+   "depends_on": "is_stock_item",
+   "fieldname": "valuation_method",
+   "fieldtype": "Select",
+   "label": "Valuation Method",
+   "options": "\nFIFO\nMoving Average",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "default": "0.00", 
-   "depends_on": "is_stock_item", 
-   "description": "", 
-   "fieldname": "min_order_qty", 
-   "fieldtype": "Float", 
-   "hidden": 0, 
-   "label": "Minimum Order Qty", 
-   "oldfieldname": "min_order_qty", 
-   "oldfieldtype": "Currency", 
-   "permlevel": 0, 
+   "default": "0.00",
+   "depends_on": "is_stock_item",
+   "description": "",
+   "fieldname": "min_order_qty",
+   "fieldtype": "Float",
+   "hidden": 0,
+   "label": "Minimum Order Qty",
+   "oldfieldname": "min_order_qty",
+   "oldfieldtype": "Currency",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "eval:doc.is_stock_item", 
-   "fieldname": "warranty_period", 
-   "fieldtype": "Data", 
-   "label": "Warranty Period (in days)", 
-   "oldfieldname": "warranty_period", 
-   "oldfieldtype": "Data", 
-   "permlevel": 0, 
+   "depends_on": "eval:doc.is_stock_item",
+   "fieldname": "warranty_period",
+   "fieldtype": "Data",
+   "label": "Warranty Period (in days)",
+   "oldfieldname": "warranty_period",
+   "oldfieldtype": "Data",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "default": "2099-12-31", 
-   "depends_on": "is_stock_item", 
-   "fieldname": "end_of_life", 
-   "fieldtype": "Date", 
-   "label": "End of Life", 
-   "oldfieldname": "end_of_life", 
-   "oldfieldtype": "Date", 
-   "permlevel": 0, 
+   "default": "2099-12-31",
+   "depends_on": "is_stock_item",
+   "fieldname": "end_of_life",
+   "fieldtype": "Date",
+   "label": "End of Life",
+   "oldfieldname": "end_of_life",
+   "oldfieldtype": "Date",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "is_stock_item", 
-   "description": "", 
-   "fieldname": "net_weight", 
-   "fieldtype": "Float", 
-   "label": "Net Weight", 
-   "permlevel": 0, 
+   "depends_on": "is_stock_item",
+   "description": "",
+   "fieldname": "net_weight",
+   "fieldtype": "Float",
+   "label": "Net Weight",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "eval:doc.is_stock_item", 
-   "fieldname": "weight_uom", 
-   "fieldtype": "Link", 
-   "ignore_user_permissions": 1, 
-   "label": "Weight UOM", 
-   "options": "UOM", 
-   "permlevel": 0, 
+   "depends_on": "eval:doc.is_stock_item",
+   "fieldname": "weight_uom",
+   "fieldtype": "Link",
+   "ignore_user_permissions": 1,
+   "label": "Weight UOM",
+   "options": "UOM",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "eval:doc.is_stock_item", 
-   "description": "", 
-   "fieldname": "reorder_section", 
-   "fieldtype": "Section Break", 
-   "label": "Auto re-order", 
-   "options": "icon-rss", 
-   "permlevel": 0, 
+   "depends_on": "eval:doc.is_stock_item",
+   "description": "",
+   "fieldname": "reorder_section",
+   "fieldtype": "Section Break",
+   "label": "Auto re-order",
+   "options": "icon-rss",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "eval:(doc.is_stock_item && !doc.apply_warehouse_wise_reorder_level)", 
-   "description": "Automatically create Material Request if quantity falls below this level", 
-   "fieldname": "re_order_level", 
-   "fieldtype": "Float", 
-   "label": "Re-order Level", 
-   "oldfieldname": "re_order_level", 
-   "oldfieldtype": "Currency", 
-   "permlevel": 0, 
+   "depends_on": "eval:(doc.is_stock_item && !doc.apply_warehouse_wise_reorder_level)",
+   "description": "Automatically create Material Request if quantity falls below this level",
+   "fieldname": "re_order_level",
+   "fieldtype": "Float",
+   "label": "Re-order Level",
+   "oldfieldname": "re_order_level",
+   "oldfieldtype": "Currency",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "eval:(doc.is_stock_item && !doc.apply_warehouse_wise_reorder_level)", 
-   "fieldname": "re_order_qty", 
-   "fieldtype": "Float", 
-   "label": "Re-order Qty", 
-   "permlevel": 0, 
+   "depends_on": "eval:(doc.is_stock_item && !doc.apply_warehouse_wise_reorder_level)",
+   "fieldname": "re_order_qty",
+   "fieldtype": "Float",
+   "label": "Re-order Qty",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "is_stock_item", 
-   "fieldname": "apply_warehouse_wise_reorder_level", 
-   "fieldtype": "Check", 
-   "label": "Apply Warehouse-wise Reorder Level", 
-   "permlevel": 0, 
+   "depends_on": "is_stock_item",
+   "fieldname": "apply_warehouse_wise_reorder_level",
+   "fieldtype": "Check",
+   "label": "Apply Warehouse-wise Reorder Level",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "depends_on": "eval:(doc.is_stock_item && doc.apply_warehouse_wise_reorder_level)", 
-   "fieldname": "section_break_31", 
-   "fieldtype": "Section Break", 
-   "permlevel": 0, 
+   "depends_on": "eval:(doc.is_stock_item && doc.apply_warehouse_wise_reorder_level)",
+   "fieldname": "section_break_31",
+   "fieldtype": "Section Break",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "eval:(doc.is_stock_item && doc.apply_warehouse_wise_reorder_level)", 
-   "description": "Will also apply for variants unless overrridden", 
-   "fieldname": "reorder_levels", 
-   "fieldtype": "Table", 
-   "label": "Warehouse-wise Reorder Levels", 
-   "options": "Item Reorder", 
-   "permlevel": 0, 
+   "depends_on": "eval:(doc.is_stock_item && doc.apply_warehouse_wise_reorder_level)",
+   "description": "Will also apply for variants unless overrridden",
+   "fieldname": "reorder_levels",
+   "fieldtype": "Table",
+   "label": "Warehouse-wise Reorder Levels",
+   "options": "Item Reorder",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "eval:!doc.variant_of", 
-   "fieldname": "variants_section", 
-   "fieldtype": "Section Break", 
-   "label": "Variants", 
-   "permlevel": 0, 
+   "depends_on": "eval:!doc.variant_of",
+   "fieldname": "variants_section",
+   "fieldtype": "Section Break",
+   "label": "Variants",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "default": "0", 
-   "depends_on": "", 
-   "description": "If this item has variants, then it cannot be selected in sales orders etc.", 
-   "fieldname": "has_variants", 
-   "fieldtype": "Check", 
-   "label": "Has Variants", 
-   "no_copy": 1, 
-   "options": "", 
-   "permlevel": 0, 
-   "precision": "", 
+   "default": "0",
+   "depends_on": "",
+   "description": "If this item has variants, then it cannot be selected in sales orders etc.",
+   "fieldname": "has_variants",
+   "fieldtype": "Check",
+   "label": "Has Variants",
+   "no_copy": 1,
+   "options": "",
+   "permlevel": 0,
+   "precision": "",
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "column_break_18", 
-   "fieldtype": "Column Break", 
-   "permlevel": 0, 
+   "fieldname": "column_break_18",
+   "fieldtype": "Column Break",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "depends_on": "has_variants", 
-   "fieldname": "manage_variants", 
-   "fieldtype": "Button", 
-   "label": "Manage Variants", 
-   "permlevel": 0, 
+   "depends_on": "has_variants",
+   "fieldname": "manage_variants",
+   "fieldtype": "Button",
+   "label": "Manage Variants",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "fieldname": "section_break_20", 
-   "fieldtype": "Section Break", 
-   "permlevel": 0, 
+   "fieldname": "section_break_20",
+   "fieldtype": "Section Break",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "depends_on": "variant_of", 
-   "fieldname": "attributes", 
-   "fieldtype": "Table", 
-   "hidden": 0, 
-   "label": "Attributes", 
-   "no_copy": 1, 
-   "options": "Variant Attribute", 
-   "permlevel": 0, 
-   "precision": "", 
+   "depends_on": "variant_of",
+   "fieldname": "attributes",
+   "fieldtype": "Table",
+   "hidden": 0,
+   "label": "Attributes",
+   "no_copy": 1,
+   "options": "Variant Attribute",
+   "permlevel": 0,
+   "precision": "",
    "read_only": 1
-  }, 
+  },
   {
-   "fieldname": "purchase_details", 
-   "fieldtype": "Section Break", 
-   "label": "Purchase Details", 
-   "oldfieldtype": "Section Break", 
-   "options": "icon-shopping-cart", 
-   "permlevel": 0, 
+   "fieldname": "purchase_details",
+   "fieldtype": "Section Break",
+   "label": "Purchase Details",
+   "oldfieldtype": "Section Break",
+   "options": "icon-shopping-cart",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "default": "1", 
-   "description": "", 
-   "fieldname": "is_purchase_item", 
-   "fieldtype": "Check", 
-   "label": "Is Purchase Item", 
-   "oldfieldname": "is_purchase_item", 
-   "oldfieldtype": "Select", 
-   "options": "", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 1
-  }, 
-  {
-   "depends_on": "is_purchase_item", 
-   "description": "Average time taken by the supplier to deliver", 
-   "fieldname": "lead_time_days", 
-   "fieldtype": "Int", 
-   "label": "Lead Time in days", 
-   "no_copy": 0, 
-   "oldfieldname": "lead_time_days", 
-   "oldfieldtype": "Int", 
-   "permlevel": 0, 
+   "default": "1",
+   "description": "",
+   "fieldname": "is_purchase_item",
+   "fieldtype": "Check",
+   "label": "Is Purchase Item",
+   "oldfieldname": "is_purchase_item",
+   "oldfieldtype": "Select",
+   "options": "",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "is_purchase_item", 
-   "description": "", 
-   "fieldname": "buying_cost_center", 
-   "fieldtype": "Link", 
-   "ignore_user_permissions": 1, 
-   "label": "Default Buying Cost Center", 
-   "oldfieldname": "cost_center", 
-   "oldfieldtype": "Link", 
-   "options": "Cost Center", 
-   "permlevel": 0, 
+   "depends_on": "is_purchase_item",
+   "description": "Average time taken by the supplier to deliver",
+   "fieldname": "lead_time_days",
+   "fieldtype": "Int",
+   "label": "Lead Time in days",
+   "no_copy": 0,
+   "oldfieldname": "lead_time_days",
+   "oldfieldtype": "Int",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "is_purchase_item", 
-   "description": "", 
-   "fieldname": "expense_account", 
-   "fieldtype": "Link", 
-   "ignore_user_permissions": 1, 
-   "label": "Default Expense Account", 
-   "oldfieldname": "purchase_account", 
-   "oldfieldtype": "Link", 
-   "options": "Account", 
-   "permlevel": 0, 
+   "depends_on": "is_purchase_item",
+   "description": "",
+   "fieldname": "buying_cost_center",
+   "fieldtype": "Link",
+   "ignore_user_permissions": 1,
+   "label": "Default Buying Cost Center",
+   "oldfieldname": "cost_center",
+   "oldfieldtype": "Link",
+   "options": "Cost Center",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "is_purchase_item", 
-   "fieldname": "unit_of_measure_conversion", 
-   "fieldtype": "Column Break", 
-   "label": "Unit of Measure Conversion", 
-   "permlevel": 0, 
+   "depends_on": "is_purchase_item",
+   "description": "",
+   "fieldname": "expense_account",
+   "fieldtype": "Link",
+   "ignore_user_permissions": 1,
+   "label": "Default Expense Account",
+   "oldfieldname": "purchase_account",
+   "oldfieldtype": "Link",
+   "options": "Account",
+   "permlevel": 0,
+   "read_only": 0
+  },
+  {
+   "depends_on": "is_purchase_item",
+   "fieldname": "unit_of_measure_conversion",
+   "fieldtype": "Column Break",
+   "label": "Unit of Measure Conversion",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "depends_on": "is_purchase_item", 
-   "description": "Will also apply for variants", 
-   "fieldname": "uoms", 
-   "fieldtype": "Table", 
-   "label": "UOMs", 
-   "no_copy": 1, 
-   "oldfieldname": "uom_conversion_details", 
-   "oldfieldtype": "Table", 
-   "options": "UOM Conversion Detail", 
-   "permlevel": 0, 
+   "depends_on": "is_purchase_item",
+   "description": "Will also apply for variants",
+   "fieldname": "uoms",
+   "fieldtype": "Table",
+   "label": "UOMs",
+   "no_copy": 1,
+   "oldfieldname": "uom_conversion_details",
+   "oldfieldtype": "Table",
+   "options": "UOM Conversion Detail",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "is_purchase_item", 
-   "fieldname": "last_purchase_rate", 
-   "fieldtype": "Float", 
-   "label": "Last Purchase Rate", 
-   "no_copy": 1, 
-   "oldfieldname": "last_purchase_rate", 
-   "oldfieldtype": "Currency", 
-   "permlevel": 0, 
+   "depends_on": "is_purchase_item",
+   "fieldname": "last_purchase_rate",
+   "fieldtype": "Float",
+   "label": "Last Purchase Rate",
+   "no_copy": 1,
+   "oldfieldname": "last_purchase_rate",
+   "oldfieldtype": "Currency",
+   "permlevel": 0,
    "read_only": 1
-  }, 
+  },
   {
-   "depends_on": "is_purchase_item", 
-   "fieldname": "supplier_details", 
-   "fieldtype": "Section Break", 
-   "label": "Supplier Details", 
-   "permlevel": 0, 
+   "depends_on": "is_purchase_item",
+   "fieldname": "supplier_details",
+   "fieldtype": "Section Break",
+   "label": "Supplier Details",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "depends_on": "eval:doc.is_purchase_item", 
-   "fieldname": "default_supplier", 
-   "fieldtype": "Link", 
-   "ignore_user_permissions": 1, 
-   "label": "Default Supplier", 
-   "options": "Supplier", 
+   "depends_on": "eval:doc.is_purchase_item",
+   "fieldname": "default_supplier",
+   "fieldtype": "Link",
+   "ignore_user_permissions": 1,
+   "label": "Default Supplier",
+   "options": "Supplier",
    "permlevel": 0
-  }, 
+  },
   {
-   "depends_on": "eval:doc.is_purchase_item", 
-   "fieldname": "manufacturer", 
-   "fieldtype": "Data", 
-   "label": "Manufacturer", 
-   "permlevel": 0, 
+   "depends_on": "eval:doc.is_purchase_item",
+   "fieldname": "manufacturer",
+   "fieldtype": "Data",
+   "label": "Manufacturer",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "eval:doc.is_purchase_item", 
-   "fieldname": "manufacturer_part_no", 
-   "fieldtype": "Data", 
-   "label": "Manufacturer Part Number", 
-   "permlevel": 0, 
+   "depends_on": "eval:doc.is_purchase_item",
+   "fieldname": "manufacturer_part_no",
+   "fieldtype": "Data",
+   "label": "Manufacturer Part Number",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "is_purchase_item", 
-   "fieldname": "column_break2", 
-   "fieldtype": "Column Break", 
-   "label": "Item Code for Suppliers", 
-   "oldfieldtype": "Column Break", 
-   "permlevel": 0, 
-   "read_only": 0, 
+   "depends_on": "is_purchase_item",
+   "fieldname": "column_break2",
+   "fieldtype": "Column Break",
+   "label": "Item Code for Suppliers",
+   "oldfieldtype": "Column Break",
+   "permlevel": 0,
+   "read_only": 0,
    "width": "50%"
-  }, 
+  },
   {
-   "depends_on": "is_purchase_item", 
-   "fieldname": "supplier_items", 
-   "fieldtype": "Table", 
-   "label": "Supplier Items", 
-   "options": "Item Supplier", 
-   "permlevel": 0, 
+   "depends_on": "is_purchase_item",
+   "fieldname": "supplier_items",
+   "fieldtype": "Table",
+   "label": "Supplier Items",
+   "options": "Item Supplier",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "sales_details", 
-   "fieldtype": "Section Break", 
-   "label": "Sales Details", 
-   "oldfieldtype": "Section Break", 
-   "options": "icon-tag", 
-   "permlevel": 0, 
+   "fieldname": "sales_details",
+   "fieldtype": "Section Break",
+   "label": "Sales Details",
+   "oldfieldtype": "Section Break",
+   "options": "icon-tag",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "default": "1", 
-   "description": "", 
-   "fieldname": "is_sales_item", 
-   "fieldtype": "Check", 
-   "in_filter": 1, 
-   "label": "Is Sales Item", 
-   "oldfieldname": "is_sales_item", 
-   "oldfieldtype": "Select", 
-   "options": "", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 1
-  }, 
+   "default": "1",
+   "description": "",
+   "fieldname": "is_sales_item",
+   "fieldtype": "Check",
+   "in_filter": 1,
+   "label": "Is Sales Item",
+   "oldfieldname": "is_sales_item",
+   "oldfieldtype": "Select",
+   "options": "",
+   "permlevel": 0,
+   "read_only": 0
+  },
   {
-   "default": "", 
-   "depends_on": "eval:doc.is_sales_item", 
-   "description": "Allow in Sales Order of type \"Service\"", 
-   "fieldname": "is_service_item", 
-   "fieldtype": "Check", 
-   "in_filter": 1, 
-   "label": "Is Service Item", 
-   "oldfieldname": "is_service_item", 
-   "oldfieldtype": "Select", 
-   "options": "", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 1
-  }, 
+   "default": "",
+   "depends_on": "eval:doc.is_sales_item",
+   "description": "Allow in Sales Order of type \"Service\"",
+   "fieldname": "is_service_item",
+   "fieldtype": "Check",
+   "in_filter": 1,
+   "label": "Is Service Item",
+   "oldfieldname": "is_service_item",
+   "oldfieldtype": "Select",
+   "options": "",
+   "permlevel": 0,
+   "read_only": 0
+  },
   {
-   "default": "0", 
-   "description": "Publish Item to hub.erpnext.com", 
-   "fieldname": "publish_in_hub", 
-   "fieldtype": "Check", 
-   "hidden": 1, 
-   "label": "Publish in Hub", 
-   "permlevel": 0, 
+   "default": "0",
+   "description": "Publish Item to hub.erpnext.com",
+   "fieldname": "publish_in_hub",
+   "fieldtype": "Check",
+   "hidden": 1,
+   "label": "Publish in Hub",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "default": "0", 
-   "fieldname": "synced_with_hub", 
-   "fieldtype": "Check", 
-   "hidden": 1, 
-   "label": "Synced With Hub", 
-   "permlevel": 0, 
+   "default": "0",
+   "fieldname": "synced_with_hub",
+   "fieldtype": "Check",
+   "hidden": 1,
+   "label": "Synced With Hub",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "depends_on": "is_sales_item", 
-   "fieldname": "income_account", 
-   "fieldtype": "Link", 
-   "ignore_user_permissions": 1, 
-   "label": "Default Income Account", 
-   "options": "Account", 
-   "permlevel": 0, 
+   "depends_on": "is_sales_item",
+   "fieldname": "income_account",
+   "fieldtype": "Link",
+   "ignore_user_permissions": 1,
+   "label": "Default Income Account",
+   "options": "Account",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "is_sales_item", 
-   "fieldname": "selling_cost_center", 
-   "fieldtype": "Link", 
-   "ignore_user_permissions": 1, 
-   "label": "Default Selling Cost Center", 
-   "options": "Cost Center", 
-   "permlevel": 0, 
+   "depends_on": "is_sales_item",
+   "fieldname": "selling_cost_center",
+   "fieldtype": "Link",
+   "ignore_user_permissions": 1,
+   "label": "Default Selling Cost Center",
+   "options": "Cost Center",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "is_sales_item", 
-   "fieldname": "column_break3", 
-   "fieldtype": "Column Break", 
-   "label": "Customer Item Codes", 
-   "oldfieldtype": "Column Break", 
-   "permlevel": 0, 
-   "read_only": 0, 
+   "depends_on": "is_sales_item",
+   "fieldname": "column_break3",
+   "fieldtype": "Column Break",
+   "label": "Customer Item Codes",
+   "oldfieldtype": "Column Break",
+   "permlevel": 0,
+   "read_only": 0,
    "width": "50%"
-  }, 
+  },
   {
-   "depends_on": "is_sales_item", 
-   "description": "", 
-   "fieldname": "customer_items", 
-   "fieldtype": "Table", 
-   "label": "Customer Items", 
-   "options": "Item Customer Detail", 
-   "permlevel": 0, 
+   "depends_on": "is_sales_item",
+   "description": "",
+   "fieldname": "customer_items",
+   "fieldtype": "Table",
+   "label": "Customer Items",
+   "options": "Item Customer Detail",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "eval:doc.is_sales_item", 
-   "fieldname": "max_discount", 
-   "fieldtype": "Float", 
-   "label": "Max Discount (%)", 
-   "oldfieldname": "max_discount", 
-   "oldfieldtype": "Currency", 
-   "permlevel": 0, 
+   "depends_on": "eval:doc.is_sales_item",
+   "fieldname": "max_discount",
+   "fieldtype": "Float",
+   "label": "Max Discount (%)",
+   "oldfieldname": "max_discount",
+   "oldfieldtype": "Currency",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "item_tax_section_break", 
-   "fieldtype": "Section Break", 
-   "label": "Item Tax", 
-   "oldfieldtype": "Section Break", 
-   "options": "icon-money", 
-   "permlevel": 0, 
+   "fieldname": "item_tax_section_break",
+   "fieldtype": "Section Break",
+   "label": "Item Tax",
+   "oldfieldtype": "Section Break",
+   "options": "icon-money",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "description": "Will also apply for variants", 
-   "fieldname": "taxes", 
-   "fieldtype": "Table", 
-   "label": "Taxes", 
-   "oldfieldname": "item_tax", 
-   "oldfieldtype": "Table", 
-   "options": "Item Tax", 
-   "permlevel": 0, 
+   "description": "Will also apply for variants",
+   "fieldname": "taxes",
+   "fieldtype": "Table",
+   "label": "Taxes",
+   "oldfieldname": "item_tax",
+   "oldfieldtype": "Table",
+   "options": "Item Tax",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "inspection_criteria", 
-   "fieldtype": "Section Break", 
-   "label": "Inspection Criteria", 
-   "oldfieldtype": "Section Break", 
-   "options": "icon-search", 
-   "permlevel": 0, 
+   "fieldname": "inspection_criteria",
+   "fieldtype": "Section Break",
+   "label": "Inspection Criteria",
+   "oldfieldtype": "Section Break",
+   "options": "icon-search",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "default": "", 
-   "fieldname": "inspection_required", 
-   "fieldtype": "Check", 
-   "label": "Inspection Required", 
-   "no_copy": 0, 
-   "oldfieldname": "inspection_required", 
-   "oldfieldtype": "Select", 
-   "options": "", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 1
-  }, 
-  {
-   "depends_on": "inspection_required", 
-   "description": "Will also apply to variants", 
-   "fieldname": "quality_parameters", 
-   "fieldtype": "Table", 
-   "label": "Quality Parameters", 
-   "oldfieldname": "item_specification_details", 
-   "oldfieldtype": "Table", 
-   "options": "Item Quality Inspection Parameter", 
-   "permlevel": 0, 
+   "default": "",
+   "fieldname": "inspection_required",
+   "fieldtype": "Check",
+   "label": "Inspection Required",
+   "no_copy": 0,
+   "oldfieldname": "inspection_required",
+   "oldfieldtype": "Select",
+   "options": "",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "manufacturing", 
-   "fieldtype": "Section Break", 
-   "label": "Manufacturing", 
-   "oldfieldtype": "Section Break", 
-   "options": "icon-cogs", 
-   "permlevel": 0, 
+   "depends_on": "inspection_required",
+   "description": "Will also apply to variants",
+   "fieldname": "quality_parameters",
+   "fieldtype": "Table",
+   "label": "Quality Parameters",
+   "oldfieldname": "item_specification_details",
+   "oldfieldtype": "Table",
+   "options": "Item Quality Inspection Parameter",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "default": "", 
-   "depends_on": "", 
-   "description": "", 
-   "fieldname": "is_pro_applicable", 
-   "fieldtype": "Check", 
-   "label": "Allow Production Order", 
-   "oldfieldname": "is_pro_applicable", 
-   "oldfieldtype": "Select", 
-   "options": "", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 1
-  }, 
+   "fieldname": "manufacturing",
+   "fieldtype": "Section Break",
+   "label": "Manufacturing",
+   "oldfieldtype": "Section Break",
+   "options": "icon-cogs",
+   "permlevel": 0,
+   "read_only": 0
+  },
   {
-   "default": "", 
-   "description": "If subcontracted to a vendor", 
-   "fieldname": "is_sub_contracted_item", 
-   "fieldtype": "Check", 
-   "label": "Supply Raw Materials for Purchase", 
-   "oldfieldname": "is_sub_contracted_item", 
-   "oldfieldtype": "Select", 
-   "options": "", 
-   "permlevel": 0, 
-   "read_only": 0, 
-   "reqd": 1
-  }, 
+   "default": "",
+   "depends_on": "",
+   "description": "",
+   "fieldname": "is_pro_applicable",
+   "fieldtype": "Check",
+   "label": "Allow Production Order",
+   "oldfieldname": "is_pro_applicable",
+   "oldfieldtype": "Select",
+   "options": "",
+   "permlevel": 0,
+   "read_only": 0
+  },
   {
-   "fieldname": "column_break_74", 
-   "fieldtype": "Column Break", 
-   "permlevel": 0, 
+   "default": "",
+   "description": "If subcontracted to a vendor",
+   "fieldname": "is_sub_contracted_item",
+   "fieldtype": "Check",
+   "label": "Supply Raw Materials for Purchase",
+   "oldfieldname": "is_sub_contracted_item",
+   "oldfieldtype": "Select",
+   "options": "",
+   "permlevel": 0,
+   "read_only": 0
+  },
+  {
+   "fieldname": "column_break_74",
+   "fieldtype": "Column Break",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "depends_on": "", 
-   "fieldname": "default_bom", 
-   "fieldtype": "Link", 
-   "ignore_user_permissions": 1, 
-   "label": "Default BOM", 
-   "no_copy": 1, 
-   "oldfieldname": "default_bom", 
-   "oldfieldtype": "Link", 
-   "options": "BOM", 
-   "permlevel": 0, 
+   "depends_on": "",
+   "fieldname": "default_bom",
+   "fieldtype": "Link",
+   "ignore_user_permissions": 1,
+   "label": "Default BOM",
+   "no_copy": 1,
+   "oldfieldname": "default_bom",
+   "oldfieldtype": "Link",
+   "options": "BOM",
+   "permlevel": 0,
    "read_only": 1
-  }, 
+  },
   {
-   "fieldname": "customer_code", 
-   "fieldtype": "Data", 
-   "hidden": 1, 
-   "in_filter": 1, 
-   "label": "Customer Code", 
-   "no_copy": 1, 
-   "permlevel": 0, 
-   "print_hide": 1, 
+   "fieldname": "customer_code",
+   "fieldtype": "Data",
+   "hidden": 1,
+   "in_filter": 1,
+   "label": "Customer Code",
+   "no_copy": 1,
+   "permlevel": 0,
+   "print_hide": 1,
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "website_section", 
-   "fieldtype": "Section Break", 
-   "label": "Website", 
-   "options": "icon-globe", 
-   "permlevel": 0, 
+   "fieldname": "website_section",
+   "fieldtype": "Section Break",
+   "label": "Website",
+   "options": "icon-globe",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "show_in_website", 
-   "fieldtype": "Check", 
-   "label": "Show in Website", 
-   "permlevel": 0, 
+   "fieldname": "show_in_website",
+   "fieldtype": "Check",
+   "label": "Show in Website",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "show_in_website", 
-   "description": "website page link", 
-   "fieldname": "page_name", 
-   "fieldtype": "Data", 
-   "label": "Page Name", 
-   "no_copy": 1, 
-   "permlevel": 0, 
+   "depends_on": "show_in_website",
+   "description": "website page link",
+   "fieldname": "page_name",
+   "fieldtype": "Data",
+   "label": "Page Name",
+   "no_copy": 1,
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "show_in_website", 
-   "description": "Items with higher weightage will be shown higher", 
-   "fieldname": "weightage", 
-   "fieldtype": "Int", 
-   "label": "Weightage", 
-   "permlevel": 0, 
-   "read_only": 0, 
+   "depends_on": "show_in_website",
+   "description": "Items with higher weightage will be shown higher",
+   "fieldname": "weightage",
+   "fieldtype": "Int",
+   "label": "Weightage",
+   "permlevel": 0,
+   "read_only": 0,
    "search_index": 1
-  }, 
+  },
   {
-   "depends_on": "show_in_website", 
-   "description": "Show a slideshow at the top of the page", 
-   "fieldname": "slideshow", 
-   "fieldtype": "Link", 
-   "label": "Slideshow", 
-   "options": "Website Slideshow", 
-   "permlevel": 0, 
+   "depends_on": "show_in_website",
+   "description": "Show a slideshow at the top of the page",
+   "fieldname": "slideshow",
+   "fieldtype": "Link",
+   "label": "Slideshow",
+   "options": "Website Slideshow",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "show_in_website", 
-   "description": "Item Image (if not slideshow)", 
-   "fieldname": "website_image", 
-   "fieldtype": "Attach", 
-   "label": "Image", 
-   "options": "", 
-   "permlevel": 0, 
+   "depends_on": "show_in_website",
+   "description": "Item Image (if not slideshow)",
+   "fieldname": "website_image",
+   "fieldtype": "Attach",
+   "label": "Image",
+   "options": "",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "cb72", 
-   "fieldtype": "Column Break", 
-   "permlevel": 0, 
+   "fieldname": "cb72",
+   "fieldtype": "Column Break",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "show_in_website", 
-   "description": "Show \"In Stock\" or \"Not in Stock\" based on stock available in this warehouse.", 
-   "fieldname": "website_warehouse", 
-   "fieldtype": "Link", 
-   "ignore_user_permissions": 1, 
-   "label": "Website Warehouse", 
-   "options": "Warehouse", 
-   "permlevel": 0, 
+   "depends_on": "show_in_website",
+   "description": "Show \"In Stock\" or \"Not in Stock\" based on stock available in this warehouse.",
+   "fieldname": "website_warehouse",
+   "fieldtype": "Link",
+   "ignore_user_permissions": 1,
+   "label": "Website Warehouse",
+   "options": "Warehouse",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "show_in_website", 
-   "description": "List this Item in multiple groups on the website.", 
-   "fieldname": "website_item_groups", 
-   "fieldtype": "Table", 
-   "label": "Website Item Groups", 
-   "options": "Website Item Group", 
-   "permlevel": 0, 
+   "depends_on": "show_in_website",
+   "description": "List this Item in multiple groups on the website.",
+   "fieldname": "website_item_groups",
+   "fieldtype": "Table",
+   "label": "Website Item Groups",
+   "options": "Website Item Group",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "show_in_website", 
-   "fieldname": "sb72", 
-   "fieldtype": "Section Break", 
-   "permlevel": 0, 
+   "depends_on": "show_in_website",
+   "fieldname": "sb72",
+   "fieldtype": "Section Break",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "website_specifications_cb", 
-   "fieldtype": "Column Break", 
-   "label": "Website Specifications", 
-   "permlevel": 0, 
+   "fieldname": "website_specifications_cb",
+   "fieldtype": "Column Break",
+   "label": "Website Specifications",
+   "permlevel": 0,
    "precision": ""
-  }, 
+  },
   {
-   "depends_on": "show_in_website", 
-   "fieldname": "copy_from_item_group", 
-   "fieldtype": "Button", 
-   "label": "Copy From Item Group", 
-   "permlevel": 0, 
+   "depends_on": "show_in_website",
+   "fieldname": "copy_from_item_group",
+   "fieldtype": "Button",
+   "label": "Copy From Item Group",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "show_in_website", 
-   "fieldname": "website_specifications", 
-   "fieldtype": "Table", 
-   "label": "Website Specifications", 
-   "options": "Item Website Specification", 
-   "permlevel": 0, 
+   "depends_on": "show_in_website",
+   "fieldname": "website_specifications",
+   "fieldtype": "Table",
+   "label": "Website Specifications",
+   "options": "Item Website Specification",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "depends_on": "show_in_website", 
-   "fieldname": "web_long_description", 
-   "fieldtype": "Text Editor", 
-   "label": "Website Description", 
-   "permlevel": 0, 
+   "depends_on": "show_in_website",
+   "fieldname": "web_long_description",
+   "fieldtype": "Text Editor",
+   "label": "Website Description",
+   "permlevel": 0,
    "read_only": 0
-  }, 
+  },
   {
-   "fieldname": "parent_website_route", 
-   "fieldtype": "Read Only", 
-   "ignore_user_permissions": 1, 
-   "label": "Parent Website Route", 
-   "no_copy": 1, 
-   "options": "", 
+   "fieldname": "parent_website_route",
+   "fieldtype": "Read Only",
+   "ignore_user_permissions": 1,
+   "label": "Parent Website Route",
+   "no_copy": 1,
+   "options": "",
    "permlevel": 0
   }
- ], 
- "icon": "icon-tag", 
- "idx": 1, 
- "max_attachments": 1, 
- "modified": "2015-07-24 06:04:28.448050", 
- "modified_by": "Administrator", 
- "module": "Stock", 
- "name": "Item", 
- "owner": "Administrator", 
+ ],
+ "icon": "icon-tag",
+ "idx": 1,
+ "max_attachments": 1,
+ "modified": "2015-07-30 06:04:28.448050",
+ "modified_by": "Administrator",
+ "module": "Stock",
+ "name": "Item",
+ "owner": "Administrator",
  "permissions": [
   {
-   "create": 1, 
-   "delete": 1, 
-   "email": 1, 
-   "import": 1, 
-   "permlevel": 0, 
-   "print": 1, 
-   "read": 1, 
-   "report": 1, 
-   "role": "Item Manager", 
-   "share": 1, 
-   "submit": 0, 
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "import": 1,
+   "permlevel": 0,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Item Manager",
+   "share": 1,
+   "submit": 0,
    "write": 1
-  }, 
+  },
   {
-   "amend": 0, 
-   "create": 0, 
-   "delete": 0, 
-   "email": 1, 
-   "permlevel": 0, 
-   "print": 1, 
-   "read": 1, 
-   "report": 1, 
-   "role": "Stock Manager", 
-   "submit": 0, 
+   "amend": 0,
+   "create": 0,
+   "delete": 0,
+   "email": 1,
+   "permlevel": 0,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Stock Manager",
+   "submit": 0,
    "write": 0
-  }, 
+  },
   {
-   "amend": 0, 
-   "apply_user_permissions": 1, 
-   "create": 0, 
-   "delete": 0, 
-   "email": 1, 
-   "permlevel": 0, 
-   "print": 1, 
-   "read": 1, 
-   "report": 1, 
-   "role": "Stock User", 
-   "submit": 0, 
+   "amend": 0,
+   "apply_user_permissions": 1,
+   "create": 0,
+   "delete": 0,
+   "email": 1,
+   "permlevel": 0,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Stock User",
+   "submit": 0,
    "write": 0
-  }, 
+  },
   {
-   "apply_user_permissions": 1, 
-   "permlevel": 0, 
-   "read": 1, 
+   "apply_user_permissions": 1,
+   "permlevel": 0,
+   "read": 1,
    "role": "Sales User"
-  }, 
+  },
   {
-   "apply_user_permissions": 1, 
-   "permlevel": 0, 
-   "read": 1, 
+   "apply_user_permissions": 1,
+   "permlevel": 0,
+   "read": 1,
    "role": "Purchase User"
-  }, 
+  },
   {
-   "apply_user_permissions": 1, 
-   "permlevel": 0, 
-   "read": 1, 
+   "apply_user_permissions": 1,
+   "permlevel": 0,
+   "read": 1,
    "role": "Maintenance User"
-  }, 
+  },
   {
-   "apply_user_permissions": 1, 
-   "permlevel": 0, 
-   "read": 1, 
+   "apply_user_permissions": 1,
+   "permlevel": 0,
+   "read": 1,
    "role": "Accounts User"
-  }, 
+  },
   {
-   "apply_user_permissions": 1, 
-   "permlevel": 0, 
-   "read": 1, 
+   "apply_user_permissions": 1,
+   "permlevel": 0,
+   "read": 1,
    "role": "Manufacturing User"
   }
- ], 
- "search_fields": "item_name,description,item_group,customer_code", 
+ ],
+ "search_fields": "item_name,description,item_group,customer_code",
  "title_field": "item_name"
-}
\ No newline at end of file
+}
diff --git a/setup.py b/setup.py
index 30e3aad..3e719ca 100644
--- a/setup.py
+++ b/setup.py
@@ -1,6 +1,6 @@
 from setuptools import setup, find_packages
 
-version = "5.4.0"
+version = "5.4.1"
 
 with open("requirements.txt", "r") as f:
 	install_requires = f.readlines()