/* Popular phrases - DIRECTTVS - 9:55:24, Thu Sep 2, 2010 */
__SLI_ClientDefaults =
[
    ['ShowBrandingFooter', false ],
    ['Alignment', 'offsetrelative' ]

];
var asPhrases=new Array ('samsung led','42 inch tv','32 inch','tv stands','evotel','42ld690','ue40c6620','home cinema','evotel 32','led','lg 42ld450','50 inch plasma','3d tv','panasonic','philips','42le530','ue37c6530','led tv','ue40c6530','txl37g20b','freesat','le37c650','stands','sony','txp42g20b','sony ex703','42pj350','ue40c6','le40c650','lg 42ld690','sony ex503','sound bar','lg 50pk350','42ld790','kdl40ex503','freeview hd','lg','kdl40ex4','panasonic v20','samsung','ld690','kdl40hx803','le40c580','lg 32ld690','32ld690','freesat tv','tx-p42g20b','kdl40nx703','42ld450','1080','50pk590','kdl40hx703','ue40c8000','built in dvd','ue55c8000','white tv','nxl704','sony bravia','dvd recorders','60 inch tv','hdmi cable','3d','42le5900','lg led tv','sharp quattron','le40c580j1k','pfl9705h','tv with dvd','26 inch tv','panasonic dvd recorder','le37c530','kdl40ex713','tx-p42s20b','ex503u','warranty','42pj3','samsung 3d','kdl32ex703u','37d25','vhs','52 inch','le32c450e1wxxu','42ld4','22 inch tv dvd','txl37v20b','ue37c','ue55c8000xk','tx-l32d28bs','panasonic tx-l42d25b','lg 42ld450 42 full hd lcd tv','humax','lg 42le5900','tv dvd','kdl32ex503','le40c750','tx l42d25b','bd-c5300','sony kdl40ex','txp42g20','tx p50vt20b','ue-40c7000xkxxu','hd tv','tx-l37d25b','ue46c7000','tx p42v20b','tv cabinets','combi','kdl40nx803','ue40c7000','txl37g20','sony kdl40ex503','26','kdl-40ex43bu','3d led tv','samsung le40c750','32','finlux','5800','lcd tv','hw-c450','le32c450e1w','wmn1000bx','samsung ue55c8000','le-32c450e1wxxu','samsung 26','samsung ue40c6620','kdl-40ex503u','tx-p50s20b','lg 42pj350','tx-l37d28bs','kdl37ex4','37 led','sony kdl','txl42d25','tx-l37d25','kdl32','sc-bt330eb-k','kdl40ex403','txl42d25b','le46c650','47le5300','freeview hd recorder','1080p 32','100hz','ipod classic 120gb','lg 47','panasonic plasma tv','32 inch led freeview hd','le40c530f1wxx','ex503','37g20','surround sound','3d glasses','bdv-e670w','kdl46nx703u','kdl40ex503u','tx-p50vt20b','42-le5900','lg bd560','grade','46nx703u','tx-p42v20b','60pk5','kdl-32ex703u','samsung 40','tx l37d25b','ex703','sharp lc40le821e','ps50c580g1kxxu','37 inch','samsung le37c580','tx-l37v20b','40nx803','kdl-37ex503u','sony ex403','led 3d','silver tv','samsung led tv','ue32c4000','hannspree','samsung ue37c5800','kdl-22bx200bu','60pk250','lg 42le5300','linx','nx703','tx-l42d25','22 inch tv','ue32c6530uk','lg 47le5300','samsung dongle','toshiba lcd tv','nxl704b','50pk350','tx p42g20b','dvd combi','freesat lcd tv','sharp','sony bravia kdl-40ex703','le37c530f1wxxu','ue-37c6530ukxxu','refurbished','le26c450e1wxx','le3755','ue32c5800qkxxu','tx-p50g20b','sony bravia kdl32ex703u','tvpredeliv','ue46c8000','32pfl8404h','ue40c7000xk','insurance','hx703','sony 22','tv stand 50','samsung ue37c6530','kdl40ex7','sony kdl40nx','40nx703','samsung le32c650','42-ld690','42sl900','txl37d25','samsung ue40c6530','ue32','ty-cc10w','tx-l37g20b','toshiba regza','kdl-40ex503','37le530','kdl37ex503','37d28','ld450','600hz','26c4000pwxxu','37','ue32c6510','ue40c66','tx-l37d28','kdl32ex40','100hz lcd','blu ray','32ld350','kdl37ex5','kdl22','panasonic plasma','p42g20b','37le5900','tx-l32d25b','wegihd80','ty-cc10','47le530','sony hx703','philips tvs','19 inch tv','hw-c560s','lg 42','cinema','lc40le8','tv 26 white','kdl40ex','32ld450','white','full hd tvs','40c650','37c530f1wxxu','sony 3d','42le5','sony kdl40nx703u','ue46c5100','sony kdl40ex503u','tv wall brackets','c580','wty11','kdl-52nx803u','40','samsung le40c650','philips 37pfl5604h','lg 55le5900','bdc6500','v20','ue46','60pk590','ps42c45','50pk3','le40c650l1kxx','samsung wireless dongle','samsung 32','kdl-40hx703','dmc-tz10e','bd-c5500','pfl7605h','lc-22le320e','samsung 32 1080p','50-pj550','46ex503','50v20','lc40le821e','panasonic x20','kdl-46ex703u','22 inch','quattron','ue40c5800qkxxu','samsung 40 3d','kdl-40nx703u','26 tv dvd','32 inch led','txp42v20','txl37s20b','kdl32ex301u','bun ue40c7000xkxxu 1350','lg 55lx9900','ue-37c5800qkxxu','6620','lg 42ld790','osi1200c b','37ex503','kdl40ex6','samsung 6530','tx-p42v20','kdl40nx503','15 tv','tx-l42d25b','kdl52nx8','panasonic vt20','6530','ps42c450','1080p plasma','l37d25b','le-37c530f1wxxu','txp37x20b','sony bravia kdl40ex703u','kdl46ex703u','tx l32s20b','full led','52','el800b','le32c530f1w','40c6530','tx-l37s20b','kdl19bx200bu','sony led tv','kdl46hx8','le37c530f1wxx','tx-p50s20','kdl32nx503','vesa bracket','plasma bundles','lx9900','peerless','su-46nx1','sony ex603','46ex703','ht-c6930w','kdl46ex5','sony 46','kdl40hx803u','sony bravia kdl32ex503u','lc32ct2e','37-le5900','panasonic 50 plasma','40 inch','panasonic tx-l37g20','tx-p50g2','kdl-32s5500u','dsc-h55b','55le5','a1 evotel','red tv','bd370','ue19c4000pw','cabinet','bdv-e37','tx-l19c20b','kdl40ex43b','1080p 100hz','22le330','bdv-e370','ps42c450b1w','ue32c5800','kdl40ex603u','3d blu ray player','g20','sony 40','bdi','warranty plasma','samsung 46 lcd','kdl-37ex403u','samsung 50 inch','samsung 19','bundles','kdl32nx5','bdp-s370','le46c750','panasonic g20','samsung ue40c7000','ue40c','lg 47ld690','extended warranty','46pfl560','samsung le32c450','ue32c5100','ue40c5800qk','46 inch lcd','sc-btx70eb-k','40hx803','42le590','tx-p42s20','1080p lcd','usb record','tx-l32','le37c530f1w','lg black glass universal tv stand','32pfl840','photo frame','sony bundle','samsung wis09abgn','ht-c7550w','samsung 3d lcd','le3300','samsung 40 led','52ex703','panasonic blu ray recorder','samsung bracket','samsung 22','ue26c4000pw','samsung le26c450','42 inch lcd','sony 200hz','lg 1080p','ue55c700','kdl40z58','ipod nano refurbished','samsung ht_c6930','sony 22 tv dvd','22ex302bu','bd-p1600 xeu','a2mb811zoa','lg hb354bs','delivery','kdl46ex403','dmp-bd65eb-k','pk590','kdl-19bx200bu','lg 42sl9000','kdl46nx7','ue40b6000','kdl-40ex603','le32c530f1wxx','ht-c45','lc46le821e','tx-l26x20b','lg pk590','lg 37','panasonic tx-l32s20','samsung le37c650','blu ray recorders','42','dmr-bw780ebk','kdl-32ex503','st32b3cm','tx-l26x20','32-ld420c','lcd554','37s20','sl9000','samsung ue37c6530uk','le26c450','42-pj350','sony 703','60-pk250','kdl60ex703u','dsc-w320b','w5810','panasonic bluray recorder','42ld45','p50s20','lg 50pk','le32c650','dmrez49vebk','le32c650l1k','37 inch hd lcd tv','samsung 40 inch ue40c6530','sony tv 32','wmn1000bxx','ld790','rdrdc10','1080p','le37c580','tx-p42x20b','samsung led 46','samsung 37','dongle','txl37d25b','tx-p42g2','speakers','a3mb565zoa','sony led','ue46c','tx-l32g20b','19 tv','55le530','panasonic 42','46pfl9705','kdl22bx20du','kdl37ex503u','ps42c450b1','freesat hd tv','samsung 50 plasma','freeview hd tv','freeview dvd','white samsung','pfl3405h','37x20','kdl40ex603','22','kdl-40nx703','txp42g','ultra1','b550','panasonic viera','htc6730','lg 22le3300','32le5900','kdl22bx200bu','19le330','kdl32ex503u','kdl32ex7','txl37d28','samsung le32c350','kdl-40ex703u','c5800','sony kdl40ex403u','samsung le46c750','samsung dvd player','tx-p46g20','ue37c6','ue37','32 1080','tvcnr','dav-dz','40lx903','37c6530','32 inch dvd combi','freesat tv 32','w380','dmr-xs350','qed hdmi cable','wis09abg','22le33','clear glass tv stands','ue37c6530ukxxu','refurbished tv','panasonic tx-p42v20','le32b650t2wxxc','hd projector','kdl32ex4','dmr xs350ebk','kdl46nx703','40c580j1kxxu','blu ray player','elcd3210usb','ue55c8000xkxxu','lg 37le5900','50','kdl40ex703','37pfl5604h','full hd 1080','xl3000','32ld45','kdl37ex403','60pk990','lg 50pk590','le40c530','dmr-xs350ebk','2.1 home cinema','ht805','40 inch tv','digital camera','ue40c5800qkxx','kdl37ex40','ps50c580','txl32','40ex503','ue32c4000pwxxu','kdl32ex3','wifi tv','ht805th','ue-32c4000pwxxu','le40c530f1w','lg 42ld450 42','le32c530f1wx','kdl40lx903u','26 lcd','lg 32','32s20','sony kdl-46nx703','lc52le700e','tx-p46s20b','ipod classic','kdl46ex70','le32c450e1wxx','lg 50pk350 50','tv with freesat','60 inch','dmp-bd65','bd-c690','tv combi','sony kdl32ex703','ue32c6510uk','refurbished ipod','samsung ht','sony freesat tvs','lcd monitor','ht-c7300','samsung c650','dmc-fs30e','ps42c450b1wxx','22ld35','lg bx580','samsung le37c530','lc32le320e','sharp 32 inch','32pfl5605h','ht-c7','project screens','5.1 dvd','tycc10','internet tv','dmpbd65ebk','kdl40lx90','40c8000','sharp 46 led','l32g20b','elcd32usb','ue46c6530ukxx','42v20','samsung bd-c5500','panasonic 37','ps3','50 inch','tx-l32d28bp','samsung le46c580','sony 3d tv','kdl32ex403','32 inch tv','c6530','ipod','22le3','samsung ue37c5800 37','st42b3cm','dmr-ex773ebk','ue46c7000xk','samsung sound bar','7900','70 inch tv','sony kdl-32ex503','tv with built in dvd','av receiver','3d player','txl32d28','a3 mb565zo a','panasonic tx-p50g20b','22lu7000','lg 26ld350','kdl19bx20','lc-40le811e','32ex703u','samsung le46c530','rdrdc205','instwal37','samsung b550','lc32fh510e','sony bravia kdl-40nx703','full hd samsung tv','wis09abgnx','dmr-xw380ebk','white samsung tv','samsung le46','hw-c770','sc-btx77','bdc5500','lg 46','dmc tz10eb-k','52nx803','kdl40ex40','kdl40ex403u','speaker stands','kdl40nx70','silver lcd','ue55c6505ukxxu','lg 26 inch','47ld690','bdp-s470','sony kdl40ex403','32 lcd','dmr-xw380','wty13','lg led 32','le32c580j1kxxu','pj350','kdl40hx','tx l37v20b','sony bdp-s370','le22c450','le40c650l1kxxu','ue37c5800','le5300','ue46c6530uk','sony kdl40hx703','bd-c8200','led freeview hd','26le33','ipod shuffle','brackets','lcd dvd tv','kdl40ex5','el403','kdl32nx50','le40c650l','headphones','sony 22 tv','led 40 inch','acb1000 2-b','q tv2','samsung wis09abgn wireless dongle','6930','txl22x20','hb905sa','ab-s103','dmr-bw780eb','47ld42','sony bravia kdl','el401b','sc-bt330eb','tx p50v20b','vu323ld','37pfl7605h','kdl40z5800','tx-l32d2','sony kdl37ex503u','kdl32ex403u','le37b550','55le5300','26-le3300','le37b530p','ue55c6505','cmt-fx250','osi932o b','ue46c7000xkx','bd-c820','samsung le40c580','samsung le46c650','ipod touch','kdl40v58','samsung ue32c5100','ue37c5800qkxx','ue46c8000xkxxu','kdl40z5800u','40ex603u','samsung 32 tv','42 lcd','lg 42ld','32 full hd','txp42x20','txl32d28bs','htc7550','htc7550w','46pfl97','sony stands','40pfl5605','bd c5500','37pfl7605','ht-c7550','kdl-40ex713','bdv-e3','37-pfl7605h','samsung wall','37-le5300','sony kdl52ex703u','panasonic txp42','lc-32fh510e','kdl40ex703u','panasonic s20','ue37c5800qkxxu','panasonic 3d tv','st32b3','ex4','le32c580','samsung ps50c580g1kxxu','blu ray home cinema','lc40le811e','dmp-bd45eb-k','nxl604pb','samsung ps42c450','32pfl9705','55-lx9900','kdl-32nx503u','bd c5300','elcd-3210usb','kdl22bx2','samsung ue55c7000','panasonic txl42d25b','le46c580','kdl52nx803','hx803','le40c650l1k','wireless','ue46c7000xkxx','vu223ld','samsung le40c650 freeview hd tv','hmx-u10','lg dvd','built in freeview','lg le5300','26lg4000','jvc','lg cinema','le-2637','37 inch lg tv','sc-bt230e','mc086bt','dmc fs30eb-k','mc306qb','wmn100','htc730','built in freeview and dvd','100 hz lcd tv','samsung ps42c450b 42','26 lg 4000','lg 32ld450','kdl37ex403u','wall bracket','kdl32ex603','42pj650','tx-l32d25','ht-305su','kdl22bx200b','kdl-37ex401u','ue26c4000','lg 50','corner brackets','bd-c530','bdve370','32 tv','le37c580j1kxx','lg le5900','le5900','dmp-bd45','kdl-40ex43b','le40c530f1wxxu','42 inch','lg 42 led','kdl40hx703u','42-pj650','le-46c650l1kxxu','le2637','kdl-40hx803u','avf','ue55c7000xkxxu','ue37c5100qfxxu','le-40c750r2kxxu','32ex703','lg 60pk250','ht-c350','lcd','samsung ue46c8000','42 g20','50 inch tv stand','backlight','ceiling speakers','55ld6','tx-l37s2','le55c650l1kx','txp50','47 inch','full hd lcd tv','de9106egs','le55c650l1k','sony kdl32ex43b','ct-19','panasonic dmr-bw780ebk','xbox 360','ps-58c6500tkxxu','ue37c5800qk','tx p42s20b','kdl32ex603u','lc40le81','kdl-40ex603u','txl32s20','lcd503','60','freesat receiver','kdl32ex703','46nx703','46 led tv','txp50v20b','37-ld450','ue40c662','42x20','32-le5300','samsung ue32c5800','dmp-bdt300','sony home cinema system','st42b3','sony 19 inch','22 tv dvd freeview','panasonic txl26x20b','ue46c5100qf','dmr bw780ebk','kdl46nx','samsung ps50c6500','37ld450','kdl46ex503','samsung 46 inch','txl37v20','sony lcd tv','bd-c6900','42pj35','dmp-bd65eb','pk350','bd560','freeview recorder','kdl-60ex703u','lg 50pk990','50vt20','sony kdl40w5810','42le5300','tx p50s20b','led 40','kdl32ex43','sony wireless dongle','kdl-32ex403u','kingston 8gb sd hc memory card','rdr-dc100','ipod nano 8gb','panasonic home cinema system','1080p 26','le37b550a5wx','scbt230','kdl40lx903','mc008bt a','ue55c8000xkx','ltv 2213whtc','samsung 37 inch led','37c580j1kxxu','sc pt480eb-k','le32 c450','led 32','hd camcorder','le-40c650l1kxxu','sony bravia 32','txp42x20b','tx l37g20b','qtv2','txl32g20b','200 hz','ue-40c5800qkxxu','sony 52 inch led','kdl52nx803u','lcd tv freeview hd','opb1','panasonic tx-l37s20b','bdp-s','panasonic tx','tx-p50vt20','samsung bd-c5300','c530','tx-l32d28b','ovts2','panasonic txl37g20','kdl52ex703','lc40le811','panasonic 32 tv','el401','panasonic led tv','kdl-40ex403','40b652','le22b541c4wxxu','37 inch lcd tv','kdl55ex50','42 tv','panasonic 26 inch','tx','ex302','samsung 6000','el104b','sharp 40','lg 32ld320','lg bundle','weg-ihd80','ue32c5800qk','freeview hd 37','kdl-46ex403','sony kdl40ex603u','samsung plasma','wifi','kdl-40ex703','sony 37ex503','c8000','sony 32 inch lcd','d25','40pfl7605h','50pk','kdl-46ex503u','tx-p37x20b','37 inch tv','ue46c6530u','kdl32s55','ps42c450b1wxxu','ht c555','37c5800','kdl-37ex403','lg 47ld450','ue-46c8000xkxxu','19le3300','32pfl8404','kdl37ex403 37','le37b550a5','46x4500u','le40c580j1kx','52pfl8605h','le22c450e1wxxu','pfl8605h','kdl37ex50','32 tv freeview hd','32-ld320','kdl-40ex403u','sony kdl32ex403','txl32s20b','bun','kdl32ex5','tx-l37s20','hdc-sd60eb-s','mpeg4','37pfl8605h','50 plasma','sony kdl-37ex503','bd-c8500','55lx9900','hdmi','bd-c8200m','70 inch','ue-40c6620','sony kdl40ex703','l37g20','50-pk790','vt20','50-pk590','ht-c5200','hmx u10bp','19 inch','47-le5300','50 inch tv samsung','panasonic tx l37d25b','i-liveps3opt','bdps360','lg ld690','lg 390','iliveps3opt 1','sc-pt70eb-k','55 inch led','dvi to hdmi','walnut','sony 5810','kdl-32ex603u','60pk2','tx-p42g20','lg 42 plasma','samsung ue22c4000','panasonic 3d','panasonic tx-p50s20b','3d lcd','26 inch','8000','40 hd ready','3d samsung led','60pk790','tx l32d25b','a1 photo8i','sony bravia kdl37ex503u','kdl-32ex703','nx503','kdl32nx503u','philips 46','kdl52ex703u','ps-50c450b1wxxu','tx-l37d2','panasonic txp37x20b','46c8000','sony kdl32ex503','9324','lc-32ct2e','3 mb565zo a','9624','pfl5605h','dav-dz33','vu-223ld','panasonic hdc-hs60','9634','40ex703u','hw-c770s','bun ue46c8000xkxxu 1352','kdl-40z5800u','tv bundles','kdl40nx803u','26 led tv','kdl40ex43bu','kdl-46nx703u','blu-ray recorder','ht-c6730','50pk35','sony kdl-40ex603','grade a1','32 1080p freeview hd','panasonic tx-p42g20','55ex503u','bt230ebk','tx-l32s20b','freesat tv\'s','sony bravia kdl-46we5','100hz led','sound','42b3cm','lg 50pj350','dmc-tz10eb','samsung 42','42 full hd tv','kitchen tv','ue46c8000xk','uwa-br100','panasonic tx-p50g20','sony kdl40v','txp50g20','ue40c8000xkx','flip','philips 32pfl7404','sony kdl-40w5810','samsung 50 inch plasma tvs','ixus 130','bd-c750','ue46c5800qkxx','42ld69','52pfl86','kdl-32ex403','txp42s20','ue-46c7000xkxxu','lc46le8','3d blu-ray','panasonic 26','vw-vbg260e','ue22c4010pwxxu','samsung ue46c7000','panasonic txp50v20','txl37s20','sc-pt480eb-k','wis09','dmr','a1 elcd32usbfhd','hd recorders','samsung bd-c6500','sony kdl37ex401u','37zv635db','dmc-fs10eb','40c7000xkxxu','ue40','samsung ue40c5800','txl32g','sharp lc46le821e','osi1102o b','tx-l32g20','50pk990','kdl22bx20d','50pj350','white lcd','lg home cinema','50pj650','samsung ue40','ue32c5800qkxx','sdr-s50eb-w','gear4','15','ue46c6530ukxxu','32pfl560','ue26c4000pwxxu','panasonic blu ray','ps-42c450b1wxxu','42 1080','46 tv','sony recorder','samsung ue46c6530u','kdl37','panasonic txp42g20b','philips 32','refurb','32pfl740','sony 46 lcd tv','osi900','hdc-sd10eb-k','sc-bt330e','bx580','le32c45','hdrcx115eb','22pfl340','panasonic txp50','hb905da','bravia ex403','with dvd player','kdl22bx200','kdl-32ex301','le37b53','sony kdl32nx503','42g20','samsung glasses','ex603','led 42','panasonic tx-l32g20b','ps50c6500','dav-dz330','bdv e370','samsung 580','kdl-26ex302','47ld45','26 lcd tv','z5500','37pfl5604','lx903','box open tvs','rmc301c1','dmctz10','samsung ht-c555','32le59','sharp 52','560','46pfl9705h','40 inch led tvs','sc-bt222eb-k','axalcd3max','hd-foxt2','tx-l32d28bw','kdl32ex60','bd-570','60pk25','sc-bt230eb-k','sc-bt222eb','tx p50x20b','panasonic tx-p50v20','dvd c350','el402b','dvd c550','42pfl7404h','txl42','dmr-ez49v','panasonic tv','5604','3638b0','panasonic tx-l37v20b','32av71','ue37c5100','55c6505','tx-l19c20bw','sony kdl-40nx803','40c750','plasma','kdl40nx5','lg bd570','32le5300','cmt fx250','tx-l37v20','el801b','ap800','tx-l32x20b','kdl-52nx803','32 hd tv','ue22c4000','panasonic tx-l32d25','le46c580j1kxxu','lg 50pk790','kdl-46ex503','samsung 40 lcd','le32c450e1wx','sharp 40 led','le-22c451e2wxxu','le32c580j1kxx','ev.ma508.006','sc-bt230eb','32av713b','tmr-br100','pfl8404h','46 inch stand','tv bluray','kdl46ex703','tx-l37d28b','hdc-hs700','refurbished photo frames','txl32d25b','panasonic led','sony kdl37ex403','bdc5300','ab-m201sl','sony 32ex503','le37c580j1kxxu','lg plasma','965tz','403','60ps8000','i station rotate','dmr-ez49vebk','sony kdl32ex603','40 lcd tv','le37c580j1','dmp-bd80','le32c580j1k','dsc-wx1','690','sony cybershot dsc-wx1','kx-tg7341e','dmcfs33ebk','samsung ue46c5800','hb965','le37b55','refurbished ipod shuffle','lc40le821','sc sp100eb-k','l37v20','panasonic txp50x20b','l37v20b','ba-vl6039','dz860w','samsung le37b550','kdl 37ex503','sharp led','5.1','ct-20','cmt-fx25','tx-l32x20','sony tv stand','kdl55ex503u','panasonic tx-l32d25b','tv with built in dvd player','packages','l37d25','dmp-bd85eb','lg 42sl90','panasonic sc-hc3','le46c580j1k','bt330','samsung ps42','panasonic dmr-xs350','stream','sc-bt222ebk','dmr ez49vebk','ps42','40ex43b','samsung 37 inch led tv','a1 elcd32usbf','osi1200c b stand','tdg-br100','19bx200bu','samsung 55 inch','sony kdl-40hx803','8605','kdl22bx20','sony blu-ray','wmn-1000bxxc','sony bravia kdl-32ex503','lc46le811e','32nx503','kdl-40nx803','hdrcx116','led 26','panasonic tx-l37d25','hdr-xr155eb','hdrcx-116eb','kdl37ex401u','ue46c5800','bd390','70','panasonic txp50s20','houseparty 3g','samsung 55','dmc-fs10','dmc-tz10eb-a','nxl-604pb','sony rdrdc205','at2356','ecst1000bpbgb','kdl40ex713u','txp42x10b','ps58c6500tkxxu','white tv dvd','sony kdl40ex43bu','40ex403u','lcd501','37lf7','fl1','built in freeview hd','logic3','hdc-sd60eb-k','x20','sony kdl32ex503u','wmn1000','samsung camcorder','19pfl3405h','samsung dvd recorder','tv&dvd','sony 40hx803','kdl-40nx803u','32pfl56','bdp-s360','sony kdl46ex703','st42b4lm','p37x20b','series 5','dmp-bd65eb-k blu-ray player','ue46c7000xkxxu','lg pk350','lg 37ld450','radio','satellite dish','ipod dock','32b650t2wxxc','kdl46we5b','lcd bundle','schc30dbebs','le19c450e1w','ue37c6530u','weatherproof','a2','sony kdl40hx803','42zv635d','703','dav dz330','freesat led','le37b550a5w','samsung 650','samsung ue40c6','42sl90','hd dvd player','sony kdl 40w 5810','100 hz','alphason stand','panasonic tx-l32s20b','osi1200cb','remote','freeview hd box','aqls','bd-c69','panasonic dmp-bd65eb-k','37b530p7','lg 60pk590','gaming tvs','kdl37ex401','sony 40ex703u','tx-p50','sony 37','freeview hd 37 inches tv','hdr-cx115e','samsung bd-c5500 blu-ray player','ht c5500','50pk9','sony 40 ex503','sony kdl32ex401','aa-2br-blk','px1497k-1cam','lc 32le700e','hard drive','lg 42pj650','40ex43','3210usb','p42v20b','sony bravia kdl46ex503','dvd-h1080','l42d25','txp42v20b','sony led 40','sharp lc40le700e','32ex401','rose black','kdl22ex302','samsung ht bd8200','lc40le82','ucover','kdl46z580','37ex401','record tv','ab','sony kdl-40nx703','sony hx803','ps50c6500tkxxu','l32s20b','sony kdl40v5810','samsung u10','32 led tv','panasonic txl','tv insurance','sony kdl 46ex703','lg 350','dvd-c3','samsung c7000','dmrxw380','panasonic battery','60ex703u','panasonic freesat tv','19','samsung bd-c6900 3d blu-ray player','37le590','sony 26 inch','sony kdl40ex703u','lg 50pk590 50','q-tv2','40c650l1kxxu','a2 le40a436tid','19 lcd tv','lc42ct','canon powershot','tx l32d28bp','40le821','kdl-52z5500u','50s20','panasonic dvd','kdl32ex70','22dv665db','s370','1080p projector','bd570','37 lcd','40ex401','osi1200','40ex43bu','32ld4','bun tx-p42g20b 1329','sony nx803','hdr-cx116eb','19 inch lcd tv withe dvd','instal','ht305su','wi fi','32le53','samsung led 55','32ex403u','l37s20b','samsung le37','100 inch','42 1080p 600hz','ue55c7000xkx','40w5810','l37g20b','ps58c6500','lc-40le700e','lc-46le821e','samsung le37b550a5','fox','le19c450e1wxxu','samsung ue46','lc22dv200e','st32b','lg 9000','tvcnr 3b','lc40le70','dvd-sh895m','sony nx703','panasonic blu ray player','sc hc7eb-s','samsung 32 hd ready','panasonic txl37s20b','pip','panasonic txl37','samsung ps50b450','kdl-40w5810','panasonic tx-l42d25','sdhc card','kdl32s5500u','sony bdp-s360','42 le5900','sony 40ex503','sony 403u','ps50b450b1wxxu','5500','sony 37 lcd','txp42','50pj35','sony kdl-46ex503','tx p42g20','speaker bar','100','ps50b450b1wxx','sony cyber shot','panasonic dmrxs350','lg 42lh','ipod nano 5th','kdl40ex401u','sony kdl-32ex403u','samsung bd-p1580 blu-ray player','sony kdl40nx803','lg pj350','sony 60','sc-bt230','schc3','sony bdv e370','panasonic tx-p42s20b','pt1','sony 46ex403','4000','kdl-60ex703','panasonic 37 freesat tv','pk990','qed','qed performance','ps-50b450b1wxxu','tx p50s20','sony 40nx703','l32wb81','sony kdl40v5800 40 inch 1080p lcd tv with freesat','kdl40w5810u','samsung digital camera','lcd-503','panasonic dmp-bd45eb-k','ps50c6500tkxx','ps58c','samsung 22 inch tv','surge','46c7000','panasonic lcd tv 37','pfl5604h','panasonic tx-l37g20b','integrated','panasonic wireless speakers','sc-bt','sony kdl22bx20d','sony kdl-40ex43b','55ld690','panasonic g10','37 full hd tv','kdl60ex703','46c580j1kxxu','lc19dv200e','sony kdl32ex301','security camera','ssg 2100ab','panasonic 32 inch','lg 50 inch','sony kdl32ex403u','lg 50pj650','sony bdv-e870','lg 42 sl9000','sony kdl 40v5800','panasonic tx-p50x20b','lg 42 inch','37w5500','50c450b1wxxu','sony kdl37ex401','lg 60pk790','le55c650l1kxxu','sony kdl46ex503','sony 40 703','panasonic txp42g20','4010','55c8000xkxxu','sony kdl 40hx703','panasonic tx-p50vt20','sony 1080p','ssgp2100','46 inch led tv','sony kdl 37ex403','403u','lg 47lh4000','bdv-e','panasonic txl37d25','sony 46 inch tv','lc42','panasonic txl42d25','tv usb record','sony mp3','lcd warranty','ipod accessories','sony kdl w5500','ps58','lg 32 lcd','tv mounts','19dv','42 lh4000','panasonic camcorders','samsung series 5','sony 32 1080','txp37x20','dmrbs850','kdl 46ex503','sony 32ex403','lh200','lg 26 lh2000','samsung white lcd','sony 52 inch','p50vt20','samsung le22b541c4','panasonic blu','55c6530','32dh500e','sdhc','lg 50pk590 plasma tv','sony 46 inch lcd tv','kdl-52z4500u','sony camcorders','lg 42lh2000 42','dsc-w270b','lm-bru25lae','sony rdr dc205','l37g','sony 52 inch tv','26av615db','quad','sc btx70eb-k','tx l32g10','bdc8200','3d bluray','le46b','sony kdl46','lc22dv200','kdl-22ex302','lg 37le5300 37','lg tv 42','sony kdl40we5b','lh400','sony kdl46ex403u','scsp100ebk','bun rdr-dc205 1341','bs850ebk','hdr-cx115el','3d home cinema','sony kdl 40ex503','46 freesat tv','lf770','digital optical cable','sony kdl-40ex703','37 in','sony ex401','panasonic tx p42','sony bravia kdl32ex503','dvb-s','samsung 40b650','tv lcd blu ray','l32g10','1100','panasonic 850','kdl 46ex703','sony kdl-40hx703','sony kdl32ex703u','32 100hz','panasonic txl37d25b','samsung 40 hd ready 1080p lcd tv','samsung cinema system','lc32dh','panasonic pdp','sony 46ex503','37 ex503','pdp','panasonic home theatre','kdl-32ex603','46 freesat','lg h3000','sony 26 inch tv','lg 6000','digital recorder','46b600','p37x20','samsung hmx-u10','lg 42l','dscs930b','7700','lg bd370','4th gen ipod','panasonic hd freeview','46le600','samsung ue37','bdp','samsung bd-p1580','panasonic s10','tx.p50s20b','skin','pocket camcorder','37c530','503u','sony bravia kdl-37ex401u 37 full hd lcd tv','19 lcd','bun kdl40ex503u 1331','samsung ps42b','bun tx-p46g20b 133','sony kdl40nx503','bun kdl52ex703u 1332','samsung 50 tv','bun kdl46ex503u 133','lg 50 ps3000','bun kdl46ex403u 132','sony 46x4500','47 led','bun kdl46ex403u 1328','tx-p42s','32 lg 32lh4000','lg tv 50','sony bravia ex503','panasonic dmp-bd80 blu-ray player','picture-in-picture','sony kdl37v5810u','panasonic l32g10','bun kdl37ex503u 1330','sony bravia kdl32w5810u','lnb','7020w','26c450','sony 32ex43b','600e','samsung camera','ue37b','le26c450e1wxxu','dscwx1n','kdl 40w5810','bag','bun kdl40nx503u 133','sony kdl46ex503u','bun kdl37ex401u 1330','32 samsung le32b450','sony dsc-wx1','800','sony bravia kdl32v5810','lcd usb','touch','satellite','server','32 ins tv','samsung le32b550a5wxx 32in full hd digital lcd tv','ue32c5100qfxxu','sony wx1','silver ipod nano','sony camera case','sony bravia tv','panasonic 42 tv','lg 19lu','samsung rose black','22b470','bun ps50b560t7wxxu 1322','40 in sony','sony bravia kdl32ex403','26 combi tvs','panasonic hifi','064qb a','panasonic recorder','lg tv 40','txl37v','kdl46we5bu','dmc-tz8eb-k','samsung 22 lcd','19 dvd','sony bravia kdl32w5810 lcd hd 1080p','panasonic lumix dmcfs62','sony hd','46g','pf1','50b450','p1580','panasonic dmc fx60','samsung b650','sony\'s kdl-40w5500','prestigio','panasonic g20 plasma tv','sony lcd 52','tx p50g10','sony kdl 32w5810','lg 22lu4000','46w4000','7672','3430b006aa','46 inches panasonic tv','37v10b','ls23cfvkf en','kdl32v','sony tv w5810','ltv-2213whtc','sony bravia kdl40z5800','sbzt','50 g10','samsung 46 inch lcd tv','sony htss100','sony kdl46z4500 46','l32','samsung le40b6','sony kdl52w5500u','sony giga','l26x10','42 panasonic g10 plasma','panasonic p42g15','tv built in dvd','47 sl8000','32lh 3000','panasonic digital cameras','lcd551','lc42dh77e','sc','panasonic x10','42xv','panasonic bs750','tg7','luxury 3 tier black','6000','lg 32sl8000 lcd','4500','1580','panasonic freesat plasma','685db','panasonic lumix dmcfs62eb digital camera in pink','samsung 450','3444b007aa','37 g15','panasonic surround sound','lh30','panasonic tx-l37g10 37 1080p lcd tv','sony bravia kdl-37v5810','42s10b','samsung wb550','panasonic tx.p42s10b','lg 42 2000','panasonic txl32x10','panasonic tx p42g15b','sony kdl-40v5810','sony 1080','lg with freesat','lg home','sony kdl 32 w5810','37 televisions','dmc-fs15eb-k','sony kdl-46w5810','tx-l32c','tx l19x10','panasonic 100hz','32rv','panasonic tx-l37g10b lcd tv','plasma usb','txl 37 g10','sony kdl-37s5500u','sony bravia kdl37v5500','bun-tx-p46g15b','sony bravia kdl-32w5810u','picture frames','47lh','sony bravia kdl-37w5500','50g10b','panasonic tx-p50x10','lg lu5000','panasonic tx-l32g10b 32','lg bd','32 lg lh4000','50b560','sony bravia kdl40z5800u lcd hd','lg 42 sl8000','sony bravia kdl46w5500','samsung le-32b450','lg 42 freesat','lg 42 1080p','19wlm550dhid','panasonic tv silver','lc26sh7ebk','dual','sony bravia kdl-32w5500','sony kdl-52v5500','samsung.le32b530','lg 42 3000','26lg3050','sony kdl-46v5500');
/* $Revision: 3828 $
 *
 */

