/* Popular phrases - PCRUSH - Friday, November 20, 2009*/
var asPhrases=new Array ('hp officejet pro 8500 wireless','ae2010-02sus','11 x 17 color printer copier scanner','11 x 17 media all in one printers','hp officejet pro 8500','11 x 17 printers','msi wind','silencer 500 dell','msi wind top','ae2010','wireless all-in-one printer','silencer 910','ppcs500d','hp officejet pro 8500 premier','inkjet printers 11 x 17','flat screen tv','hp 8500','11 x 17 scanner','hp 8500 wireless','msi ae2010','pk-101','8500 premier','legal size scanner','11 x 17 flatbed scanner','gpsmap 276','xlr to rca','msi','cb025a b1h','officejet pro 8500','fujitsu scanner','pc power cooling silencer 910','silencer 750 quad','synology','gps','jvc kaboom','sony laptops','scansnap refurbished','pioneer elite receiver','hp pavilion','11 x 17 color copier','duplex color laser printer','pc power and cooling','13 x 19 printers','hp mobile printer','l7780','pico projector','scansnap','cb518a','color laser printer','duplex scanner','cb025a','mobile printers','11 x 17 paper printer','cheap laptop computers','speakers','ce459a aba','blu ray disc players','garmin nuvi 255w','pocket projector','netbook','cb023a b1h','p2035','8500','garmin 2820','silencer 500','power supply','p2055dn','digital camera','hp officejet 6500 wireless','shipping','msi wind top ae2010-02sus desktop','viewsonic mini','garmin nuvi 260w','p4014dn','power supply dell','canon 3818b002','officejet pro 8000','asus 1005ha-pu1x-bk','gps for trucks','bz569p44','cc435a','garmin','scanners','plasma tv','scansnap s510','hp 8000','11 x 17 all in one','hp 11 x 17 media printer','anxr10lp','ds209','ppcs910','p2035n','garmin nuvi','acer veriton','label printers','nas','hd projectors','ce459a','asus 1005ha-pu1x-bu','acer lx.pdm0x.092','m1522nf','all in one laser printer','officejet pro 8500 premier','bdp1600','computer speakers','wind top','nuvi 250w','automobile gps','color laser printers 11 x 17','4700dn','fujitsu scansnap','cb022a b1h','pico pk101','haier hlt71','windows 7','multifunction color laser printer','hp officejet pro 8000','ex21','brother mfc-9840cdw','optoma pico pk-101 pocket projector','wireless keyboard','optoma','samsung','marine radios','silencer 610 eps12v','nuvi 765t','cb023a','garmin 540','toshiba pqx33u-00k00h','nettop','wrt610n','canon imageclass','hp photosmart premium fax all-in-one','refurbished','msi wind ae2010','plotter','panasonic tc-l32x1','acer lx.sa90x.059','acer et.bv3rp.001','xerox phaser 5550b','asus 1005ha-vu1x-pi','samsung led tv','negative scanner','50 plasma','network scanner','denon receivers','7650n','s510m','un55b6000vf','radeon 5870','ppcs750qbl','silencer 750','toshiba pslf2u-00s00l','8500 wireless','garmin gpsmap 276c','ln40b650','acer lu.s680b.066','all in one pc','2055dn','samsung ln52b750','network storage','acer aspire','video cards','pc power and cooling silencer 750','asus 1005ha-vu1x-bk','c9734b','transcriber machine','samsung np-n120-ka02us','n7710','asus ul30a-a2','ae2010-31sus','canon printers','officejet 6500','samsung ln46b750','laserjet printer','hp laserjet m3035 mfp','hdmi switch','wireless printer','hp printer scanner copier','mf6540','q7492a','keyboard mouse','xerox 4250','bdps360','cc378a','cp1518ni','cb022a','samsung pn50b650','acer lx.sa70x.066','mfc9840cdw','hp cm2320nf','p3005n','lg blu ray','large format scanner','sony bdp-s360','nuvi 5000','cp1518ni printer','garmin 255w','printer','ip100','lcd dvd combo','asus k50ij-c1','asus epc1000he-blk005x','nuvi 1390t','c9297a','nuvi 1300','tom tom go 720 gps','acer lx.sab0x.073','tom tom','home theater projector','h470','magellan gps','hard drive 1tb','optoma hd65 lamp','usb cable','silencer 500 eps12v','acer lu.s560b.103','cm2320nf','car navigation','canon 0615b013','tc-l32x1','xfx hd587aznf9','epson 8100','garmin nuvi 765t','cm1312nfi','panasonic tc-p42x1','ce464a','samsung ln26b360','msi all in one computer','hp touchsmart','samsung bd-p4600','led tv','apple mb533ll a','digital photo frame','samsung ln22b360','ink cartridges','5536','hp 2035','13 x 19 color laser printers','lenovo g530','sony ad-7590s-01','panasonic projector','projector','keyboard','samsung ln40b550','apple mb417ll a','c534n','hdmi cable','cb509a','panasonic lumix lx3','cb512a aba','cc378a aba','hp pro 8500','denon avr790','m1319f','all-in-one printers','radio','nuvi 205','avr-790','desktop computer','synology disk station ds209','cc436a','ups','cb815a','lenovo g550','garmin 650','s75qb','powerlite 6110i','netgear storage','belkin f5d5231-4','460ut','cb473a','hp fv583aa','410w','q6282a','officejet h470wbt','asus ul80vt-a1','refurbished c8180','s1500','business projectors','laptop cooling fan','lg 32lh20','monitors','belkin n+ wireless router','camera','tomtom 1m00.780','powered usb cable','bd-p3600','micathermic heater','toshiba 40xv645u','v13h010l41','wireless headsets','garmin gps','blank disc','xr30lp','4250x','pt1280','iomega 1tb','panasonic tc-l32c12','asus 1005ha-vu1x-wt','cisco switch','canon scanner','pk101','optoma pico pk-101','sony home theater','a0ea011','msi wind ae2010-02sus','hp color laserjet cp1518ni','bd-p4600','sandisk sdmx14r-004gk-a57','webcam','blue ray','dell silencer','7680','wpg-350','hard drive','1m00.780','anxr10l2','74xl','refurbished fujitsu','fujitsu scansnap case','hp professional matte canvas','latitude e5500 intel core 2 duo p8700','1 4 inch to rca','npe-4818','lexmark laser','portable speakers','533an_mmw','pk102','nuvi 1200','fax machines','pro 8000','pioneer elite','6500','truck routes','fujitsu scan snap s510','msi touch','modular power supply','motherboard','acer aspire one','officejet 8000','laptop','acer aspire desktop','panasonic fz35','tomtom go 730','l2690a b1h','ppo-e05','rport','color laser printers 11 x 17 duplex','cb412a','hp 5510 printer','ebxb202whte0002','hp cp1518ni','lexmark x543dn','apc smart-ups','dell vostro','x544dn','lexmark x544dw','hp printers wireless','ln52b630','hp z3200','photosmart premium','un55b6000','p2015','laser printer','acer lu.s050b.133','presentation remote','pro905','cb029a','26b0000','cash drawer','cb412a aba','synology ds209','slide scanner','hp 1518ni','avr790','hotas cougar','q2439b','m2727nf mfp','yamaha receivers','j7934g','garmin watch','tmt88iv','1210c','l7580','v13h010l33','brother mfc-490cw','officejet pro 8500 wireless','canon digital rebel','dvd vcr recorder','sharp lc40e67un','c8180','4250xfm','shredder','cb026a b1h','hp color laserjet cp1518ni printer','c7791c a2l','cp3525n','3175b002','canon 2665b001','2160b002','q6688a bcc','m3035mfp','canon dr-2050c','c5686c','bluetooth gps','sony vgnnw120j s','rj-11 pci','toshiba 15lv505','i7','xerox phaser 6180mfp d','885t','acer lu.s040b.162','garmin 765','ws-c2960g-48tc-l','business card scanner','viewsonic vx2433wm','document scanner','nuvi 755','v13h010l42','cb026a','turbo-cool 1200','garmin nuvi 755','snom 300','acer lu.s810b.322','corporate networking printer','7921g','l2700a b1h','ws-c3560-24ts-e','ach13hb','garmin approach g5','q5669ar bcc','hp officejet j6480','103 inch plasma','cb411a','server motherboard','msi wind top ae2010','tritton tri-ga611','vlthc910lp','vmaa26b','receivers','4250s','wide format color laser printers','geforce agp','h470 ink','13 x 19 laser printers','linksys wrt54g2','c7796d','denon avr','dvr','hp scanjet 7650','rino 130','sony mdr-v6','panasonic dvd-ls86','gps systems','avaya','star dp8340','panasonic tc-l37s1','video','sua24xlbp','gpsmap 540 marine navigator','wind top ae2010-02sus desktop','ck839a','oregon 550t','pk-102','cisco air-pwr-cord-na','q5421a','fulfillment ready','usb hub','kodak wireless printer','dell silencer 500w','garmin oregon 400c','nuvi 255w','l1910a b1h','promotional','kvm switch','lx3','m1522','pn9108u','ce528a aba','1490t','ln32b550','x364dn toner','mfc885cw','1827b001','tcl42aney','vgcjs230jt','ln52b750','msi touch screen','firewall','sony bdve500w','tpe-80ws','lexmark x364dw','samsung np-nc10-kb03us','air-pwrinj3','sandisk sdcz6-8192-a11','hp 470 printer','ufl-2','texas baiiplus','c9297a b1h','hp slide scanner','vsx-21txh','desktop with xp','bic subwoofer','fujitsu scansnap s510','un55b8000','samsung sn-s083c','ar7581','wga600n','x364dw','hp 2015','hp digital sender 9250c','phenom','ipod touch','led projector','home projector','mf4690','l220','6128mfp printer','lexmark 15m0120','hp 8000 wireless','samsung un40b6000','zm400-2001-4000t','vg2230wm','konica minolta 4650dn','hp','q6718a b1k','np610','acer lu.s850b.239','cc376a aba','hp 8500 printer','acer aspire one 11.6','samsung pn58b860','11 x 17 copier','lcd5220','mx700','large format printer','mfc-9840cdw','zumo 550','8000','lexmark x364dn toner','tripod','wireless speakers','nuvi 1690','cp1215','vaio','hp designjet','q6274a','office 2007 professional','ln37b650','epson stylus 1400','7780','garmin oregon 200','q6677ar bcc','cb532a aba','imageclass mf6540','okidata','canon 2762b003','sua2200','dvr recorders','fujitsu fi-5110c','vsx-23txh','brother pt1280','hp 2055','acer lu.s820b.203','sony kdl-32l5000','samsung nc1013gb','hp all in one wireless','toshiba laptops','cp2025n','vlt-xd400lp','ce462a','3600n','pos','7417pku','vt60lp','hp 3050','hp 2840','kodak 5250','fi-5120c','xw8600','c543dn','averatec','b360','point of sale','point of sale systems','intel axxcdusbfdbrk','sandisk sdmsm2-4096','memorex 4534','phaser 8560mfp x','pos software','cb028a b1h','canon ef lens','vt2230','brother hl-5340d','copier','c7280','nuvi 855','education printers','ppcs500','toshiba 19av600u','rj-11 pci card','kodak i1220','flat panel tv','paypal','acer aspire one d250','7449f9u','silencer','case dcb-5','sanyo plc-xu78','ua346pe','lp530','mp3 player','tomtom go 720 gps','samsung ln26b460','hp photosmart premium','multifunction printers','vga cable','hp laserjet m3027x mfp','x4650','hp l7780','coby tftv1022','s300','ln46b750','lcd tv','pjd6220','q6656a','c544x1cg','cs70 plantronics','samsung 3600','truck route gps','mf4350d','ce462a aba','tlp2844z','ae2200','8560','nuvi 265wt','ht-sb200','wireless access point','hp laserjet p2055dn','hp photosmart 8180','optoma pico pk-102','265wt','cannon camera','xerox workcentre 4250s','mount','13b0502','tysp50p8wk','p4015n','hp j6480','t400s','drobo','gpsmap 620','radeon','hp photosmart premium fax all-in-one printer scanner fax copier','etrex vista hcx','streetpilot 2820','samsung np-n120-ka01us','wireless remote','coby tftv1524','m2727nf','cb495a aba','1023if','q7815a aba','11 x 17 all in one printers','np600','cb532a','apc br1500','8530w','mp980','np300','ln46b650','lcd hdtv','macbook pro','1505n','4100tn','usb wireless headsets','n130-13','apple keyboard','western dvr','t640n','x543dn','network drive','msi x320','samsung 32','pioneer','hp 7000','q6659a','garmin gpsmap 60csx','toshiba pll20u-00q01d','panasonic tc-p42g10','p1505','hdtv antenna','seagate','hp laserjet all in one','acer lx.pdn0x.045','bdps560','c8192a','vt70lp','msi wind top touch screen','gpsmap','l2683a b1h','garmin nuvi 1350t','lexmark prospect pro205','synology ds509+','hp laserjet p3005n printer','canon ip100 pixma printer','pacc100','l7680','samsung scx 4100','belkin f5l001','apple imac','sony all in one','film scanner','lexmark s505','lexmark x5650','xerox','q3950a','lexmark x4650','acer lx.paw0x.203','hp 98','toshiba 22lv610u','hp laserjet m3027 mfp','acer aspire 3200','tcl32x1','lexmark s405','nikon 9973','dap-2553','universal remote','760','siig cb-sa0411-s1','canon 9764a001','cb981a','blackarmor 440','tc-p50s1','l2715a','n6350','tripp p920-006','ws-c2960g-24tc-l','kx-tg6433m','p1505n','apple mb604ll a','lexmark c762','cb023ab1h','sandisk sdmx14r-004gr-a70','asus eeepc901-w003x','bdp3600','sennheiser pxc 300','toshiba 42zv650u','laserjet m1319f','cb427a','3622b002','hp 1022','np110','asus epc1000ha-blk026x','tc-p50x1','canon pc170','cisco aironet antenna','hp laserjet 3050','os6855-24','xenpak','canon sx10','powerlite 1825','ht-ss360','nq605at','laserjet p4015n','imageclass mf6590','cp-7965g','q7699a','hp premier','gigabyte ga-ep45-ud3p','acer aspire one 8.9','l300','96a','ws-x4548-gb-rj45v','tlp 2642','clothing clip','viewsonic vt2230','gpsmap 440','sennheiser px100','pl1720','hp pavillion','c540x75g','ix2-200','vt660k','texas ti-83plus','air-wlc2106-k9','powerlite 410w','q1908a','0263b001','strobe xp 100','neoprene case','ez48vk','6724','air-ant1728','q2612ad','0265b001aa','phaser 4510dt','asus rampage','6509','820dxn','x466dt','cp-7945g','cp6015dn','464-2578','l2715a bgj','lad55w','baracoda','con-snt-as2bunk9','water cooling','vlt-xl6600lp','sennheiser pmx60','refurbished gps system','sennheiser px-200','gamecom 777','catalyst 4948','str dn-1000','hp black and white printer','cb029a aba','lq-590','brother dcp-9045cdn','fv583aa','c544x1mg','plc-xp45','barracuda','scanjet n7710','addonics','cp-7911g','easy store','laserjet','3800vhdesd12e','7666','sony ssb1000','brother hl-2170w','sua1500i','vp6320','denon','portable scanner','panasonic tc-p42s1','cb514a aba','q3964a','cc431a','linksys wrt54gl','toshiba pslv6u-00l001','ck839a b1k','un46b7000','hp officejet 8500','garmin 760','cisco881-sec-k9','xerox 3600dn','g2sl','mhz2160bh','geforce','elitebook 2530p','color printers 11 x 17','hp officejet pro 8500 wireless all-in-one printer','sua1500rm2u','garmin 265','vx2240w','m57p','q3714a','thecus','mfc8890dw','p3005dn','tv dvd combo','sony kdl-26l5000','windows 7 ultimate','coby mp305-2gblk','lcd flat panel tv','4650dn','pt-dw6300uk','pt-d6000ulk','x546dtn lexmark','denon avr-790','c540n','j9088a','c543','power supply 700w','p5b','bluetooth keyboard','hdc-hs250k','2765pdu','q2440b','cp4005n','a06vj33','sandisk sdmx14r-008gk-a57','npq1u000','cb802a','l1983a b1h','cb413a aba','exz100pkdbb','soundbar','8158a001','hd65','optoma hd65','steering wheel','lexmark x544n','m4345x','c9381a','hp photosmart c4680','17 viewsonic lcd','pioneer sc-25','dell desktop','620n','elplp13','ricoh','dell laptops','bdp-s360','axis','ls4278','hm215r32','panasonic ay-dvm80ej','6360ydn','powerlite 1720','triuv200','wind','msi 20','toughbook 30','v13h010l16','vcqfx5600pciepb','splamp009','riser card','gs917a8','g2rd','lmpp260','4250','lexmark color laser printers','startechcom pxt101y','nuvi 255','dvd-r','ap9340','mx7600','small hdmi projector','scanjet n6310','pjd6220-3d','scanjet n6010','lcd5220-av','casio tr-18brg-3p','4345','dl380','50pq10','pv943ut','panasonic cr-p2pa 1b','panasonic cr123apa2b','expi9404ptlblk','iomega','acoustic ap060','sony bc-tr1','kodak scanner','ap7830','l1956a b1h','ws-cac-3000w','asus etp1602-bk-x0045','hp p-fd8gb-hpv100w-fs','mc88m','8098a025','hp 4550 drum','etlax100','envelope feeder','dir-655','cm2320','c309a','q5692a','q7549a','v13h010l44','nuvi 780','cm1312','ik-wb02a','sdhc','hp scanjet 5590','toshiba 15lv506','realis sx800','ap7901','vg730m','hp dv7','vlt-hc2lp','terk tv-44','cf-19khrax2m','ls4278trbk0100zwr','hp color laserjet 4700dn','blfu200a','np04lp','garmin 1370t','c6180','6180mfp d','hp scanjet n6350','lc-46le700un','765t','bdp4600','xr-30x','c8546a','mi4004blk','np01lp','ag735a','fi-5900c','coby tftv2224','canon eos rebel t1i','srdvm700us','wireless headphones','nuvi 1350','ptae3000u','sp-lamp-018','lt70lp','nvi 765t','kxtha16','canon 18-200mm lens','1ee0.052.01','toshiba 46xv645u','cb351a','dpf710k','l1957a b1h','1.8','hl-5250dn','sony kdl-40s4100','xr32x','cartridge black magic color','kx-mc6040','airaccrwm1400','sls200ps2001','smart3000vs','hp mobile printer case','cb510a akv','pwla8492mtblk5','pu.v740z.002','xerox 4150','3210 all in one','7994a001','edge 205','c2851vsecsrstk9','nec np62','konica 4690','asa5520-bun-k9','9481d5u','color inkjet printers 11 x 17 duplex','fi-6770','cpx505','eh350','ps-79ci','lenovo x61 7762','4690','tu2p2w','dxg528','tm6','fl827ut','kr732ut','lamp infocus x2','ns4300n','poweredge','j9006a','airant3338','bhl5006s','dw023a','sony hdrfx7','splamp025','exs12sr','pc','dcp585cw','4370dn','sxp2205dwu','e840srd','blfp200c','pt2710','ws-x6516a-gbic','aiti100st','kxtga670b','x2-10gb-lr','vltsl6lp','wvc2300','ap7920','ws-c6506e-s32-ge','ebxb202blke0002','auria','hp color laserjet 3600','v13h010l38','xv-zw99u','night vision','sony lcd','j9077a','pjd6251','barracuda xt','bdp-n460','vlthc5000lp','xerox 7425','garmin etrex vista hcx gps','asa5540bunk9','ah060aa','epson 822+','4gb personal s200 usb2.0 flash drive','6015v-mrlpb','kr571ua','lmpe150','office','bluetooth mouse','splamp028','powerlite 1705c','ps.v940z.001','hp e8400','epson 8767','printer cable','western wdbaaf0015hbk-nesn','windows 7 professional','samsung 2333sw','sc-25','hp officejet pro 8500 premier all-in-one','officejet 8500 premier','lenovo 2746ndu','skype phone','linksys wrt54gs','p2055','e8400','vmoda v-gunblack2','hp officejet pro 8000 wireless 14 11 ppm 4800 x 1200 dpi thermal printer','samsung 55','nvidia','mice','receipt','sony msmt8g','inkjet printer','hdtv tvs','hp pro 8000','t650n','dav-hdx589w','b6300','voip phone systems','pc power and cooling silencer','apple mb466ll a','xerox phaser 6280dn','pc power and cooling silencer 610','5110c','6280dn','ws-c2960-24tt-l','pcie','fingerprint reader','tcp42x1','base systems','caviar black','garmin gpsmap 478','cb092a','samsung ln32b460','cb092a b1h','portable projector','mac wireless adapters','k5400','g51j','5500','q7493a','air purifier','dr-6050c','cb534a','wrt310n','toshiba 19lv610u','widescreen portable dvd player','pn50b860','hd vmd','fi-5110c','cisco 1841','glossy canvas','lg gh22lp20','ihome ip9br','cables','canon 2044b002','agp video card','speaker bar','windows server 2008 standard complete package','pico','microsoft mail server','ce461a','dx2450','pc power supply','tomtom go 630','ddr2','panasonic dmw-lmc55','panasonic dmw-lc55','ptz','garmin golf','4250n','jvc','canon mf4690','lacie','q7814a','cm2320fxi','wine cooler','toshiba r500','davhdx587wc','vga splitter','blu-ray','officejet pro 8000 wireless','q6660a','hp n7710','phaser 8560dn','wacom zp-600','laserjet p3005n','hp p2055','hp p2035 laserjet printer','ce252a','samsung un40b7000','canon digital cameras','quicken','c9732a','tmt88','asa 5505','mfc-7340','toshiba sd-p1900','vga switch','ce253a','officejet 7590','pull up projector screen','quadro fx','nikon coolpix s60','sony digital voice','panasonic kx-tg6052b','an-xrcm30','l1734s-bn','ep770','pgd4010x','sp-lamp-020','epson v750','fujitsu 5110c','5015c','cookware','automatic photo scanner','ce529a aba','np2150','msi nf980-g65','cc478a bcc','hp 6480','sveconus6','brother ql-1050','garmin 400c','officejet wireless','sc 25','zebra 2824','pc2-5300 667mhz','linksys router','sony bravia home theatre','wic','officejet pro 8500 ink','sc240','samsung projector lamp','cisco firewall router','cpx450','brother ql','photosmart','fujitsu laptop','order status','star','westinghouse 47','laserjet p1006','asus 1005ha','samsung un55b8000 led tv','q3716a','cnnvd905u','dmp-bd60','pro805','t654dtn','c544dn','dc7900','onkyo','all in one','pro 8500 premier','wireless adapters','c309g','sf213','xsi','workcentre 3210','panasonic tc-l26x1','samsung ln40b630','linksys','film and slide scanner','canon 1946b002','v13h010l39','readynas','wmk-005','dp1-50-03','cisco asa 5505','hwu9dd','canon wide angle lens','34s0300','hp refurbished','hp officejet pro 8000 wireless','1tb','t610','macally icecamii','pny md2048kd1-400','samsung ln40b530','oem motherboards','hp8500','nec 2690','joystick','lumix lx3','pro 8500','amd motherboards','6280','ds409slim','hauppauge 1191','vlt-xl1lp','usb 2.0 printer cable','lexmark 12a6730','hp q3960a','garmin streetpilot 2730','fi-6130','garmin 260w','hp 1505 printer','sandisk sdmx11r-001gk-a57','750','panasonic rp-ht21','handheld','dinovo edge','7833a001','c5550n','hp officejet 8500 wireless','panasonic 65','panasonic tv','dect 6.0','sony mdrxd200','hp officejet pro 8500 premium','ssd','nikon l20','canon 0615b009aa','dg43nb','bl-vu100a','screws','movies','poe power injectors','os6850','gigabit switch','hp photosmart premium all in one','in focus','sony bravia tv','26 lcd tv','canon 0628b009','4-port usb 2.0 swivel hub','corsair power supply','sd','video camcorders','bose home theater','850','panasonic dmp-bd605k','msi 2010','silencer 610','f2380','hp 6500 wireless printer','canon mf4350','powerlite 83+','epson powerlite 1810p','cf-52ggnbxam','asa5505-sec-bun-k9','canon 8014a002','usb keyboard','vmaa18','9250c','feature of router cisco 2801','cp2025dn','tsx6.0tlr5','asus 1101ha-mu1x-bk','usb dvd','p1005','cisco 2801','hp slimline','a v device cables','8350','canon 0775b021','adobe photoshop cs4 v.11.0','790gx','h470wbt','cf-52ggnbx2m','hp officejet pro l7780','wdme5000tn','epson projector','silencer 750 quad blue','western wdbaaf0020hbk-nesn','01ssc7020','nuvi 285wt','hp 940','magnetic card reader','mfc-490cw','canon dr2050','hp officejet pro k8600','hp dx2450','ppcs420x','cable adapters','copy machines','cb436a','barcode scanner','yamaha rx-v1065','acer netbook','apple','vlt-xd80lp','axis 211','srw2048','dx7500','cb536a','sc27','rs-232c','r106wh1','gtx 275','hp laserjet m1522nf','garmin nuvi 855','garmin zumo 550','hp 4014n','320mp-2','8500 printer','dvd media','garmin zumo 660','fax','yamaha 3900','notebook computers','ado5200dobox','audio cables','hp mini 110','wpsm54g','pj558d','msi wind top ae2010-02','norton 360','ati 5850','11 x17 printer','linkstation','xserve','plantronics voyager855','canon la-dc58k','hp laserjet 1505n','motion le1700','q8200','samsung 2693hm','hp wireless g print server','lenovo x200s','lexmark c782','pj551','xbox 360','samsung blu ray','ipf710','ipod touch 16gb','air-ap1131ag-a-k9','epson v500','garmin 275t','q7499a','western digital caviar black wd1001fals','kt457aa','garmin etrex gps','canon','pg-f255w','samsung ln46b650','axis t92a20','cb057a','apricorn','775t','windows 7 upgrade','ironkey','cordless phones philips','viewsonic all in one','workcentre 4260','3027','return policy','ce461a aba','wmn1000b','n4285p','hp 2055dn','q3715a','ka459ut','et-lae1000','cb494a aba','76csx','pci video cards','pc2700','hp m3035xs','laptop computers','cb525a','casio ex-s12bkebd','cm4730fsk','video conferencing systems','toughbook','sony radio','mfc-8890','cb516a aba','sony tcm-200dv','2320nf','nokia n95','dvd player','plasma display','f4480','ipod touch 32gb','6130','2408wfp','projector mounts','garmin accessories','samsung scx-d4725a','lexmark t640','3210n','belkin f5d8236-4','phaser 6128mfp','2765pcu','sharp lc40le700un','hp 2140','sharp lc32le700un','8860','hi','phaser 7500 dn','phaser 8860mfp d','c4906an','wireless phone','blender','mt60lp','phaser 6180mfp d','p6t','lexmark t640 toner','kx-fatk504','amd hdz940xcgibox','kodak i1440','sony msa2gu2','pioneer kuro','readynas pro','et-lad40','q3726a','b4400','intuit quickbooks','pos equipment','dcrdvd650','tcp50x1','vtech 993','01-ssc-8746','dir-855','workcentre 4250 x','casio projector','eee top','cp-7942g','4005dn','casio','phaser 6280 n','phaser 6280 dn','thermal paper','canon dr2050c','phaser 4510 n','genicom 4a0040b02','xerox phaser 6360dt','sharp sound bar','hp laserjet p1006','phaser 7500 dt','workcentre 4250','phaser 8560 dx','phaser 6360 n','phaser 4510 b','phaser 5550 dt','2009m','phaser 7500 n','phaser 3635mfp x','sl300','workcentre 4260 x','phaser 6360 dt','samsung 2333hd','v3000','d6300','kx-fatk509','rs409','phaser 8560mfp n','phaser 4510 dx','phaser 8560mfp d','phaser 8860 dn','phaser 3635mfp','workcentre 4250 xf','phaser 4510 dt','targus cvr217','wdme2500tn','cp-pwr-cube3','phaser 5550 b','3220','garmin 76csx','j6480','windows xp','firewire','g31mxp-k','hp 8500 pro premier','garmin nuvi 885t','cb523a','asus eee top','mini dv','wireless voip phone','vhs to dvd','mfc685cw','cp3525dn','axis 207','cb512a','psu','bh08ls20','j7988g','small camcorders','srp-350','cb366a','1080p','epson 7754','prevail pro 705','lexmark 12a1970','dr-2010c','gigabyte ga-ma785gm-us2h','acer aspire 5536-5224','xerox workcentre 4250c','cb411a aba','lenovo t400s','lexmark 7675','panasonic kx-p155','canon a480 silver','epson 8764','asus p5q3 deluxe','western wdme5000tn','wind top ae2010','wind top ae2010-02sus','nero','lenovo','toughbook 52','n8420','panasonic tc l32x1','nuvi 350','hp color laserjet cm2320nf mfp','logitech','hp laser printer','xfx hd487acdf9','monster s16-500','3600dn','ub-7325','ipod speaker','pn50b650','hp cm2320','j9021a aba','samsung ln40b650','dragon','dell 30 monitor','et.ev3wp.001','9500hdn','c734dn','dx2400','cc479a','43n3214','refrigerator','p3344-ve','l32x1','documate 515','255w','hp designjet 90r','intel core 2 quad','powerlite 78','8300','s2026c','epson 6100','q3984a','an-xr10lp','speck it2-pxl-blk','l2526a aba','iphone','et.bv3rp.001','optoma projector','cp2025x','air-lap1131ag-a-k9','cp1515n','ws-c3560g-24ts-s','hp 6735b','belkin f8z400-bkb-2','macbook','hp q2439b','ram memory','2765t7u','hl 2070n','samsung netbook','microphone','in1100','cs50 plantronics','acer lu.s670b.034','evga 512-p3-n973-tr','olympus vn-5000','foxconn','lexmark e260dn','sony npfr1','targus paum004u','sony vaio 16.4','brother tn580','cisco2821-srst k9','ln46a850','phaser 3600','lexmark wireless','printing media','eg005w','pg 210','epson photo printer','q2439a','vgnnw180j s','replacement lamp','500 sheet input tray','2320fxi','7962','hp 4250 duplexer','ml4551ndr','kodak i1440 scanner','canon 9444a001','cb780a','color laser all in one','jetdirect 620','tpe-s44','nuvi 1370','xd80u','usb headset','elpmstpw','air-wlc2125-k9','vplcx21','bl-fu200a','pc2700 ddr2 memory','cat6','aspire one pink','e-520','4260s','p2025n','kodak i160 scanner','sony blue ray','powerlite 1810','photo frames','hp d5460','cisco aironet 1131ag','garmin vista hcx','okidata toner','lenovo m57','pjd6381','super micro motherboard','scanjet 8300','canvas','touchsmart','polycom mic cable extension','m3035','canon g5','designjet 130','phaser 3300','portable hard drive','lexmark t642','binoculars','cb495a','dr-4010c','wireless mouse','b4545','radeon 5850','panasonic cordless phones','sanyo hr-3utg-4bp','1800-24g','cp3505n','syaf16krmt','diamond 5870pe51g','photosmart printer','cm4730f','sd980 is','cisco 7960','mpro120','plc-xu78','rx-v3900','toshiba pslm0u-00d002','q6503a','tcl43cney','vltxl8lp','2454b002','mzdv','ag715a','lcd4215','tv tuner','qnap','p3005x','wls9500','sc-27','3cdsg8','ibm 53p9371','sheetfed scanner','hs250','q5970a','5550dtn','vpll-z1014','bb-hcm531a','xerox 6280','vled221wm','910w','lexmark 12a7405','xerox 8r7881','8530p','toshiba 32rv525r','toshiba 19lv506','dl360','m3027','c31c636a8991','expresssas h644','canon 9770a001','avaya one x phone system solutions','okidata mc860','lns-s31','hp 88xl','dr9050c','7916','hp cp2025dn','vltxl1lp','2711b019','cb414a','0299b001','01ssc6088','hp laserjet m2727','sony icdux70','cc478a','mfc990cw','canon imageclass d1120','hp laserjet 1022','et1602','samsung wmn1000b','lns-t31a','vltxl30lp','soleus air cfm-40e','4730x','dynadock','hp scanjet 8270','plc-xp21n','500gb','dell','vgcjs250jb','garmin c340','asus m4a79t deluxe','dr2580c','canon d480','ideapad','digital picture frame','ms9535','hp color laserjet cm2320fxi','wasp wws855','sua1500rmi2u','powershot a480','wrt160n','vplcx150','fellowes powershred ms-460cs','j9279a aba','kodak i1210','ws-c3750g-24ts-s','hd dvr','ag736a','sp-lamp-039','highpoint 4320','vm670guq9550c','hd 4870','p330i0m10aid0','xerox phaser 6360n','sony msa1gu2','nv277ut','m1011-w','pcrush','7975g','xerox 3300','smc8612xl3','sr2024','nec vt700','tfdvd7006','hp 2605','ddr3 corsair','vlthc2lp','vgcjs270jq','lexmark x6650','8650','7911','s4m00-2001-1100t','scsi ultra320','sv441hdie','sony nwz-x1051fblk','creative vf0580','quantum t','asus p5q3','nv305ut','microtek scanners','brother mfc-495cw','garmin streetpilot c330','gpsmap 640','hp laserjet 1022 printer','xerox 6360dn','sxp2001dwu','v13h010l49','liteon ihas422-08','canon dr 2580-c','xerox 6r925','s1500m','v13h010l34','dr-9050c','q5599a','sony vmc-20fr','optoma pico','ap9630','canon 0620b010','panasonic cga-s005a 1b','gtx 260','blue ray drive','kodak printer','clp-660nd','samsung t260hd','1390t','garmin 1690','9050mfp','tablet pc','pioneer sc-27','clp-k660b','c8556a','4650en','kv-s4065cl','msi ae2010-31sus','pc cradle charger adapters','vlt-hc910lp','2960','ka9570','11b580-20','4730xs','p2570hd','hp laserjet p2035','labels','lexmark x7675','canon avc-dc300','evga 132-bl-e758-a1','voip','garmin edge 705','q6719a','np100','4700n','cat5','xerox 6180','x544dw','brother lc612pks','brother lc613pks','q7817a','cerwin vega','sony pdv124n','acer predator','sua750rm2u','cp2025','zumo 660','teac duplicator','tc-l32c12','viewsonic n1630w','8560 dn','qosmio','tcp50s1','bl-fp200f','cpx5','samsung ln46a850','cisco ip phone 7961','garmin 350','doublesight ds-424sta','asus 1008hapu1xwt','hp m2727nf','color laser','hp officejet printer','laptop case','cp-dskch-7921g-bun','a0dk232','office 2007','toshiba 26av502r','flash drive','hp p2055x','garmin 205','q6281a','powerlite 822+','netgear','tcp42s1','mf6590','nikon 4730','bdv-is1000','ws-c3750g-48ts-s','nuvi 1350t','h27','vk-12','games','ks173ut aba','hp 5949x','samsung ml-2010d3','sandisk sdcz28-004g-a11','cb516a','toshiba pll23u-00c01c','3crdsf9pwr','air-pwr-4400-ac','40y8317','ws-c3750g-12s-s','bag','610-343-2069','ws-x4920-gb-rj45','kodak ink','rw023-001','2610-24-pwr','cc434a aba','3cdsg10pwr','esp 7','cb700a','sandisk mp3','cv-h42','secure digital memory','epson powerlite 820p','rlc-023','2gb xd','amd turion x2 ultra dual-core mobile processor zm-86','ati radeon hd 2600 xt','brother hl-5240','c770dtn','car audio','readynas 3200','canon 9321a002','archos 5 250gb','powerlite 84','canon copier','xerox 510','panasonic dvm-60xj1');

/* $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' : '/images/public_img/public_icon_img/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 = '/inc/asp/blank.asp';
                }
                
                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);
    }