import math
def load(list):
print "Loading AI bindings"
# binding format:
# ( 'name of robot from .bot file', 'name of AI from script class',
# {'optional constructor parameter':value, 'another':value} )
# constructor parameters:
# nose - "front" of bot in radians (default 0)
# invertible - can function upside-down (default False)
# topspeed - speed in meters/second AI will attempt not to exceed (default 4.0)
# throttle - maximum analog value AI will attempt not to exceed (default 100)
# turnspeed - turning in radians/second AI will attempt not to exceed (default 2.5)
# turn - maximum analog value AI will attempt not to exceed (default 60)
# radius - bot radius to use for checking for hazards and walls (default 1.0)
# 0 - Red Zone "Do NOT enter the Red Zone!"
list.append(("Scout","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4)}))
list.append(("ALARM","Omni",{'invertible':True,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10)}))
list.append(("Sentinel","Omni",{'invertible':False,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9)}))
# 1 - PREHISTORIC "Bad and bloodthirsty."
list.append(("Roly Poly","Rammer",{'invertible':True,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11)}))
list.append(("Sabretooth","Omni",{'invertible':True,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14)}))
list.append(("Grog The Warrior","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14)}))
# 2- The Good ol' Boys "Don't need nothin' but my truck, my shotgun, and my bot."
list.append(("Catfish","Rammer",{'invertible':True,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8)}))
list.append(("Mud Runner","Omni",{'invertible':False,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6)}))
list.append(("BEAR","Omni",{'invertible':False,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36)}))
# 3 - Team Dragon "If you defeat us, we will sneak in at night and steal your chickens."
list.append(("Ninja","Omni",{'invertible':True,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8)}))
list.append(("Bushido","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5)}))
list.append(("Ronin","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8)}))
# 4 - BLACK STORM "Beware, BLACK STORM!"
list.append(("Bot-204","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4)}))
list.append(("Devil","Omni",{'invertible':False,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4)}))
list.append(("Coal Miner","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24)}))
# 5 - Team SPARK "Fast and furious."
list.append(("JACKPOT!","Omni",{'invertible':False,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2)}))
list.append(("Boxer","Omni",{'invertible':True,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10)}))
list.append(("Fatal Emergency","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20)}))
# 6 - SpikeHeads "I'd like you to meet my little metal friend..."
list.append(("M.A.D.","Omni",{'invertible':True,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6)}))
list.append(("Dementia","Omni",{'invertible':False,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12)}))
list.append(("Little Metal Friend","Omni",{'invertible':Truee,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10)}))
# 7 - North Polers "Chilling defeat will gnaw your bones."
list.append(("MiniBerg","Omni",{'invertible':False,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3)}))
list.append(("Iceberg","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4)}))
list.append(("Snow Job","Omni",{'invertible':False,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28)}))
# 8 - HIGH VOLTAGE "Here, hold this wire for a second..."
list.append(("Flapjack","Omni",{'invertible':False,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3)}))
list.append(("Backslash","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4)}))
list.append(("WIDE LOAD","Omni",{'invertible':True,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30)}))
# 9 - Team HEX "We eat nuts and bolts for breakfast."
list.append(("Flame Chopper","FBS_2",{'invertible':False,'nose':math.pi*2,'PreSpinEntrance':8,'SpinDirection(1/-1)':1,'ReMobilizeRoutineTime(10-60)':15,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12)}))
list.append(("LugNut","Pillar",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12)}))
list.append(("Hanky Panky","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13)}))
# 10 - Team Z "Cooler than you."
list.append(("Beserker","Omni",{'invertible':False,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9)}))
list.append(("Razor","Rammer",{'invertible':True,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22)}))
list.append(("Eye Poker","Rammer",{'invertible':True,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36)}))
# 11 - SteelYard Dog "Our Bite is MUCH worse than our bark!"
list.append(("Lil Dog","Rammer",{'invertible':True,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6)}))
list.append(("Da Dog","Rammer",{'invertible':True,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18)}))
list.append(("Big Dog","Rammer",{'invertible':True,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22)}))
# 12 - RIOT "Things are going to get LOUD!"
list.append(("Civil Disobedience","Omni",{'invertible':True,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6)}))
list.append(("REVENGE","OmniRam",{'invertible':True,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14)}))
list.append(("Raptor","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16)}))
# 13 - MEGATON "Boom."
list.append(("Stinger","Omni",{'invertible':True,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4)}))
list.append(("Tornado","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18)}))
list.append(("DEADBEAT","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6)}))
# 14 - The Scrappers "We are scrap parts specialists."
list.append(("Arc Pounder","Pillar",{'invertible':True,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8)}))
list.append(("Ripblade","Omni",{'invertible':False,'nose':math.pi,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8)}))
list.append(("Backyard Ripper","Omni",{'invertible':False,'nose':0,'topspeed':99,'throttle':130,'turnspeed':2.5,'turn':60,'radius':0.3,'range':99,'weapons':(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18)}))