/**
 * Licensing Javascript routines
 *
 * Gruden(c) 2007 Valentin Malakhov
 * Modified by Jahangir 20090304: added a new tab "business copying"
 */

String.prototype.trim = function() {
	a = this.replace(/^\s+/, '');
	return a.replace(/\s+$/, '');
};		

recordsform = new Array(
	{tab: 2, name: "GENERAL LICENCES", section: "soundgen", element: "soundtype1", datatype: "CH", mandatory: false},
	{tab: 2, name: "SINGLE EVENT PERMIT LICENCES", section: "soundgen", element: "soundtype2", datatype: "CH", mandatory: false},

	{tab: 2, name: "GENERAL LICENCES Event date/s", section: "soundgen", element: "soundgeneventdate", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "GENERAL LICENCES Event's name", section: "soundgen", element: "soundgeneventname", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "GENERAL LICENCES Number of days", section: "soundgen", element: "soundgennumberofdays", datatype: "123", size: 3, mandatory: true, dependency:"soundtype1"},
	{tab: 2, name: "GENERAL LICENCES Venue's name", section: "soundgen", element: "soundgenvenuename", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "GENERAL LICENCES Venue's address", section: "soundgen", element: "soundgenvenueaddress", datatype: "ABC", size: 100, mandatory: false},

	{tab: 2, name: "SINGLE EVENT Event date/s", section: "soundgen", element: "soundgeneventdate1", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "SINGLE EVENT Event's name", section: "soundgen", element: "soundgeneventname1", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "SINGLE EVENT Number of days", section: "soundgen", element: "soundgennumberofdays1", datatype: "123", size: 3, mandatory: true, dependency:"soundtype2"},
	{tab: 2, name: "SINGLE EVENT Venue's name", section: "soundgen", element: "soundgenvenuename1", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "SINGLE EVENT Venue's address", section: "soundgen", element: "soundgenvenueaddress1", datatype: "ABC", size: 100, mandatory: false},

	{tab: 2, name: "FEATURED MUSICAL ENTERTAINMENT (music in foreground)", section: "event", element: "eventtype1", datatype: "CH", mandatory: false},
	{tab: 2, name: "OPEN AIR EVENTS", section: "event", element: "eventtype2", datatype: "CH", mandatory: false},
	{tab: 2, name: "FESTIVAL EVENTS", section: "event", element: "eventtype3", datatype: "CH", mandatory: false},

	{tab: 2, name: "FEATURED MUSICAL Event date/s", section: "event", element: "eventeventdate", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "FEATURED MUSICAL Event’s name", section: "event", element: "eventeventname", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "FEATURED MUSICAL Estimated attendance", section: "event", element: "eventattandence", datatype: "123", size: 6, mandatory: true, dependency: "eventtype1"},
	{tab: 2, name: "FEATURED MUSICAL Number of days", section: "event", element: "eventnumberofdays", datatype: "123", size: 3, mandatory: true, dependency: "eventtype1"},
	{tab: 2, name: "FEATURED MUSICAL Venue’s name", section: "event", element: "eventvenuename", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "FEATURED MUSICAL Venue’s address", section: "event", element: "eventvenueaddress", datatype: "ABC", size: 100, mandatory: false},

	{tab: 2, name: "OPEN AIR Event date/s", section: "event", element: "eventeventdate1", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "OPEN AIR Event’s name", section: "event", element: "eventeventname1", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "OPEN AIR Estimated attendance", section: "event", element: "eventattandence1", datatype: "123", size: 6, mandatory: true, dependency: "eventtype2"},
	{tab: 2, name: "OPEN AIR Number of days", section: "event", element: "eventnumberofdays1", datatype: "123", size: 3, mandatory: true, dependency: "eventtype2"},
	{tab: 2, name: "OPEN AIR Venue’s name", section: "event", element: "eventvenuename1", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "OPEN AIR Venue’s address", section: "event", element: "eventvenueaddress1", datatype: "ABC", size: 100, mandatory: false},

	{tab: 2, name: "FESTIVAL Event’s name", section: "event", element: "eventeventname2", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "FESTIVAL Venue’s name", section: "event", element: "eventvenuename2", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "FESTIVAL Venue’s address", section: "event", element: "eventvenueaddress2", datatype: "ABC", size: 100, mandatory: false},

	{tab: 2, name: "FESTIVAL Area 1 name", section: "event", element: "eventareaname1", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "FESTIVAL Area 1 Floor space (m2)", section: "event", element: "eventareafloorspace1", datatype: "123", size: 6, mandatory: true, dependency: "eventareaname1,eventtype3"},
	{tab: 2, name: "FESTIVAL Area 2 name", section: "event", element: "eventareaname2", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "FESTIVAL Area 2 Floor space (m2)", section: "event", element: "eventareafloorspace2", datatype: "123", size: 6, mandatory: true, dependency: "eventareaname2"},
	{tab: 2, name: "FESTIVAL Area 3 name", section: "event", element: "eventareaname3", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "FESTIVAL Area 3 Floor space (m2)", section: "event", element: "eventareafloorspace3", datatype: "123", size: 6, mandatory: true, dependency: "eventareaname3"},
	{tab: 2, name: "FESTIVAL Area 4 name", section: "event", element: "eventareaname4", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "FESTIVAL Area 4 Floor space (m2)", section: "event", element: "eventareafloorspace4", datatype: "123", size: 6, mandatory: true, dependency: "eventareaname4"},
	{tab: 2, name: "FESTIVAL Area 5 name", section: "event", element: "eventareaname5", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "FESTIVAL Area 5 Floor space (m2)", section: "event", element: "eventareafloorspace5", datatype: "123", size: 6, mandatory: true, dependency: "eventareaname5"},
	{tab: 2, name: "FESTIVAL Area 6 name", section: "event", element: "eventareaname6", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "FESTIVAL Area 6 Floor space (m2)", section: "event", element: "eventareafloorspace6", datatype: "123", size: 6, mandatory: true, dependency: "eventareaname6"},
	{tab: 2, name: "FESTIVAL Area 7 name", section: "event", element: "eventareaname7", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "FESTIVAL Area 7 Floor space (m2)", section: "event", element: "eventareafloorspace7", datatype: "123", size: 6, mandatory: true, dependency: "eventareaname6"},
	{tab: 2, name: "FESTIVAL Area 8 name", section: "event", element: "eventareaname8", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "FESTIVAL Area 8 Floor space (m2)", section: "event", element: "eventareafloorspace8", datatype: "123", size: 6, mandatory: true, dependency: "eventareaname6"},
	{tab: 2, name: "FESTIVAL Area 9 name", section: "event", element: "eventareaname9", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "FESTIVAL Area 9 Floor space (m2)", section: "event", element: "eventareafloorspace9", datatype: "123", size: 6, mandatory: true, dependency: "eventareaname6"},
	{tab: 2, name: "FESTIVAL Area 10 name", section: "event", element: "eventareaname10", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "FESTIVAL Area 10 Floor space (m2)", section: "event", element: "eventareafloorspace10", datatype: "123", size: 6, mandatory: true, dependency: "eventareaname6"},

	{tab: 2, name: "FEATURED MUSICAL Event date/s", section: "dparties", element: "dpartieseventdate", datatype: "ABC", size: 50, mandatory: false},
	{tab: 2, name: "FEATURED MUSICAL Event’s name", section: "dparties", element: "dpartieseventname", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "FEATURED MUSICAL Estimated attendance", section: "dparties", element: "dpartiesattandence", datatype: "123", size: 6, mandatory: true},
	{tab: 2, name: "FEATURED MUSICAL Number of days", section: "dparties", element: "dpartiesnumberofdays", datatype: "123", size: 3, mandatory: true},
	{tab: 2, name: "FEATURED MUSICAL Venue’s name", section: "dparties", element: "dpartiesvenuename", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "FEATURED MUSICAL Venue’s address", section: "dparties", element: "dpartiesvenueaddress", datatype: "ABC", size: 100, mandatory: false},

	{tab: 2, name: "CINEMAS / FILM EXHIBITORS", section: "cinema", element: "cintype1", datatype: "CH", mandatory: false},
	{tab: 2, name: "THEATRES", section: "cinema", element: "cintype2", datatype: "CH", mandatory: false},
	{tab: 2, name: "CINEMAS / FILM EXHIBITORS Number of screens", section: "cinema", element: "cinnumberofscreens", datatype: "123", size: 6, mandatory: true, dependency: "cintype1"},
	{tab: 2, name: "CINEMAS / FILM EXHIBITORS Number of screenings per week", section: "cinema", element: "cinnumberofscreensperweek", datatype: "123", size: 50, mandatory: false},
	{tab: 2, name: "THEATRES Number of theatres", section: "cinema", element: "cinnumberoftheatres", datatype: "123", size: 6, mandatory: true, dependency: "cintype2"},
	{tab: 2, name: "THEATRES Number of performances per week", section: "cinema", element: "cinnumberofperf", datatype: "123", size: 6, mandatory: false},

	{tab: 2, name: "DANCE STUDIOS / DANCE & LINE DANCE INSTRUCTORS", section: "dance", element: "dancetype1", datatype: "CH", mandatory: false},
	{tab: 2, name: "END OF TERM / ANNUAL CONCERTS", section: "dance", element: "dancetype2", datatype: "CH", mandatory: false},
	{tab: 2, name: "AUSDANCE TEACHERS", section: "dance", element: "dancetype3", datatype: "CH", mandatory: false},
	{tab: 2, name: "DANCE STUDIOS Number of days of operation per week", section: "dance", element: "dancenumberofdays", datatype: "123", size: 1, mandatory: true, dependency: "dancetype1"},
	{tab: 2, name: "ANNUAL CONCERTS Number of concerts per year", section: "dance", element: "dancenumberofconcerts", datatype: "123", size: 3, mandatory: true, dependency: "dancetype2"},
	{tab: 2, name: "ANNUAL CONCERTS Venue’s name", section: "dance", element: "dancevenuename", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "ANNUAL CONCERTS Venue’s address", section: "dance", element: "dancevenueaddress", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "AUSDANCE Number of students", section: "dance", element: "dancenumberofstudents", datatype: "123", size: 6, mandatory: true, dependency: "dancetype3"},
	{tab: 2, name: "AUSDANCE Membership number", section: "dance", element: "dancemembershipnumber", datatype: "ABC", size: 100, mandatory: true, dependency: "dancetype3"},

	{tab: 2, name: "Number of performance groups", section: "live", element: "livenumber", datatype: "123", size: 6, mandatory: true},

	{tab: 2, name: "Area 1 Licensed Capacity", section: "disco", element: "discocapacity1", datatype: "123", size: 6, mandatory: true, dependency: "discoareaname1,disconights1"},
	{tab: 2, name: "Area 1 Name", section: "disco", element: "discoareaname1", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 1 Total number of nights of operation per year", section: "disco", element: "disconights1", datatype: "123", size: 3, mandatory: true, dependency: "discoareaname1,discocapacity1"},

	{tab: 2, name: "Area 2 Licensed Capacity", section: "disco", element: "discocapacity2", datatype: "123", size: 6, mandatory: true, dependency: "discoareaname2,disconights2"},
	{tab: 2, name: "Area 2 Name", section: "disco", element: "discoareaname2", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 2 Total number of nights of operation per year", section: "disco", element: "disconights2", datatype: "123", size: 3, mandatory: true, dependency: "discoareaname2,discocapacity2"},

	{tab: 2, name: "Area 3 Licensed Capacity", section: "disco", element: "discocapacity3", datatype: "123", size: 6, mandatory: true, dependency: "discoareaname3,disconights3"},
	{tab: 2, name: "Area 3 Name", section: "disco", element: "discoareaname3", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 3 Total number of nights of operation per year", section: "disco", element: "disconights3", datatype: "123", size: 3, mandatory: true, dependency: "discoareaname3,discocapacity3"},

	{tab: 2, name: "Area 4 Licensed Capacity", section: "disco", element: "discocapacity4", datatype: "123", size: 6, mandatory: true, dependency: "discoareaname4,disconights4"},
	{tab: 2, name: "Area 4 Name", section: "disco", element: "discoareaname4", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 4 Total number of nights of operation per year", section: "disco", element: "disconights4", datatype: "123", size: 3, mandatory: true, dependency: "discocapacity4,discoareaname4"},
	
	{tab: 2, name: "Area 5 Licensed Capacity", section: "disco", element: "discocapacity5", datatype: "123", size: 6, mandatory: true, dependency: "discoareaname5,disconights5"},
	{tab: 2, name: "Area 5 Name", section: "disco", element: "discoareaname5", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 5 Total number of nights of operation per year", section: "disco", element: "disconights5", datatype: "123", size: 3, mandatory: true, dependency: "discocapacity5,discoareaname5"},

	{tab: 2, name: "Area 6 Licensed Capacity", section: "disco", element: "discocapacity6", datatype: "123", size: 6, mandatory: true, dependency: "discoareaname6,disconights6"},
	{tab: 2, name: "Area 6 Name", section: "disco", element: "discoareaname6", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 6 Total number of nights of operation per year", section: "disco", element: "disconights6", datatype: "123", size: 3, mandatory: true, dependency: "discocapacity6,discoareaname6"},

	{tab: 2, name: "Area 7 Licensed Capacity", section: "disco", element: "discocapacity7", datatype: "123", size: 6, mandatory: true, dependency: "discoareaname7,disconights7"},
	{tab: 2, name: "Area 7 Name", section: "disco", element: "discoareaname7", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 7 Total number of nights of operation per year", section: "disco", element: "disconights7", datatype: "123", size: 3, mandatory: true, dependency: "discocapacity7,discoareaname7"},

	{tab: 2, name: "Area 8 Licensed Capacity", section: "disco", element: "discocapacity8", datatype: "123", size: 6, mandatory: true, dependency: "discoareaname8,disconights8"},
	{tab: 2, name: "Area 8 Name", section: "disco", element: "discoareaname8", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 8 Total number of nights of operation per year", section: "disco", element: "disconights8", datatype: "123", size: 3, mandatory: true, dependency: "discocapacity8,discoareaname8"},

	{tab: 2, name: "Area 9 Licensed Capacity", section: "disco", element: "discocapacity9", datatype: "123", size: 6, mandatory: true, dependency: "discoareaname9,disconights9"},
	{tab: 2, name: "Area 9 Name", section: "disco", element: "discoareaname9", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 9 Total number of nights of operation per year", section: "disco", element: "disconights9", datatype: "123", size: 3, mandatory: true, dependency: "discocapacity9,discoareaname9"},

	{tab: 2, name: "Area 10 Licensed Capacity", section: "disco", element: "discocapacity10", datatype: "123", size: 6, mandatory: true, dependency: "discoareaname10,disconights10"},
	{tab: 2, name: "Area 10 Name", section: "disco", element: "discoareaname10", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 10 Total number of nights of operation per year", section: "disco", element: "disconights10", datatype: "123", size: 3, mandatory: true, dependency: "discocapacity10,discoareaname10"},


	{tab: 2, name: "Area 1 Licensed Capacity", section: "bars", element: "barscapacity1", datatype: "123", size: 6, mandatory: true, dependency: "barsareaname1,barsnights1"},
	{tab: 2, name: "Area 1 Name", section: "bars", element: "barsareaname1", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 1 Total number of nights of operation per year", section: "bars", element: "barsnights1", datatype: "123", size: 3, mandatory: true, dependency: "barsareaname1,barscapacity1"},

	{tab: 2, name: "Area 2 Licensed Capacity", section: "bars", element: "barscapacity2", datatype: "123", size: 6, mandatory: true, dependency: "barsareaname2,barsnights2"},
	{tab: 2, name: "Area 2 Name", section: "bars", element: "barsareaname2", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 2 Total number of nights of operation per year", section: "bars", element: "barsnights2", datatype: "123", size: 3, mandatory: true, dependency: "barsareaname2,barscapacity2"},

	{tab: 2, name: "Area 3 Licensed Capacity", section: "bars", element: "barscapacity3", datatype: "123", size: 6, mandatory: true, dependency: "barsareaname3,barsnights3"},
	{tab: 2, name: "Area 3 Name", section: "bars", element: "barsareaname3", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 3 Total number of nights of operation per year", section: "bars", element: "barsnights3", datatype: "123", size: 3, mandatory: true, dependency: "barsareaname3,barscapacity3"},

	{tab: 2, name: "Area 4 Licensed Capacity", section: "bars", element: "barscapacity4", datatype: "123", size: 6, mandatory: true, dependency: "barsareaname4,barsnights4"},
	{tab: 2, name: "Area 4 Name", section: "bars", element: "barsareaname4", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 4 Total number of nights of operation per year", section: "bars", element: "barsnights4", datatype: "123", size: 3, mandatory: true, dependency: "barsareaname4,barscapacity4"},
	
	{tab: 2, name: "Area 5 Licensed Capacity", section: "bars", element: "barscapacity5", datatype: "123", size: 6, mandatory: true, dependency: "barsareaname5,barsnights5"},
	{tab: 2, name: "Area 5 Name", section: "bars", element: "barsareaname5", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 5 Total number of nights of operation per year", section: "bars", element: "barsnights5", datatype: "123", size: 3, mandatory: true, dependency: "barsareaname5,barscapacity5"},

	{tab: 2, name: "Area 6 Licensed Capacity", section: "bars", element: "barscapacity6", datatype: "123", size: 6, mandatory: true, dependency: "barsareaname6,barsnights6"},
	{tab: 2, name: "Area 6 Name", section: "bars", element: "barsareaname6", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 6 Total number of nights of operation per year", section: "bars", element: "barsnights6", datatype: "123", size: 3, mandatory: true, dependency: "barsareaname6,barscapacity6"},

	{tab: 2, name: "Area 7 Licensed Capacity", section: "bars", element: "barscapacity7", datatype: "123", size: 6, mandatory: true, dependency: "barsareaname7,barsnights7"},
	{tab: 2, name: "Area 7 Name", section: "bars", element: "barsareaname7", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 7 Total number of nights of operation per year", section: "bars", element: "barsnights7", datatype: "123", size: 3, mandatory: true, dependency: "barsareaname7,barscapacity7"},

	{tab: 2, name: "Area 8 Licensed Capacity", section: "bars", element: "barscapacity8", datatype: "123", size: 6, mandatory: true, dependency: "barsareaname8,barsnights8"},
	{tab: 2, name: "Area 8 Name", section: "bars", element: "barsareaname8", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 8 Total number of nights of operation per year", section: "bars", element: "barsnights8", datatype: "123", size: 3, mandatory: true, dependency: "barsareaname8,barscapacity8"},

	{tab: 2, name: "Area 9 Licensed Capacity", section: "bars", element: "barscapacity9", datatype: "123", size: 6, mandatory: true, dependency: "barsareaname9,barsnights9"},
	{tab: 2, name: "Area 9 Name", section: "bars", element: "barsareaname9", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 9 Total number of nights of operation per year", section: "bars", element: "barsnights9", datatype: "123", size: 3, mandatory: true, dependency: "barsareaname9,barscapacity9"},

	{tab: 2, name: "Area 10 Licensed Capacity", section: "bars", element: "barscapacity10", datatype: "123", size: 6, mandatory: true, dependency: "barsareaname10,barsnights10"},
	{tab: 2, name: "Area 10 Name", section: "bars", element: "barsareaname10", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 10 Total number of nights of operation per year", section: "bars", element: "barsnights10", datatype: "123", size: 3, mandatory: true, dependency: "barsareaname10,barscapacity10"},


	{tab: 2, name: "DJ AND EQUIPMENT", section: "mobile", element: "mobiletype1", datatype: "CH", mandatory:false},
	{tab: 2, name: "EQUIPMENT ONLY (NO DJ SUPPLIED)", section: "mobile", element: "mobiletype2", datatype: "CH", mandatory:false},
	{tab: 2, name: "DJ ONLY (NO EQUIPMENT SUPPLIED)", section: "mobile", element: "mobiletype3", datatype: "CH", mandatory:false},
	{tab: 2, name: "DJ AND EQUIPMENT Number of units", section: "mobile", element: "mobilenumberofunits", datatype: "123", size: 6, mandatory:true, dependency: "mobiletype1"},
	{tab: 2, name: "EQUIPMENT ONLY Number of units", section: "mobile", element: "mobilenumberofunits1", datatype: "123", size: 6, mandatory:true, dependency: "mobiletype2"},
	{tab: 2, name: "DJ ONLY Number of DJs (DJ ONLY)", section: "mobile", element: "mobilenumberofdjs", datatype: "123", size: 6, mandatory: true, dependency: "mobiletype3"},

	{tab: 2, name: "Area 1 Name", section: "hall", element: "hallname1", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 1 Licensed Capacity", section: "hall", element: "hallcapacity1", datatype: "123", size: 6, mandatory: true, dependency: "hallname1,hallnights1"},
	{tab: 2, name: "Area 1 Total number of nights of operation per year", section: "hall", element: "hallnights1", datatype: "123", size: 6, mandatory: true, dependency: "hallname1,hallcapacity1"},
	{tab: 2, name: "Area 2 Name", section: "hall", element: "hallname2", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 2 Licensed Capacity", section: "hall", element: "hallcapacity2", datatype: "0123", size: 6, mandatory: true, dependency: "hallname2,hallnights2"},
	{tab: 2, name: "Area 2 Total number of nights of operation per year", section: "hall", element: "hallnights2", datatype: "0123", size: 6, mandatory: true, dependency: "hallname2,hallcapacity2"},
	{tab: 2, name: "Area 3 Name", section: "hall", element: "hallname3", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 3 Licensed Capacity", section: "hall", element: "hallcapacity3", datatype: "0123", size: 6, mandatory: true, dependency: "hallname3,hallnights3"},
	{tab: 2, name: "Area 3 Total number of nights of operation per year", section: "hall", element: "hallnights3", datatype: "0123", size: 6, mandatory: true, dependency: "hallname3,hallcapacity3"},
	{tab: 2, name: "Area 4 Name", section: "hall", element: "hallname4", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 4 Licensed Capacity", section: "hall", element: "hallcapacity4", datatype: "0123", size: 6, mandatory: true, dependency: "hallname4,hallnights4"},
	{tab: 2, name: "Area 4 Total number of nights of operation per year", section: "hall", element: "hallnights4", datatype: "0123", size: 6, mandatory: true, dependency: "hallname4,hallcapacity4"},
	{tab: 2, name: "Area 5 Name", section: "hall", element: "hallname5", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 5 Licensed Capacity", section: "hall", element: "hallcapacity5", datatype: "0123", size: 6, mandatory: true, dependency: "hallname5,hallnights5"},
	{tab: 2, name: "Area 5 Total number of nights of operation per year", section: "hall", element: "hallnights5", datatype: "0123", size: 6, mandatory: true, dependency: "hallname5,hallcapacity5"},
	{tab: 2, name: "Area 6 Name", section: "hall", element: "hallname6", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 6 Licensed Capacity", section: "hall", element: "hallcapacity6", datatype: "0123", size: 6, mandatory: true, dependency: "hallname6,hallnights6"},
	{tab: 2, name: "Area 6 Total number of nights of operation per year", section: "hall", element: "hallnights6", datatype: "0123", size: 6, mandatory: true, dependency: "hallname6,hallcapacity6"},
	{tab: 2, name: "Area 7 Name", section: "hall", element: "hallname7", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 7 Licensed Capacity", section: "hall", element: "hallcapacity7", datatype: "0123", size: 6, mandatory: true, dependency: "hallname7,hallnights7"},
	{tab: 2, name: "Area 7 Total number of nights of operation per year", section: "hall", element: "hallnights7", datatype: "0123", size: 6, mandatory: true, dependency: "hallname7,hallcapacity7"},
	{tab: 2, name: "Area 8 Name", section: "hall", element: "hallname8", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 8 Licensed Capacity", section: "hall", element: "hallcapacity8", datatype: "0123", size: 6, mandatory: true, dependency: "hallname8,hallnights8"},
	{tab: 2, name: "Area 8 Total number of nights of operation per year", section: "hall", element: "hallnights8", datatype: "0123", size: 6, mandatory: true, dependency: "hallname8,hallcapacity8"},
	{tab: 2, name: "Area 9 Name", section: "hall", element: "hallname9", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 9 Licensed Capacity", section: "hall", element: "hallcapacity9", datatype: "0123", size: 6, mandatory: true, dependency: "hallname9,hallnights9"},
	{tab: 2, name: "Area 9 Total number of nights of operation per year", section: "hall", element: "hallnights9", datatype: "0123", size: 6, mandatory: true, dependency: "hallname9,hallcapacity9"},
	{tab: 2, name: "Area 10 Name", section: "hall", element: "hallname10", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 10 Licensed Capacity", section: "hall", element: "hallcapacity10", datatype: "0123", size: 6, mandatory: true, dependency: "hallname10,hallnights10"},
	{tab: 2, name: "Area 10 Total number of nights of operation per year", section: "hall", element: "hallnights10", datatype: "0123", size: 6, mandatory: true, dependency: "hallname10,hallcapacity10"},
					
	{tab: 2, name: "Number of employees", section: "office", element: "officenumber", datatype: "123", size: 6, mandatory: true},

	{tab: 2, name: "Total number of machines", section: "jukebox", element: "jukeboxnumber", datatype: "123", size: 6, mandatory: true},
	{tab: 2, name: "Name of rental company", section: "jukebox", element: "jukeboxname", datatype: "ABC", size: 100, mandatory: false},

	{tab: 2, name: "Total number of machines", section: "jboxop", element: "jboxopnumber", datatype: "123", size: 6, mandatory: true},
	{tab: 2, name: "Attachment", section: "jboxop", element: "jboxopattachmentattachment", datatype: "ABC", size: 500, mandatory: false},

	{tab: 2, name: "Total number of areas", section: "pool", element: "poolnumber", datatype: "123", size: 6, mandatory: true},

	{tab: 2, name: "Liquor licence", section: "comm", element: "commliq", datatype: "CH", mandatory: false},
	{tab: 2, name: "Area 1 Name", section: "comm", element: "commareaname1", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 1 Floor space (m2)", section: "comm", element: "commareafloorspace1", datatype: "123", size: 6, mandatory: true, dependency: "commareaname1,commliq"},
	{tab: 2, name: "Area 2 Name", section: "comm", element: "commareaname2", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 2 Floor space (m2)", section: "comm", element: "commareafloorspace2", datatype: "123", size: 6, mandatory: true, dependency: "commareaname2"},
	{tab: 2, name: "Area 3 Name", section: "comm", element: "commareaname3", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 3 Floor space (m2)", section: "comm", element: "commareafloorspace3", datatype: "123", size: 6, mandatory: true, dependency: "commareaname3"},
	{tab: 2, name: "Area 4 Name", section: "comm", element: "commareaname4", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 4 Floor space (m2)", section: "comm", element: "commareafloorspace4", datatype: "123", size: 6, mandatory: true, dependency: "commareaname4"},
	{tab: 2, name: "Area 5 Name", section: "comm", element: "commareaname5", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 5 Floor space (m2)", section: "comm", element: "commareafloorspace5", datatype: "123", size: 6, mandatory: true, dependency: "commareaname5"},
	{tab: 2, name: "Area 6 Name", section: "comm", element: "commareaname6", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 6 Floor space (m2)", section: "comm", element: "commareafloorspace6", datatype: "123", size: 6, mandatory: true, dependency: "commareaname6"},
	{tab: 2, name: "Area 7 Name", section: "comm", element: "commareaname7", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 7 Floor space (m2)", section: "comm", element: "commareafloorspace7", datatype: "123", size: 6, mandatory: true, dependency: "commareaname7"},
	{tab: 2, name: "Area 8 Name", section: "comm", element: "commareaname8", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 8 Floor space (m2)", section: "comm", element: "commareafloorspace8", datatype: "123", size: 6, mandatory: true, dependency: "commareaname8"},
	{tab: 2, name: "Area 9 Name", section: "comm", element: "commareaname9", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 9 Floor space (m2)", section: "comm", element: "commareafloorspace9", datatype: "123", size: 6, mandatory: true, dependency: "commareaname9"},
	{tab: 2, name: "Area 10 Name", section: "comm", element: "commareaname10", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Area 10 Floor space (m2)", section: "comm", element: "commareafloorspace10", datatype: "123", size: 6, mandatory: true, dependency: "commareaname10"},

	{tab: 2, name: "Number of centres", section: "shopping", element: "shoppingnumberofcentres", datatype: "123", size: 6, mandatory: false},

	{tab: 2, name: "HIRE CARS / TAXIS", section: "vehicle", element: "vehicletype1", datatype: "CH", mandatory: false},
	{tab: 2, name: "AIRCRAFT / BUSES / CHARTER BOATS / COACHES / FERRIES / LIGHT RAIL / MONORAIL / SHIPS / TRAINS / TRAMS", section: "vehicle", element: "vehicletype2", datatype: "CH", mandatory: false},
	{tab: 2, name: "HIRE CARS Total number of vehicles", section: "vehicle", element: "vehiclenumberofvehicles", datatype: "123", size: 6, mandatory: true, dependency: "vehicletype1"},
	{tab: 2, name: "AIRCRAFT / BUSES Licensed capacity Less Than 20", section: "vehicle", element: "vehiclenumberofvehicles20", datatype: "0123", size: 6, mandatory: false, dependency: "vehicletype2"},
	{tab: 2, name: "AIRCRAFT / BUSES Licensed capacity 21-50", section: "vehicle", element: "vehiclenumberofvehicles21", datatype: "0123", size: 6, mandatory: false, dependency: "vehicletype2"},
	{tab: 2, name: "AIRCRAFT / BUSES Licensed capacity 51-120", section: "vehicle", element: "vehiclenumberofvehicles51", datatype: "0123", size: 6, mandatory: false, dependency: "vehicletype2"},
	{tab: 2, name: "AIRCRAFT / BUSES Licensed capacity Over 120 passengers", section: "vehicle", element: "vehiclenumberofvehicles120", datatype: "0123", size: 6, mandatory: false, dependency: "vehicletype2"},

	{tab: 2, name: "Restaurant 1 Name", section: "restaurant_t1", element: "restaurant_t1name1", datatype: "ABC", size: 100, mandatory: false},
	{ tab: 2, name: "Restaurant 1 Seating capacity", section: "restaurant_t1", element: "restaurant_t1capacity1", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t1name1" },
	{ tab: 2, name: "Restaurant 1 Days of operation", section: "restaurant_t1", element: "restaurant_t1days1", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t1name1" },
	{ tab: 2, name: "Restaurant 1 Average cost of a main meal", section: "restaurant_t1", element: "restaurant_t1cost1", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name1" },
	{ tab: 2, name: "Restaurant 1 Licensed for sale & service of alcohol", section: "restaurant_t1", element: "restaurant_t1islicensed1", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name1" },

	{ tab: 2, name: "Restaurant 2 Name", section: "restaurant_t1", element: "restaurant_t1name2", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 2 Seating capacity", section: "restaurant_t1", element: "restaurant_t1capacity2", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t1name2" },
	{ tab: 2, name: "Restaurant 2 Days of operation", section: "restaurant_t1", element: "restaurant_t1days2", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t1name2" },
	{ tab: 2, name: "Restaurant 2 Average cost of a main meal", section: "restaurant_t1", element: "restaurant_t1cost2", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name2" },
	{ tab: 2, name: "Restaurant 2 Licensed for sale & service of alcohol", section: "restaurant_t1", element: "restaurant_t1islicensed2", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name2" },

	{ tab: 2, name: "Restaurant 3 Name", section: "restaurant_t1", element: "restaurant_t1name3", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 3 Seating capacity", section: "restaurant_t1", element: "restaurant_t1capacity3", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t1name3" },
	{ tab: 2, name: "Restaurant 3 Days of operation", section: "restaurant_t1", element: "restaurant_t1days3", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t1name3" },
	{ tab: 2, name: "Restaurant 3 Average cost of a main meal", section: "restaurant_t1", element: "restaurant_t1cost3", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name3" },
	{ tab: 2, name: "Restaurant 3 Licensed for sale & service of alcohol", section: "restaurant_t1", element: "restaurant_t1islicensed3", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name3" },

	{ tab: 2, name: "Restaurant 4 Name", section: "restaurant_t1", element: "restaurant_t1name4", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 4 Seating capacity", section: "restaurant_t1", element: "restaurant_t1capacity4", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t1name4" },
	{ tab: 2, name: "Restaurant 4 Days of operation", section: "restaurant_t1", element: "restaurant_t1days4", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t1name4" },
	{ tab: 2, name: "Restaurant 4 Average cost of a main meal", section: "restaurant_t1", element: "restaurant_t1cost4", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name4" },
	{ tab: 2, name: "Restaurant 4 Licensed for sale & service of alcohol", section: "restaurant_t1", element: "restaurant_t1islicensed4", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name4" },

	{ tab: 2, name: "Restaurant 5 Name", section: "restaurant_t1", element: "restaurant_t1name5", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 5 Seating capacity", section: "restaurant_t1", element: "restaurant_t1capacity5", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t1name5" },
	{ tab: 2, name: "Restaurant 5 Days of operation", section: "restaurant_t1", element: "restaurant_t1days5", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t1name5" },
	{ tab: 2, name: "Restaurant 5 Average cost of a main meal", section: "restaurant_t1", element: "restaurant_t1cost5", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name5" },
	{ tab: 2, name: "Restaurant 5 Licensed for sale & service of alcohol", section: "restaurant_t1", element: "restaurant_t1islicensed5", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name5" },

	{ tab: 2, name: "Restaurant 6 Name", section: "restaurant_t1", element: "restaurant_t1name6", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 6 Seating capacity", section: "restaurant_t1", element: "restaurant_t1capacity6", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t1name6" },
	{ tab: 2, name: "Restaurant 6 Days of operation", section: "restaurant_t1", element: "restaurant_t1days6", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t1name6" },
	{ tab: 2, name: "Restaurant 6 Average cost of a main meal", section: "restaurant_t1", element: "restaurant_t1cost6", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name6" },
	{ tab: 2, name: "Restaurant 6 Licensed for sale & service of alcohol", section: "restaurant_t1", element: "restaurant_t1islicensed6", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name6" },

	{ tab: 2, name: "Restaurant 7 Name", section: "restaurant_t1", element: "restaurant_t1name7", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 7 Seating capacity", section: "restaurant_t1", element: "restaurant_t1capacity7", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t1name7" },
	{ tab: 2, name: "Restaurant 7 Days of operation", section: "restaurant_t1", element: "restaurant_t1days7", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t1name7" },
	{ tab: 2, name: "Restaurant 7 Average cost of a main meal", section: "restaurant_t1", element: "restaurant_t1cost7", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name7" },
	{ tab: 2, name: "Restaurant 7 Licensed for sale & service of alcohol", section: "restaurant_t1", element: "restaurant_t1islicensed7", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name7" },

	{ tab: 2, name: "Restaurant 7 Name", section: "restaurant_t1", element: "restaurant_t1name7", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 7 Seating capacity", section: "restaurant_t1", element: "restaurant_t1capacity7", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t1name7" },
	{ tab: 2, name: "Restaurant 7 Days of operation", section: "restaurant_t1", element: "restaurant_t1days7", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t1name7" },
	{ tab: 2, name: "Restaurant 7 Average cost of a main meal", section: "restaurant_t1", element: "restaurant_t1cost7", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name7" },
	{ tab: 2, name: "Restaurant 8 Licensed for sale & service of alcohol", section: "restaurant_t1", element: "restaurant_t1islicensed8", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name8" },
	{ tab: 2, name: "Restaurant 9 Licensed for sale & service of alcohol", section: "restaurant_t1", element: "restaurant_t1islicensed9", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name9" },
	{ tab: 2, name: "Restaurant 10 Licensed for sale & service of alcohol", section: "restaurant_t1", element: "restaurant_t1islicensed10", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t1name10" },

	{ tab: 2, name: "Restaurant 1 Name", section: "restaurant_t2", element: "restaurant_t2name1", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 1 Seating capacity", section: "restaurant_t2", element: "restaurant_t2capacity1", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t2name1" },
	{ tab: 2, name: "Restaurant 1 Days of operation", section: "restaurant_t2", element: "restaurant_t2days1", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t2name1" },
	{ tab: 2, name: "Restaurant 1 Average cost of a main meal", section: "restaurant_t2", element: "restaurant_t2cost1", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name1" },
	{ tab: 2, name: "Restaurant 1 Licensed for sale & service of alcohol", section: "restaurant_t2", element: "restaurant_t2islicensed1", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name1" },

	{ tab: 2, name: "Restaurant 2 Name", section: "restaurant_t2", element: "restaurant_t2name2", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 2 Seating capacity", section: "restaurant_t2", element: "restaurant_t2capacity2", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t2name2" },
	{ tab: 2, name: "Restaurant 2 Days of operation", section: "restaurant_t2", element: "restaurant_t2days2", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t2name2" },
	{ tab: 2, name: "Restaurant 2 Average cost of a main meal", section: "restaurant_t2", element: "restaurant_t2cost2", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name2" },
	{ tab: 2, name: "Restaurant 2 Licensed for sale & service of alcohol", section: "restaurant_t2", element: "restaurant_t2islicensed2", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name2" },

	{ tab: 2, name: "Restaurant 3 Name", section: "restaurant_t2", element: "restaurant_t2name3", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 3 Seating capacity", section: "restaurant_t2", element: "restaurant_t2capacity3", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t2name3" },
	{ tab: 2, name: "Restaurant 3 Days of operation", section: "restaurant_t2", element: "restaurant_t2days3", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t2name3" },
	{ tab: 2, name: "Restaurant 3 Average cost of a main meal", section: "restaurant_t2", element: "restaurant_t2cost3", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name3" },
	{ tab: 2, name: "Restaurant 3 Licensed for sale & service of alcohol", section: "restaurant_t2", element: "restaurant_t2islicensed3", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name3" },

	{ tab: 2, name: "Restaurant 4 Name", section: "restaurant_t2", element: "restaurant_t2name4", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 4 Seating capacity", section: "restaurant_t2", element: "restaurant_t2capacity4", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t2name4" },
	{ tab: 2, name: "Restaurant 4 Days of operation", section: "restaurant_t2", element: "restaurant_t2days4", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t2name4" },
	{ tab: 2, name: "Restaurant 4 Average cost of a main meal", section: "restaurant_t2", element: "restaurant_t2cost4", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name4" },
	{ tab: 2, name: "Restaurant 4 Licensed for sale & service of alcohol", section: "restaurant_t2", element: "restaurant_t2islicensed4", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name4" },

	{ tab: 2, name: "Restaurant 5 Name", section: "restaurant_t2", element: "restaurant_t2name5", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 5 Seating capacity", section: "restaurant_t2", element: "restaurant_t2capacity5", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t2name5" },
	{ tab: 2, name: "Restaurant 5 Days of operation", section: "restaurant_t2", element: "restaurant_t2days5", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t2name5" },
	{ tab: 2, name: "Restaurant 5 Average cost of a main meal", section: "restaurant_t2", element: "restaurant_t2cost5", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name5" },
	{ tab: 2, name: "Restaurant 5 Licensed for sale & service of alcohol", section: "restaurant_t2", element: "restaurant_t2islicensed5", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name5" },

	{ tab: 2, name: "Restaurant 6 Name", section: "restaurant_t2", element: "restaurant_t2name6", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 6 Seating capacity", section: "restaurant_t2", element: "restaurant_t2capacity6", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t2name6" },
	{ tab: 2, name: "Restaurant 6 Days of operation", section: "restaurant_t2", element: "restaurant_t2days6", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t2name6" },
	{ tab: 2, name: "Restaurant 6 Average cost of a main meal", section: "restaurant_t2", element: "restaurant_t2cost6", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name6" },
	{ tab: 2, name: "Restaurant 6 Licensed for sale & service of alcohol", section: "restaurant_t2", element: "restaurant_t2islicensed6", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name6" },

	{ tab: 2, name: "Restaurant 7 Name", section: "restaurant_t2", element: "restaurant_t2name7", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 7 Seating capacity", section: "restaurant_t2", element: "restaurant_t2capacity7", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t2name7" },
	{ tab: 2, name: "Restaurant 7 Days of operation", section: "restaurant_t2", element: "restaurant_t2days7", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t2name7" },
	{ tab: 2, name: "Restaurant 7 Average cost of a main meal", section: "restaurant_t2", element: "restaurant_t2cost7", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name7" },
	{ tab: 2, name: "Restaurant 7 Licensed for sale & service of alcohol", section: "restaurant_t2", element: "restaurant_t2islicensed7", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name7" },

	{ tab: 2, name: "Restaurant 7 Name", section: "restaurant_t2", element: "restaurant_t2name7", datatype: "ABC", size: 100, mandatory: false },
	{ tab: 2, name: "Restaurant 7 Seating capacity", section: "restaurant_t2", element: "restaurant_t2capacity7", datatype: "123", size: 6, mandatory: true, dependency: "restaurant_t2name7" },
	{ tab: 2, name: "Restaurant 7 Days of operation", section: "restaurant_t2", element: "restaurant_t2days7", datatype: "123", size: 2, mandatory: true, dependency: "restaurant_t2name7" },
	{ tab: 2, name: "Restaurant 7 Average cost of a main meal", section: "restaurant_t2", element: "restaurant_t2cost7", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name7" },
	{ tab: 2, name: "Restaurant 8 Licensed for sale & service of alcohol", section: "restaurant_t2", element: "restaurant_t2islicensed8", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name8" },
	{ tab: 2, name: "Restaurant 9 Licensed for sale & service of alcohol", section: "restaurant_t2", element: "restaurant_t2islicensed9", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name9" },
	{ tab: 2, name: "Restaurant 10 Licensed for sale & service of alcohol", section: "restaurant_t2", element: "restaurant_t2islicensed10", datatype: "ABC", size: 3, mandatory: true, dependency: "restaurant_t2name10" },

	{tab: 2, name: "CITY", section: "sport", element: "sporttype1", datatype: "CH", mandatory: false},
	{tab: 2, name: "COUNTRY", section: "sport", element: "sporttype2", datatype: "CH", mandatory: false},
	{tab: 2, name: "CITY Capacity", section: "sport", element: "sportcapacity", datatype: "123", size: 6, mandatory: true, dependency: "sporttype1"},
	{tab: 2, name: "CITY Number of events per year", section: "sport", element: "sportevents", datatype: "123", size: 6, mandatory: true, dependency: "sporttype1"},
	{tab: 2, name: "COUNTRY Capacity", section: "sport", element: "sportcapacity1", datatype: "123", size: 6, mandatory: true, dependency: "sporttype2"},
	{tab: 2, name: "COUNTRY Number of events per year", section: "sport", element: "sportevents1", datatype: "123", size: 6, mandatory: true, dependency: "sporttype2"},

	{tab: 2, name: "Number of areas", section: "outdoor", element: "outdoornumberofareas", datatype: "123", size: 6, mandatory: true},
	{tab: 2, name: "Venue's name", section: "outdoor", element: "outdoorvenuename", datatype: "ABC", size: 100, mandatory: false},
	{tab: 2, name: "Venue's address", section: "outdoor", element: "outdoorvenueaddress", datatype: "ABC", size: 100, mandatory: false},

	{tab: 2, name: "Number of rinks", section: "skating", element: "skatingnumber", datatype: "123", size: 6, mandatory: true},

	{tab: 2, name: "FITNESS CLASSES", section: "fitness", element: "fitnesstype1", datatype: "CH", mandatory: false},
	{tab: 2, name: "GENERAL / FREE WEIGHTS AREA", section: "fitness", element: "fitnesstype2", datatype: "CH", mandatory: false},
	{tab: 2, name: "FITNESS TEACHERS & INSTRUCTORS (OPERATING IN UNLICENSED PREMISES)", section: "fitness", element: "fitnesstype3", datatype: "CH", mandatory: false},
	{tab: 2, name: "FITNESS CLASSES Number of classes per year", section: "fitness", element: "fitnessnumberofclasses", datatype: "123", size: 6, mandatory: true, dependency: "fitnesstype1"},
	{tab: 2, name: "GENERAL / FREE WEIGHTS AREA Number of areas", section: "fitness", element: "fitnessnumberofareas", datatype: "123", size: 6, mandatory: true, dependency: "fitnesstype2"},
	{tab: 2, name: "FITNESS TEACHERS & INSTRUCTORS Number of classes per year", section: "fitness", element: "fitnessnumberofclasses1", datatype: "123", size: 6, mandatory: true, dependency: "fitnesstype3"},


	{tab: 2, name: "Concert Mode 1 Licensed capacity", section: "concert", element: "concertcapacity1", datatype: "123", mandatory: true, dependency: "concertnights1"},
	{tab: 2, name: "Concert Mode 1 Total nights of operation per year", section: "concert", element: "concertnights1", datatype: "123", mandatory: true, dependency: "concertcapacity1"},
	{tab: 2, name: "Concert Mode 2 Licensed capacity", section: "concert", element: "concertcapacity2", datatype: "123", mandatory: true, dependency: "concertnights2"},
	{tab: 2, name: "Concert Mode 2 Total nights of operation per year", section: "concert", element: "concertnights2", datatype: "123", mandatory: true, dependency: "concertcapacity2"},
	{tab: 2, name: "Concert Mode 3 Licensed capacity", section: "concert", element: "concertcapacity3", datatype: "123", mandatory: true, dependency: "concertnights3"},
	{tab: 2, name: "Concert Mode 3 Total nights of operation per year", section: "concert", element: "concertnights3", datatype: "123", mandatory: true, dependency: "concertcapacity3"},
	{tab: 2, name: "Concert Mode 4 Licensed capacity", section: "concert", element: "concertcapacity4", datatype: "123", mandatory: true, dependency: "concertnights4"},
	{tab: 2, name: "Concert Mode 4 Total nights of operation per year", section: "concert", element: "concertnights4", datatype: "123", mandatory: true, dependency: "concertcapacity4"},
	{tab: 2, name: "Concert Mode 5 Licensed capacity", section: "concert", element: "concertcapacity5", datatype: "123", mandatory: true, dependency: "concertnights5"},
	{tab: 2, name: "Concert Mode 5 Total nights of operation per year", section: "concert", element: "concertnights5", datatype: "123", mandatory: true, dependency: "concertcapacity5"},
	{tab: 2, name: "Concert Mode 6 Licensed capacity", section: "concert", element: "concertcapacity6", datatype: "123", mandatory: true, dependency: "concertnights6"},
	{tab: 2, name: "Concert Mode 6 Total nights of operation per year", section: "concert", element: "concertnights6", datatype: "123", mandatory: true, dependency: "concertcapacity6"},
	{tab: 2, name: "Concert Mode 7 Licensed capacity", section: "concert", element: "concertcapacity7", datatype: "123", mandatory: true, dependency: "concertnights7"},
	{tab: 2, name: "Concert Mode 7 Total nights of operation per year", section: "concert", element: "concertnights7", datatype: "123", mandatory: true, dependency: "concertcapacity7"},
	{tab: 2, name: "Concert Mode 8 Licensed capacity", section: "concert", element: "concertcapacity8", datatype: "123", mandatory: true, dependency: "concertnights8"},
	{tab: 2, name: "Concert Mode 8 Total nights of operation per year", section: "concert", element: "concertnights8", datatype: "123", mandatory: true, dependency: "concertcapacity8"},
	{tab: 2, name: "Concert Mode 9 Licensed capacity", section: "concert", element: "concertcapacity9", datatype: "123", mandatory: true, dependency: "concertnights9"},
	{tab: 2, name: "Concert Mode 9 Total nights of operation per year", section: "concert", element: "concertnights9", datatype: "123", mandatory: true, dependency: "concertcapacity9"},
	{tab: 2, name: "Concert Mode 10 Licensed capacity", section: "concert", element: "concertcapacity10", datatype: "123", mandatory: true, dependency: "concertnights10"},
	{tab: 2, name: "Concert Mode 10 Total nights of operation per year", section: "concert", element: "concertnights10", datatype: "123", mandatory: true, dependency: "concertcapacity10"},

	{tab: 2, name: "Number of rooms up to 100m2", section: "conference", element: "conferencenumbersmall", datatype: "0123", mandatory: false},
	{tab: 2, name: "Number of rooms over 100m2", section: "conference", element: "conferencenumberbig", datatype: "0123", mandatory: false},


	{tab: 3, name: "Number of small screens (up to 75cm)", section: "videodisco", element: "videodiscosmallscreens", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Number of large screens (over 76cm-250cm)", section: "videodisco", element: "videodiscolargescreens", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Number of extra large screens (over 250cm)", section: "videodisco", element: "videodiscoextrascreens", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Total number of machines (including 1st screen)", section: "videojukeboxop", element: "videojukeboxopnumber", datatype: "123", size: 6, mandatory: true},
	{tab: 3, name: "Additional screens in same area", section: "videojukeboxop", element: "videojukeboxopsame", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Additional screens in separate area", section: "videojukeboxop", element: "videojukeboxopseparate", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Attachment", section: "videojukeboxop", element: "videojukeboxopattachment", datatype: "ABC", size: 500, mandatory: false},

	{tab: 3, name: "Number of screens", section: "electrical", element: "electricalnumber", datatype: "123", size: 6, mandatory: true},

	{tab: 3, name: "Area 1 Name", section: "videoscreen", element: "videoscreenname1", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 1 Number of small screens (up to 75cm)", section: "videoscreen", element: "videoscreensmall1", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 1 Number of large screens (76cm-250cm)", section: "videoscreen", element: "videoscreenlarge1", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 1 Number of extra large screens (251cm-500cm)", section: "videoscreen", element: "videoscreenexlarge1", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 1 Number of extra large screens (over 500cm)", section: "videoscreen", element: "videoscreenexexlarge1", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 2 Name", section: "videoscreen", element: "videoscreenname2", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 2 Number of small screens (up to 75cm)", section: "videoscreen", element: "videoscreensmall2", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 2 Number of large screens (76cm-250cm)", section: "videoscreen", element: "videoscreenlarge2", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 2 Number of extra large screens (251cm-500cm)", section: "videoscreen", element: "videoscreenexlarge2", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 2 Number of extra large screens (over 500cm)", section: "videoscreen", element: "videoscreenexexlarge2", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 3 Name", section: "videoscreen", element: "videoscreenname3", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 3 Number of small screens (up to 75cm)", section: "videoscreen", element: "videoscreensmall3", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 3 Number of large screens (76cm-250cm)", section: "videoscreen", element: "videoscreenlarge3", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 3 Number of extra large screens (251cm-500cm)", section: "videoscreen", element: "videoscreenexlarge3", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 3 Number of extra large screens (over 500cm)", section: "videoscreen", element: "videoscreenexexlarge3", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 4 Name", section: "videoscreen", element: "videoscreenname4", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 4 Number of small screens (up to 75cm)", section: "videoscreen", element: "videoscreensmall4", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 4 Number of large screens (76cm-250cm)", section: "videoscreen", element: "videoscreenlarge4", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 4 Number of extra large screens (251cm-500cm)", section: "videoscreen", element: "videoscreenexlarge4", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 4 Number of extra large screens (over 500cm)", section: "videoscreen", element: "videoscreenexexlarge4", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 5 Name", section: "videoscreen", element: "videoscreenname5", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 5 Number of small screens (up to 75cm)", section: "videoscreen", element: "videoscreensmall5", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 5 Number of large screens (76cm-250cm)", section: "videoscreen", element: "videoscreenlarge5", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 5 Number of extra large screens (251cm-500cm)", section: "videoscreen", element: "videoscreenexlarge5", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 5 Number of extra large screens (over 500cm)", section: "videoscreen", element: "videoscreenexexlarge5", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 6 Name", section: "videoscreen", element: "videoscreenname6", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 6 Number of small screens (up to 75cm)", section: "videoscreen", element: "videoscreensmall6", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 6 Number of large screens (76cm-250cm)", section: "videoscreen", element: "videoscreenlarge6", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 6 Number of extra large screens (251cm-500cm)", section: "videoscreen", element: "videoscreenexlarge6", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 6 Number of extra large screens (over 500cm)", section: "videoscreen", element: "videoscreenexexlarge6", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 7 Name", section: "videoscreen", element: "videoscreenname7", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 7 Number of small screens (up to 75cm)", section: "videoscreen", element: "videoscreensmall7", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 7 Number of large screens (76cm-250cm)", section: "videoscreen", element: "videoscreenlarge7", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 7 Number of extra large screens (251cm-500cm)", section: "videoscreen", element: "videoscreenexlarge7", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 7 Number of extra large screens (over 500cm)", section: "videoscreen", element: "videoscreenexexlarge7", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 8 Name", section: "videoscreen", element: "videoscreenname8", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 8 Number of small screens (up to 75cm)", section: "videoscreen", element: "videoscreensmall8", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 8 Number of large screens (76cm-250cm)", section: "videoscreen", element: "videoscreenlarge8", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 8 Number of extra large screens (251cm-500cm)", section: "videoscreen", element: "videoscreenexlarge8", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 8 Number of extra large screens (over 500cm)", section: "videoscreen", element: "videoscreenexexlarge8", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 9 Name", section: "videoscreen", element: "videoscreenname9", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 9 Number of small screens (up to 75cm)", section: "videoscreen", element: "videoscreensmall9", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 9 Number of large screens (76cm-250cm)", section: "videoscreen", element: "videoscreenlarge9", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 9 Number of extra large screens (251cm-500cm)", section: "videoscreen", element: "videoscreenexlarge9", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 9 Number of extra large screens (over 500cm)", section: "videoscreen", element: "videoscreenexexlarge9", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 10 Name", section: "videoscreen", element: "videoscreenname10", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 10 Number of small screens (up to 75cm)", section: "videoscreen", element: "videoscreensmall10", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 10 Number of large screens (76cm-250cm)", section: "videoscreen", element: "videoscreenlarge10", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 10 Number of extra large screens (251cm-500cm)", section: "videoscreen", element: "videoscreenexlarge10", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 10 Number of extra large screens (over 500cm)", section: "videoscreen", element: "videoscreenexexlarge10", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Total number of machines", section: "videojbox", element: "videojboxnumber", datatype: "123", size: 6, mandatory: true},
	{tab: 3, name: "Name of rental company", section: "videojbox", element: "videojboxname", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Additional screens in same area", section: "videojbox", element: "videojboxsame", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Additional screens in separate area", section: "videojbox", element: "videojboxseparate", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "HIRE CARS / TAXIS", section: "videovehicle", element: "videovehicletype1", datatype: "CH", mandatory: false},
	{tab: 3, name: "AIRCRAFT / BUSES / CHARTER BOATS / COACHES / FERRIES / LIGHT RAIL / MONORAIL / SHIPS / TRAINS / TRAMS", section: "videovehicle", element: "videovehicletype2", datatype: "CH", mandatory: false},
	{tab: 3, name: "HIRE CARS / TAXIS Total number of vehicles with any screens", section: "videovehicle", element: "videovehiclenumberofvehicles", datatype: "123", size: 6, mandatory: true, dependency: "videovehicletype1"},
	{tab: 3, name: "HIRE CARS / TAXIS Total number of screens in vehicles", section: "videovehicle", element: "videovehiclenumberofscreens", datatype: "0123", size: 6, mandatory: true, dependency: "videovehicletype1"},
	{tab: 3, name: "HIRE CARS / TAXIS Number of additional screens", section: "videovehicle", element: "videovehicleadditional", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Less Than 20 Total number of vehicles with any screens", section: "videovehicle", element: "videovehiclenumberofvehicles20", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Less Than 20 Total number of screens in vehicles", section: "videovehicle", element: "videovehiclenumberofscreens20", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Less Than 20 Number of additional screens", section: "videovehicle", element: "videovehicleadditional20", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "21-50 Total number of vehicles with any screens", section: "videovehicle", element: "videovehiclenumberofvehicles21", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "21-50 Total number of screens in vehicles", section: "videovehicle", element: "videovehiclenumberofscreens21", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "21-50 Number of additional screens", section: "videovehicle", element: "videovehicleadditional21", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "51-120 Total number of vehicles with any screens", section: "videovehicle", element: "videovehiclenumberofvehicles51", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "51-120 Total number of screens in vehicles", section: "videovehicle", element: "videovehiclenumberofscreens51", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "51-120 Number of additional screens", section: "videovehicle", element: "videovehicleadditional51", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Over 120 Total number of vehicles with any screens", section: "videovehicle", element: "videovehiclenumberofvehicles120", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Over 120 Total number of screens in vehicles", section: "videovehicle", element: "videovehiclenumberofscreens120", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Over 120 Number of additional screens", section: "videovehicle", element: "videovehicleadditional120", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 1 Name", section: "retail", element: "retailname1", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 1 Floor Space (up to 280m2)", section: "retail", element: "retailfloorsmall1", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 1 Floor Space (over 281m2)", section: "retail", element: "retailfloorbig1", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 1 Number of small screens (up to 75cm) in that area", section: "retail", element: "retailscreensmall1", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 1 Number of large screens (76cm-250cm) in that area", section: "retail", element: "retailscreenbig1", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 2 Name", section: "retail", element: "retailname2", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 2 Floor Space (up to 280m2)", section: "retail", element: "retailfloorsmall2", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 2 Floor Space (over 281m2)", section: "retail", element: "retailfloorbig2", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 2 Number of small screens (up to 75cm) in that area", section: "retail", element: "retailscreensmall2", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 2 Number of large screens (76cm-250cm) in that area", section: "retail", element: "retailscreenbig2", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 3 Name", section: "retail", element: "retailname3", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 3 Floor Space (up to 280m2)", section: "retail", element: "retailfloorsmall3", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 3 Floor Space (over 281m2)", section: "retail", element: "retailfloorbig3", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 3 Number of small screens (up to 75cm) in that area", section: "retail", element: "retailscreensmall3", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 3 Number of large screens (76cm-250cm) in that area", section: "retail", element: "retailscreenbig3", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 4 Name", section: "retail", element: "retailname4", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 4 Floor Space (up to 280m2)", section: "retail", element: "retailfloorsmall4", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 4 Floor Space (over 281m2)", section: "retail", element: "retailfloorbig4", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 4 Number of small screens (up to 75cm) in that area", section: "retail", element: "retailscreensmall4", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 4 Number of large screens (76cm-250cm) in that area", section: "retail", element: "retailscreenbig4", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 5 Name", section: "retail", element: "retailname5", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 5 Floor Space (up to 280m2)", section: "retail", element: "retailfloorsmall5", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 5 Floor Space (over 281m2)", section: "retail", element: "retailfloorbig5", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 5 Number of small screens (up to 75cm) in that area", section: "retail", element: "retailscreensmall5", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 5 Number of large screens (76cm-250cm) in that area", section: "retail", element: "retailscreenbig5", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 6 Name", section: "retail", element: "retailname6", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 6 Floor Space (up to 280m2)", section: "retail", element: "retailfloorsmall6", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 6 Floor Space (over 281m2)", section: "retail", element: "retailfloorbig6", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 6 Number of small screens (up to 75cm) in that area", section: "retail", element: "retailscreensmall6", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 6 Number of large screens (76cm-250cm) in that area", section: "retail", element: "retailscreenbig6", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 7 Name", section: "retail", element: "retailname7", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 7 Floor Space (up to 280m2)", section: "retail", element: "retailfloorsmall7", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 7 Floor Space (over 281m2)", section: "retail", element: "retailfloorbig7", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 7 Number of small screens (up to 75cm) in that area", section: "retail", element: "retailscreensmall7", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 7 Number of large screens (76cm-250cm) in that area", section: "retail", element: "retailscreenbig7", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 8 Name", section: "retail", element: "retailname8", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 8 Floor Space (up to 280m2)", section: "retail", element: "retailfloorsmall8", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 8 Floor Space (over 281m2)", section: "retail", element: "retailfloorbig8", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 8 Number of small screens (up to 75cm) in that area", section: "retail", element: "retailscreensmall8", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 8 Number of large screens (76cm-250cm) in that area", section: "retail", element: "retailscreenbig8", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 9 Name", section: "retail", element: "retailname9", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 9 Floor Space (up to 280m2)", section: "retail", element: "retailfloorsmall9", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 9 Floor Space (over 281m2)", section: "retail", element: "retailfloorbig9", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 9 Number of small screens (up to 75cm) in that area", section: "retail", element: "retailscreensmall9", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 9 Number of large screens (76cm-250cm) in that area", section: "retail", element: "retailscreenbig9", datatype: "0123", size: 6, mandatory: false},

	{tab: 3, name: "Area 10 Name", section: "retail", element: "retailname10", datatype: "ABC", size: 100, mandatory: false},
	{tab: 3, name: "Area 10 Floor Space (up to 280m2)", section: "retail", element: "retailfloorsmall10", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 10 Floor Space (over 281m2)", section: "retail", element: "retailfloorbig10", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 10 Number of small screens (up to 75cm) in that area", section: "retail", element: "retailscreensmall10", datatype: "0123", size: 6, mandatory: false},
	{tab: 3, name: "Area 10 Number of large screens (76cm-250cm) in that area", section: "retail", element: "retailscreenbig10", datatype: "0123", size: 6, mandatory: false},

    {tab: 6, name: "Number of venues",         section: "", element: "venuesnumber", datatype: "123", size: 3, mandatory: false},
	{tab: 4, name: "Number of external lines", section: "", element: "onholdnumber", datatype: "123", size: 6, mandatory: false},
    
	{tab: 5, name: "PPCA Licence/Reference Number", section: "", element: "gendetref", datatype: "ABC", size: 6, mandatory: false, skip: true},
	{tab: 5, name: "PPCA Licence/Reference Number", section: "", element: "gendetcommencement", datatype: "ABC", size: 50, mandatory: false, skip: true},
	{tab: 5, name: "Business name", section: "", element: "gendetbusname", datatype: "ABC", size: 100, mandatory: true, skip: true},

	{tab: 5, name: "ACN", section: "", element: "gendetacn1", datatype: "0123", size: 9, mandatory: false, skip: true},
	{tab: 5, name: "ACN", section: "", element: "gendetacn2", datatype: "0123", size: 9, mandatory: false, skip: true},
	{tab: 5, name: "ACN", section: "", element: "gendetacn3", datatype: "0123", size: 9, mandatory: false, skip: true},

	{tab: 5, name: "ABN", section: "", element: "gendetabn1", datatype: "0123", size: 11, mandatory: false, skip: true},
	{tab: 5, name: "ABN", section: "", element: "gendetabn2", datatype: "0123", size: 11, mandatory: false, skip: true},
	{tab: 5, name: "ABN", section: "", element: "gendetabn3", datatype: "0123", size: 11, mandatory: false, skip: true},
	{tab: 5, name: "ABN", section: "", element: "gendetabn4", datatype: "0123", size: 11, mandatory: false, skip: true},

	{tab: 5, name: "Liquor Licence number", section: "", element: "gendetliquor", datatype: "ABC", size: 10, mandatory: false, skip: true},
	
	{tab: 5, name: "Business Postal Address 1", section: "", element: "gendetaddress1", datatype: "ABC", size: 100, mandatory: true, skip: true},
	{tab: 5, name: "Business Postal Address 2", section: "", element: "gendetaddress2", datatype: "ABC", size: 100, mandatory: false, skip: true},
	{tab: 5, name: "Business Postal Suburb", section: "", element: "gendetsuburb1", datatype: "ABC", size: 100, mandatory: true, skip: true},

	{tab: 5, name: "Business Postal State", section: "", element: "gendetstate", datatype: "ABC", size: 3, mandatory: true, skip: true},
	{tab: 5, name: "Business Postal Postcode", section: "", element: "gendetpostcode", datatype: "0123", size: 4, mandatory: true, skip: true},
	
	{tab: 5, name: "Business Telephone 1", section: "", element: "gendettelephone1", datatype: "0123", size: 10, mandatory: true, skip: true},
	{tab: 5, name: "Business Telephone 2", section: "", element: "gendettelephone2", datatype: "0123", size: 10, mandatory: true, skip: true},
	{tab: 5, name: "Business Telephone 3", section: "", element: "gendettelephone3", datatype: "0123", size: 10, mandatory: true, skip: true},

	{tab: 5, name: "Business Facsimile 1", section: "", element: "gendetfacsimile1", datatype: "0123", size: 10, mandatory: false, skip: true},
	{tab: 5, name: "Business Facsimile 2", section: "", element: "gendetfacsimile2", datatype: "0123", size: 10, mandatory: false, skip: true},
	{tab: 5, name: "Business Facsimile 3", section: "", element: "gendetfacsimile3", datatype: "0123", size: 10, mandatory: false, skip: true},

	{tab: 5, name: "Business Mobile 1", section: "", element: "gendetmobile1", datatype: "0123", size: 10, mandatory: false, skip: true},
	{tab: 5, name: "Business Mobile 2", section: "", element: "gendetmobile2", datatype: "0123", size: 10, mandatory: false, skip: true},
	{tab: 5, name: "Business Mobile 3", section: "", element: "gendetmobile3", datatype: "0123", size: 10, mandatory: false, skip: true},

	{tab: 5, name: "Business Email", section: "", element: "gendetemail", datatype: "ABC", size: 100, mandatory: false, skip: true},
	{tab: 5, name: "Website", section: "", element: "gendetwebsite", datatype: "ABC", size: 100, mandatory: false, skip: true},
	
	{tab: 5, name: "Premise / Trading Name", section: "", element: "gendettradingname", datatype: "ABC", size: 100, mandatory: true, skip: true},
	
	{tab: 5, name: "Premise Address 1", section: "", element: "gendetaddress4", datatype: "ABC", size: 100, mandatory: true, skip: true},
	{tab: 5, name: "Premise Address 2", section: "", element: "gendetaddress5", datatype: "ABC", size: 100, mandatory: false, skip: true},
	{tab: 5, name: "Premise Suburb", section: "", element: "gendetsuburb2", datatype: "ABC", size: 100, mandatory: true, skip: true},
	{tab: 5, name: "Premise State", section: "", element: "gendetstate1", datatype: "ABC", size: 3, mandatory: true, skip: true},
	{tab: 5, name: "Premise Postcode", section: "", element: "gendetpostcode1", datatype: "0123", size: 4, mandatory: true, skip: true},
	
	{tab: 5, name: "Premise Telephone 1", section: "", element: "gendettelephone11", datatype: "0123", size: 10, mandatory: true, skip: true},
	{tab: 5, name: "Premise Telephone 2", section: "", element: "gendettelephone12", datatype: "0123", size: 10, mandatory: true, skip: true},
	{tab: 5, name: "Premise Telephone 3", section: "", element: "gendettelephone13", datatype: "0123", size: 10, mandatory: true, skip: true},

	{tab: 5, name: "Premise Facsimile 1", section: "", element: "gendetfacsimile11", datatype: "0123", size: 10, mandatory: false, skip: true},
	{tab: 5, name: "Premise Facsimile 2", section: "", element: "gendetfacsimile12", datatype: "0123", size: 10, mandatory: false, skip: true},
	{tab: 5, name: "Premise Facsimile 3", section: "", element: "gendetfacsimile13", datatype: "0123", size: 10, mandatory: false, skip: true},

	{tab: 5, name: "Premise Mobile 1", section: "", element: "gendetmobile11", datatype: "0123", size: 10, mandatory: false, skip: true},
	{tab: 5, name: "Premise Mobile 2", section: "", element: "gendetmobile12", datatype: "0123", size: 10, mandatory: false, skip: true},
	{tab: 5, name: "Premise Mobile 3", section: "", element: "gendetmobile13", datatype: "0123", size: 10, mandatory: false, skip: true},

	{tab: 5, name: "Premise Email", section: "", element: "gendetemail1", datatype: "ABC", size: 100, mandatory: false, skip: true},
	{tab: 5, name: "Contact Person", section: "", element: "gendetcontact", datatype: "ABC", size: 100, mandatory: true, skip: true},
	{tab: 5, name: "Job Title / Position", section: "", element: "gendetjobtitle", datatype: "ABC", size: 30, mandatory: true, skip: true},
	{tab: 5, name: "I / We agree To Terms and Conditions", section: "", element: "gendetterms", datatype: "CH", mandatory: true, skip: true}
	
);

sections = new Array(
	{tab: 4, section: ''},
	{tab: 6, section: ''},
	{tab: 2, section: 'soundgen'},
	{tab: 2, section: 'event', size:1, position: 5},
	{tab: 2, section: 'cinema'},
	{tab: 2, section: 'dance'},
	{tab: 2, section: 'live'},
	{tab: 2, section: 'disco', size:1, position: 2},
	{tab: 2, section: 'mobile'},
	{tab: 2, section: 'hall', size: 1, position: 2},
	{tab: 2, section: 'office'},
	{tab: 2, section: 'jukebox'},
	{tab: 2, section: 'pool'},
	{tab: 2, section: 'comm', size: 1, position: 3},
	{tab: 2, section: 'shopping'},
	{tab: 2, section: 'vehicle'},
	{tab: 2, section: 'restaurant_t1', size: 1, position: 2},
	{tab: 2, section: 'sport'},
	{tab: 2, section: 'outdoor'},
	{tab: 2, section: 'skating'},
	{tab: 2, section: 'fitness'},
	{tab: 2, section: 'concert', size: 1, position: 2},
	{tab: 2, section: 'conference'},
	{tab: 2, section: 'bars', size: 1, position: 2},
	{tab: 2, section: 'dparties'},

	{tab: 3, section: 'videodisco'},
	{tab: 3, section: 'videojukeboxop'},
	{tab: 3, section: 'electrical'},
	{tab: 3, section: 'videoscreen', size: 1, position: 2},
	{tab: 3, section: 'videojbox'},
	{tab: 3, section: 'videovehicle'},
	{tab: 3, section: 'retail', size: 1, position: 2},

	{tab: 2, section: 'jboxop' },
	{tab: 2, section: 'restaurant_t2', size: 1, position: 2});

sections_changed = new Array();

tabs = new Array('instructionstab','soundtab','musicvideotab','musicholdtab','generaltab','businesscopyingtab');
errors = [];

asabove = new Array(
	{element1: "gendetaddress4", element2: "gendetaddress1"},
	{element1: "gendetaddress5", element2: "gendetaddress2"},
	{element1: "gendetsuburb2", element2: "gendetsuburb1"},
	{element1: "gendetstate1", element2: "gendetstate"},
	{element1: "gendetpostcode1", element2: "gendetpostcode"},
	{element1: "gendettelephone11", element2: "gendettelephone1"},
	{element1: "gendettelephone12", element2: "gendettelephone2"},
	{element1: "gendettelephone13", element2: "gendettelephone3"},
	{element1: "gendetfacsimile11", element2: "gendetfacsimile1"},
	{element1: "gendetfacsimile12", element2: "gendetfacsimile2"},
	{element1: "gendetfacsimile13", element2: "gendetfacsimile3"},
	{element1: "gendetmobile11", element2: "gendetmobile1"},
	{element1: "gendetmobile12", element2: "gendetmobile2"},
	{element1: "gendetmobile13", element2: "gendetmobile3"},
	{element1: "gendetemail1", element2: "gendetemail"}
);

function CalcSum(name1, name2, name3) {
	var value1 = parseInt(document.getElementById(name1).value);
	var value2 = parseInt(document.getElementById(name2).value);
	var value3 = 0;
	if(!(value1 > 0))
		value1 = 0;
	if(!(value2 > 0))
		value2 = 0;
	var value3 = value2 - value1;
	if (value3 < 0) value3 = 0;
	document.getElementById(name3).value = value3.toString();
	document.getElementById(name3).disabled = true;
	return true;
}

function VideoVehiclesChange() {
	document.getElementById('videovehicleadditional').disabled = true;
	return CalcSum('videovehiclenumberofvehicles', 'videovehiclenumberofscreens', 'videovehicleadditional');
}

function VideoVehiclesChange1() {
	return CalcSum('videovehiclenumberofvehicles20', 'videovehiclenumberofscreens20', 'videovehicleadditional20');
}

function VideoVehiclesChange2() {
	return CalcSum('videovehiclenumberofvehicles21', 'videovehiclenumberofscreens21', 'videovehicleadditional21');
}

function VideoVehiclesChange3() {
	return CalcSum('videovehiclenumberofvehicles51', 'videovehiclenumberofscreens51', 'videovehicleadditional51');
}

function VideoVehiclesChange4() {
	return CalcSum('videovehiclenumberofvehicles120', 'videovehiclenumberofscreens120', 'videovehicleadditional120');
}

function ValidateEmail() {
	var email = document.getElementById('email').value;
	var result =  (email.indexOf(".") > 2) && (email.indexOf("@") > 0);
	if(result) return true;
	alert("Please specify correct email address and click \"Send PDF\" button");
	return false;
}

function AsAboveClick() {
	var i;
	var checked = document.getElementById('asabove').checked
	if(checked) {
		for(i=0; i < asabove.length ;i++) {
			document.getElementById(asabove[i].element1).value = document.getElementById(asabove[i].element2).value;
		}
	}
	for(i=0; i < asabove.length ;i++)
		document.getElementById(asabove[i].element1).disabled = checked;
}

function TypeAsAbove(el) {
	var checked = document.getElementById('asabove').checked
	var value = el.value;
	var name = el.name;
	if(checked) {
		for(i=0; i < asabove.length ;i++)
			if(name == asabove[i].element2) 
				document.getElementById(asabove[i].element1).value = document.getElementById(asabove[i].element2).value;
	}
}

function InformationNext() {
	confirmed = true;
	TabChange(2, true);
	return false;
}

function addRow(sectionindex, divcontainer, pos) {
	var td1, el;
	var div = document.getElementById(divcontainer);
	var table = div.getElementsByTagName("TABLE")[0]
	var tableBody = table.getElementsByTagName("TBODY")[0];
	var newIndex;
	
	newIndex = sections[sectionindex].size + 1;
	
	if (newIndex > 10) return false;
	var trs = tableBody.getElementsByTagName("TR");
	var tr;
	if (pos == undefined) {
	    tr = trs[sections[sectionindex].position];
	} else {
	    tr = trs[pos];
	}
	
	var addtr = trs[trs.length - 1];
	var tr1 = tr.cloneNode(true);

	var td, innerhtml;

	for (var i=0; i < tr1.childNodes.length;i++) {
		td = tr1.childNodes[i];
		if (td.innerHTML != undefined){ 
			innerhtml = td.innerHTML;
			for (var j=0; j< innerhtml.length;j++) {
				if(innerhtml.substring(j, j+ 1) == "1") {
				    innerhtml = innerhtml.substring(0, j) + newIndex + innerhtml.substring(j + 1, innerhtml.length);
				    if (sectionindex == 15) {
				        innerhtml = innerhtml.replace('_t' + newIndex, '_t1');
				    }
				    if (sectionindex == 32) {
				        innerhtml = innerhtml.replace('_t' + newIndex, '_t2');
				    }
					j++;
					j++;
				}
			}
		}
		td.innerHTML = innerhtml;
	}

	var newTr = tr.parentNode.insertBefore(tr1,addtr); //tr.lastSibling

	if(newIndex > 9)
		tr.parentNode.deleteRow(trs.length - 1);

	// clear values if there were some
	for (var i=0; i < newTr.childNodes.length;i++) {
		td1 = newTr.childNodes[i];
		if (td1) {
			for (var j=0; j < td1.childNodes.length;j++) {
				el = td1.childNodes[j];
				if(el && (el.type == "text")){
					el.value = "";
					el.className = "";
				}
			}
		}
	}
//	if(sectionindex == 28)
	//		RetailChange(newIndex); // fix the VideoRetail radio button and the edit boxes

	if ((sectionindex == 15 || sectionindex == 32) && pos != 4) {
	    addRow(sectionindex, divcontainer, 4);
	}
	
	if(pos == undefined)
		sections[sectionindex].size = newIndex; 
	else
		sections[sectionindex].size1 = newIndex; 
	return false;
}

function FixHighlighting() {
	var el;
	var showerror;
	// fix open/close action for checkboxes
	for(var i=0;i<recordsform.length;i++) {
		el = document.getElementById(recordsform[i].element);
		if(el) {
			if(recordsform[i].datatype == "CH") {
				el.checked = false;
			} else {
				if(el) el.value = "";
			}
/*		
			if(recordsform[i].datatype == "CH") {
				el = document.getElementById(recordsform[i].element);
				if(el.onclick) el.onclick();
			}
*/
		}
	}
	// fix highlighting
	showerror = true;
	for(var i=0; i<sections.length;i++)
		if(sections[i].section != "") {
			//OpenSection(sections[i]);
			if(!CloseSection(sections[i], false, showerror, false)) showerror = false;
		}
	return showerror;
}

function ErrorMessage(){
	var errcount = errors.length;
	var errorMessage = "Please correct the following errors: \n ----------------------------------------------------------------\n";
	var wrongMessage = "";
	var emptyMessage = "";
	var errorel = null;
	if(errcount == 0) return;
	for(var i=0;i<errcount;i++) {
		errorel = errors[i];
		if(errorel.error == 'WRONG') {
			wrongMessage = wrongMessage + errorel.name + "\n";
		}
		if(errorel.error == 'EMPTY') {
			emptyMessage = emptyMessage + errorel.name + "\n";
		}
	}
	if(wrongMessage != "") 
		errorMessage = errorMessage + "Incorrect format:\n" + wrongMessage;
	if(wrongMessage != "" && emptyMessage != "") 
		errorMessage = errorMessage + "----------------------------------------------------------------\n";
	if(emptyMessage != "") 
		errorMessage = errorMessage + "Compulsory fields:\n" + emptyMessage;

	alert(errorMessage);
}

function ShowHide(options) {
	var optionslist = options.split("|");
	var optionlist = null;
	var div = null;
	var criteria = null;
	var criterion = null;
	var criterionlist = null;
	var enabled = false;
	var children = null;
	for(var i=0;i<optionslist.length;i++) {
		optionlist = optionslist[i].split("-");
		if(optionlist.length != 2) continue; // wrong parameters
		div = document.getElementById(optionlist[0]);
		if(!div) continue; // div does not exist
		criterion = optionlist[1];
		criterionlist = criterion.split(",");
		enabled = false;
		for(var j=0;j<criterionlist.length;j++) {
			criteria = document.getElementById(criterionlist[j]);
			if(!criteria) continue; // checkbox does not exist
			if(criteria.checked) enabled = true;
		}
		div.style.display = enabled?"block":"none";
		if(div.style.display == "block") continue; // do not erase values if shown
		children = div.getElementsByTagName("INPUT");
		for(var j=0;j<children.length;j++)
			children[j].value = "";
	}
}

function CheckValidEntry(el) {
	var errorel = new Object();
	var elem = document.getElementById(el.element);
	if(!elem) return true;
	var value = elem.value.trim();
	if(el.section != "")
		var section_ch = sections_changed[el.section]; // check if the section was touched by the user
	else
		var section_ch = true;
	var depend = true;
	if(el.dependency) {
		depend = false;
		var dependlist = el.dependency.split(",");
		for(i=0;i<dependlist.length;i++) {
			if(document.getElementById(dependlist[i]).type == "checkbox" && document.getElementById(dependlist[i]).checked)
				depend = true;
			if(document.getElementById(dependlist[i]).type == "text" && document.getElementById(dependlist[i]).value.trim() != "")
				depend = true;
		}
	}		
	if(el.datatype == 'CH' && section_ch && el.mandatory && !elem.checked){
		errorel.name = el.name;
		errorel.datatype = el.datatype;
		errorel.tab = el.tab;
		errorel.section = el.section;
		errorel.element = el.element;
		errorel.size = el.size;
		errorel.mandatory = el.mandatory;
		errorel.error = 'EMPTY';
		errors.push(errorel);
		return;
	}
	if(value == '' && section_ch && el.mandatory && depend) {
		errorel.name = el.name;
		errorel.datatype = el.datatype;
		errorel.tab = el.tab;
		errorel.section = el.section;
		errorel.element = el.element;
		errorel.size = el.size;
		errorel.mandatory = el.mandatory;
		errorel.error = 'EMPTY';
		errors.push(errorel);
		return;
	}
	var valid = 0;
	switch(el.datatype) {
		case 'ABC':
			// search for a wrong character
			valid = value.search(/[^!''\/\\\ \,\.\*\|\:\;\@\#\$\%\^\&\(\)\[\]\{\}\?a-zA-Z0-9_\&\+\-]/);
			break;
		case '123':
			// search for a wrong character
			valid = value.search(/[^0-9]/);
			if(value != "" && !parseInt(value)) valid = 0;
			break;
		case '0123': 
			// search for a wrong character
			valid = value.search(/[^0-9]/);
			break;
		case 'CH': 
			// search for a wrong character
			valid = -1;
			break;
	}
	// if found return -1
	valid = (valid==-1)?0:-1;
	if(valid == -1) {
		errorel.name = el.name;
		errorel.datatype = el.datatype;
		errorel.tab = el.tab;
		errorel.section = el.section;
		errorel.element = el.element;
		errorel.size = el.size;
		errorel.mandatory = el.mandatory;
		errorel.error = 'WRONG';
		errors.push(errorel);
		return;
	}
}

function RemoveSectionsHighLighting() {
	for(var i=0; i<sections.length;i++)
		if(sections[i].section != "")
			document.getElementById("title-" + sections[i].section).className = "unchanged";
}

function HighLightSection(sectionname, error) {
	if(sectionname == "") {
		if(error) HighLightErrorElements();
		return;
	}
	var title = document.getElementById('title-'+sectionname);
	var changed = sections_changed[sectionname];
	if(!title) return;
	if(error) HighLightErrorElements();
	else
		title.className = changed?"changed":"unchanged";
	return;
}

function RemoveEntryHighLighting(section) {
	var children = [];
	var children1 = [];
	var children2 = [];
	if(section) { //clear a certain list of elements
		for(var i=0;i<recordsform.length;i++) {
			if(recordsform[i].section == section && !recordsform[i].skip) {
				el = document.getElementById(recordsform[i].element);
				if(el) children.push(el);
			}
		}
	} else { // clear all the INPUT elements
		children1 = document.getElementsByTagName("INPUT");
		children2 = document.getElementsByTagName("SELECT");
		for(var i=0;i<children1.length;i++)
			children.push(children1[i])
		for(var i=0;i<children2.length;i++)
			children.push(children2[i])
	}

	if(children.length == 0) return;
	for(var i=0;i<children.length;i++) {
		if(children[i].className == "errornous-frame")
			children[i].className = "";
	}
	document.getElementById('gendetstatespan').className = '';
	document.getElementById('gendetstate1span').className = '';
	document.getElementById('gendettermsspan').className = '';
}

function HighLightErrorElements() {
	for(var i=0;i<errors.length;i++) {
		title = document.getElementById('title-'+errors[i].section);
		elem = document.getElementById(errors[i].element);
		if(title)
			title.className = "errornous-bold";
		if(elem) 
			if(errors[i].element == "gendetstate")
				document.getElementById('gendetstatespan').className = "borderspan1";
			else if(errors[i].element == "gendetstate1")
				document.getElementById('gendetstate1span').className = "borderspan1";
			else if(errors[i].element == "gendetterms")
				document.getElementById('gendettermsspan').className = "borderspan";
			else
				elem.className = "errornous-frame";
	}
}

function ErrorProcessing() {
	//alert("error processed");
	RemoveSectionsHighLighting();
	RemoveEntryHighLighting();
	var errcount = errors.length;
	if(errcount == 0) return true;
	var error_tab = errors[0].tab;
	var error_section = errors[0].section;
	var title = null;
	var elem = null;
	HighLightErrorElements();
	ErrorMessage();
	var errorSection = new Object();
	errorSection.section = errors[0].section;
	errorSection.tab = errors[0].tab;
	TabChange(error_tab, true);
	if(errorSection.section != "")
		OpenSection(errorSection, true);
	return false;
}

function ErrorProcessingSection(el) {
	var errcount = errors.length;
	if(errcount == 0) return true;
	TabChange(el.tab, true);
	OpenSection(el, true);
	return false;
}

function CheckValidSection(el) {
	errors = [];
	for(var i=0;i<recordsform.length;i++)
		if(recordsform[i].section == el.section && !recordsform[i].skip)
			CheckValidEntry(recordsform[i]);
	return ErrorProcessingSection(el);
}


function FixDisabledItems() {
	if(!sections_changed['retail']) {
		document.getElementById('retailfloor1a').disabled = true;
		document.getElementById('retailfloor1b').disabled = true;
	}

	document.getElementById('videovehicleadditional').disabled = false;
	document.getElementById('videovehicleadditional20').disabled = false;
	document.getElementById('videovehicleadditional21').disabled = false;
	document.getElementById('videovehiclenumberofvehicles51').disabled = false;
	document.getElementById('videovehiclenumberofvehicles120').disabled = false;

	var arrow;
	var area;
	var title;
		
	// enable all the sections and tabs so that in Safari the file inputs get submitted.
	for(var i=0; i<sections.length;i++) {
		el = sections[i];
		if(el.section != "") {
			area = document.getElementById('area-'+el.section);
			area.style.display = "block";

		}
	}
	for(var i=0;i<tabs.length;i++) {
		if((i!= 0) && (i!=(tabs.length - 1))) {
			tab = document.getElementById(tabs[i]);
			tab.style.overflow = 'hidden';
			tab.style.display = 'block';
			tab.style.height = '0px';
		}
	}
}

function SubmitLicenceForm() {
	var noerror = false;
	errors = [];
	for(var i=0;i<recordsform.length;i++)
		CheckValidEntry(recordsform[i]);

	noerror =  ErrorProcessing();
	if(noerror) {
		var answer = confirm ("No changes can be made beyond this point.\nAre you sure you want to proceed?")
		if (answer) {
			if(document.getElementById('asabove').checked) {
				document.getElementById('asabove').checked = false;
				AsAboveClick();
			}
			FixDisabledItems();
			return true;
		} else 
			return false;
	} else return noerror;
}

function CheckSectionLessAreas() {
	var error = false;
	RemoveEntryHighLighting(""); // empty section
	// validate the section
	if (!CheckValidSection(sections[0])) {
		error = true; // do not go ahead
	} else {
		error = false;
	}
	var errcount = errors.length;
	HighLightSection("", error); // highlight the section appropriately

	if(error) ErrorMessage();
	// close the section
	return !error;
}

function CloseAllSections(exceptsectionname, noerrorvalidation) {
	for(var i=0; i<sections.length;i++)
		if(sections[i].section != exceptsectionname && sections[i].section != "") 
			if(!CloseSection(sections[i], noerrorvalidation, true, true))
				return false; // at lest one section cannot be closed. Error
	return true; // all sections closed successfully
}
	
function CheckNotEmpty(sectionname){
	var el = null;
	for(var i=0;i<recordsform.length;i++) {
		if(recordsform[i].section == sectionname) {
			el = document.getElementById(recordsform[i].element);
			if(!el) continue;
			if(((el.type== "text") || (el.type== "file")) && (el.value.trim() != ""))
				return true;
			if((el.type == "checkbox") && (el.checked))
				return true;
		}
	}
	return false;
}

function CheckEmptySections() {
	for(var i=1;i<sections.length;i++)
		if(CheckNotEmpty(sections[i].section)) // changed.
			return true;
	
	var el = document.getElementById("onholdnumber"); // check the standalone element in On Hold
	if(!el) false;
	if(el.value.trim() != "")
		return true;
	//Jahangir -- 20100203	
	var e2 = document.getElementById("venuesnumber"); // check the standalone element in business 
	if(!e2) false;
	if(e2.value.trim() != "")
		return true;
		
	return false; // return that all the sections are empty
}


function CloseSection(el, noerrorvalidation, showerror, coldclose){
	var changed = false;
	var error = false;
	var arrow = document.getElementById('arrow-'+el.section);
	var area = document.getElementById('area-'+el.section);
	if(coldclose && area.style.display == "none") return !error;
	changed = CheckNotEmpty(el.section);
	sections_changed[el.section] = changed; // mark that the section is changed or not
	RemoveEntryHighLighting(el.section);
	// validate the section
	if (!noerrorvalidation && !CheckValidSection(el)) {
		error = true; // do not close the section
	} else {
		error = false;
		area.style.display = "none"; // show the section
		arrow.className = "right";
	}
	var errcount = errors.length;
	HighLightSection(el.section, error); // highlight the section appropriately

	if(error && showerror) ErrorMessage();
	return !error;
}

function OpenSection(el, noerrorvalidation){
	if(el.section == "") return; // no section in this tab
	var arrow = document.getElementById('arrow-'+el.section);
	var area = document.getElementById('area-'+el.section);
	var title = document.getElementById('title-'+el.section);
	if(CloseAllSections(el.section, noerrorvalidation)) {
		area.style.display = "block";
		arrow.className = "down";
	}
}

function ExpandSection(sectionname) { // onclick event
	var el = null;
	for(var i=0;i<sections.length;i++)
		if(sections[i].section == sectionname) {
			el = sections[i];
			break;
		}
	if(!el) return;
	if(document.getElementById('area-'+el.section).style.display == "none")
		OpenSection(el);
	else
		CloseSection(el, false, true, true);
	return false;
}
//Jahangir -- modified 20090203, Removed tab -long class, as all tabs are similar size that class 
//is no longer necessary
function TabChange(tabN, noerrorvalidation) {
	if(!noerrorvalidation && !CloseAllSections("", noerrorvalidation)) return false;
	if(!noerrorvalidation && !CheckSectionLessAreasV2()) return false;
	if(tabN > 1 && !noerrorvalidation && !confirmed) {
		alert("Please read the instructions and press Next");
		return false;
	}
	if(tabN == 5 && !noerrorvalidation && !CheckEmptySections()) {
		alert("Please complete step 2 first");
		return false;
	}
	if(!(el = document.getElementById('tab' + tabN))) return false;
	for(var i=0;i<tabs.length;i++)
		if(i!= (tabN - 1)) {
			document.getElementById('tab' + (i + 1)).className = 'inactive';
			document.getElementById(tabs[i]).className = 'tab invisible';
		}
	document.getElementById('tab' + tabN).className = 'active';
	document.getElementById(tabs[tabN - 1]).className = 'tab chosen';
	document.getElementById(tabs[tabN - 1]).blur();
	return false;
}

//jahangir 2/3/2010
/*
following functions with v2 are rewritten 
error processing section was opening tab4 as it was the first item of the array 
correct procedure will be open the tab with erroes from error array
Note: V2 functions are almost similar except the tabchange for error processing
*/
function CheckSectionLessAreasV2() {
	var error = false;
	RemoveEntryHighLighting(""); // empty section
	// validate the section
	if (!CheckValidSectionV2(sections[0])) {
		error = true; // do not go ahead
	} else {
		error = false;
	}
	var errcount = errors.length;
	HighLightSection("", error); // highlight the section appropriately

	if(error) {
		if (errcount > 0)
			TabChange(errors[0].tab, true);
		ErrorMessage();
	}
	// close the section
	return !error;
}
//Jahangir 2/3/2010
function CheckValidSectionV2(el) {
	errors = [];
	for(var i=0;i<recordsform.length;i++)
		if(recordsform[i].section == el.section && !recordsform[i].skip)
			CheckValidEntry(recordsform[i]);
	return ErrorProcessingSection2(el);
}
//jahangir 2/3/2010
function ErrorProcessingSection2(el) {
	var errcount = errors.length;
	if(errcount == 0) return true;
	return false;
}
