		var localSearch = new GlocalSearch();

		var ukmain = new GPolygon([new GLatLng(52.56433,3.20801), new GLatLng(50.91827,1.45020), new GLatLng(49.65483,-5.22949), new GLatLng(50.33284,-6.41602), new GLatLng(53.72402,-4.59229), new GLatLng(54.49684,-3.88916), new GLatLng(54.48408,-5.00977), new GLatLng(55.06012,-5.54810), new GLatLng(55.49815,-4.79004), new GLatLng(55.75247,-5.20752), new GLatLng(55.70576,-5.35034), new GLatLng(55.57866,-5.42175), new GLatLng(55.23247,-5.47119), new GLatLng(55.24500,-5.86121), new GLatLng(56.11218,-5.64148), new GLatLng(56.15503,-5.63049), new GLatLng(56.26502,-5.72937), new GLatLng(56.43243,-5.58655), new GLatLng(56.46886,-5.62500), new GLatLng(56.52647,-5.87769), new GLatLng(56.61121,-6.02051), new GLatLng(56.65487,-6.06995), new GLatLng(56.69561,-6.32263), new GLatLng(56.96909,-5.92712), new GLatLng(57.40221,-6.93512), new GLatLng(58.67437,-5.04822), new GLatLng(58.68008,-3.37280), new GLatLng(58.67151,-3.19153), new GLatLng(58.64565,-3.12836), new GLatLng(58.65994,-3.02948), new GLatLng(57.57507,-1.46667), new GLatLng(52.56433,3.20801),], null, 0, 0.1, "#aaaaff", 0.2 );

		var nwin = new GPolygon([new GLatLng(53.76564,-2.75208), new GLatLng(53.81999,-2.75620), new GLatLng(53.83296,-2.68341), new GLatLng(53.80134,-2.62573), new GLatLng(53.78106,-2.60376), new GLatLng(53.75671,-2.60513), new GLatLng(53.74534,-2.59689), new GLatLng(53.74128,-2.56119), new GLatLng(53.74209,-2.52960), new GLatLng(53.72828,-2.50351), new GLatLng(53.72503,-2.48703), new GLatLng(53.72991,-2.45682), new GLatLng(53.71528,-2.43347), new GLatLng(53.70553,-2.44858), new GLatLng(53.70146,-2.47330), new GLatLng(53.69658,-2.50763), new GLatLng(53.69658,-2.54745), new GLatLng(53.69496,-2.57904), new GLatLng(53.67463,-2.60239), new GLatLng(53.61764,-2.55295), new GLatLng(53.60379,-2.52686), new GLatLng(53.60379,-2.50214), new GLatLng(53.60379,-2.47879), new GLatLng(53.60868,-2.46094), new GLatLng(53.61683,-2.44446), new GLatLng(53.62009,-2.42661), new GLatLng(53.65347,-2.35382), new GLatLng(53.66812,-2.32910), new GLatLng(53.67707,-2.32224), new GLatLng(53.68764,-2.32910), new GLatLng(53.68764,-2.35382), new GLatLng(53.70065,-2.36343), new GLatLng(53.71691,-2.36206), new GLatLng(53.72341,-2.33871), new GLatLng(53.71772,-2.28241), new GLatLng(53.71284,-2.26456), new GLatLng(53.69415,-2.24808), new GLatLng(53.68276,-2.24396), new GLatLng(53.67463,-2.26456), new GLatLng(53.65428,-2.27417), new GLatLng(53.64045,-2.26456), new GLatLng(53.62497,-2.20139), new GLatLng(53.63475,-2.18216), new GLatLng(53.64207,-2.16156), new GLatLng(53.64370,-2.12585), new GLatLng(53.64452,-2.08328), new GLatLng(53.63556,-2.05307), new GLatLng(53.61194,-2.04346), new GLatLng(53.59564,-2.04208), new GLatLng(53.58668,-2.04895), new GLatLng(53.57689,-2.05032), new GLatLng(53.55977,-2.05994), new GLatLng(53.55242,-2.06268), new GLatLng(53.54018,-2.06131), new GLatLng(53.52957,-2.06955), new GLatLng(53.51161,-2.08328), new GLatLng(53.50181,-2.06955), new GLatLng(53.48139,-2.03384), new GLatLng(53.46913,-2.01462), new GLatLng(53.42987,-2.02148), new GLatLng(53.42005,-2.03934), new GLatLng(53.40859,-2.05170), new GLatLng(53.39631,-2.06818), new GLatLng(53.36928,-2.08054), new GLatLng(53.34879,-2.09564), new GLatLng(53.33157,-2.10114), new GLatLng(53.31270,-2.09976), new GLatLng(53.28234,-2.09564), new GLatLng(53.26180,-2.09564), new GLatLng(53.24619,-2.10663), new GLatLng(53.23222,-2.15195), new GLatLng(53.24784,-2.20276), new GLatLng(53.25359,-2.23984), new GLatLng(53.26016,-2.29065), new GLatLng(53.27084,-2.32498), new GLatLng(53.27412,-2.34283), new GLatLng(53.27905,-2.37579), new GLatLng(53.27823,-2.40601), new GLatLng(53.26345,-2.42798), new GLatLng(53.24537,-2.45544), new GLatLng(53.22482,-2.47055), new GLatLng(53.22236,-2.49252), new GLatLng(53.22236,-2.53784), new GLatLng(53.22153,-2.57767), new GLatLng(53.23880,-2.63123), new GLatLng(53.26345,-2.61200), new GLatLng(53.28398,-2.61200), new GLatLng(53.29711,-2.64771), new GLatLng(53.29055,-2.67380), new GLatLng(53.27495,-2.70813), new GLatLng(53.26427,-2.73148), new GLatLng(53.25277,-2.75894), new GLatLng(53.24784,-2.77405), new GLatLng(53.24208,-2.82074), new GLatLng(53.23715,-2.84546), new GLatLng(53.23387,-2.87155), new GLatLng(53.23304,-2.89902), new GLatLng(53.24784,-2.96219), new GLatLng(53.27330,-2.98141), new GLatLng(53.30450,-2.98416), new GLatLng(53.32173,-2.97592), new GLatLng(53.33485,-2.93884), new GLatLng(53.34803,-2.87910), new GLatLng(53.36155,-2.87498), new GLatLng(53.37057,-2.89078), new GLatLng(53.38122,-2.90932), new GLatLng(53.38450,-2.91412), new GLatLng(53.39719,-2.91481), new GLatLng(53.40742,-2.91481), new GLatLng(53.41643,-2.92099), new GLatLng(53.42666,-2.93198), new GLatLng(53.43484,-2.94708), new GLatLng(53.44016,-2.96631), new GLatLng(53.44466,-2.97112), new GLatLng(53.45365,-2.95601), new GLatLng(53.45774,-2.94228), new GLatLng(53.46633,-2.91069), new GLatLng(53.47695,-2.93266), new GLatLng(53.49820,-2.98210), new GLatLng(53.52515,-2.95738), new GLatLng(53.56146,-2.84889), new GLatLng(53.56758,-2.80975), new GLatLng(53.57288,-2.78091), new GLatLng(53.59081,-2.78023), new GLatLng(53.59937,-2.77748), new GLatLng(53.60059,-2.72255), new GLatLng(53.63318,-2.73079), new GLatLng(53.64987,-2.74864), new GLatLng(53.65923,-2.74864), new GLatLng(53.67021,-2.73491), new GLatLng(53.67753,-2.73628), new GLatLng(53.68160,-2.73560), new GLatLng(53.68567,-2.75070), new GLatLng(53.69949,-2.73834), new GLatLng(53.72916,-2.74040), new GLatLng(53.74865,-2.77954), new GLatLng(53.76408,-2.77954), new GLatLng(53.76564,-2.75208), new GLatLng(53.61322,-2.75826),], null, 0, 0.1, "#aaaaff", 0.2 );

		var cc1 = new GPolygon([new GLatLng(51.51414,-0.22061), new GLatLng(51.51484,-0.22018), new GLatLng(51.51529,-0.21934), new GLatLng(51.51540,-0.21786), new GLatLng(51.51560,-0.21646), new GLatLng(51.51592,-0.21520), new GLatLng(51.51705,-0.21198), new GLatLng(51.51795,-0.20814), new GLatLng(51.51959,-0.20522), new GLatLng(51.52082,-0.20333), new GLatLng(51.52131,-0.20129), new GLatLng(51.52115,-0.19848), new GLatLng(51.52020,-0.19537), new GLatLng(51.51955,-0.19243), new GLatLng(51.51919,-0.18662), new GLatLng(51.51804,-0.18640), new GLatLng(51.51687,-0.18649), new GLatLng(51.51787,-0.18295), new GLatLng(51.51720,-0.18230), new GLatLng(51.51760,-0.18046), new GLatLng(51.51489,-0.17638), new GLatLng(51.51815,-0.17048), new GLatLng(51.51705,-0.16879), new GLatLng(51.51769,-0.16750), new GLatLng(51.51335,-0.16098), new GLatLng(51.51322,-0.16237), new GLatLng(51.51211,-0.16078), new GLatLng(51.51229,-0.15909), new GLatLng(51.51002,-0.15750), new GLatLng(51.50636,-0.15306), new GLatLng(51.50570,-0.15233), new GLatLng(51.50446,-0.15246), new GLatLng(51.50401,-0.15248), new GLatLng(51.50381,-0.15166), new GLatLng(51.50344,-0.15156), new GLatLng(51.50330,-0.15252), new GLatLng(51.50312,-0.15286), new GLatLng(51.50219,-0.15250), new GLatLng(51.50143,-0.15158), new GLatLng(51.49957,-0.14874), new GLatLng(51.49824,-0.14752), new GLatLng(51.49586,-0.14580), new GLatLng(51.49396,-0.14718), new GLatLng(51.49297,-0.14439), new GLatLng(51.49415,-0.14287), new GLatLng(51.49440,-0.14160), new GLatLng(51.49373,-0.14068), new GLatLng(51.49214,-0.13739), new GLatLng(51.48859,-0.13012), new GLatLng(51.48779,-0.13081), new GLatLng(51.48685,-0.13134), new GLatLng(51.48635,-0.13259), new GLatLng(51.48566,-0.13598), new GLatLng(51.48506,-0.13932), new GLatLng(51.48513,-0.13877), new GLatLng(51.48509,-0.14008), new GLatLng(51.48566,-0.14344), new GLatLng(51.48596,-0.14617), new GLatLng(51.48597,-0.14909), new GLatLng(51.48589,-0.15061), new GLatLng(51.48362,-0.16610), new GLatLng(51.48369,-0.16716), new GLatLng(51.48359,-0.16769), new GLatLng(51.48327,-0.16849), new GLatLng(51.48186,-0.17610), new GLatLng(51.48048,-0.17814), new GLatLng(51.48032,-0.17973), new GLatLng(51.48443,-0.18415), new GLatLng(51.48435,-0.18424), new GLatLng(51.48648,-0.18692), new GLatLng(51.48936,-0.18984), new GLatLng(51.48987,-0.19014), new GLatLng(51.49070,-0.19076), new GLatLng(51.49113,-0.19108), new GLatLng(51.49214,-0.19237), new GLatLng(51.49269,-0.19342), new GLatLng(51.49435,-0.19492), new GLatLng(51.49610,-0.19647), new GLatLng(51.49506,-0.19966), new GLatLng(51.49523,-0.20142), new GLatLng(51.49548,-0.20224), new GLatLng(51.49703,-0.20387), new GLatLng(51.49880,-0.20595), new GLatLng(51.49900,-0.20621), new GLatLng(51.49929,-0.20728), new GLatLng(51.49980,-0.20750), new GLatLng(51.49999,-0.21009), new GLatLng(51.50429,-0.21574), new GLatLng(51.50453,-0.21563), new GLatLng(51.50507,-0.21586), new GLatLng(51.50525,-0.21653), new GLatLng(51.50742,-0.21795), new GLatLng(51.51088,-0.21921), new GLatLng(51.51412,-0.22052), new GLatLng(51.51414,-0.22061),], null, 0, 0.1, "#aaaaff", 0.4 );

		var cc2 = new GPolygon([new GLatLng(51.51511,-0.22258), new GLatLng(51.51517,-0.22197), new GLatLng(51.51513,-0.22161), new GLatLng(51.51497,-0.22136), new GLatLng(51.51474,-0.22115), new GLatLng(51.51451,-0.22109), new GLatLng(51.51430,-0.22123), new GLatLng(51.51407,-0.22142), new GLatLng(51.51395,-0.22156), new GLatLng(51.51393,-0.22171), new GLatLng(51.51511,-0.22258),], null, 0, 0.1, "#aaaaff", 0.4 );

		var cc3 = new GPolygon([new GLatLng(51.51580,-0.22170), new GLatLng(51.51570,-0.22198), new GLatLng(51.51564,-0.22297), new GLatLng(51.51796,-0.22498), new GLatLng(51.52098,-0.22853), new GLatLng(51.52110,-0.22829), new GLatLng(51.52126,-0.22827), new GLatLng(51.52187,-0.22695), new GLatLng(51.52199,-0.22643), new GLatLng(51.52218,-0.22650), new GLatLng(51.52477,-0.22638), new GLatLng(51.52455,-0.21431), new GLatLng(51.52581,-0.21507), new GLatLng(51.52592,-0.21490), new GLatLng(51.52600,-0.21489), new GLatLng(51.52607,-0.21493), new GLatLng(51.52612,-0.21502), new GLatLng(51.52666,-0.21534), new GLatLng(51.52680,-0.21372), new GLatLng(51.52682,-0.21290), new GLatLng(51.52668,-0.21103), new GLatLng(51.52648,-0.20947), new GLatLng(51.52630,-0.20839), new GLatLng(51.52608,-0.20686), new GLatLng(51.52580,-0.20615), new GLatLng(51.52528,-0.20565), new GLatLng(51.52383,-0.20449), new GLatLng(51.52343,-0.20403), new GLatLng(51.52317,-0.20344), new GLatLng(51.52201,-0.19971), new GLatLng(51.52176,-0.19927), new GLatLng(51.52179,-0.20005), new GLatLng(51.52176,-0.20111), new GLatLng(51.52173,-0.20135), new GLatLng(51.52160,-0.20218), new GLatLng(51.52153,-0.20246), new GLatLng(51.52142,-0.20290), new GLatLng(51.52124,-0.20347), new GLatLng(51.52093,-0.20416), new GLatLng(51.52063,-0.20473), new GLatLng(51.51939,-0.20638), new GLatLng(51.51917,-0.20665), new GLatLng(51.51885,-0.20720), new GLatLng(51.51849,-0.20790), new GLatLng(51.51837,-0.20826), new GLatLng(51.51821,-0.20873), new GLatLng(51.51743,-0.21226), new GLatLng(51.51625,-0.21568), new GLatLng(51.51610,-0.21627), new GLatLng(51.51596,-0.21687), new GLatLng(51.51597,-0.21723), new GLatLng(51.51580,-0.21940), new GLatLng(51.51587,-0.21981), new GLatLng(51.51603,-0.22024), new GLatLng(51.51611,-0.22049), new GLatLng(51.51614,-0.22072), new GLatLng(51.51613,-0.22095), new GLatLng(51.51608,-0.22119), new GLatLng(51.51600,-0.22140), new GLatLng(51.51591,-0.22156), new GLatLng(51.51580,-0.22170),], null, 0, 0.1, "#aaaaff", 0.4 );

		var cc4 = new GPolygon([new GLatLng(51.51819,-0.16721), new GLatLng(51.51911,-0.16605), new GLatLng(51.51924,-0.16591), new GLatLng(51.51972,-0.16570), new GLatLng(51.52000,-0.16557), new GLatLng(51.52006,-0.16558), new GLatLng(51.52045,-0.16535), new GLatLng(51.52066,-0.16514), new GLatLng(51.52162,-0.15970), new GLatLng(51.52045,-0.15917), new GLatLng(51.52087,-0.15683), new GLatLng(51.52202,-0.15736), new GLatLng(51.52293,-0.15245), new GLatLng(51.52320,-0.14897), new GLatLng(51.52336,-0.14798), new GLatLng(51.52314,-0.14776), new GLatLng(51.52293,-0.14736), new GLatLng(51.52285,-0.14706), new GLatLng(51.52280,-0.14667), new GLatLng(51.52281,-0.14633), new GLatLng(51.52287,-0.14597), new GLatLng(51.52303,-0.14556), new GLatLng(51.52322,-0.14529), new GLatLng(51.52349,-0.14510), new GLatLng(51.52366,-0.14504), new GLatLng(51.52387,-0.14505), new GLatLng(51.52393,-0.14464), new GLatLng(51.52391,-0.14432), new GLatLng(51.52329,-0.14426), new GLatLng(51.52335,-0.14408), new GLatLng(51.52367,-0.14352), new GLatLng(51.52385,-0.14295), new GLatLng(51.52385,-0.14263), new GLatLng(51.52412,-0.14128), new GLatLng(51.52477,-0.13836), new GLatLng(51.52472,-0.13816), new GLatLng(51.52459,-0.13796), new GLatLng(51.52427,-0.13778), new GLatLng(51.52526,-0.13548), new GLatLng(51.52549,-0.13575), new GLatLng(51.52561,-0.13554), new GLatLng(51.52720,-0.13077), new GLatLng(51.52731,-0.13041), new GLatLng(51.52743,-0.13029), new GLatLng(51.52801,-0.12883), new GLatLng(51.52801,-0.12870), new GLatLng(51.52823,-0.12806), new GLatLng(51.52967,-0.12436), new GLatLng(51.53031,-0.12304), new GLatLng(51.53049,-0.12263), new GLatLng(51.53055,-0.12239), new GLatLng(51.53052,-0.12195), new GLatLng(51.53051,-0.12167), new GLatLng(51.53042,-0.12125), new GLatLng(51.53033,-0.12104), new GLatLng(51.53019,-0.12083), new GLatLng(51.52929,-0.12011), new GLatLng(51.52911,-0.11999), new GLatLng(51.52859,-0.11953), new GLatLng(51.52936,-0.11567), new GLatLng(51.52974,-0.11572), new GLatLng(51.52992,-0.11560), new GLatLng(51.53061,-0.11483), new GLatLng(51.53134,-0.11397), new GLatLng(51.53144,-0.11290), new GLatLng(51.53146,-0.11226), new GLatLng(51.53155,-0.11111), new GLatLng(51.53175,-0.10960), new GLatLng(51.53182,-0.10702), new GLatLng(51.53185,-0.10634), new GLatLng(51.53185,-0.10609), new GLatLng(51.53177,-0.10568), new GLatLng(51.53160,-0.10542), new GLatLng(51.52969,-0.10245), new GLatLng(51.53074,-0.10175), new GLatLng(51.53069,-0.10149), new GLatLng(51.53070,-0.10142), new GLatLng(51.52826,-0.09190), new GLatLng(51.52771,-0.08980), new GLatLng(51.52752,-0.08911), new GLatLng(51.52739,-0.08875), new GLatLng(51.52726,-0.08858), new GLatLng(51.52698,-0.08832), new GLatLng(51.52666,-0.08812), new GLatLng(51.52603,-0.08783), new GLatLng(51.52593,-0.08798), new GLatLng(51.52581,-0.08809), new GLatLng(51.52571,-0.08816), new GLatLng(51.52564,-0.08813), new GLatLng(51.52550,-0.08807), new GLatLng(51.52542,-0.08795), new GLatLng(51.52535,-0.08778), new GLatLng(51.52530,-0.08762), new GLatLng(51.52530,-0.08743), new GLatLng(51.52534,-0.08718), new GLatLng(51.52537,-0.08714), new GLatLng(51.52546,-0.08703), new GLatLng(51.52556,-0.08696), new GLatLng(51.52566,-0.08685), new GLatLng(51.52574,-0.08669), new GLatLng(51.52612,-0.08519), new GLatLng(51.52617,-0.08475), new GLatLng(51.52614,-0.08414), new GLatLng(51.52604,-0.08364), new GLatLng(51.52592,-0.08337), new GLatLng(51.52475,-0.08109), new GLatLng(51.52454,-0.08078), new GLatLng(51.52431,-0.08041), new GLatLng(51.52353,-0.08044), new GLatLng(51.52361,-0.08018), new GLatLng(51.52365,-0.07943), new GLatLng(51.52367,-0.07934), new GLatLng(51.52279,-0.07792), new GLatLng(51.52273,-0.07757), new GLatLng(51.52267,-0.07744), new GLatLng(51.52117,-0.07553), new GLatLng(51.52028,-0.07455), new GLatLng(51.51919,-0.07457), new GLatLng(51.51860,-0.07454), new GLatLng(51.51839,-0.07451), new GLatLng(51.51823,-0.07439), new GLatLng(51.51820,-0.07434), new GLatLng(51.51716,-0.07348), new GLatLng(51.51548,-0.07208), new GLatLng(51.51538,-0.07208), new GLatLng(51.51522,-0.07211), new GLatLng(51.51504,-0.07258), new GLatLng(51.51500,-0.07274), new GLatLng(51.51483,-0.07319), new GLatLng(51.51465,-0.07364), new GLatLng(51.51455,-0.07381), new GLatLng(51.51445,-0.07390), new GLatLng(51.51429,-0.07388), new GLatLng(51.51421,-0.07385), new GLatLng(51.51401,-0.07367), new GLatLng(51.51344,-0.07345), new GLatLng(51.51303,-0.07333), new GLatLng(51.51227,-0.07321), new GLatLng(51.51186,-0.07313), new GLatLng(51.51148,-0.07305), new GLatLng(51.51138,-0.07312), new GLatLng(51.51131,-0.07320), new GLatLng(51.51128,-0.07332), new GLatLng(51.51128,-0.07349), new GLatLng(51.51128,-0.07492), new GLatLng(51.51123,-0.07504), new GLatLng(51.51112,-0.07521), new GLatLng(51.51105,-0.07524), new GLatLng(51.51095,-0.07523), new GLatLng(51.51058,-0.07510), new GLatLng(51.51027,-0.07502), new GLatLng(51.51020,-0.07496), new GLatLng(51.51004,-0.07488), new GLatLng(51.50983,-0.07458), new GLatLng(51.50968,-0.07437), new GLatLng(51.50927,-0.07395), new GLatLng(51.50897,-0.07403), new GLatLng(51.50862,-0.07409), new GLatLng(51.50728,-0.07435), new GLatLng(51.50706,-0.07443), new GLatLng(51.50681,-0.07458), new GLatLng(51.50448,-0.07620), new GLatLng(51.50368,-0.07670), new GLatLng(51.50310,-0.07708), new GLatLng(51.50303,-0.07718), new GLatLng(51.50293,-0.07735), new GLatLng(51.50293,-0.07755), new GLatLng(51.50311,-0.07825), new GLatLng(51.50283,-0.07841), new GLatLng(51.50235,-0.07764), new GLatLng(51.50203,-0.07786), new GLatLng(51.50138,-0.07814), new GLatLng(51.49770,-0.07987), new GLatLng(51.49757,-0.07999), new GLatLng(51.49745,-0.08024), new GLatLng(51.49664,-0.08217), new GLatLng(51.49651,-0.08237), new GLatLng(51.49634,-0.08260), new GLatLng(51.49621,-0.08278), new GLatLng(51.49598,-0.08302), new GLatLng(51.49534,-0.08388), new GLatLng(51.49513,-0.08426), new GLatLng(51.49494,-0.08456), new GLatLng(51.49481,-0.08477), new GLatLng(51.49470,-0.08499), new GLatLng(51.49477,-0.08510), new GLatLng(51.49482,-0.08523), new GLatLng(51.49485,-0.08539), new GLatLng(51.49489,-0.08552), new GLatLng(51.49492,-0.08568), new GLatLng(51.49494,-0.08584), new GLatLng(51.49493,-0.08602), new GLatLng(51.49488,-0.08618), new GLatLng(51.49481,-0.08627), new GLatLng(51.49475,-0.08635), new GLatLng(51.49465,-0.08639), new GLatLng(51.49455,-0.08641), new GLatLng(51.49449,-0.08645), new GLatLng(51.49443,-0.08650), new GLatLng(51.49438,-0.08666), new GLatLng(51.49437,-0.08682), new GLatLng(51.49431,-0.08976), new GLatLng(51.49427,-0.09212), new GLatLng(51.49423,-0.09223), new GLatLng(51.49421,-0.09432), new GLatLng(51.49421,-0.09455), new GLatLng(51.49427,-0.09492), new GLatLng(51.49501,-0.09850), new GLatLng(51.49505,-0.09877), new GLatLng(51.49511,-0.09911), new GLatLng(51.49517,-0.09953), new GLatLng(51.49528,-0.09980), new GLatLng(51.49556,-0.09993), new GLatLng(51.49562,-0.10001), new GLatLng(51.49569,-0.10020), new GLatLng(51.49571,-0.10040), new GLatLng(51.49571,-0.10068), new GLatLng(51.49568,-0.10086), new GLatLng(51.49561,-0.10107), new GLatLng(51.49554,-0.10115), new GLatLng(51.49542,-0.10125), new GLatLng(51.49527,-0.10129), new GLatLng(51.49515,-0.10133), new GLatLng(51.49507,-0.10133), new GLatLng(51.49488,-0.10125), new GLatLng(51.49481,-0.10116), new GLatLng(51.49475,-0.10095), new GLatLng(51.49474,-0.10085), new GLatLng(51.49351,-0.10079), new GLatLng(51.49343,-0.10083), new GLatLng(51.49331,-0.10086), new GLatLng(51.49322,-0.10090), new GLatLng(51.49313,-0.10096), new GLatLng(51.49302,-0.10101), new GLatLng(51.49292,-0.10109), new GLatLng(51.49263,-0.10148), new GLatLng(51.49236,-0.10192), new GLatLng(51.49209,-0.10233), new GLatLng(51.49193,-0.10255), new GLatLng(51.49169,-0.10285), new GLatLng(51.49160,-0.10296), new GLatLng(51.49149,-0.10309), new GLatLng(51.49140,-0.10333), new GLatLng(51.49129,-0.10374), new GLatLng(51.49119,-0.10427), new GLatLng(51.49102,-0.10524), new GLatLng(51.49091,-0.10578), new GLatLng(51.49084,-0.10605), new GLatLng(51.49073,-0.10637), new GLatLng(51.49039,-0.10705), new GLatLng(51.49001,-0.10776), new GLatLng(51.48988,-0.10811), new GLatLng(51.48934,-0.10998), new GLatLng(51.48924,-0.11038), new GLatLng(51.48916,-0.11054), new GLatLng(51.48908,-0.11073), new GLatLng(51.48879,-0.11114), new GLatLng(51.48843,-0.11148), new GLatLng(51.48812,-0.11171), new GLatLng(51.48795,-0.11178), new GLatLng(51.48756,-0.11216), new GLatLng(51.48742,-0.11233), new GLatLng(51.48720,-0.11278), new GLatLng(51.48710,-0.11309), new GLatLng(51.48706,-0.11333), new GLatLng(51.48702,-0.11382), new GLatLng(51.48700,-0.11479), new GLatLng(51.48697,-0.11598), new GLatLng(51.48695,-0.11616), new GLatLng(51.48692,-0.11646), new GLatLng(51.48650,-0.11914), new GLatLng(51.48631,-0.12059), new GLatLng(51.48626,-0.12109), new GLatLng(51.48628,-0.12133), new GLatLng(51.48628,-0.12156), new GLatLng(51.48630,-0.12219), new GLatLng(51.48630,-0.12295), new GLatLng(51.48634,-0.12320), new GLatLng(51.48644,-0.12346), new GLatLng(51.48650,-0.12363), new GLatLng(51.48649,-0.12378), new GLatLng(51.48653,-0.12398), new GLatLng(51.48663,-0.12439), new GLatLng(51.48676,-0.12482), new GLatLng(51.48687,-0.12517), new GLatLng(51.48691,-0.12528), new GLatLng(51.48694,-0.12536), new GLatLng(51.48695,-0.12544), new GLatLng(51.48831,-0.12843), new GLatLng(51.48850,-0.12890), new GLatLng(51.48855,-0.12892), new GLatLng(51.48977,-0.13155), new GLatLng(51.49021,-0.13248), new GLatLng(51.49018,-0.13254), new GLatLng(51.49047,-0.13309), new GLatLng(51.49054,-0.13322), new GLatLng(51.49095,-0.13414), new GLatLng(51.49277,-0.13787), new GLatLng(51.49373,-0.13990), new GLatLng(51.49400,-0.14047), new GLatLng(51.49415,-0.14071), new GLatLng(51.49449,-0.14105), new GLatLng(51.49462,-0.14120), new GLatLng(51.49469,-0.14119), new GLatLng(51.49514,-0.14163), new GLatLng(51.49516,-0.14175), new GLatLng(51.49556,-0.14203), new GLatLng(51.49590,-0.14221), new GLatLng(51.49620,-0.14239), new GLatLng(51.49640,-0.14244), new GLatLng(51.49647,-0.14231), new GLatLng(51.49651,-0.14171), new GLatLng(51.49690,-0.14174), new GLatLng(51.49720,-0.14185), new GLatLng(51.49738,-0.14192), new GLatLng(51.49757,-0.14206), new GLatLng(51.49771,-0.14224), new GLatLng(51.49783,-0.14247), new GLatLng(51.49792,-0.14279), new GLatLng(51.49796,-0.14304), new GLatLng(51.49807,-0.14361), new GLatLng(51.49814,-0.14378), new GLatLng(51.49833,-0.14504), new GLatLng(51.49829,-0.14676), new GLatLng(51.49830,-0.14694), new GLatLng(51.49835,-0.14703), new GLatLng(51.49912,-0.14773), new GLatLng(51.49930,-0.14791), new GLatLng(51.49968,-0.14833), new GLatLng(51.50001,-0.14871), new GLatLng(51.50023,-0.14901), new GLatLng(51.50062,-0.14961), new GLatLng(51.50101,-0.15024), new GLatLng(51.50150,-0.15101), new GLatLng(51.50159,-0.15109), new GLatLng(51.50176,-0.15118), new GLatLng(51.50181,-0.15118), new GLatLng(51.50197,-0.15113), new GLatLng(51.50237,-0.15001), new GLatLng(51.50248,-0.14988), new GLatLng(51.50257,-0.14980), new GLatLng(51.50263,-0.14975), new GLatLng(51.50282,-0.14973), new GLatLng(51.50307,-0.14971), new GLatLng(51.50312,-0.14970), new GLatLng(51.50337,-0.14997), new GLatLng(51.50338,-0.15024), new GLatLng(51.50338,-0.15041), new GLatLng(51.50335,-0.15072), new GLatLng(51.50344,-0.15078), new GLatLng(51.50400,-0.15099), new GLatLng(51.50420,-0.15101), new GLatLng(51.50446,-0.15088), new GLatLng(51.50456,-0.15086), new GLatLng(51.50499,-0.15080), new GLatLng(51.50511,-0.15080), new GLatLng(51.50527,-0.15084), new GLatLng(51.50549,-0.15090), new GLatLng(51.50569,-0.15107), new GLatLng(51.50586,-0.15121), new GLatLng(51.50602,-0.15138), new GLatLng(51.50771,-0.15339), new GLatLng(51.50899,-0.15471), new GLatLng(51.50926,-0.15504), new GLatLng(51.51022,-0.15644), new GLatLng(51.51037,-0.15660), new GLatLng(51.51267,-0.15786), new GLatLng(51.51325,-0.15821), new GLatLng(51.51336,-0.15837), new GLatLng(51.51342,-0.15857), new GLatLng(51.51345,-0.15878), new GLatLng(51.51343,-0.15894), new GLatLng(51.51340,-0.15905), new GLatLng(51.51330,-0.16001), new GLatLng(51.51417,-0.16139), new GLatLng(51.51418,-0.16148), new GLatLng(51.51596,-0.16416), new GLatLng(51.51608,-0.16422), new GLatLng(51.51809,-0.16713), new GLatLng(51.51811,-0.16720), new GLatLng(51.51819,-0.16721),], null, 0, 0.1, "#aaaaff", 0.4 );

		var lon = new GPolygon([new GLatLng(51.50761,0.06042),new GLatLng(51.52556,0.05905),new GLatLng(51.54520,0.05424),new GLatLng(51.56271,0.03296),new GLatLng(51.57935,0.01923),new GLatLng(51.58661,-0.00481),new GLatLng(51.59130,-0.03914),new GLatLng(51.59087,-0.06866),new GLatLng(51.59300,-0.09956),new GLatLng(51.58661,-0.14626),new GLatLng(51.57509,-0.16342),new GLatLng(51.55972,-0.17921),new GLatLng(51.54606,-0.19775),new GLatLng(51.52983,-0.23140),new GLatLng(51.50077,-0.21561),new GLatLng(51.49350,-0.24994),new GLatLng(51.47512,-0.27603),new GLatLng(51.45886,-0.33714),new GLatLng(51.44817,-0.39276),new GLatLng(51.43875,-0.41061),new GLatLng(51.40921,-0.41336),new GLatLng(51.38650,-0.35294),new GLatLng(51.36293,-0.27603),new GLatLng(51.33033,-0.21835),new GLatLng(51.32046,-0.14420),new GLatLng(51.32862,-0.02678),new GLatLng(51.35993,0.07828),new GLatLng(51.41135,0.12222),new GLatLng(51.46015,0.19089),new GLatLng(51.48538,0.20874),new GLatLng(51.48752,0.18196),new GLatLng(51.50291,0.17235),new GLatLng(51.51146,0.14900),new GLatLng(51.51658,0.12909),new GLatLng(51.50761,0.06042),], null, 0, 0.1, "#aaaaff", 0.2 );

		var scot = new GPolygon([new GLatLng(56.44534,-3.45520), new GLatLng(56.37544,-3.54309), new GLatLng(56.27493,-3.54309), new GLatLng(56.21694,-3.55408), new GLatLng(56.20472,-3.99353), new GLatLng(56.16192,-4.08691), new GLatLng(56.04551,-4.13635), new GLatLng(55.97180,-4.22424), new GLatLng(55.96258,-4.74609), new GLatLng(55.95589,-4.88342), new GLatLng(55.87893,-4.91364), new GLatLng(55.80491,-4.90265), new GLatLng(55.76757,-4.87244), new GLatLng(55.72970,-4.90814), new GLatLng(55.68173,-4.93561), new GLatLng(55.42488,-4.75708), new GLatLng(55.27184,-3.78479), new GLatLng(56.09862,-2.43347), new GLatLng(56.26829,-3.07617), new GLatLng(56.42507,-2.75208), new GLatLng(56.55850,-2.92236), new GLatLng(56.44534,-3.45520),], null, 0, 0.1, "#aaaaff", 0.4 );

		var nemid = new GPolygon([new GLatLng(55.28960,-1.35132), new GLatLng(54.56999,-0.85144), new GLatLng(54.42324,-1.15906), new GLatLng(54.07663,-1.26892), new GLatLng(54.05729,-1.06018), new GLatLng(53.93459,-0.88440), new GLatLng(53.84718,-0.88989), new GLatLng(53.73360,-0.75806), new GLatLng(53.53819,-0.50537), new GLatLng(53.47611,-0.51636), new GLatLng(53.47611,-0.96680), new GLatLng(53.15451,-0.93933), new GLatLng(52.84044,-0.92834), new GLatLng(52.70418,-0.76355), new GLatLng(52.66422,0.01099), new GLatLng(52.28614,-0.17029), new GLatLng(52.05705,-0.96130), new GLatLng(52.27606,-1.19751), new GLatLng(52.29622,-1.39526), new GLatLng(52.21215,-1.55457), new GLatLng(52.23571,-1.75781), new GLatLng(52.26261,-1.87866), new GLatLng(52.28614,-2.18628), new GLatLng(52.48730,-2.40051), new GLatLng(52.68088,-2.54883), new GLatLng(52.73413,-2.55432), new GLatLng(52.78067,-2.42798), new GLatLng(52.86697,-1.99402), new GLatLng(52.74411,-1.81274), new GLatLng(53.02585,-1.53809), new GLatLng(53.13145,-1.49414), new GLatLng(53.25322,-1.53259), new GLatLng(53.37137,-1.58203), new GLatLng(53.48592,-1.63147), new GLatLng(53.55124,-1.75781), new GLatLng(53.62298,-1.85120), new GLatLng(53.72710,-1.97754), new GLatLng(53.80503,-1.99951), new GLatLng(53.88929,-1.96106), new GLatLng(53.93135,-1.90063), new GLatLng(54.07341,-1.55457), new GLatLng(54.20213,-1.54907), new GLatLng(54.47754,-1.80176), new GLatLng(54.65270,-1.87317), new GLatLng(54.78596,-1.91711), new GLatLng(54.97556,-2.00500), new GLatLng(55.02912,-1.99951), new GLatLng(55.05430,-1.87866), new GLatLng(55.08890,-1.77979), new GLatLng(55.13603,-1.78528), new GLatLng(55.18624,-1.79077), new GLatLng(55.23012,-1.79077), new GLatLng(55.25830,-1.79077), new GLatLng(55.28960,-1.35132),], null, 0, 0.1, "#aaaaff", 0.4 );

		var bris = new GPolygon([new GLatLng(51.58279,-2.66693), new GLatLng(51.51447,-2.73010), new GLatLng(51.50421,-2.80426), new GLatLng(51.47172,-2.85370), new GLatLng(51.43920,-2.90039), new GLatLng(51.40495,-2.96356), new GLatLng(51.36895,-3.01300), new GLatLng(51.31748,-2.99377), new GLatLng(51.29688,-2.88666), new GLatLng(51.30203,-2.84546), new GLatLng(51.29688,-2.80151), new GLatLng(51.33293,-2.72186), new GLatLng(51.36381,-2.68616), new GLatLng(51.38438,-2.62573), new GLatLng(51.38267,-2.57904), new GLatLng(51.37581,-2.51312), new GLatLng(51.38781,-2.46094), new GLatLng(51.41009,-2.43073), new GLatLng(51.42893,-2.40326), new GLatLng(51.46316,-2.33185), new GLatLng(51.49224,-2.28241), new GLatLng(51.50763,-2.26318), new GLatLng(51.54010,-2.25769), new GLatLng(51.54522,-2.25494), new GLatLng(51.54693,-2.29065), new GLatLng(51.55376,-2.36481), new GLatLng(51.60497,-2.41974), new GLatLng(51.64078,-2.45819), new GLatLng(51.65441,-2.50763), new GLatLng(51.66293,-2.53235), new GLatLng(51.66293,-2.56805), new GLatLng(51.58279,-2.66693),], null, 0, 0.1, "#aaaaff", 0.4 );

		var nwout = new GPolygon([new GLatLng(53.09188,-2.06543), new GLatLng(52.96634,-1.97205), new GLatLng(52.92331,-2.07092), new GLatLng(52.92000,-2.35657), new GLatLng(52.96634,-2.42798), new GLatLng(53.04237,-2.47742), new GLatLng(53.09188,-2.50488), new GLatLng(53.17427,-2.57080), new GLatLng(53.17756,-2.70264), new GLatLng(53.17098,-2.77954), new GLatLng(53.12486,-2.85095), new GLatLng(53.07538,-2.85095), new GLatLng(53.02916,-2.88391), new GLatLng(52.99611,-2.94983), new GLatLng(52.99611,-3.07068), new GLatLng(53.02916,-3.12561), new GLatLng(53.07208,-3.14758), new GLatLng(53.11167,-3.09814), new GLatLng(53.31233,-3.15857), new GLatLng(53.82449,-3.85620), new GLatLng(54.13782,-2.81250), new GLatLng(54.26314,-2.83997), new GLatLng(54.38488,-2.80701), new GLatLng(54.42005,-2.64221), new GLatLng(54.58273,-2.77954), new GLatLng(54.71939,-2.86194), new GLatLng(54.93456,-3.03223), new GLatLng(54.95980,-2.85645), new GLatLng(54.42964,-2.50488), new GLatLng(54.21820,-2.59827), new GLatLng(54.01535,-2.69714), new GLatLng(53.85690,-2.64221), new GLatLng(53.81476,-2.60925), new GLatLng(53.83097,-2.42798), new GLatLng(53.85690,-2.25220), new GLatLng(53.86662,-2.14233), new GLatLng(53.78881,-2.15881), new GLatLng(53.73141,-2.07642), new GLatLng(53.67450,-1.97479), new GLatLng(53.59687,-1.89651), new GLatLng(53.57485,-1.94458), new GLatLng(53.56181,-1.97067), new GLatLng(53.54549,-1.98853), new GLatLng(53.51365,-2.00912), new GLatLng(53.49487,-2.02560), new GLatLng(53.47853,-2.00912), new GLatLng(53.48588,-1.98166), new GLatLng(53.49732,-1.95419), new GLatLng(53.47934,-1.94046), new GLatLng(53.45400,-1.93222), new GLatLng(53.42782,-1.93085), new GLatLng(53.39836,-1.91574), new GLatLng(53.34428,-1.89377), new GLatLng(53.32542,-1.87042), new GLatLng(53.29998,-1.85806), new GLatLng(53.28028,-1.86081), new GLatLng(53.26139,-1.86768), new GLatLng(53.24907,-1.88141), new GLatLng(53.23345,-1.91437), new GLatLng(53.22523,-1.94046), new GLatLng(53.21290,-1.97891), new GLatLng(53.19398,-2.02698), new GLatLng(53.17999,-2.05170), new GLatLng(53.14212,-2.10251), new GLatLng(53.09188,-2.06543),], null, 0, 0.1, "#aaaaff", 0.3 );

		var midw = new GPolygon([new GLatLng(53.02470,-4.83948), new GLatLng(53.01478,-3.98804), new GLatLng(53.08743,-3.86719), new GLatLng(53.09402,-3.69141), new GLatLng(53.06102,-3.52661), new GLatLng(52.99826,-3.44421), new GLatLng(52.91221,-3.41675), new GLatLng(52.80276,-3.41675), new GLatLng(52.73962,-3.33435), new GLatLng(52.73629,-3.20251), new GLatLng(52.64640,-2.99927), new GLatLng(52.58303,-3.01575), new GLatLng(52.40577,-2.97180), new GLatLng(52.36218,-2.89490), new GLatLng(52.33534,-2.82349), new GLatLng(52.29168,-2.73560), new GLatLng(52.24126,-2.65869), new GLatLng(52.17056,-2.66418), new GLatLng(52.12337,-2.81250), new GLatLng(52.08288,-2.97180), new GLatLng(52.00179,-3.08716), new GLatLng(51.89005,-3.35083), new GLatLng(51.89683,-3.60901), new GLatLng(51.93072,-3.83423), new GLatLng(51.95104,-3.99353), new GLatLng(51.95781,-4.19128), new GLatLng(51.96796,-4.32312), new GLatLng(51.96119,-5.26245), new GLatLng(53.02470,-4.83948),], null, 0, 0.1, "#aaaaff", 0.5 );

		var peak = new GPolygon([new GLatLng(53.58843,-1.97205), new GLatLng(53.60310,-1.97067), new GLatLng(53.61206,-1.94046), new GLatLng(53.62347,-1.90063), new GLatLng(53.63242,-1.87866), new GLatLng(53.62998,-1.81686), new GLatLng(53.61288,-1.80862), new GLatLng(53.56478,-1.76331), new GLatLng(53.53133,-1.73035), new GLatLng(53.50928,-1.64108), new GLatLng(53.36776,-1.52985), new GLatLng(53.21343,-1.43784), new GLatLng(53.07835,-1.57516), new GLatLng(52.97015,-1.76468), new GLatLng(53.10474,-2.06955), new GLatLng(53.28738,-2.02011), new GLatLng(53.38824,-2.03522), new GLatLng(53.47334,-2.01736), new GLatLng(53.58843,-2.01462), new GLatLng(53.58843,-1.97205),], null, 0, 0.1, "#aabbff", 0.2 );

		var fixs = new GPolygon([new GLatLng(51.51526,-3.68282), new GLatLng(51.46128,-3.48267), new GLatLng(51.22323,-3.00339), new GLatLng(51.10870,-3.04047), new GLatLng(51.01721,-3.15994), new GLatLng(50.97226,-3.05283), new GLatLng(51.18451,-2.81387), new GLatLng(51.27910,-2.11761), new GLatLng(51.44545,-1.89240), new GLatLng(51.36149,-1.48315), new GLatLng(51.16384,-1.51611), new GLatLng(51.02239,-1.26617), new GLatLng(51.14489,-1.12610), new GLatLng(51.24988,-0.83496), new GLatLng(51.41634,-0.63721), new GLatLng(51.36149,-0.55756), new GLatLng(51.39406,-0.40100), new GLatLng(51.43603,-0.32547), new GLatLng(51.45914,-0.26642), new GLatLng(51.46171,-0.23621), new GLatLng(51.45957,-0.16136), new GLatLng(51.47069,-0.12806), new GLatLng(51.48117,-0.11536), new GLatLng(51.48566,-0.09716), new GLatLng(51.49186,-0.07656), new GLatLng(51.50340,-0.06798), new GLatLng(51.50158,-0.05871), new GLatLng(51.50436,-0.05150), new GLatLng(51.50778,-0.04463), new GLatLng(51.50778,-0.03553), new GLatLng(51.50308,-0.02987), new GLatLng(51.50030,-0.00481), new GLatLng(51.51494,-0.00017), new GLatLng(51.52295,-0.00257), new GLatLng(51.53107,-0.00601), new GLatLng(51.53523,-0.01133), new GLatLng(51.53993,-0.01596), new GLatLng(51.54420,-0.01888), new GLatLng(51.54847,-0.00824), new GLatLng(51.55381,0.00481), new GLatLng(51.56576,0.02403), new GLatLng(51.57003,0.03811), new GLatLng(51.57814,0.05493), new GLatLng(51.59243,0.05527), new GLatLng(51.69640,0.16376), new GLatLng(51.74170,0.16617), new GLatLng(51.80373,0.20977), new GLatLng(51.86250,0.23312), new GLatLng(51.88306,0.27225), new GLatLng(51.92119,0.27878), new GLatLng(52.00602,0.25166), new GLatLng(52.03327,0.26573), new GLatLng(52.06220,0.49919), new GLatLng(52.22906,0.77934), new GLatLng(52.24504,0.78484), new GLatLng(52.27950,0.78003), new GLatLng(52.32737,0.67703), new GLatLng(52.38650,0.51361), new GLatLng(52.39069,0.37628), new GLatLng(51.91039,-2.78503), new GLatLng(51.75424,-3.58704), new GLatLng(51.51526,-3.68282), new GLatLng(51.10007,-0.61523),], null, 0, 0.1, "#aabbff", 0.2 );

		var fixn = new GPolygon([new GLatLng(53.59821,-2.74521), new GLatLng(53.60962,-2.54608), new GLatLng(53.61206,-2.40189), new GLatLng(53.61369,-2.31949), new GLatLng(53.60962,-2.20139), new GLatLng(53.56315,-2.06680), new GLatLng(53.51500,-2.04483), new GLatLng(53.47742,-2.04346), new GLatLng(53.42917,-2.03934), new GLatLng(53.40380,-2.05444), new GLatLng(53.34153,-2.06955), new GLatLng(53.28821,-2.05994), new GLatLng(53.23070,-2.09839), new GLatLng(53.16653,-2.14783), new GLatLng(53.11546,-2.19589), new GLatLng(53.06928,-2.25220), new GLatLng(53.03956,-2.34421), new GLatLng(53.03213,-2.40601), new GLatLng(53.04617,-2.47604), new GLatLng(53.14512,-2.55569), new GLatLng(53.18053,-2.57355), new GLatLng(53.22166,-2.60376), new GLatLng(53.24550,-2.64084), new GLatLng(53.24221,-2.71225), new GLatLng(53.24221,-2.72873), new GLatLng(53.29067,-2.81799), new GLatLng(53.36448,-2.80838), new GLatLng(53.47334,-2.92648), new GLatLng(53.55581,-2.83035), new GLatLng(53.55581,-2.83173), new GLatLng(53.59821,-2.74521),], null, 0, 0.1, "#aabbff", 0.2 );


