/* Popular phrases - ASCYCLES - 2:44:29, Thu Sep 2, 2010 */
__SLI_ClientDefaults =
[
    ['TextBoxIDCustom', ['rnLeftNav__ctrl_0_txt_KeywordSearch'] ],
    ['Alignment', true ]
];
var asPhrases=new Array ('handlebar risers','gps mount','crash bars','bmw boots','bmw top case','foot pegs','jacket','power plug','windshield','hand guards','tool kit','mirror','helmet lock','hepco becker','engine guards','cylinder guards','oil filter','rain suit','backrest','top box','foot peg lowering','peg lowering kit','comfort seat','canbus','heated grips','saddlebags','highway pegs','side case','battery','top case','valve cover','gps','comfort shell','r1200rt','bar risers','cylinder head protector','bmw pants','tank bag','vario','bmw battery charger','pannier bags','bmw luggage','city pants','gore tex boot','soft bag','r1200gs highway pegs','windscreen r1200gs','tail bag','grips','r1200gs seat','bar backs','topcase','luggage rack','system cases','k1200lt','f650gs','center stand','stickers','verholen','motorrad jacket','k1200r','oil','cigarette adapter','clear turn signals','f650gs windshield','oil filter wrench','r1150rt','hand grips','steering damper','footpeg','heated vest','airflow jacket','ztechnik','windshield extension','r1100rt','power socket','ztechnik windshield','r1200rt seat','shift lever','solo seat','license plate','r1200s','soft luggage','low seat','light mount','laminar lip','passenger backrest','bmw tank bag','r1200gs top case','r1200c','radio','hat','sidestand pad','tank pad','powerlet','gs 1200','aeroflow','club jacket','sizing chart','grip puppies','handle bar risers','speakers','k75 windshield','handlebars','touring jacket','wind deflector','wolfman','r1200rt tankbag','k1200s','motorcycle cover','pegs','r1200cl','r1200r','shocks','communication','oil filler cap','tank protector','summer pants','handguards','k1200rs windshield','bmw bags','oil change kit','carbon fiber','ipod','side bags','bmw r1200c','throttlemeister','f650gs luggage','side stand foot','r1150r windshield','boots','s1000rr','seat','dakar windshield','roundel','bag liners','r1100gs windshield','power accessory socket','r1200gs','k1200lt windshield','zumo','r1150gs adventure','fuel filter','bmw oem mirror','rear rack','windscreen','r1150gs','floorboards','navigator','risers','rallye pro 2','saddle bags','charger','bar end weights','key ring','led lights','spark plugs','rallye 3','paint colors','headlight','rcu shelf','fuse','turn signal','heated hand grips','passenger seat','bmw air shell jacket','k100 windshield','radar detector mount','lights','brake lines','panniers','r1150rt windshield','voltmeter','r1150gs windshield','key','rallye pro 3','r1100s','soft case','saddlebag liners','f650 saddlebags','top bag','jesse bags','thermometer','foot peg lowering kit','transmission fluid','bmw suits','r1100rt windshield','bmw fog lights','bmw enduro','cb radio','clutch','r1150r','shift lever extension','brake pads','light switch','cylinder cover','r1200c exhaust','gerbing','t shirts','bmw jacket','fairing','grip wrap','r1200rt mirror','leather jacket','air filter','helmet','led turn signal','clutch lever','tall windshield','horn','cortech','reflective','accessory plug','cylinder protection','r1200rt oil filter','bmw plug','miniature','r1200gs tank bag','clear lens','hepco becker topcase','bmw g650gs','exhaust systems','sidi','fuel line and disconnects','sport windshield','brake bleeder','wind screen','r1200st','olympia jackets','f650 gs','jpegs','feeler gauge','fuel line','alarm','rockster','k1200lt tank bag','fork seals','t-shirt','cruise control','spark plug cover','toolkit','ztechnik exhaust','r1200rt manual','paint','switch','handlebar setbacks','clutch cable','spark plug socket','stand','aluminum luggage','electrical plugs','throttle lock','ignition coil','bmw tools','airflow 2','akrapovic','fuel connector','bulbs','sidestand','trailer hitch','r1200gs adventure','battery charger','hand protector','pants','driving lights','j pegs','helmet bag','tires','piaa','k100rs','luggage liners r1200rt','fuel pump','filter wrench','lift handle','rear wheel','piaa lights','r1200rt engine guard','rally 3','passenger footpeg','tools','armrests','hornig','k1200gt','turn signal lights','sport mirror','pannier lids','f800','k1200rs windscreen','rack bags','g650gs','oil cooler','owners manual','suits','olympia','turn signal lens','final drive oil','passenger floorboard','relay','hip bag','r850r','light bar','rcu backrests','valve stem','battery tender','footpeg lowering kit','gel battery','engine protection','clutch tool','jesse','liner','shift rubber','k1200lt armrest','ramp','touch up paint','xenon','windshield mounts','side stand','fender','handlebar mounts','spark plug tool','side stand plate','bmw','oil cooler guard','knee pads','r1200c mirrors','r1200c windshield','f650gs handguards','heat shield','twinmax','fork oil','oil filter tool','alpha racing','badge','seat cover','back rest','k1200rs','cruise','laminar','disc lock','cigarette lighter','r100gs','tankbag','belly pan','clear shot','driver backrest','adventure top case','f650 seat','sidestand foot','r1100rt tires','5 function digital voltmeter','r1200rt repair manual','cover','hose clamps','radar mount','hepco','socket','reflective strips','brake pedal extension','touratech','bmw rallye 3','knee protector','engine oil','28 liter top case','vanson','barbacks','crush washer','oil pressure switch','luggage','tool bag','bead seat','bmw charger','techmount','oil cap','sliders','bmw roundel','k1200rs tires','ignition switch','rotor','bmw mirror','airhawk','carburetor synchronizer','vespa','rack','k1200r seat','bmw oil','starter motor','power adapter','cylinder cap','brake master cylinder','paralever','shirt','license plate frame','led','neutral switch','r1200rt tank bag','running lights','tire repair kit','elf pegs','cb antenna','k75','xm radio','fork boots','rear brake disc','tire pump','reflector','camera','j-peg','visor','turn signal bulb','comfortshell','foot boards','airflow','bmw cap','comfort dual seat','r1200gs oil filter','garmin gps','rain gear','k','r1150rt seat','spark','master cylinder','rcu','hepco becker engine guard','handle bar risers k1200s','gear oil','r1150r engine guard','rain jackets','inner tube','reflective vest','license plate bracket','power outlet','k1200lt backrest','12v adapter','plexus','r1150rt mirror','staintune','repair manual','hot deal','engine protection bars','bb1','k1200rs mirror','vest','fairing screws','saddlebag protector','blind spot mirror','adapter','hp','fuel','footpeg rubber','bike cover','metzeler z6','pacsafe','clutch plate','forcefield','valve cap','bmw gloves','olympia pants','tool roll','f650 windshield','r1200gs luggage','tire pressure gauge','ztechnik vstream','air pump','grab rail','hornig r1200rt','clear turn signal lens','accessory plug adapter','coolant','rear hugger','intercom','rok','bar ends','gs gloves','scooters','cylinder protection guards','tire repair','gloves','key holder','chair','adventure bags','scala','battery f650','rka','throttle potentiometer protector','xena','cup holder','magnetic oil drain plug','quick disconnect fuel','torx','boulder jacket','piaa 1100x','protector','20w50','plug','brake fluid','ptt switch','sidestand plate','revit','bags','protector jacket','powerlet plug','video','topcase backrest','fuse block','spark plug wrench','ignition','puppies','tank','rallye','hall sensor','electric vest','oil kit','pannier locks','gs cap','handlebar bag','bestrest','r100rs','kickstand','k1300gt','r1200c engine guard','tshirt','r1100s foot peg lowering kit','hand','quick disconnect','trailguard','brake switch','hepco becker mount','tie down','motor oil','wheel chock','f650cs','windshield f650 gs','top rack','heated seat','windshield rockster','windshield deflector','brakes','rear view mirror','ipod charger','oil wrench','spark plug wires','vstream','venting machine','lowering kit','bmw gps','valve cover gasket','clear alternatives','k1200lt rack','exhaust wrench','city','z6014','clearwater light','piaggio','b1266','grunge','folding chair','replacement key','turn signal relay','rear splash guard','tire inflator','iron','comfort seat r1200rt','summer jackets','f650gs oil filter','moditec','vario cases','r1200rt shelf','funnell','starter','lubricants','r1200gs windshield','rallye 3 pants','drop sensor','tool pouch','mesh jacket','luggage liner','bmw liner','oil fill plug','timing plug','abs sensor ring','ast','tach cable','quick','f650 cs','r1150r valve cover','k100 bar risers','rallye jacket','x-pro','f800gs luggage','bmw rallye 2','summer 2 pants','headlight bulb','r1200rt highway pegs','firefly','airflow boots','rear rotor','inner bag','screws','valve adjustment tool','paint pen','mirror mount','r1200gs adventure windshield','frame sliders','centech','hepco becker top case','cylinder protector','bmw tool kit','magnetic','low seat r1200rt','helmet headsets','ignition key','powerflare','aluminum top case','tire irons','bmw toolkit','brush guard','piaa sport horn','battery strap','womens shirts','clock','can bus battery charger','r1100rt cover','k1300gt exhaust','escort','wheel weights','slipstream deflector','gs 1200 tank bag','luggage carrier','motion pro tools','k1','rk-3','mesh','dakar low seat','r1150gs bar riser','front disc','scotchlite','blinker bulbs','luggage rack and grid','f650gs bar back','ties','bmw navigator ii','bmw hat','sneaker','k1200lt luggage','oil plug','right mirror','k1300gt oil filter wrench','power cord','f650 top case','r1100r','pac-001','bike cover k1200lt','49 liter','bmw airflow','k&n','radio cd','funnel','floor boards','helmet holder','sideways funnel','rear shock','verholen bar risers','leo vince','clymer','tire gauge','airflow gloves','pivot pegz','sidestand enlargement','braided fuel line','cupholder','footpeg lowering','revit jacket','tie down straps','k1300gt windshield','baehr cables','air filter k','suitcase','straps','stereo','bmw seat','synthetic oil','manual','z7105','k1200lt brake pads','abs sensor','speedometer','f650 gs oil filter','fuel line quick disconnect','shelf','riders manual','guard','f800s','windshield f800gs','cylinder','electronic ignition','ram mount','bmw rain pants','starter relay','j pegs xl','ring antenna','touratech fuel protector','bmw city pants','wind','fan','r850r turn indicator','crush ring','valve','ring spanner','gps bag','r1100rs windshield','auxiliary stand','flag holder','r1200r wheels','co2 inflate','pannier protector','prorain','twin max','r1200s handlebar','twin max carb sync tool','givi','bmw summer pants','dashboard','clear lenses','carbon','oil filler','center cap','anakee 2','k1200rs exhaust','nexx x60','oil drain','side mirror','fuel filler cap','np protectors','vario topcase','502.926 00 09','r12oilbasic','garmin mount','olympia suit','s1000rr windscreen','123-012-03','valve cover protectors','tailbag','rain','tail part','hepco becker tank guard','rt shelf','bungee straps','rear trunk','tool set','hand guards k','footpeg covers','gs boots','tank guard','brake pads k1200gt','women\'s boots','socket charger','shield','oring','air filter oil','rear signal','windzone','z6100','map pocket','roadtec z6','front brake pads','turn light','rider west','r1150gs exhaust','f800st','compass','neck','supplemental tail light','battery harness','bmw socks','riding suit','tank panniers','z8505','tubes','fork','f800st windshield','navigator iv mount','passenger back rest','underwear','clutch kit','nexx helmet','fuel hose clamps','safety','mirror clamp','master cylinder kit','anti glare','403','r1200rt footpeg','plug puller','k1200rs tank bag','streetguard','abs control unit','wunderlich','top case rack','vario saddle bags','rizzocpeg','49 liter top case','clutch oil','r11xoilbasic','afr11rss','engine guards for r1200rt','tank bag for k1200lt','rka-r12tl','slime tire pump','luggage back rest','h7','fob','seat back','touring windshield','fuel quick connect','navigator 4','grip covers','r1200c clock','softbag 2','motoman','city boots','vario top case','temp sensor','grease','bar riser k1300gt','dyna','key blank','street sneakers','x moto','speed bleeder','f650gs tires','fork protectors','22 liter top case','damper','canyon','front wheel tool','voice','513-045a','magnetic oil plug','lightbar','1002','oil filter k bike','crystal-glo','r 80','neoprene fork','doubler','guide pins','top case lock','bmw key fob','rka-r12gsl','mud','flip','040-6681','luggage rail','k-bike oil filter','oil gauge','progressive springs','r1200 oil filter','metzeler tires','cyclepump','exhaust nut wrench','ac schnitzer','sw-motech crashbars','helibar','air gauge','socket adapter','bmw pro tour boot','brake hose k75c','r1200rt bag liners','wrench','nivomat','brake rotor','cam cover','throttle assist','gps wiring','brembo','saddle','pivot pegs','stubby','helmet camera','r1200c brake pads','spoke wrench','stoke jacket','mirror spacers','mok','condensor','bulb socket','case guards','top case f800gs','650 seat','map case','bmw r 1200 cl','r1200gs side bags','oil filter removal tool','oem seat','bmw k1300r','screw m8x20','trunk','iphone','bmw topcase','touch-up paint','quick release','helmet liner','led turn','k100','rally 2','logo','k1200s oil','bmw santiago','tkc80','altrider','driver back rest','foam grips','streetguard 3','net','spoke','fuel petcock','fork brace','turn lens','phase change','bmw functional underwear','adventure backrest','rear fender extender','r1200rt saddle','dyna iii electronic ignition','bmw key ring','passenger pegs','seal mate','bungee','tank grip','z6201','wolfman bags','piston rings','ladies gloves','oil filter kit','euro bars','r','r1150r windscreen','fuel hose','alarm system','chrome valve covers','city 2','chain','latch','wheel adapter','mount','carb rebuild kit','quick connect','messenger bag','bmw handle bars','side case liners','anti seize','commuter bag','steel brake lines','foot stand','r1150r luggage','t handle','j-pegs xl','bmw comfort seat','r100r','highway footpegs','gerbing liner','bmw navigator','gas cap','rallye 2 pro jacket','olympia airglide','sparkplugs','luggage roller 2','jumper cables','hepco becker saddle bags','h4','rondel','rka r1200gs','pannier protection bars','cross bar','z5505a','r1200rt tires','ztechnik accessory mount','foot pegs r 1200 gs','bmw badge','widder','210-x','hepco becker r1200gs','bmw tankbag','footrest','shifter linkage','savanna-2','supplemental led','mj132','extension','150 70-17','400.624','mount for gps','xm mount','oil filter socket','seat backrest','r1200s exhaust','bmw tinted windshield k1200gt','highway peg mounting kit','r1150r tank bag','pf200','sale','82-332','fire','extra fuel','mens comfort shell','bmw straps','hepco r1200gs','z2452','battery tender plug','k75s windshield','z9101','ipod mount','spark plug puller','g650gs luggage mount','extender','rok straps','loctite','fork springs','3m','sprocket','r1150r rockster','10w50','pads','summer','brake bleed','rearsets','mp3','wolfman tail bag','pac-027','footboards','overpant','leatt','float needle','baseplate','spark plug socket puller','flat repair','ipod powerlet cable','roll bar','0180','piaa r1150rt','g650gs saddlebags','bmw allround','tail','alt rider','k1200rs handlebar risers','502.907.00.02','cramp buster','pac-028','protection bar','elka shocks','release tool','removal tool','pro touring boots','passenger grab rail','r1200gs mount','sport boots','windshield bracket','bead breaker','lens','crash bars r1150r','foot pump','santiago boots','r1200rt luggage','spider','mv verholen','hinge','r1200gs crash bars','riding apparel','head gasket','r850','r1200c seats','antifreeze','r1200rt top case','carb','passenger floor boards','0140-1','ignition control unit','gps ram mount','supplemental light','mens bmw leather jacket','rt foot pegs','z8671','tourmaster','plug adaptor','carb sync','enduro shirt','bmw sign','71-60-7-663-023','rallye 2 pants','goretex','bmw summer','brake shoes','fender eliminator','deflector','crampbuster','wiring harness','diode','bmw rondel','windbreaker','airflow suit','flat key','shift assistant','z7101','r1150rt highway pegs','noj','racer','novus','bmw rallye 2 pro','helmet strap','trivision','contour boots','teton','1200 gs brake pads','buffer strip','r1200 oil filter wrench','balance tool','left grooved handle','engine guard r1150gs','valve cover guard','fender tip','battery tender adapter bmw','rcu oil filler cap','speedo cable','navigator iii plus mount','r60 brake','fuel gauge','streetguard 3 suit','baehr intercom','r1100s shocks','women boots','pac-024','bmw fuel filters','71-60-7-653-849','iv','0050','leather suits','r100rt','slave cylinder','bmw oil filter wrench','bmw softbag','tire compressor','r1150gs backrest','tm','r1200rt exhaust','sw motech','hard bags','comfort saddle','summer 2','zumo mount','schnitzer','sidi vertigo','r1100rt spark plug','bmw panniers','gas cap gasket','atlantis 4','front rim','h2o','windscreen f650cs','potentiometer r1200gs','hepco becker 30lt','side case logo','abs switch','low beam','rocker arm','shorts','chargeguard','bmw city','k1200gt windshield','bar pad','rallye gloves','water pump','rally 3 pant','r1200gs backrest','blind spot','mirror glass','f800gs oil filter','manuals r1150rt','can-bus','z2412','r850r tires','venting','alligator connector clamps','adventure luggage','big foot','k1200rs brake','engine k1200r','rka luggage','ipod nano adapter','k75c','lanyard','fuel line quick release coupling','crossbar pad','pac-036','tank cover','bmw helmet locks','helmet quick release','performance parts','2009 f650gs','oil filler cap removal tool','shift lever cover','visor tint','enduro boots','hose clips','047-0145','armour','luggage parts','bmw venting machine','r1200gs protection','head protection','seal','scorpion','carb balancer','duffle','f650gs seat','slider s1000rr','cylinder head','gs t shirt','city 2 denim pants','fairing bolts','tooth belt','first gear','rear turn signal','side panel','activated carbon filter','audio cable','powerlet bar','2010 r1200gs','1150 rt','r1150rt motorcycle cover','factory alarm','transmission','brake lock','engine bar protectors','detector','adjustable brake lever','75w90','fuel line quick connect','gs hat','ipod cable','license','s1000rr lowering kit','hugger','powerbar plus','bungie buddies','powerlet powerbar','bmw rain','k1200lt owner manual','f650gs battery','k1200lt tires','r1200gs engine guard','trunk case','zumo gps','sheepskin','12-41-2-306-700','drum brakes','tire changing tools','crash bars r1100gs','vario liner','trink','oil glass','z2241','cross bar pad','wheel jockey','hitch','nexx','laminar lip r1100gs','grip switch','cb','trunk mirror','anti-seize','bmw atlantis gloves','metzler','shift lever extender r1200rt','handlebar ends','f650gs air filter','bmw r1200rt mirrors','bmw coveralls','points','pkt-042','ignition wire','front brake disc','chain lube','swipe','k1200r top case','body type video','kern','cooling fan','gs engine guard','wear','k1200lt back rest','k75 case','pac-029','k1200lt floorboards','traffic light','k1200lt repair manual','dyna iii','k100 handlebar','piaa h4','161 021','fearing','ztechnik z2412','brake hose','key fob 2','power cable','k1200rs sport mirror','bmw rain gear','float','watch','11-150','z6190','r11xoildeluxe','clutch switch','lowering links','waterproof','mudsling','metric tool','ctl-0083','k1200s rack','bmw roundell','yr6lde','brake sensor','f800gs tank bag','z8890','atlantis jacket','r1150gs rear rotor','brake pedal','foot peg plate','oil filler plug','xr7ldc','bosch spark plugs','rim lock','bmw airflow gloves','k windshield','transmission parts','running boards','brake clutch cover','brake cap','vespa scooters','oil gasket','r65 brake','r1150rt brake pads','bmw g650x','glass\'s','650.628 01 09','fender extender','roller','generator','k1200rs bar backs','highway','metzler tires','purse','h3 bulbs','back','s1000rr seat','rear brake parts','hook wrench','rev-it','powerlet cable','bmw r50','bolt lock','barends','mystic','instructions','r1200gs exhaust','rally pro','hinged cover','bead rider','powerlet powerbar plus','boxer','pliers','r1150rt footpeg','bmw comfort shell','tank parts','r1200c handle bars','passenger seat back','rallye pro boot','dyna 3','r1100gs riser','r1150r riser','gps cover','disconnect','bleed','rtp','rk-1','r1200r engine guard','bar backs r1150rs','zip','head bolts','gear indicator','battery maintainer','r1200r riser','r1200c spark plug','speedo drive','grips r1200c','mirror nut','brazimoto','bmw women','k1300s seat','compressor','fastway','gore-tex','exhaust cover','cramp','ngk spark plugs','delux oil change','piaa bulbs','r1200gs headlight guard','adjustable handlebars','piston reset tool','saddlebag mounts','bmw gs','passenger risers','mesh pant','lighter','gps power cord','led flashlight','driveshaft','gerbing splitter','fuel line quick','panniers r1200rt','functional backpack','feeler gauge set','beadrider','piaa light bulbs','r1200gs turn signal','sae to socket','900cc decal','mirror bolt','k1200gt handlebar','torx tools','1261','dynojet','dot 4','r1100rs air filter','foot peg k1200r','bmw male plug','note pad','bmw leather','rocker cover','bmw rallye 3 pants','fillister','roady','234 723','tkc-80','bmw denim pant','navigator mount','r1200st seat','code plug','r1150rt shock','handlebar riser k1200gt','rear bearing','fuel container','chain maintenance','gs mirror','westco','s1000rr windshield','rear luggage rack','air flow gloves','engine crash guards','bmw r1200rt','30 years','rear brake master cylinder','cd changer','spanner wrench','bmw garmin','deer whistle','sensor','moto techniques','torx wrench','valve core','radio antenna','r60 7','drf4','deer','rallye 3 gloves','pin wrench','passenger foot pegs','bmw clock','mx extreme protectors','electronics accessory plug adapter to dual cigarette plug w coiled cord','o ring','vintage parts','footpeg lowering r1100rt','oil filler tool','filler pipe','ball joint','oval head screw','sealer','moto equip','torx sockets','remus exhaust','k1200s exhaust','footpeg lowering r1200rt','machineart moto','blue max saddlebag chair','k75 rotor','r1200gs engine protection','horn relay','r1200rt accessory shelf','lambda','r1200c back rest','kolpin','doubler glove','z2402','r1100rs wind screen','combination switch left','bmw navigator iv gps','brake fluid container','lock repair kit','powerlet coil','wee willy','r100rt decal','key cover','gps mount 1','paint magnesium','high seat','tire patch kit','ignition module','lifter','tech 10','verholen r1150r','intake manifold','r1150rt comfort seat','bmw windshield','xcountry','marryl pant','tool wrap','brake pads r90 6','blue','hall','sump','502.926 00 01','test','valve feeler','spark plug covers r1200c','f 650 gs','lidsafe','rr jacket','adjustable paralever','spider lock','f650gs chain','bmw voltage regulator','tank bag divider','hot','tourance exp','r90s brush','rt tank bag','r1200gs topcase','luggage s 1000','windshiel','sport shield','rear bag','oil sensor','k1200r riser','remote control','rack pack','seat conversion','hypoid','seize','r1200rt bar backs','mv tank bag','luggage tail bag bmw case system','fillister head screw','40mm','screw driver','r1150gs footpeg','oil cooler guard r1200rt','adventure top case mount kit','r1100rs seat','continental tires','tacho','bmw rallye 3 pro','r1150rt crash bars','k1200rs topcase','k75 fork seals','r1100rt manual','bru','caliper','bearings','handlebar set back','bmw r 1200 rt','bmw socket','chest protector','bmw r1200gs','bmw rallye 2 pro jacket','flasher','fuel filler gasket','spark wire','vario side cases','k1200rs laminar','bmw summer underwear','antenna cable','r1150r handlebars','inlet manifold','side deflectors','cooling vest','bmw tank bag r1200rt','low bars','power supply','backrest pad','function','poster','functional underwear','fuel cleaner','rear luggage rack r1200r','3m tape','brake master','children jackets','r1150gs tail light','wicking','gift certificate','rallye 3 suit','apparel pant','k75s starter relay','gs turn signal','soft saddlebags','sun shade','tourmaster 12 liter tank bag','tail hump cover','86-100','bmw glass','z4003','2625','2624','005 500','bonneville','rear case','comfort grips','oem tool','mudflap','stool','e10','180 55 17','manual cd','no loss','seat rail','key bag','temperature','rear suspension','small sport softbag','sport 2 softbag large','trip computer','rt trunk','ft ab14','f650 lowering kit','231 820','afr1150rt','gps nuvi 360','r100gs battery','pannier mounting','r1200r bar backs','air temperature sensor','battery r1100s','bmw summer 2 pants','bmw f650gs lights','oil change kit deluxe','tank bag r1200gs adventure','drive chain','float pin','meter','bmw rain suit','112 650','bmw rack','115 680','r90s seat','short beak','213 680','115 640','crankshaft seal','clutch installation tools','sport bag','k75s handlebars','proficient','sport 2 tailbag','syringe','rally jacket','r1150r reflector','r1200rt brake','r1100s signal','gt1','k1200rs side bags','r1150r bar backs','oil cooler kit r100 7','r1100r oil filter','side bag lids','gps r1150rt','hepco becker r1150r','kukko','grommet','sidestand adapter','z4010','toggle switch','r 1200 s seat','bmw saddle bags','13-11-1-259-869','k75 foot peg','b1281','cortech super','garage mat','hipbag','hand protection bars','frame tools','brake cable','r1200gs footpeg lowering','cover left','r1200r trunk','licence plate','balance carburetor','110 80 19','saddle bag hinge','catalogue','r1200rt bike cover','summer underwear','hip','detailer','r1100r rack','r1100r engine guard','service data','top case backrest','fuel pipe','bmw crash bars','banjo bolts','tiedown','k1200rs luggage rack','k1200rs shift lever','tint strip','mra.07.013.vt0','hepco junior','bmw motorcycles sport 2 softbag','23-805','rear turn signal bulb','120 70 17','grunge brush','r1200rt lowering kit','502.918','trinkpak hydra','1444','filler plug','elbow','k1200lt fairing','2000 f650','650 lower kit','side luggage','f650 suspension','r1100gs mirror','driving lights r1200c','topcase pad','trunk bag','r1150gs bar backs','transformer','z6206','right rear view mirror','0435','r1150gs tankbag','k1200s handlebar','steering dampener','passenger','bmw watch','fueltank','r1150rt windscreen','rubber grips','hex wrench','radiator tool','hardware kit','tcd','innovations','bmw rallye','valve cover bolts','footpegs gs','great neck','r1200 cl','fanny','bmw power plug','rcu risers','cylinder stud repair','side stand f650','foot pad','rest','bowden','backrest r1150rt','cigarette charger','tankbag power','rally pro 3','gift card','machineart','bmw r45','filter tool','nuvi gps','fsp1-bk','boulder pants','borrego','k1200r air filter','313 620','soft side bags','r1200rt lights','v-stream','rok000xx','plug cap','convertibars','front brake hose','rid','spark plug cap','r1200gs saddlebag','mra varioscreen','rid panel','r1200c clamps','wind shield r1200gs','r1150r oil','r1100rt side stand','z7400','k100 bar backs','k1200lt visor','spark plug gap','k1100rs oil','digital voltmeter','850r','f650 low seat','bmw trailguard','dakar screen','f800 tank bag','city 2 denim','ztechnik storage pod','bar weights','bmw to cigarette adapter','center stand f800gs','1200 gs engine guards','bmw boulder jacket','r1200rt guards','bmw spark plug wrench','xmoto','bmw hp2','exhaust bracket','r1200rt carbon fiber','r1150r turn signal','46-61-7-694-390','speedbrain','bmw r80rt','gs wheels','clucth','r1150gs filter','gadgets','r1200r sport windshield','bmw tourance 2 jacket','k75s brake pads','tensioning tool','mesh tech','bmw comfortshell pants','rim protectors','firstgear jacket','bmw connector','lights r1150rt','k1200gt footpegs','f650gs centerstand','hardware','047-0210','np air','city 2 pants','hat 1209','fuel level sensor','r1100s spark plug cover','savanna 2','windscreen ztechnik','k75 tool kit','wheel brush','r12oildeluxe','bmw protector','r1200rt cylinder protection','bmw r100 7 foot pegs','actuator','r60 circuit board','servo','bmw k1200gt windshield','flange r1200gs','f800 air filter','f650 fuel cap','k1200s tires','touchup','breather hose','silver function','backrest k1300gt','r1150gs turn signals','airflow 3 pants','mens t shirt','r1150rs seat','stainless steel hardware kit','r1100gs tires','r80 decal','heli k1200s','5164','k1200gt ztechnik','r1200c guards','exhaust nut','r1150gs protection','bmw riser','r65 tank bag','r1200rt engine bars','r1150gs oil','lock washer','button','k1200rs oil change','savanna-2 jacket','camos bhs-500','bmw gs 1200 adventure','hepco becker r1100r','handlebar adapters','r1150rt topcase','r1150rt pegs','502.902.00.01','pkt-046','footwear','blue away','k1200r frame sliders','1200 tank bag','bmw r1200gs windshield','k1200lt oil change kit','tank bag rain cover f650','hub','top case bag','fluids','small tankbag','vario screen','r1200rt sport mirrors','k1200gt bakup','luggage grid r1200gs','bar risers r1200rt','r1150rt coil','suburban machinery k1200gt','gap','sport windscreen','1200 gs tool kit','610.036 00 01','warmer','women airglide','padding for seats','clear signal lens','234 630','bmw adapter','top case cushion','502.926','bmw vario','back rest adventure','bmw city case lids','bosch w6dc','glass cleaner','hepco becker 30','r1200st tankbag','xena locks','40mm bing','rally 2 pants','r1200gs case','tire fix','rear tail light','neckwarmer','carb adjust','solenoid','city denim','r1200gs verholen','f800st bar backs','side racks','fin','r1200c comfort windshield','k1200rs low seat','cover insert','k75 oil kit','original exhaust','handlebar riser f800st','rear blinker','r1150gs fender','k1200lt drive shaft','clutch line','bmw trinkpak hydra','r1100r saddlebags','r80 points','helmet sticker','r1200st ztechnik','bmw rally','r1100rt disc','small tank bag','cyclinder protection','k1200lt shelf','rcu r1200rt','r1150rt headlight cover','bearing puller','side stand pin','bakup r1200rt','leovince','boxer cup','r1200rt wheel','rain wear','r1100rt headlight cover','f650 drain plug','foam','f650gs hepco','navigator zumo','r1100r tail light','650.638 01 09','r1150rt owners manual','handle bar weights','hepco becker engine protection bars','r850r bearing','bmw grease','r1200rt passenger backrest','r1200c rack','protection cap','drive shaft k1200rs','r1150gs hepco','tank protector trim','x pegs','transition boots','bmw f650gs windscreen','city trousers','transmitter','bearing tool','r1150rt oil','stem caps','k1200lt lights','laminar flow','hlc','h-lite lens','r1100r luggage rack','bmw k1200lt saddlebag reflector kit','suspension wrench','givi r1150r','fuel system cleaner','bmw wax','wheel tape','tapered roller bearing','r1200gs bakup','r1200gs rear splash guard','r1200cl backrest','boxer power','k1200rs electrics','gasket r65','free','rizzo pegs','k75 spark plugs','hs-h1','bmw r1200c saddlebags','k1200rs filter','r1200gs bar risers','tow strap','bmw rallye boots','r1200rt engine protection','rear brake light','sidi lei','sidi air','ha12swrs','luggage plate','bar ends k1200s','r1100s bulb','k75 handlebars','bmw r1200 gs','k1200 gt tank bag','r1150gs luggage','oil cap gasket','streetpilot','tci','k1200rs oil','oem tool kit','k1200lt footpeg','bmw accessory socket','tank bag cover','bmw headset','bmw case lids','shelf kit','light n easy','car kit','pro 2','lever extension','footpeg lowering kit r1200rt','fuel line o-ring','k75 hose','mens polo shirt','headlite','screw cap','f800gs headlight guard','low saddle','schampa','hepco becker engine guard for bmw r1200gs','license plate mounting bolts','ladies airglide jacket','bmw oil filter kit f650 cs gs dakar','firstgear sedona gloves','door opener','r1150rt throttlemeister','12 volt accessory','airflow 2 gloves','r100rs seat','bug guard','1200 gs cases','optimoly','blink','k1200s top case','r100 pistons','belt tensioner','forcefield shirt','dual','drive shaft tool','f800 exhaust','universal','top dead center tool','bmw summer 2','k75s brake lever','bmw r1100s clutch','bike cover f650','handle bar r1150gs','covering carbon','footpeg lowering for passenger','k12tb','ch4r','laminar windshield','k1200s tank','powerlet zumo','502.918 00 09','asc','r100r tire','as 5p','k1200lt oil filter wrench','sling purse','r80rt mirror','large tank bag bmw','aluminium top case','luggage liners rka','bmw protector 2','bmw r1200c saddle bags','s1000rr r','gaskets k1200lt','puncture','k1200gt saddlebags','tie-downs','008 561','bmw santiago jacket','2008 k1200s','right brake lever','bmw tire gauge','r1150r bars','speedster windscreen','crash bar f800gs','prosport','pannier rails','rt pegs','r1150gs grips','rizoo','brake reservoir cover','r1100 valve cover','r1200gs bmw bags','bmw oem','brake spring','r1100gs hand guards','soft','strip','clymer service repair manual','r1100gs spark plug','ball bearing','r1200r luggage','battery charger for k1200s','set case holder','r1200gs led','r2','r1100r front turn signal','ppa.10.001','r69s','bmw knee pads','rka-163','bmw savanna','replacement bulbs','bmw first aid','r65 rear axle','touring bags','ratio rite','acc.00.001','scorpion pant','bar protectors','r1150r panniers','r1200rt ztechnik','repsol 15w-50','r1200c indicator','r1150r handguards','r1200rt rider footpeg','rake','r1200gs piaa','registration','bmw turn signals','rally pants','boot size','bmw ladies','cxsp','crimp','ball','back up','rk10','r1200s valve cover gasket','bmw led brake light','r1200rt battery charger','bmw navigator 3','tire plugger pocket kit w c02','sound','bmw oil filter kit','bmw tire repair kit','s6','r1200gs accessory shelf','r1200gs tank side covers','cold','r1200rt t.shirt','r1150 bike cover','brembo pads','r1200cl repair manual','revit infinity','bmw oem valve cover gasket','r1150rt alternator belt','bmw denim','r75 6 oil','r1150gs tank','r1150r crashbar','bmw gerbing','rear fork','brake lever extension r1200rt','riser k75','bak-r11rt','face mask','cap nut','bailey','camsafe','rear seal','cxca','bmw r1200gs fog light kit','bmw 650 gs seat','carbon clutch cover','r1200r sidestand','footpeg lowering kit r1200r','r1100gs light bar','r1150rt lens','r1200gs swing arm cap','r1150gs adventure luggage','chrome oil cooler grille','bmw f650 handle bar','clear turn signal covers','fork filler','r1200r hornig','chain press','r100 clock','r 65 decals','bmw trunk rack','flat','cooler screen','power converter','r1150r sparkplugs','bmw polo','sidi blade','boot puma 1000','fsop-l','r65 ignition coil','sidi rain','front tire k1200gt','sidi b2','bmw pants women','bar k100','r100 carb kits','bmw r1100rt windshield','bmw r1100rs battery','v.o.i.c.e','snap ring','frame cover','k1200s bar','k1200s t-shirt','r1200c lens','r1100rt topcase','bmw navigator mount','rear compartment','r1150gs brake light','r80 battery','r1150gs cd rom','fork oil for r60 6','r1200c filter','r1200c top case','r1100 850r r1100rs footpegrelocation comfort','k 1200 gt top case','boot straps','r1150gs oil cap','storage pod by ztechnik','bmw switch','sparky','f650 rack','r1200c brake lever','r 1200 st','bmw f650 speed sensor','r1100rt motorcycle cover','can-bus charger','r1150rs tankbag','bmw r 1100 rt','bmw r1200gs back rest','corbin r1200gs front saddle with heater','r 1200 c windshield','bmw kidney belt','r1200s panniers','r1200c windshield mounts','f650 gs solo seat','r1150rt case','f650 lever','bmw r850r windshield','r100 cover','bmw cylinder','r80 7 brake disc','carbon heel','r1200gs side case','k100 backrest','k1200rs mounts','bmw cylinder head protection kit','typhoon jacket','rider pegs','revit off track','f650 gs fairing');
/* $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);
    }