if(typeof(_sli_init )!='object'){var _sli_init=new Array();}
if(typeof(sli_init )!='function'){function sli_init(){ for(var x=0;x<_sli_init.length;x++) _sli_init[x]();}}
if(typeof(asPhrases)!='object'){ var asPhrases = new Array(); }
if(typeof(__SLI_customisations)!='object'){var __SLI_customisations = new Object();}
if(typeof(__SLI_ClientDefaults)!='object'){ var __SLI_ClientDefaults=[]; }
if(typeof(__SLI_validSearchBoxes)!='object'){ var __SLI_validSearchBoxes = new Array(); }
if(typeof(__SLI_asug_used_flag)!='object'){ var __SLI_asug_used_flag = false; }
if(typeof(__SLI_width)!='object'){ var __SLI_width = 0; }
if(typeof(sli_targeturl)!='object'){ var sli_targeturl = ""; }


    __AutoComplete = new Object(); //namespace...
    __AutoComplete_mouseMoved=false;

    // Basic UA detection
    isIE = document.all ? true : false;
    isGecko = navigator.userAgent.toLowerCase().indexOf('gecko') != -1;
    isOpera = navigator.userAgent.toLowerCase().indexOf('opera') != -1;

    /* defaults and options */

    var __SLI_ApplicationName = 'AutoSuggest';
        __SLI_customisations[ 'AutoSuggest' ] =
                {
                    'ShowBrandingFooter' : true
                    ,
                    'TextBoxIDPrefix' : 'sli_search_'
                    ,
                    'BrandingFooterImagePath' : 'http://assets.resultspage.com/autosuggest/sli_systems-powered_150_15.gif'
                    ,
                    'BrandingFooterTitleTooltip' : 'AutoSuggest Powered by SLI Systems'
                    ,
                    'DropListMinWidth' : 150
                    ,
                    'MaxListItems' : 10
                    ,
                    'Alignment' : true
                    ,
                    'TextBoxIDCustom' : []
                    ,
                    'ValidSearchBoxes' : false 
                    ,
                    'IE6SelectBox' : false 
                    ,
                    'IE6SelectBoxPadding' : 0
                    ,
                    'TargetURL' : ''
                    ,
                    'IframeAlignment' : false
                    ,
                    'AlignmentBorderBug' : false
                    ,
                    'IE6OnFocus' : false
                };
    /* 0 = keyname, 1 = value */
    for( defaultValuePair in __SLI_ClientDefaults )
    {
        __SLI_customisations[__SLI_ApplicationName][__SLI_ClientDefaults[defaultValuePair][0]]=__SLI_ClientDefaults[defaultValuePair][1];
    }

    /* pre-fetch branding footer image if being used...
     */
    if( __SLI_customisations[ __SLI_ApplicationName ][ 'ShowBrandingFooter' ] )
    {
        
        if(location.protocol == "https:")
        {
            __SLI_customisations[ __SLI_ApplicationName ][ 'BrandingFooterImagePath' ] = __SLI_customisations[ __SLI_ApplicationName ][ 'BrandingFooterImagePath' ].replace(/http:/i, 'https:');
        }
    
        var __AutoCompleteBranding = new Image();
        __AutoCompleteBranding.src=__SLI_customisations[ __SLI_ApplicationName ][ 'BrandingFooterImagePath' ];
    }


    function AutoComplete_init()
    {
        if(!isOpera)
        {
            var oldonresize=function(){};
            if(typeof(window.onresize)=='function')
                oldonresize = window.onresize;//play nicely with other people's toys
            window.onresize= function(){ oldonresize(); AutoComplete_HideAll(); AutoComplete_Create( asPhrases ); }

            AutoComplete_Create( asPhrases );
            
            var els = document.getElementsByTagName('input');
            if(els)
            {
               for ( i = 0; i < els.length; i++ )
               {
                  if(els[i].name == "asug")
                  {
                     els[i].disabled = true;
                  }
               }
            }
        }
    }




    /**
    * Attachs the autocomplete object to a form element. Sets
    * onkeypress event on the form element.
    *
    * @param string formElement Name of form element to attach to
    * @param array  data        Array of strings of which to use as the autocomplete data
    */
    //function AutoComplete_Create (id, data)
    /*
     * iterate over 'sli_search_*' assumes one or more search boxes numbered from 1...
    */
    function AutoComplete_Create( data )
    {
        var idx=1, e, id, searchBoxPrefix=__SLI_customisations[ __SLI_ApplicationName ][ 'TextBoxIDPrefix' ];
        while( e = document.getElementById(searchBoxPrefix+idx) )
        {
            AutoComplete_AttachHandlers(e, data);
            if( __SLI_customisations[ __SLI_ApplicationName ][ 'ValidSearchBoxes' ] )
            {
                __SLI_validSearchBoxes.push(searchBoxPrefix+idx);
            }
            idx++;
        }
        
        
        //this array comes from the customised list
        var otherTextBoxIdList = __SLI_customisations[ __SLI_ApplicationName ][ 'TextBoxIDCustom' ];
        if( otherTextBoxIdList)
        {
            for(idx=0;idx<otherTextBoxIdList.length;idx++)
            {
                e = document.getElementById(otherTextBoxIdList[idx]);
                if(e)
				{
					if( __SLI_customisations[ __SLI_ApplicationName ][ 'ValidSearchBoxes' ] )
                	{
	                    __SLI_validSearchBoxes.push( otherTextBoxIdList[idx] );
                	}
					AutoComplete_AttachHandlers(e, data);
				}
            }
        }
        
    } 

    function AutoComplete_AttachHandlers(e, data){
        var iframe,id;
        id=e.id;


        __AutoComplete[id] = {'data':data,
                              'isVisible':false,
                              'element':document.getElementById(id),
                              'dropdown':null,
                              'highlighted':null};

        __AutoComplete[id]['element'].setAttribute('autocomplete', 'off');
        __AutoComplete[id]['element'].onkeydown = function(e) {if (!e) e = window.event; return AutoComplete_KeyDown(this.getAttribute('id'), e);}
        __AutoComplete[id]['element'].onkeyup = function(e) {if (!e) e = window.event; return AutoComplete_KeyUp(this.getAttribute('id'), e);}
        // The function call on the next line was changed by Andrew Grieve April 2008
        __AutoComplete[id]['element'].onkeypress = function(e) {if (!e) e = window.event; return AutoComplete_KeyPress(this.getAttribute('id'), e);}
        __AutoComplete[id]['element'].onclick = function(e)
        {
            if( __SLI_customisations[ __SLI_ApplicationName ][ 'IE6OnFocus' ] )
            {
                __AutoComplete[id]['element'].focus();
            }
            if (!e) e = window.event; e.cancelBubble = true; e.returnValue = false;
        }



        // Hides the dropdowns when document clicked
        var docClick = function()
        {
            if( __SLI_customisations[ __SLI_ApplicationName ][ 'ValidSearchBoxes' ] )
            {
               for(var i=0; i < __SLI_validSearchBoxes.length; i++)
               {
                   if(document.getElementById(__SLI_validSearchBoxes[i]))
                   {
                       AutoComplete_HideDropdown(__SLI_validSearchBoxes[i]);
                   }
               }
            }
            else
            {
                for (id in __AutoComplete)
                {
                   AutoComplete_HideDropdown(id);
                }
            }
        }

        if (document.addEventListener) {
            document.addEventListener('click', docClick, false);
        } else if (document.attachEvent) {
            document.attachEvent('onclick', docClick, false);
        }


        // Max number of items shown at once
        if (arguments[2] != null) {
            __AutoComplete[id]['maxitems'] = arguments[2];
            __AutoComplete[id]['firstItemShowing'] = 0;
            __AutoComplete[id]['lastItemShowing'] = arguments[2] - 1;
        }

        AutoComplete_CreateDropdown(id);

        // Prevent select dropdowns showing thru
        if (isIE) {
            iframe = document.createElement('iframe');
            __AutoComplete[id]['iframe'] = iframe;
                iframe.id = id +'_iframe';
                iframe.style.position = 'absolute';
                iframe.style.top = '0';
                iframe.style.left = '0';
                iframe.style.width = '0px';
                iframe.style.height = '0px';
                iframe.style.zIndex = '98';
                iframe.style.visibility = 'hidden';
                
                if(location.protocol == "https:")
                {
                   iframe.src = 'https://assets.resultspage.com/autosuggest/blank.html';
                }
                
                if( __SLI_customisations[ __SLI_ApplicationName ][ 'IE6SelectBox' ] )
                {
                  iframe.style.width = __SLI_width  + __SLI_customisations[ __SLI_ApplicationName ][ 'IE6SelectBoxPadding'];
                }

            if( __SLI_customisations[ __SLI_ApplicationName ][ 'IframeAlignment' ] )
            {
                document.body.insertBefore( iframe );
            }
            else
            {
                __AutoComplete[id]['element'].parentNode.insertBefore( iframe, __AutoComplete[id]['element'] );
            }
        }
    }

    /**
    * Creates the dropdown layer
    *
    * @param string id The form elements id. Used to identify the correct dropdown.
    */
    function AutoComplete_CreateDropdown(id)
    {
        var theSearchbox = __AutoComplete[id]['element'];
        var theDropDown;
        var left_top = AutoComplete_getPos( theSearchbox );
        var left  = left_top[0];
        var top   = left_top[1] + theSearchbox.offsetHeight;
        var width = theSearchbox.offsetWidth;

        if ( width < __SLI_customisations[ __SLI_ApplicationName ][ 'DropListMinWidth' ] )
        {
            width = __SLI_customisations[ __SLI_ApplicationName ][ 'DropListMinWidth' ];
        }

        theDropDown = document.createElement('div');
        theDropDown.className = 'autocomplete'; // Don't use setAttribute()


        if(__SLI_customisations[ __SLI_ApplicationName ][ 'Alignment' ] == true && document.body)
        {
            theDropDown.style.position = 'absolute';
            document.body.insertBefore(theDropDown, document.body.nextSibling);
            
            // Position it
            theDropDown.style.visibility = 'hidden';
            theDropDown.style.left       = left + 'px';
            theDropDown.style.top        = top + 'px';
            theDropDown.style.width      = width + 'px';
            theDropDown.style.zIndex     = '99999';
        }
        else if(__SLI_customisations[ __SLI_ApplicationName ][ 'Alignment' ] == "offsetrelative" && document.body)
        {
          theSearchbox.parentNode.insertBefore(theDropDown, theSearchbox);
          // Position it
          if(sli_getStyle(theSearchbox.offsetParent, 'position') != "absolute")
          {
            theSearchbox.offsetParent.style.position = 'relative';
          }
          theDropDown.style.position = 'absolute';
          theDropDown.style.left = (theSearchbox.offsetLeft) + 'px';
          theDropDown.style.top = (theSearchbox.offsetTop + theSearchbox.offsetHeight) + 'px';
          theDropDown.style.width = (theSearchbox.clientWidth) + 'px';
          theDropDown.style.visibility = 'hidden';
          theDropDown.style.zIndex     = '99999999';
        }
        else
        {
            theSearchbox.parentNode.insertBefore(theDropDown, theSearchbox);
            // Position it
            theDropDown.style.visibility = 'hidden';
            theDropDown.style.left       = left + 'px';
            theDropDown.style.top        = top + 'px';
            theDropDown.style.width      = width + 'px';
            theDropDown.style.zIndex     = '99999';
        }
        

        __AutoComplete[id]['dropdown'] = theDropDown;
        __SLI_width = width;
    }

    function /* array [ left, top ] */ AutoComplete_getPos( obj )
    {
        var curleft = curtop = 0;
        var sli_flag = 0;

        if (obj.offsetParent)
        {
           do
           {
              if ( __SLI_customisations[ __SLI_ApplicationName ][ 'AlignmentBorderBug' ] )
              {         
                
                if(sli_flag == 1)
                {
                    var clientTop = (obj.offsetHeight - obj.clientHeight) / 2;
                    curtop += clientTop;

                    var clientLeft = (obj.offsetWidth - obj.clientWidth) / 2;
                    curleft += clientLeft;
                }
                sli_flag = 1;
              }
           
              curleft += obj.offsetLeft;
              curtop += obj.offsetTop;
           }
           while (obj = obj.offsetParent);
        }
        return [curleft,curtop];
    }

    /**
    * Shows the dropdown layer
    *
    * @param string id The form elements id. Used to identify the correct dropdown.
    */
    function AutoComplete_ShowDropdown(id)
    {

        AutoComplete_HideAll();



        var value = __AutoComplete[id]['element'].value;
        var toDisplay = new Array();
        var newDiv    = null;
        var text      = null;
        var numItems  = __AutoComplete[id]['dropdown'].childNodes.length;

        __AutoComplete_mouseMoved=false;
        // SLI Code Modification - Start - Andrew Grieve April 08
        // Trim the textbox so that if is starts with a space then the feature will still work
        //value = value.replace(/^\s+|\s+$/g,"");
        value = value.replace(/^\s+/g,"");

        if(value.length == "")
        {
            // If Textbox length is nothing (after the trim) then don't show dropdown.
            return;
        }
        // SLI Code Modification - End

        // Remove all child nodes from dropdown
        while (__AutoComplete[id]['dropdown'].childNodes.length > 0) {
            __AutoComplete[id]['dropdown'].removeChild(__AutoComplete[id]['dropdown'].childNodes[0]);
        }


        var count=0;
        // Go thru data searching for matches
        for (i=0; i<__AutoComplete[id]['data'].length; ++i)
        {
            // SLI Code Modification - Start - Andrew Grieve April 08 - Added lower casing
            if (__AutoComplete[id]['data'][i].substr(0, value.length).toLowerCase() == value.toLowerCase())
            {
                // SLI Code Modification - End
                toDisplay[toDisplay.length] = __AutoComplete[id]['data'][i];
                count++;
                /* how many to display? */
                if(count == __SLI_customisations['AutoSuggest']['MaxListItems'] ) /* Code inserted to keep list to a maximum of 10 values (was 20 or 30) */
                {
                    break;
                }
            }
        }

        // No matches?
        if (toDisplay.length == 0) {
            AutoComplete_HideDropdown(id);
            return;
        }



        // Add data to the dropdown layer
        for (i=0; i<toDisplay.length; ++i) {
            newDiv = document.createElement('div');
            newDiv.className = 'autocomplete_item'; // Don't use setAttribute()
            newDiv.setAttribute('id', 'autocomplete_item_' + i);
            newDiv.setAttribute('index', i);
            newDiv.style.zIndex = '99999';

             // Scrollbars are on display ?
            if (toDisplay.length > __AutoComplete[id]['maxitems'] && navigator.userAgent.indexOf('MSIE') == -1) {
                newDiv.style.width = __AutoComplete[id]['element'].offsetWidth - 22 + 'px';
            }

            newDiv.onmouseover =
        function()
        {
            if( __AutoComplete_mouseMoved )
                AutoComplete_HighlightItem(__AutoComplete[id]['element'].getAttribute('id'), this.getAttribute('index'));
        };

            newDiv.onclick     =    function()
                                    {
                                    	  __SLI_asug_used_flag = true;
                                                                           
                                        AutoComplete_SetValue(__AutoComplete[id]['element'].getAttribute('id'));
                                        AutoComplete_HideDropdown(__AutoComplete[id]['element'].getAttribute('id'));
                                        AutoComplete_submitForm(id);
                                    }



            text   = document.createTextNode(toDisplay[i]);
            newDiv.appendChild(text);
            newDiv.title='Search for ' + toDisplay[i];

            /* ellipsis for IE only */
            if( isIE )
            {
                newDiv.style.textOverflow = 'ellipsis';
                newDiv.style.width = '100%';
                newDiv.style.whiteSpace = 'nowrap';
                newDiv.style.overflow = 'hidden';

            }
            __AutoComplete[id]['dropdown'].appendChild(newDiv);
        }
        /*
         * append DIV containing footer branding...
         */
        if(__SLI_customisations['AutoSuggest']['ShowBrandingFooter'])
        {
            i = toDisplay.length;
            newDiv = document.createElement('div');
            newDiv.className = 'autocomplete_footer'; // Don't use setAttribute()
            newDiv.setAttribute('id', 'autocomplete_item_' + i);
            newDiv.setAttribute('index', i);
            newDiv.style.zIndex = '99999';
            newDiv.innerHTML = '<a href="http://www.sli-systems.com/powered-by.php" title="' +
                                __SLI_customisations[ __SLI_ApplicationName ][ 'BrandingFooterTitleTooltip' ] +
                                '"><img class="autocomplete_footer_branding" src="'+__AutoCompleteBranding.src+'" /></a>';

            __AutoComplete[id]['dropdown'].appendChild(newDiv);
        }


        // Too many items?
        if (toDisplay.length > __AutoComplete[id]['maxitems']) {
            __AutoComplete[id]['dropdown'].style.height = (__AutoComplete[id]['maxitems'] * 15) + 2 + 'px';

        } else {
            __AutoComplete[id]['dropdown'].style.height = '';
        }


        /**
        * Set left/top in case of document movement/scroll/window resize etc
        */
        if(__SLI_customisations[ __SLI_ApplicationName ][ 'Alignment' ] == "true" || __SLI_customisations[ __SLI_ApplicationName ][ 'Alignment' ] == "false")
        {
            var left_top = AutoComplete_getPos( __AutoComplete[id]['element'] );
            __AutoComplete[id]['dropdown'].style.left = left_top[0];
            __AutoComplete[id]['dropdown'].style.top  = left_top[1] + __AutoComplete[id]['element'].offsetHeight;
        }


        // Show the iframe for IE
        if (isIE) {
            
            if(!__SLI_customisations[ __SLI_ApplicationName ][ 'Alignment' ] == true)
            {
               __AutoComplete[id]['iframe'].style.width  = __AutoComplete[id]['dropdown'].offsetWidth;
            }
            
            
            __AutoComplete[id]['iframe'].style.top    = __AutoComplete[id]['dropdown'].style.top;
            __AutoComplete[id]['iframe'].style.left   = __AutoComplete[id]['dropdown'].style.left;
            __AutoComplete[id]['iframe'].style.height = __AutoComplete[id]['dropdown'].offsetHeight;

            __AutoComplete[id]['iframe'].style.visibility = 'visible';
        }

    e =  __AutoComplete[id]['dropdown'];

    e.onmousemove =
        function()
        {
            if(!__AutoComplete_mouseMoved){__AutoComplete_mouseMoved=true;}
            this.onmousemove = null;
        }

        // Show dropdown
        if (!__AutoComplete[id]['isVisible']) {
            __AutoComplete[id]['dropdown'].style.visibility = 'visible';
            __AutoComplete[id]['isVisible'] = true;
        }


        // If now showing less items than before, reset the highlighted value
        if (__AutoComplete[id]['dropdown'].childNodes.length != numItems) {
            __AutoComplete[id]['highlighted'] = null;
        }
    }



    /**
    * Hides the dropdown layer
    *
    * @param string id The form elements id. Used to identify the correct dropdown.
    */
    function AutoComplete_HideDropdown(id)
    {
        if (__AutoComplete[id]['iframe'])
        {
            __AutoComplete[id]['iframe'].style.visibility = 'hidden';
        }
        
        if (__AutoComplete[id]['dropdown'])
        {
            __AutoComplete[id]['dropdown'].style.visibility = 'hidden';
        }

        __AutoComplete[id]['highlighted'] = null;
        __AutoComplete[id]['isVisible']   = false;
    }


    /**
    * Hides all dropdowns
    */
    function AutoComplete_HideAll()
    {
         if( __SLI_customisations[ __SLI_ApplicationName ][ 'ValidSearchBoxes' ] )
         {
               for(var i=0; i < __SLI_validSearchBoxes.length; i++)
               {
                   if(document.getElementById(__SLI_validSearchBoxes[i]))
                   {
                       AutoComplete_HideDropdown(__SLI_validSearchBoxes[i]);
                   }
               }
         }
         else
         {
                for (id in __AutoComplete)
                {
                   AutoComplete_HideDropdown(id);
                }
         }
    }


    /**
    * Highlights a specific item
    *
    * @param string id    The form elements id. Used to identify the correct dropdown.
    * @param int    index The index of the element in the dropdown to highlight
    */
    function AutoComplete_HighlightItem(id, index) // mouseover, index is the list element index, zero-based
    {
        if (__AutoComplete[id]['dropdown'].childNodes[index]) {
            for (var i=0; i<__AutoComplete[id]['dropdown'].childNodes.length; ++i) {
                if (__AutoComplete[id]['dropdown'].childNodes[i].className == 'autocomplete_item_highlighted') {
                    __AutoComplete[id]['dropdown'].childNodes[i].className = 'autocomplete_item';
                }
            }

            __AutoComplete[id]['dropdown'].childNodes[index].className = 'autocomplete_item_highlighted';
            __AutoComplete[id]['highlighted'] = index;

            //also see below...
            //__AutoComplete[id]['element'].value = __AutoComplete[id]['dropdown'].childNodes[index].innerHTML;
            //AutoComplete_SetValue(id);
        }
    }


    /**
    * Highlights the menu item with the given index
    *
    * @param string id    The form elements id. Used to identify the correct dropdown.
    * @param int    index The index of the element in the dropdown to highlight
    */
    function AutoComplete_Highlight(id, index) // keyboard up/down - index is the direction of travel, 1==down,-1=up
    {
        var childNodes = __AutoComplete[id]['dropdown'].childNodes;
        if(childNodes.length)
        {
	        var lastItem = ( ( childNodes[ childNodes.length - 1 ].className != 'autocomplete_footer' ) ? childNodes.length - 1 : childNodes.length - 2 );

            // Out of bounds checking
            //if (index == 1 && __AutoComplete[id]['highlighted'] == __AutoComplete[id]['dropdown'].childNodes.length - 1) {
            if (index == 1 && __AutoComplete[id]['highlighted'] == lastItem ) {
                childNodes[__AutoComplete[id]['highlighted']].className = 'autocomplete_item';
                __AutoComplete[id]['highlighted'] = null;

            } else if (index == -1 && __AutoComplete[id]['highlighted'] == 0) {
                childNodes[0].className = 'autocomplete_item';
                __AutoComplete[id]['highlighted'] = lastItem;
                index = 0;//hack!
            }

            // Nothing highlighted at the moment
            if (__AutoComplete[id]['highlighted'] == null) {

                childNodes[0].className = 'autocomplete_item_highlighted';
                __AutoComplete[id]['highlighted'] = 0;
                newIndex = 0;
                
            } else {

                if (childNodes[__AutoComplete[id]['highlighted']]) {
                
                    childNodes[__AutoComplete[id]['highlighted']].className = 'autocomplete_item';
                }

                var newIndex = parseInt( __AutoComplete[id]['highlighted'] ) + parseInt(index);

                if (childNodes[newIndex]) {

                    childNodes[newIndex].className = 'autocomplete_item_highlighted';

                    __AutoComplete[id]['highlighted'] = newIndex;
                }
            }

            //populate textbox with currently highlighted term...
            //__AutoComplete[id]['element'].value = __AutoComplete[id]['dropdown'].childNodes[newIndex].innerHTML;
            AutoComplete_SetValue(id);
        }
    }


    /**
    * Sets the input to a given value
    *
    * @param string id    The form elements id. Used to identify the correct dropdown.
    */
    function AutoComplete_SetValue(id)
    {
        __AutoComplete[id]['element'].value = __AutoComplete[id]['dropdown'].childNodes[__AutoComplete[id]['highlighted']].innerHTML.replace(/&amp;/, "&");
    }


    /**
    * Checks if the dropdown needs scrolling
    *
    * @param string id    The form elements id. Used to identify the correct dropdown.
    */
    function AutoComplete_ScrollCheck(id)
    {
        // Scroll down, or wrapping around from scroll up
        if (__AutoComplete[id]['highlighted'] > __AutoComplete[id]['lastItemShowing']) {
            __AutoComplete[id]['firstItemShowing'] = __AutoComplete[id]['highlighted'] - (__AutoComplete[id]['maxitems'] - 1);
            __AutoComplete[id]['lastItemShowing']  = __AutoComplete[id]['highlighted'];
        }

        // Scroll up, or wrapping around from scroll down
        if (__AutoComplete[id]['highlighted'] < __AutoComplete[id]['firstItemShowing']) {
            __AutoComplete[id]['firstItemShowing'] = __AutoComplete[id]['highlighted'];
            __AutoComplete[id]['lastItemShowing']  = __AutoComplete[id]['highlighted'] + (__AutoComplete[id]['maxitems'] - 1);
        }

        __AutoComplete[id]['dropdown'].scrollTop = __AutoComplete[id]['firstItemShowing'] * 15;
    }


    /**
    * Function which handles the keypress event
    *
    * @param string id    The form elements id. Used to identify the correct dropdown.
    */
    function AutoComplete_KeyDown(id, e)
    {
        var result = true;

       var event;
       event = e;
       if(!event) event = window.event;

        var keyCode = event.keyCode;

        switch (keyCode) {

            // Return/Enter
            case 13:
                if (__AutoComplete[id]['highlighted'] != null) {
                    AutoComplete_SetValue(id);
                    AutoComplete_HideDropdown(id);
					
                    __SLI_asug_used_flag = true;
					
                    if( e = __AutoComplete[id]['element'].form['asug'] )
                    {
                        
                        e.disabled=false;
                        e.value = __AutoComplete[id]['asug'];
                    }

                }

                result = AutoComplete_submitForm(id);

                break;

            // Escape
            case 27:
                AutoComplete_HideDropdown(id);
                event.returnValue = false;
                event.cancelBubble = true;
                break;

            // Up arrow
            case 38:
                if (!__AutoComplete[id]['isVisible']) {
                    AutoComplete_ShowDropdown(id);
                }

                AutoComplete_Highlight(id, -1);
                AutoComplete_ScrollCheck(id, -1);
                
                if( e = __AutoComplete[id]['element'].form['asug'] )
                {
                   e.disabled=false;
                   e.value = __AutoComplete[id]['asug'];
                }

                                
                result = false;
                break;

            // Tab
            case 9:
                if (__AutoComplete[id]['isVisible']) {
                    AutoComplete_HideDropdown(id);
                }
                return;

            // Down arrow
            case 40:

                if (!__AutoComplete[id]['isVisible']) {
                    AutoComplete_ShowDropdown(id);
                }

                AutoComplete_Highlight(id, 1);
                //AutoComplete_ScrollCheck(id, 1);

                if( e = __AutoComplete[id]['element'].form['asug'] )
                {
                   e.disabled=false;
                   e.value = __AutoComplete[id]['asug'];
                }

                result = false;
                break;
        }
        return result;
    }


    /**
    * Function which handles the keyup event
    *
    * @param string id    The form elements id. Used to identify the correct dropdown.
    */
    function AutoComplete_KeyUp(id, e)
    {
       var event;
       event = e;
       if(!event) event = window.event;

        var keyCode = event.keyCode;

        switch (keyCode) {
            case 13:
                event.returnValue = false;
                event.cancelBubble = true;
                
                break;

            case 27:
                AutoComplete_HideDropdown(id);
                event.returnValue = false;
                event.cancelBubble = true;
                break;

            case 38:
            case 40:
                return false;
                break;

            default:
                AutoComplete_ShowDropdown(id);
                
                __AutoComplete[id]['asug']=__AutoComplete[id]['element'].value;

                if( e = __AutoComplete[id]['element'].form['asug'] )
                {
                   e.disabled=true;
                   e.value = "";
                }  
                
                break;
        }
    }

    /**
    * Function which handles the keypress event
    * This function added April 2008 by Andrew Grieve
    *
    * @param string id    The form elements id. Used to identify the correct dropdown.
    */

    // SLI Code Modification - Start - Andrew Grieve April 08
    function AutoComplete_KeyPress(id, e)
    {
        var event = e;
        if(!event) event = window.event;
        var keyCode = event.keyCode;

        if (keyCode == 13 && isGecko || isOpera)
        {
            return false;
        }
        
        if( __SLI_customisations[ __SLI_ApplicationName ][ 'TargetURL' ] )
        {
            if (keyCode == 13 && isIE)
            {
                return false;
            }
        }
        
    }
    // SLI Code Modification - End

    /**
    * Returns whether the dropdown is visible
    *
    * @param string id    The form elements id. Used to identify the correct dropdown.
    */
    function AutoComplete_isVisible(id)
    {
        return __AutoComplete[id]['dropdown'].style.visibility == 'visible';
    }

    function AutoComplete_submitForm(id)
    {
        var e, f, result=true;
        if( f = __AutoComplete[id]['element'].form )
        {
            if( __AutoComplete[id]['element'].value != '' )
            {
            	if(__SLI_asug_used_flag == true)
            	{
                   if( e = f['asug'])
                   {
                      e.value = __AutoComplete[id]['asug'];
                      e.disabled=false;
                   }
                }
                
                if( __SLI_customisations[ __SLI_ApplicationName ][ 'TargetURL' ] )
                {
                	asugvar = "";
                	if(__SLI_asug_used_flag == true)
                	{
                	  asugvar = '&asug=' + __AutoComplete[id]['asug'];
                  	}
                    
                    sliRegex = /resultsdemo\.com/;
                    if(sliRegExArray = sliRegex.exec(document.domain))
                    {
                    	sliRegex = /^http:\/\/(.*)\//;
                    	sliTargetDomain = sliRegex.exec(__SLI_customisations[__SLI_ApplicationName ][ 'TargetURL' ]);
                    	__SLI_customisations[__SLI_ApplicationName ][ 'TargetURL' ] = __SLI_customisations[__SLI_ApplicationName ][ 'TargetURL' ].replace(sliTargetDomain[1], document.domain);
                    }
                    
                	document.location.href = __SLI_customisations[__SLI_ApplicationName ][ 'TargetURL' ] + __AutoComplete[id]['element'].value + asugvar;
                }
                else
                {
                	f.submit();
                }
                
                AutoComplete_HideAll();
            }
            else
                result = false;
        }
        return result;
    }
    
    // get the style that will be applied by the browser, including stylesheets
    function sli_getStyle(el,styleProp)
    {
      if (el.currentStyle)
        var y = el.currentStyle[styleProp];
      else if (window.getComputedStyle)
        var y = document.defaultView.getComputedStyle(el,null).getPropertyValue(styleProp);
      return y;
    }

    // register with onLoad(er...
    _sli_init.push( AutoComplete_init );
    
    function sli_addEvent(obj, evType, fn) {
    	if (obj.addEventListener) {
    		obj.addEventListener(evType, fn, false);
    		return true;
    	} else if (obj.attachEvent) {
    		var r = obj.attachEvent("on" + evType, fn);
    		return r;
    	} else {
    		return false;
    	}
    }
    
    function sli_load()
    {
    	sli_addEvent(window, 'load', sli_init);
    }