/*
*   The following function is provided by Mike Williams               *
*   Blackpool Community Church Javascript Team                        *
*   http://www.blackpoolchurch.org/                                   *
*   http://econym.org.uk/gmap/                                        *
*                                                                     *
*   This work is licenced under a Creative Commons Licence            *
*   http://creativecommons.org/licenses/by/2.0/uk/                    *
*/

GPolygon.prototype.Contains = function(point) {
  var j=0;
  var oddNodes = false;
  var x = point.lng();
  var y = point.lat();
  for (var i=0; i < this.getVertexCount(); i++) {
    j++;
    if (j == this.getVertexCount()) {j = 0;}
    if (((this.getVertex(i).lat() < y) && (this.getVertex(j).lat() >= y))
    || ((this.getVertex(j).lat() < y) && (this.getVertex(i).lat() >= y))) {
      if ( this.getVertex(i).lng() + (y - this.getVertex(i).lat())
      /  (this.getVertex(j).lat()-this.getVertex(i).lat())
      *  (this.getVertex(j).lng() - this.getVertex(i).lng())<x ) {
        oddNodes = !oddNodes
      }
    }
  }
  return oddNodes;
}

GPolyline.prototype.Contains = GPolygon.prototype.Contains;

		var map;
		var gdir;
		var geocoder = null;
		var instrPic = "<image src='/images/collection-and-delivery-points.png' alt='Please enter the collection and delivery points in the boxes above and select the size of vehicle required' title='Please enter the collection and delivery points in the boxes above and select the size of vehicle required' >";

    function initialize() {
      if (GBrowserIsCompatible()) {      
        map = new GMap2(document.getElementById("map_canvas"));
        map.setCenter(new GLatLng(54.45, -3.3),5);
	// map.enableScrollWheelZoom();
        gdir = new GDirections(map, document.getElementById("directions"));
        GEvent.addListener(gdir, "load", onGDirectionsLoad);
        GEvent.addListener(gdir, "error", handleErrors);
	GEvent.addListener(gdir, "addoverlay", hideDirMarkers); 
      }
    }

function StartPoint(fromAddress) {
	
	localSearch.setSearchCompleteCallback(null, 
		function() {
    var toAddress = document.getElementById('toAddress').value;
			if(fromAddress.length > 1)
			{
			if (localSearch.results[0])
			{	StartLat = localSearch.results[0].lat;
				StartLng = localSearch.results[0].lng;
				EndPoint(toAddress);
			}else{
				alert("Collection address not found! Please enter the full or partial postcode or the town name.");
			}
			}else{
				alert("Collection address is too short!");
			}
		});	
		
	localSearch.execute(fromAddress + ", UK");
}

function EndPoint(toAddress) {
	
	localSearch.setSearchCompleteCallback(null, 
		function() {

			if(toAddress.length > 1)
			{		
			if (localSearch.results[0])
			{	EndLat = localSearch.results[0].lat;
				EndLng = localSearch.results[0].lng;
				setDirections();
			}else{
				alert("Delivery address not found! Please enter the full or partial postcode or the town name.");
			}
			}else{
				alert("Delivery address is too short!");
			}
		});	
		
	localSearch.execute(toAddress + ", UK");
}


    
    function setDirections(fromAddress, toAddress) {
		document.getElementById("bprice").innerHTML = "<img src='/images/calculating.gif' alt='Calculating Cost'>";
		document.getElementById("dist").innerHTML = ""; 
		document.getElementById("time").innerHTML = "";
		document.getElementById("ready2").innerHTML = "";
		document.getElementById("vprice").innerHTML = "";
		document.getElementById('results').style.display = 'none';
      gdir.load('from: '+StartLat+','+StartLng+' to: '+ EndLat+','+EndLng,{getSteps: true});
    }
    
    function handleErrors(){
		document.getElementById("bprice").innerHTML = instrPic;
		alert("An error occurred. Please check the addresses that you've entered.");
    }
    
	function onGDirectionsLoad() {
		var tariff = 3;
		var cc = 0;
		var inlon = 0;
		var wales = 0;
		var inpeak = 0;
        	for (var j=0; j<gdir.getNumRoutes(); j++) {
		var route = gdir.getRoute(j);
		var start = route.getStep(0).getLatLng();
		var end = route.getEndLatLng();
		if (!(ukmain.Contains(start)) || !(ukmain.Contains(end))){
		initialize();
		document.getElementById("bprice").innerHTML = instrPic;
		document.getElementById('results').style.display = 'none';
		alert("Please enter Collection and Delivery points on the UK mainland.\n\nCall us on 0845 456 7722 for a quote for other deliveries.");
}
		else{
		if (scot.Contains(start)){tariff = 2}
		if (nemid.Contains(start)){tariff = 2}
		if (nwout.Contains(start)){tariff = 2}
		if (bris.Contains(start)){tariff = 2}
		if (nwin.Contains(start)){tariff = 1}
		if (cc1.Contains(start)){cc = 8}
		if (cc2.Contains(start)){cc = 8}
		if (cc3.Contains(start)){cc = 8}
		if (cc4.Contains(start)){cc = 8}
		if (lon.Contains(start)){inlon = 10}
		if (midw.Contains(start)){wales = 35}
		if (peak.Contains(start)){inpeak = 10}
		if (cc==0){
		if (cc1.Contains(end)){cc = 8}		
		if (cc2.Contains(end)){cc = 8}
		if (cc3.Contains(end)){cc = 8}
		if (cc4.Contains(end)){cc = 8}
		}
		if (inlon==0){if (lon.Contains(end)){inlon = 10}}
		if (wales==0){if (midw.Contains(end)){wales = 35}}
		if (inpeak==0){if (peak.Contains(end)){inpeak = 10}}
		for (var k=0; k<route.getNumSteps(); k++) {
		var step = route.getStep(k);
		var point = route.getStep(k).getLatLng();
		if (cc==0){
		if (cc1.Contains(point)){cc = 8}
		if (cc2.Contains(point)){cc = 8}
		if (cc3.Contains(point)){cc = 8}
		if (cc4.Contains(point)){cc = 8}
		}
		if (inlon==0){if (lon.Contains(point)){inlon = 10}}
		if (wales==0){if (midw.Contains(point)){wales = 35}}
		if (inpeak==0){if (peak.Contains(point)){inpeak = 10}}
}

// TARIFFS


// NW

if (tariff == 1){

// sv

var Sm = 35;
var Sppm = 0.75;
var Sfm = 15;

// sv dist

var dSm = 5;
var dSppm = 0.85;
var dSfm = 0;

// transit

var Tm = 50;
var Tppm = 1.00;
var Tfm = 15;

// tv distance

var dTm = 5;
var dTppm = 1.15;
var dTfm = 0;

// lwb

var Lm = 65;
var Lppm = 1.20;
var Lfm = 20;

// lwb dist

var dLm = 5;
var dLppm = 1.35;
var dLfm = 0;
}

// Prime

if (tariff == 2){

// sv

var Sm = 45;
var Sppm = 0.75;
var Sfm = 25;

// sv dist

var dSm = 5;
var dSppm = 0.85;
var dSfm = 0;

// transit

var Tm = 60;
var Tppm = 1.05;
var Tfm = 25;

// tv distance

var dTm = 5;
var dTppm = 1.20;
var dTfm = 0;

// lwb

var Lm = 70;
var Lppm = 1.20;
var Lfm = 25;

// lwb dist

var dLm = 5;
var dLppm = 1.35;
var dLfm = 0;
}

// Other

if (tariff == 3){

// sv

var Sm = 49;
var Sppm = 0.75;
var Sfm = 20;

// sv dist

var dSm = 5;
var dSppm = 0.90;
var dSfm = 0;

// transit

var Tm = 65;
var Tppm = 1.05;
var Tfm = 25;

// tv distance

var dTm = 5;
var dTppm = 1.20;
var dTfm = 0;

// lwb

var Lm = 75;
var Lppm = 1.25;
var Lfm = 20;

// lwb dist

var dLm = 10;
var dLppm = 1.40;
var dLfm = 0;
}
		var gdistance = parseInt(gdir.getDistance().meters/1609.344);
		var distance = parseInt(gdir.getDistance().meters/1609.344);
		var duration = parseInt(gdir.getDuration().seconds);


                var etaTime= duration * 1.30;
		if (distance < 140){
		etaTime= duration * 1.45;
		}
		if (distance < 70){
		etaTime= duration * 1.7;
		}
		if (distance < 40){
		etaTime= duration * 2.0;
		}
		if (distance < 20){
		etaTime= (duration * 2.0)+400;
		}

		var drivingtime
		var hourStr = " hours ";
		var hours = Math.floor(etaTime/3600);
		var minutes = Math.floor((((etaTime - (hours*3600))/60)/10).toFixed(0))*10;
		if((minutes == 60)){ hours = (hours + 1); minutes = 0;}
		if (hours == 1){hourStr = " hour ";}
		drivingtime = hours + hourStr + minutes + " mins";
		if((hours == 0)){drivingtime = minutes + " minutes ";}
		if((minutes == 0)){drivingtime = hours + hourStr;}


		var timeStr= "Your delivery should arrive within<br>" + drivingtime + " of collection - subject<br>to traffic conditions.";
		

		document.getElementById("time").innerHTML="Driving Time: " +timeStr;

		if (distance > 140){inlon= 0};

		var vat = 1.175;                 //  <<  VAT RATE  >>
		var extra = (inlon + wales + inpeak);
		var minimum;
		var ppm;
		var freeMiles;
		var van;
		for (var i=0; i < document.form.veh.length; i++){
		if (document.form.veh[0].checked){van = "Small"; {minimum = Sm; ppm = Sppm; freeMiles = Sfm;}if (distance > 200){minimum = dSm; ppm = dSppm; freeMiles = dSfm;}}
		
		if (document.form.veh[1].checked){van = "Transit"; {minimum = Tm; ppm = Tppm; freeMiles = Tfm;}if (distance > 200){minimum = dTm; ppm = dTppm; freeMiles = dTfm;}}
		
		if (document.form.veh[2].checked){van = "LWB"; {minimum = Lm; ppm = Lppm; freeMiles = Lfm;}if (distance > 200){minimum = dLm; ppm = dLppm; freeMiles = dLfm;}}
}

		if (distance < freeMiles){
		distance= freeMiles;}

		var book = "<a href = '/ready-to-book/'><img src='/images/ready.gif' alt='Ready to book? Click here.' border='0'></a>";
		var routecost = (((distance - freeMiles) * ppm) + minimum + extra);
		if ((document.form.veh[0].checked) && (fixn.Contains(start)) && (fixs.Contains(end)) && (routecost > 169)){routecost = 169}          // MANCHESTER TO LONDON SPECIAL
		var chargeable = (cc + routecost).toFixed(0);
		var vchargeable = chargeable * vat;
		var priceStr= "Estimated Cost:<br>";
		var bpriceStr= "&pound;" + chargeable+"\n";
		var vpriceStr= "plus VAT <br>&pound;" + vchargeable.toFixed(2) + " including VAT\n";
		document.getElementById("results").innerHTML = "Estimated Cost: &pound;" + chargeable + " plus VAT"+ "<p style='font-size:12px;'>"+"Call now to arrange a collection</p>";
    		document.getElementById('results').style.display = 'block';
		document.getElementById("dist").innerHTML = priceStr;
		document.getElementById("time").innerHTML = timeStr;
		document.getElementById("bprice").innerHTML = bpriceStr;
		document.getElementById("vprice").innerHTML = vpriceStr;
		document.getElementById("ready2").innerHTML = book;
		document.getElementById("entry_0").value = document.form.fromAddress.value.toUpperCase();
		document.getElementById("entry_1").value = document.form.toAddress.value.toUpperCase();	
		document.getElementById("entry_2").value = gdistance;
		document.getElementById("entry_3").value = van;
		document.getElementById("entry_4").value = chargeable;
		setTimeout("document.myform.submit();",2000);

}}}

        function hideDirMarkers(){ 
                var numMarkers = gdir.getNumGeocodes() 
                for (var i = 0; i < numMarkers; i++) { 
                        var marker = gdir.getMarker(i); 
                        if (marker != null) 
                                marker.hide(); 
                        else 
                                alert("Marker is null"); 
                }
        } 


if (document.layers) document.captureEvents(Event.MOUSEMOVE); 
document.onmousemove=mtrack; 
var ent;
var posx=0;
var posy=0;
var offsetX=16;
var offsetY=16;
var popUp = false;


function init() {
ent = document.createElement("div"); 
ent.style.color = "green"; 
ent.style.font = "normal xx-small verdana"; 
ent.style.padding = "8px 8px 8px 8px"; 
ent.style.background = "white"; 
ent.style.border = "0px solid green"; 
ent.style.left = -100; 
ent.style.top = -100; 
ent.style.position = 'absolute'; 
ent.innerHTML = ''; 
ent.style.zIndex = 10; 
document.getElementById("thepage").appendChild(ent); 
} 

function mtrack(e) { 
if (popUp) { 
if (!e) var e = window.event; 
if (e.pageX || e.pageY) { 
posx = e.pageX; 
posy = e.pageY; 
} 
else if (e.clientX || e.clientY) { 
posx = e.clientX + document.body.scrollLeft; 
posy = e.clientY + document.body.scrollTop; 
} 
ent.style.left = posx + offsetX; 
ent.style.top = posy + offsetY; 
} 
} 

function doText(t, e) { 
popUp = true; 
ent.innerHTML = t; 
}

function doClear() { 
popUp = false; 
ent.style.left = -100; 
ent.style.top = -100; 
ent.innerHTML = ""; 
} 