data
export forceMasteryLevels
align 4
LABELV forceMasteryLevels
address $131
address $132
address $133
address $134
address $135
address $136
address $137
address $138
export forceMasteryPoints
align 4
LABELV forceMasteryPoints
byte 4 0
byte 4 5
byte 4 10
byte 4 20
byte 4 30
byte 4 50
byte 4 75
byte 4 100
export bgForcePowerCost
align 4
LABELV bgForcePowerCost
byte 4 0
byte 4 2
byte 4 4
byte 4 6
byte 4 0
byte 4 0
byte 4 2
byte 4 6
byte 4 0
byte 4 2
byte 4 4
byte 4 6
byte 4 0
byte 4 1
byte 4 3
byte 4 6
byte 4 0
byte 4 1
byte 4 3
byte 4 6
byte 4 0
byte 4 4
byte 4 6
byte 4 8
byte 4 0
byte 4 1
byte 4 3
byte 4 6
byte 4 0
byte 4 2
byte 4 5
byte 4 8
byte 4 0
byte 4 4
byte 4 6
byte 4 8
byte 4 0
byte 4 2
byte 4 5
byte 4 8
byte 4 0
byte 4 1
byte 4 3
byte 4 6
byte 4 0
byte 4 1
byte 4 3
byte 4 6
byte 4 0
byte 4 1
byte 4 3
byte 4 6
byte 4 0
byte 4 2
byte 4 4
byte 4 6
byte 4 0
byte 4 2
byte 4 5
byte 4 8
byte 4 0
byte 4 1
byte 4 5
byte 4 8
byte 4 0
byte 4 1
byte 4 5
byte 4 8
byte 4 0
byte 4 4
byte 4 6
byte 4 8
export forcePowerSorted
align 4
LABELV forcePowerSorted
byte 4 5
byte 4 0
byte 4 10
byte 4 9
byte 4 11
byte 4 1
byte 4 2
byte 4 3
byte 4 4
byte 4 14
byte 4 7
byte 4 13
byte 4 8
byte 4 6
byte 4 12
byte 4 15
byte 4 16
byte 4 17
export forcePowerDarkLight
align 4
LABELV forcePowerDarkLight
byte 4 1
byte 4 0
byte 4 0
byte 4 0
byte 4 0
byte 4 1
byte 4 2
byte 4 2
byte 4 2
byte 4 1
byte 4 1
byte 4 1
byte 4 2
byte 4 2
byte 4 0
byte 4 0
byte 4 0
byte 4 0
export WeaponReadyAnim
align 4
LABELV WeaponReadyAnim
byte 4 1091
byte 4 1101
byte 4 573
byte 4 1100
byte 4 1101
byte 4 1101
byte 4 1101
byte 4 1101
byte 4 1101
byte 4 1101
byte 4 1101
byte 4 1108
byte 4 1108
byte 4 1108
byte 4 571
byte 4 1099
export WeaponAttackAnim
align 4
LABELV WeaponAttackAnim
byte 4 117
byte 4 120
byte 4 573
byte 4 118
byte 4 120
byte 4 120
byte 4 120
byte 4 120
byte 4 120
byte 4 120
byte 4 120
byte 4 137
byte 4 120
byte 4 120
byte 4 571
byte 4 117
export BG_LegalizedForcePowers
code
proc BG_LegalizedForcePowers 436 12
file "../../game/bg_misc.c"
line 177
;1:// Copyright (C) 1999-2000 Id Software, Inc.
;2://
;3:// bg_misc.c -- both games misc functions, all completely stateless
;4:
;5:#include "q_shared.h"
;6:#include "bg_public.h"
;7:
;8:#ifdef QAGAME
;9:#include "g_local.h"
;10:#endif
;11:
;12:#ifdef UI_EXPORTS
;13:#include "../ui/ui_local.h"
;14:#endif
;15:
;16:#ifndef UI_EXPORTS
;17:#ifndef QAGAME
;18:#include "../cgame/cg_local.h"
;19:#endif
;20:#endif
;21:
;22://rww - not putting @ in front of these because
;23://we don't need them in a cgame striped lookup.
;24://Let me know if this causes problems, pat.
;25:char *forceMasteryLevels[NUM_FORCE_MASTERY_LEVELS] = 
;26:{
;27:	"MASTERY0",	//"Uninitiated",	// FORCE_MASTERY_UNINITIATED,
;28:	"MASTERY1",	//"Initiate",		// FORCE_MASTERY_INITIATE,
;29:	"MASTERY2",	//"Padawan",		// FORCE_MASTERY_PADAWAN,
;30:	"MASTERY3",	//"Jedi",			// FORCE_MASTERY_JEDI,
;31:	"MASTERY4",	//"Jedi Adept",		// FORCE_MASTERY_JEDI_GUARDIAN,
;32:	"MASTERY5",	//"Jedi Guardian",	// FORCE_MASTERY_JEDI_ADEPT,
;33:	"MASTERY6",	//"Jedi Knight",	// FORCE_MASTERY_JEDI_KNIGHT,
;34:	"MASTERY7",	//"Jedi Master"		// FORCE_MASTERY_JEDI_MASTER,
;35:};
;36:
;37:int forceMasteryPoints[NUM_FORCE_MASTERY_LEVELS] =
;38:{
;39:	0,		// FORCE_MASTERY_UNINITIATED,
;40:	5,		// FORCE_MASTERY_INITIATE,
;41:	10,		// FORCE_MASTERY_PADAWAN,
;42:	20,		// FORCE_MASTERY_JEDI,
;43:	30,		// FORCE_MASTERY_JEDI_GUARDIAN,
;44:	50,		// FORCE_MASTERY_JEDI_ADEPT,
;45:	75,		// FORCE_MASTERY_JEDI_KNIGHT,
;46:	100		// FORCE_MASTERY_JEDI_MASTER,
;47:};
;48:
;49:int bgForcePowerCost[NUM_FORCE_POWERS][NUM_FORCE_POWER_LEVELS] = //0 == neutral
;50:{
;51:	{	0,	2,	4,	6	},	// Heal			// FP_HEAL
;52:	{	0,	0,	2,	6	},	// Jump			//FP_LEVITATION,//hold/duration
;53:	{	0,	2,	4,	6	},	// Speed		//FP_SPEED,//duration
;54:	{	0,	1,	3,	6	},	// Push			//FP_PUSH,//hold/duration
;55:	{	0,	1,	3,	6	},	// Pull			//FP_PULL,//hold/duration
;56:	{	0,	4,	6,	8	},	// Mind Trick	//FP_TELEPATHY,//instant
;57:	{	0,	1,	3,	6	},	// Grip			//FP_GRIP,//hold/duration
;58:	{	0,	2,	5,	8	},	// Lightning	//FP_LIGHTNING,//hold/duration
;59:	{	0,	4,	6,	8	},	// Dark Rage	//FP_RAGE,//duration
;60:	{	0,	2,	5,	8	},	// Protection	//FP_PROTECT,//duration
;61:	{	0,	1,	3,	6	},	// Absorb		//FP_ABSORB,//duration
;62:	{	0,	1,	3,	6	},	// Team Heal	//FP_TEAM_HEAL,//instant
;63:	{	0,	1,	3,	6	},	// Team Force	//FP_TEAM_FORCE,//instant
;64:	{	0,	2,	4,	6	},	// Drain		//FP_DRAIN,//hold/duration
;65:	{	0,	2,	5,	8	},	// Sight		//FP_SEE,//duration
;66:	{	0,	1,	5,	8	},	// Saber Attack	//FP_SABERATTACK,
;67:	{	0,	1,	5,	8	},	// Saber Defend	//FP_SABERDEFEND,
;68:	{	0,	4,	6,	8	}	// Saber Throw	//FP_SABERTHROW,
;69:	//NUM_FORCE_POWERS
;70:};
;71:
;72:int forcePowerSorted[NUM_FORCE_POWERS] = 
;73:{ //rww - always use this order when drawing force powers for any reason
;74:	FP_TELEPATHY,
;75:	FP_HEAL,
;76:	FP_ABSORB,
;77:	FP_PROTECT,
;78:	FP_TEAM_HEAL,
;79:	FP_LEVITATION,
;80:	FP_SPEED,
;81:	FP_PUSH,
;82:	FP_PULL,
;83:	FP_SEE,
;84:	FP_LIGHTNING,
;85:	FP_DRAIN,
;86:	FP_RAGE,
;87:	FP_GRIP,
;88:	FP_TEAM_FORCE,
;89:	FP_SABERATTACK,
;90:	FP_SABERDEFEND,
;91:	FP_SABERTHROW
;92:};
;93:
;94:int forcePowerDarkLight[NUM_FORCE_POWERS] = //0 == neutral
;95:{ //nothing should be usable at rank 0..
;96:	FORCE_LIGHTSIDE,//FP_HEAL,//instant
;97:	0,//FP_LEVITATION,//hold/duration
;98:	0,//FP_SPEED,//duration
;99:	0,//FP_PUSH,//hold/duration
;100:	0,//FP_PULL,//hold/duration
;101:	FORCE_LIGHTSIDE,//FP_TELEPATHY,//instant
;102:	FORCE_DARKSIDE,//FP_GRIP,//hold/duration
;103:	FORCE_DARKSIDE,//FP_LIGHTNING,//hold/duration
;104:	FORCE_DARKSIDE,//FP_RAGE,//duration
;105:	FORCE_LIGHTSIDE,//FP_PROTECT,//duration
;106:	FORCE_LIGHTSIDE,//FP_ABSORB,//duration
;107:	FORCE_LIGHTSIDE,//FP_TEAM_HEAL,//instant
;108:	FORCE_DARKSIDE,//FP_TEAM_FORCE,//instant
;109:	FORCE_DARKSIDE,//FP_DRAIN,//hold/duration
;110:	0,//FP_SEE,//duration
;111:	0,//FP_SABERATTACK,
;112:	0,//FP_SABERDEFEND,
;113:	0//FP_SABERTHROW,
;114:		//NUM_FORCE_POWERS
;115:};
;116:
;117:int WeaponReadyAnim[WP_NUM_WEAPONS] =
;118:{
;119:	TORSO_DROPWEAP1,//WP_NONE,
;120:
;121:	TORSO_WEAPONREADY3,//WP_STUN_BATON,
;122:	BOTH_STAND2,//WP_SABER,
;123:	TORSO_WEAPONREADY2,//WP_BRYAR_PISTOL,
;124:	TORSO_WEAPONREADY3,//WP_BLASTER,
;125:	TORSO_WEAPONREADY3,//TORSO_WEAPONREADY4,//WP_DISRUPTOR,
;126:	TORSO_WEAPONREADY3,//TORSO_WEAPONREADY5,//WP_BOWCASTER,
;127:	TORSO_WEAPONREADY3,//TORSO_WEAPONREADY6,//WP_REPEATER,
;128:	TORSO_WEAPONREADY3,//TORSO_WEAPONREADY7,//WP_DEMP2,
;129:	TORSO_WEAPONREADY3,//TORSO_WEAPONREADY8,//WP_FLECHETTE,
;130:	TORSO_WEAPONREADY3,//TORSO_WEAPONREADY9,//WP_ROCKET_LAUNCHER,
;131:	TORSO_WEAPONREADY10,//WP_THERMAL,
;132:	TORSO_WEAPONREADY10,//TORSO_WEAPONREADY11,//WP_TRIP_MINE,
;133:	TORSO_WEAPONREADY10,//TORSO_WEAPONREADY12,//WP_DET_PACK,
;134:
;135:	//NOT VALID (e.g. should never really be used):
;136:	BOTH_STAND1,//WP_EMPLACED_GUN,
;137:	TORSO_WEAPONREADY1//WP_TURRET,
;138:};
;139:
;140:int WeaponAttackAnim[WP_NUM_WEAPONS] =
;141:{
;142:	BOTH_ATTACK1,//WP_NONE, //(shouldn't happen)
;143:
;144:	BOTH_ATTACK3,//WP_STUN_BATON,
;145:	BOTH_STAND2,//WP_SABER, //(has its own handling)
;146:	BOTH_ATTACK2,//WP_BRYAR_PISTOL,
;147:	BOTH_ATTACK3,//WP_BLASTER,
;148:	BOTH_ATTACK3,//BOTH_ATTACK4,//WP_DISRUPTOR,
;149:	BOTH_ATTACK3,//BOTH_ATTACK5,//WP_BOWCASTER,
;150:	BOTH_ATTACK3,//BOTH_ATTACK6,//WP_REPEATER,
;151:	BOTH_ATTACK3,//BOTH_ATTACK7,//WP_DEMP2,
;152:	BOTH_ATTACK3,//BOTH_ATTACK8,//WP_FLECHETTE,
;153:	BOTH_ATTACK3,//BOTH_ATTACK9,//WP_ROCKET_LAUNCHER,
;154:	BOTH_THERMAL_THROW,//WP_THERMAL,
;155:	BOTH_ATTACK3,//BOTH_ATTACK11,//WP_TRIP_MINE,
;156:	BOTH_ATTACK3,//BOTH_ATTACK12,//WP_DET_PACK,
;157:
;158:	//NOT VALID (e.g. should never really be used):
;159:	BOTH_STAND1,//WP_EMPLACED_GUN,
;160:	BOTH_ATTACK1//WP_TURRET,
;161:};
;162:
;163:
;164:/*
;165:================
;166:BG_LegalizedForcePowers
;167:
;168:The magical function to end all functions.
;169:This will take the force power string in powerOut and parse through it, then legalize
;170:it based on the supposed rank and spit it into powerOut, returning true if it was legal
;171:to begin with and false if not.
;172:fpDisabled is actually only expected (needed) from the server, because the ui disables
;173:force power selection anyway when force powers are disabled on the server.
;174:================
;175:*/
;176:qboolean BG_LegalizedForcePowers(char *powerOut, int maxRank, qboolean freeSaber, int teamForce, int gametype, int fpDisabled)
;177:{
line 180
;178:	char powerBuf[128];
;179:	char readBuf[128];
;180:	qboolean maintainsValidity = qtrue;
ADDRLP4 352
CNSTI4 1
ASGNI4
line 181
;181:	int powerLen = strlen(powerOut);
ADDRFP4 0
INDIRP4
ARGP4
ADDRLP4 360
ADDRGP4 strlen
CALLI4
ASGNI4
ADDRLP4 356
ADDRLP4 360
INDIRI4
ASGNI4
line 182
;182:	int i = 0;
ADDRLP4 76
CNSTI4 0
ASGNI4
line 183
;183:	int c = 0;
ADDRLP4 0
CNSTI4 0
ASGNI4
line 184
;184:	int allowedPoints = 0;
ADDRLP4 88
CNSTI4 0
ASGNI4
line 185
;185:	int usedPoints = 0;
ADDRLP4 80
CNSTI4 0
ASGNI4
line 186
;186:	int countDown = 0;
ADDRLP4 84
CNSTI4 0
ASGNI4
line 191
;187:	
;188:	int final_Side;
;189:	int final_Powers[NUM_FORCE_POWERS];
;190:
;191:	if (powerLen >= 128)
ADDRLP4 356
INDIRI4
CNSTI4 128
LTI4 $140
line 192
;192:	{ //This should not happen. If it does, this is obviously a bogus string.
line 194
;193:		//They can have this string. Because I said so.
;194:		strcpy(powerBuf, "7-1-032330000000001333");
ADDRLP4 92
ARGP4
ADDRGP4 $142
ARGP4
ADDRGP4 strcpy
CALLP4
pop
line 195
;195:		maintainsValidity = qfalse;
ADDRLP4 352
CNSTI4 0
ASGNI4
line 196
;196:	}
ADDRGP4 $141
JUMPV
LABELV $140
line 198
;197:	else
;198:	{
line 199
;199:		strcpy(powerBuf, powerOut); //copy it as the original
ADDRLP4 92
ARGP4
ADDRFP4 0
INDIRP4
ARGP4
ADDRGP4 strcpy
CALLP4
pop
line 200
;200:	}
LABELV $141
line 203
;201:
;202:	//first of all, print the max rank into the string as the rank
;203:	strcpy(powerOut, va("%i-", maxRank));
ADDRGP4 $143
ARGP4
ADDRFP4 4
INDIRI4
ARGI4
ADDRLP4 364
ADDRGP4 va
CALLP4
ASGNP4
ADDRFP4 0
INDIRP4
ARGP4
ADDRLP4 364
INDIRP4
ARGP4
ADDRGP4 strcpy
CALLP4
pop
ADDRGP4 $145
JUMPV
LABELV $144
line 206
;204:
;205:	while (i < 128 && powerBuf[i] && powerBuf[i] != '-')
;206:	{
line 207
;207:		i++;
ADDRLP4 76
ADDRLP4 76
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 208
;208:	}
LABELV $145
line 205
ADDRLP4 76
INDIRI4
CNSTI4 128
GEI4 $148
ADDRLP4 372
ADDRLP4 76
INDIRI4
ADDRLP4 92
ADDP4
INDIRI1
CVII4 1
ASGNI4
ADDRLP4 372
INDIRI4
CNSTI4 0
EQI4 $148
ADDRLP4 372
INDIRI4
CNSTI4 45
NEI4 $144
LABELV $148
line 209
;209:	i++;
ADDRLP4 76
ADDRLP4 76
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
ADDRGP4 $150
JUMPV
LABELV $149
line 211
;210:	while (i < 128 && powerBuf[i] && powerBuf[i] != '-')
;211:	{
line 212
;212:		readBuf[c] = powerBuf[i];
ADDRLP4 0
INDIRI4
ADDRLP4 220
ADDP4
ADDRLP4 76
INDIRI4
ADDRLP4 92
ADDP4
INDIRI1
ASGNI1
line 213
;213:		c++;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 214
;214:		i++;
ADDRLP4 76
ADDRLP4 76
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 215
;215:	}
LABELV $150
line 210
ADDRLP4 76
INDIRI4
CNSTI4 128
GEI4 $153
ADDRLP4 380
ADDRLP4 76
INDIRI4
ADDRLP4 92
ADDP4
INDIRI1
CVII4 1
ASGNI4
ADDRLP4 380
INDIRI4
CNSTI4 0
EQI4 $153
ADDRLP4 380
INDIRI4
CNSTI4 45
NEI4 $149
LABELV $153
line 216
;216:	readBuf[c] = 0;
ADDRLP4 0
INDIRI4
ADDRLP4 220
ADDP4
CNSTI1 0
ASGNI1
line 217
;217:	i++;
ADDRLP4 76
ADDRLP4 76
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 219
;218:	//at this point, readBuf contains the intended side
;219:	final_Side = atoi(readBuf);
ADDRLP4 220
ARGP4
ADDRLP4 384
ADDRGP4 atoi
CALLI4
ASGNI4
ADDRLP4 348
ADDRLP4 384
INDIRI4
ASGNI4
line 221
;220:
;221:	if (final_Side != FORCE_LIGHTSIDE &&
ADDRLP4 348
INDIRI4
CNSTI4 1
EQI4 $154
ADDRLP4 348
INDIRI4
CNSTI4 2
EQI4 $154
line 223
;222:		final_Side != FORCE_DARKSIDE)
;223:	{ //Not a valid side. You will be dark. Because I said so. (this is something that should never actually happen unless you purposely feed in an invalid config)
line 224
;224:		final_Side = FORCE_DARKSIDE;
ADDRLP4 348
CNSTI4 2
ASGNI4
line 225
;225:		maintainsValidity = qfalse;
ADDRLP4 352
CNSTI4 0
ASGNI4
line 226
;226:	}
LABELV $154
line 228
;227:
;228:	if (teamForce)
ADDRFP4 12
INDIRI4
CNSTI4 0
EQI4 $156
line 229
;229:	{ //If we are under force-aligned teams, make sure we're on the right side.
line 230
;230:		if (final_Side != teamForce)
ADDRLP4 348
INDIRI4
ADDRFP4 12
INDIRI4
EQI4 $158
line 231
;231:		{
line 232
;232:			final_Side = teamForce;
ADDRLP4 348
ADDRFP4 12
INDIRI4
ASGNI4
line 235
;233:			//maintainsValidity = qfalse;
;234:			//Not doing this, for now. Let them join the team with their filtered powers.
;235:		}
LABELV $158
line 236
;236:	}
LABELV $156
line 240
;237:
;238:	//Now we have established a valid rank, and a valid side.
;239:	//Read the force powers in, and cut them down based on the various rules supplied.
;240:	c = 0;
ADDRLP4 0
CNSTI4 0
ASGNI4
ADDRGP4 $161
JUMPV
LABELV $160
line 242
;241:	while (i < 128 && powerBuf[i] && powerBuf[i] != '\n' && c < NUM_FORCE_POWERS)
;242:	{
line 243
;243:		readBuf[0] = powerBuf[i];
ADDRLP4 220
ADDRLP4 76
INDIRI4
ADDRLP4 92
ADDP4
INDIRI1
ASGNI1
line 244
;244:		readBuf[1] = 0;
ADDRLP4 220+1
CNSTI1 0
ASGNI1
line 245
;245:		final_Powers[c] = atoi(readBuf);
ADDRLP4 220
ARGP4
ADDRLP4 392
ADDRGP4 atoi
CALLI4
ASGNI4
ADDRLP4 0
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
ADDRLP4 392
INDIRI4
ASGNI4
line 246
;246:		c++;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 247
;247:		i++;
ADDRLP4 76
ADDRLP4 76
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 248
;248:	}
LABELV $161
line 241
ADDRLP4 76
INDIRI4
CNSTI4 128
GEI4 $166
ADDRLP4 396
ADDRLP4 76
INDIRI4
ADDRLP4 92
ADDP4
INDIRI1
CVII4 1
ASGNI4
ADDRLP4 396
INDIRI4
CNSTI4 0
EQI4 $166
ADDRLP4 396
INDIRI4
CNSTI4 10
EQI4 $166
ADDRLP4 0
INDIRI4
CNSTI4 18
LTI4 $160
LABELV $166
line 252
;249:
;250:	//final_Powers now contains all the stuff from the string
;251:	//Set the maximum allowed points used based on the max rank level, and count the points actually used.
;252:	allowedPoints = forceMasteryPoints[maxRank];
ADDRLP4 88
ADDRFP4 4
INDIRI4
CNSTI4 2
LSHI4
ADDRGP4 forceMasteryPoints
ADDP4
INDIRI4
ASGNI4
line 254
;253:
;254:	i = 0;
ADDRLP4 76
CNSTI4 0
ASGNI4
ADDRGP4 $168
JUMPV
LABELV $167
line 256
;255:	while (i < NUM_FORCE_POWERS)
;256:	{ //if this power doesn't match the side we're on, then 0 it now.
line 257
;257:		if (final_Powers[i] &&
ADDRLP4 400
ADDRLP4 76
INDIRI4
CNSTI4 2
LSHI4
ASGNI4
ADDRLP4 404
CNSTI4 0
ASGNI4
ADDRLP4 400
INDIRI4
ADDRLP4 4
ADDP4
INDIRI4
ADDRLP4 404
INDIRI4
EQI4 $170
ADDRLP4 408
ADDRLP4 400
INDIRI4
ADDRGP4 forcePowerDarkLight
ADDP4
INDIRI4
ASGNI4
ADDRLP4 408
INDIRI4
ADDRLP4 404
INDIRI4
EQI4 $170
ADDRLP4 408
INDIRI4
ADDRLP4 348
INDIRI4
EQI4 $170
line 260
;258:			forcePowerDarkLight[i] &&
;259:			forcePowerDarkLight[i] != final_Side)
;260:		{
line 261
;261:			final_Powers[i] = 0;
ADDRLP4 76
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
CNSTI4 0
ASGNI4
line 263
;262:			//This is only likely to happen with g_forceBasedTeams. Let it slide.
;263:		}
LABELV $170
line 265
;264:
;265:		if ( final_Powers[i] &&
ADDRLP4 416
CNSTI4 0
ASGNI4
ADDRLP4 76
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
INDIRI4
ADDRLP4 416
INDIRI4
EQI4 $172
ADDRFP4 20
INDIRI4
CNSTI4 1
ADDRLP4 76
INDIRI4
LSHI4
BANDI4
ADDRLP4 416
INDIRI4
EQI4 $172
line 267
;266:			(fpDisabled & (1 << i)) )
;267:		{ //if this power is disabled on the server via said server option, then we don't get it.
line 268
;268:			final_Powers[i] = 0;
ADDRLP4 76
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
CNSTI4 0
ASGNI4
line 269
;269:		}
LABELV $172
line 271
;270:
;271:		i++;
ADDRLP4 76
ADDRLP4 76
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 272
;272:	}
LABELV $168
line 255
ADDRLP4 76
INDIRI4
CNSTI4 18
LTI4 $167
line 274
;273:
;274:	if (gametype < GT_TEAM)
ADDRFP4 16
INDIRI4
CNSTI4 5
GEI4 $174
line 275
;275:	{ //don't bother with team powers then
line 276
;276:		final_Powers[FP_TEAM_HEAL] = 0;
ADDRLP4 4+44
CNSTI4 0
ASGNI4
line 277
;277:		final_Powers[FP_TEAM_FORCE] = 0;
ADDRLP4 4+48
CNSTI4 0
ASGNI4
line 278
;278:	}
LABELV $174
line 280
;279:
;280:	usedPoints = 0;
ADDRLP4 80
CNSTI4 0
ASGNI4
line 281
;281:	i = 0;
ADDRLP4 76
CNSTI4 0
ASGNI4
ADDRGP4 $179
JUMPV
LABELV $178
line 283
;282:	while (i < NUM_FORCE_POWERS)
;283:	{
line 284
;284:		countDown = 0;
ADDRLP4 84
CNSTI4 0
ASGNI4
line 286
;285:
;286:		countDown = final_Powers[i];
ADDRLP4 84
ADDRLP4 76
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
INDIRI4
ASGNI4
ADDRGP4 $182
JUMPV
LABELV $181
line 289
;287:
;288:		while (countDown > 0)
;289:		{
line 290
;290:			usedPoints += bgForcePowerCost[i][countDown]; //[fp index][fp level]
ADDRLP4 80
ADDRLP4 80
INDIRI4
ADDRLP4 84
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 76
INDIRI4
CNSTI4 4
LSHI4
ADDRGP4 bgForcePowerCost
ADDP4
ADDP4
INDIRI4
ADDI4
ASGNI4
line 292
;291:			//if this is jump, or we have a free saber and it's offense or defense, take the level back down on level 1
;292:			if ( countDown == 1 &&
ADDRLP4 400
CNSTI4 1
ASGNI4
ADDRLP4 84
INDIRI4
ADDRLP4 400
INDIRI4
NEI4 $184
ADDRLP4 76
INDIRI4
ADDRLP4 400
INDIRI4
EQI4 $187
ADDRLP4 76
INDIRI4
CNSTI4 15
NEI4 $188
ADDRFP4 8
INDIRI4
CNSTI4 0
NEI4 $187
LABELV $188
ADDRLP4 76
INDIRI4
CNSTI4 16
NEI4 $184
ADDRFP4 8
INDIRI4
CNSTI4 0
EQI4 $184
LABELV $187
line 296
;293:				((i == FP_LEVITATION) ||
;294:				 (i == FP_SABERATTACK && freeSaber) ||
;295:				 (i == FP_SABERDEFEND && freeSaber)) )
;296:			{
line 297
;297:				usedPoints -= bgForcePowerCost[i][countDown];
ADDRLP4 80
ADDRLP4 80
INDIRI4
ADDRLP4 84
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 76
INDIRI4
CNSTI4 4
LSHI4
ADDRGP4 bgForcePowerCost
ADDP4
ADDP4
INDIRI4
SUBI4
ASGNI4
line 298
;298:			}
LABELV $184
line 299
;299:			countDown--;
ADDRLP4 84
ADDRLP4 84
INDIRI4
CNSTI4 1
SUBI4
ASGNI4
line 300
;300:		}
LABELV $182
line 288
ADDRLP4 84
INDIRI4
CNSTI4 0
GTI4 $181
line 302
;301:
;302:		i++;
ADDRLP4 76
ADDRLP4 76
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 303
;303:	}
LABELV $179
line 282
ADDRLP4 76
INDIRI4
CNSTI4 18
LTI4 $178
line 305
;304:
;305:	if (usedPoints > allowedPoints)
ADDRLP4 80
INDIRI4
ADDRLP4 88
INDIRI4
LEI4 $189
line 306
;306:	{ //Time to do the fancy stuff. (meaning, slowly cut parts off while taking a guess at what is most or least important in the config)
line 307
;307:		int attemptedCycles = 0;
ADDRLP4 408
CNSTI4 0
ASGNI4
line 308
;308:		int powerCycle = 2;
ADDRLP4 400
CNSTI4 2
ASGNI4
line 309
;309:		int minPow = 0;
ADDRLP4 404
CNSTI4 0
ASGNI4
line 311
;310:		
;311:		if (freeSaber)
ADDRFP4 8
INDIRI4
CNSTI4 0
EQI4 $191
line 312
;312:		{
line 313
;313:			minPow = 1;
ADDRLP4 404
CNSTI4 1
ASGNI4
line 314
;314:		}
LABELV $191
line 316
;315:
;316:		maintainsValidity = qfalse;
ADDRLP4 352
CNSTI4 0
ASGNI4
ADDRGP4 $194
JUMPV
LABELV $193
line 319
;317:
;318:		while (usedPoints > allowedPoints)
;319:		{
line 320
;320:			c = 0;
ADDRLP4 0
CNSTI4 0
ASGNI4
ADDRGP4 $197
JUMPV
LABELV $196
line 323
;321:
;322:			while (c < NUM_FORCE_POWERS && usedPoints > allowedPoints)
;323:			{
line 324
;324:				if (final_Powers[c] && final_Powers[c] < powerCycle)
ADDRLP4 412
ADDRLP4 0
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
INDIRI4
ASGNI4
ADDRLP4 412
INDIRI4
CNSTI4 0
EQI4 $199
ADDRLP4 412
INDIRI4
ADDRLP4 400
INDIRI4
GEI4 $199
line 325
;325:				{ //kill in order of lowest powers, because the higher powers are probably more important
line 326
;326:					if (c == FP_SABERATTACK &&
ADDRLP4 0
INDIRI4
CNSTI4 15
NEI4 $218
ADDRLP4 4+64
INDIRI4
ADDRLP4 404
INDIRI4
GTI4 $205
ADDRLP4 4+68
INDIRI4
CNSTI4 0
LEI4 $218
LABELV $205
line 328
;327:						(final_Powers[FP_SABERDEFEND] > minPow || final_Powers[FP_SABERTHROW] > 0))
;328:					{ //if we're on saber attack, only suck it down if we have no def or throw either
line 329
;329:						int whichOne = FP_SABERTHROW; //first try throw
ADDRLP4 416
CNSTI4 17
ASGNI4
line 331
;330:
;331:						if (!final_Powers[whichOne])
ADDRLP4 416
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
INDIRI4
CNSTI4 0
NEI4 $209
line 332
;332:						{
line 333
;333:							whichOne = FP_SABERDEFEND; //if no throw, drain defense
ADDRLP4 416
CNSTI4 16
ASGNI4
line 334
;334:						}
ADDRGP4 $209
JUMPV
LABELV $208
line 337
;335:
;336:						while (final_Powers[whichOne] > 0 && usedPoints > allowedPoints)
;337:						{
line 338
;338:							if ( final_Powers[whichOne] > 1 ||
ADDRLP4 416
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
INDIRI4
CNSTI4 1
GTI4 $215
ADDRLP4 416
INDIRI4
CNSTI4 15
NEI4 $214
ADDRFP4 8
INDIRI4
CNSTI4 0
NEI4 $202
LABELV $214
ADDRLP4 416
INDIRI4
CNSTI4 16
NEI4 $215
ADDRFP4 8
INDIRI4
CNSTI4 0
NEI4 $202
LABELV $215
line 341
;339:								( (whichOne != FP_SABERATTACK || !freeSaber) &&
;340:								  (whichOne != FP_SABERDEFEND || !freeSaber) ) )
;341:							{ //don't take attack or defend down on level 1 still, if it's free
line 342
;342:								usedPoints -= bgForcePowerCost[whichOne][final_Powers[whichOne]];
ADDRLP4 428
CNSTI4 2
ASGNI4
ADDRLP4 80
ADDRLP4 80
INDIRI4
ADDRLP4 416
INDIRI4
ADDRLP4 428
INDIRI4
LSHI4
ADDRLP4 4
ADDP4
INDIRI4
ADDRLP4 428
INDIRI4
LSHI4
ADDRLP4 416
INDIRI4
CNSTI4 4
LSHI4
ADDRGP4 bgForcePowerCost
ADDP4
ADDP4
INDIRI4
SUBI4
ASGNI4
line 343
;343:								final_Powers[whichOne]--;
ADDRLP4 432
ADDRLP4 416
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
ASGNP4
ADDRLP4 432
INDIRP4
ADDRLP4 432
INDIRP4
INDIRI4
CNSTI4 1
SUBI4
ASGNI4
line 344
;344:							}
line 346
;345:							else
;346:							{
line 347
;347:								break;
LABELV $212
line 349
;348:							}
;349:						}
LABELV $209
line 336
ADDRLP4 416
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
INDIRI4
CNSTI4 0
LEI4 $216
ADDRLP4 80
INDIRI4
ADDRLP4 88
INDIRI4
GTI4 $208
LABELV $216
line 350
;350:					}
ADDRGP4 $202
JUMPV
line 352
;351:					else
;352:					{
LABELV $217
line 354
;353:						while (final_Powers[c] > 0 && usedPoints > allowedPoints)
;354:						{
line 355
;355:							if ( final_Powers[c] > 1 ||
ADDRLP4 420
CNSTI4 1
ASGNI4
ADDRLP4 0
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
INDIRI4
ADDRLP4 420
INDIRI4
GTI4 $224
ADDRLP4 0
INDIRI4
ADDRLP4 420
INDIRI4
EQI4 $219
ADDRLP4 0
INDIRI4
CNSTI4 15
NEI4 $223
ADDRFP4 8
INDIRI4
CNSTI4 0
NEI4 $219
LABELV $223
ADDRLP4 0
INDIRI4
CNSTI4 16
NEI4 $224
ADDRFP4 8
INDIRI4
CNSTI4 0
NEI4 $219
LABELV $224
line 359
;356:								((c != FP_LEVITATION) &&
;357:								(c != FP_SABERATTACK || !freeSaber) &&
;358:								(c != FP_SABERDEFEND || !freeSaber)) )
;359:							{
line 360
;360:								usedPoints -= bgForcePowerCost[c][final_Powers[c]];
ADDRLP4 428
CNSTI4 2
ASGNI4
ADDRLP4 80
ADDRLP4 80
INDIRI4
ADDRLP4 0
INDIRI4
ADDRLP4 428
INDIRI4
LSHI4
ADDRLP4 4
ADDP4
INDIRI4
ADDRLP4 428
INDIRI4
LSHI4
ADDRLP4 0
INDIRI4
CNSTI4 4
LSHI4
ADDRGP4 bgForcePowerCost
ADDP4
ADDP4
INDIRI4
SUBI4
ASGNI4
line 361
;361:								final_Powers[c]--;
ADDRLP4 432
ADDRLP4 0
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
ASGNP4
ADDRLP4 432
INDIRP4
ADDRLP4 432
INDIRP4
INDIRI4
CNSTI4 1
SUBI4
ASGNI4
line 362
;362:							}
line 364
;363:							else
;364:							{
line 365
;365:								break;
LABELV $221
line 367
;366:							}
;367:						}
LABELV $218
line 353
ADDRLP4 0
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
INDIRI4
CNSTI4 0
LEI4 $225
ADDRLP4 80
INDIRI4
ADDRLP4 88
INDIRI4
GTI4 $217
LABELV $225
LABELV $219
line 368
;368:					}
LABELV $202
line 369
;369:				}
LABELV $199
line 371
;370:
;371:				c++;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 372
;372:			}
LABELV $197
line 322
ADDRLP4 0
INDIRI4
CNSTI4 18
GEI4 $226
ADDRLP4 80
INDIRI4
ADDRLP4 88
INDIRI4
GTI4 $196
LABELV $226
line 374
;373:
;374:			powerCycle++;
ADDRLP4 400
ADDRLP4 400
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 375
;375:			attemptedCycles++;
ADDRLP4 408
ADDRLP4 408
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 377
;376:
;377:			if (attemptedCycles > NUM_FORCE_POWERS)
ADDRLP4 408
INDIRI4
CNSTI4 18
LEI4 $227
line 378
;378:			{ //I think this should be impossible. But just in case.
line 379
;379:				break;
ADDRGP4 $195
JUMPV
LABELV $227
line 381
;380:			}
;381:		}
LABELV $194
line 318
ADDRLP4 80
INDIRI4
ADDRLP4 88
INDIRI4
GTI4 $193
LABELV $195
line 383
;382:
;383:		if (usedPoints > allowedPoints)
ADDRLP4 80
INDIRI4
ADDRLP4 88
INDIRI4
LEI4 $229
line 384
;384:		{ //Still? Fine then.. we will kill all of your powers, except the freebies.
line 385
;385:			i = 0;
ADDRLP4 76
CNSTI4 0
ASGNI4
ADDRGP4 $232
JUMPV
LABELV $231
line 388
;386:
;387:			while (i < NUM_FORCE_POWERS)
;388:			{
line 389
;389:				final_Powers[i] = 0;
ADDRLP4 76
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
CNSTI4 0
ASGNI4
line 390
;390:				if (i == FP_LEVITATION ||
ADDRLP4 76
INDIRI4
CNSTI4 1
EQI4 $237
ADDRLP4 76
INDIRI4
CNSTI4 15
NEI4 $238
ADDRFP4 8
INDIRI4
CNSTI4 0
NEI4 $237
LABELV $238
ADDRLP4 76
INDIRI4
CNSTI4 16
NEI4 $234
ADDRFP4 8
INDIRI4
CNSTI4 0
EQI4 $234
LABELV $237
line 393
;391:					(i == FP_SABERATTACK && freeSaber) ||
;392:					(i == FP_SABERDEFEND && freeSaber))
;393:				{
line 394
;394:					final_Powers[i] = 1;
ADDRLP4 76
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
CNSTI4 1
ASGNI4
line 395
;395:				}
LABELV $234
line 396
;396:				i++;
ADDRLP4 76
ADDRLP4 76
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 397
;397:			}
LABELV $232
line 387
ADDRLP4 76
INDIRI4
CNSTI4 18
LTI4 $231
line 398
;398:			usedPoints = 0;
ADDRLP4 80
CNSTI4 0
ASGNI4
line 399
;399:		}
LABELV $229
line 400
;400:	}
LABELV $189
line 402
;401:
;402:	if (freeSaber)
ADDRFP4 8
INDIRI4
CNSTI4 0
EQI4 $239
line 403
;403:	{
line 404
;404:		if (final_Powers[FP_SABERATTACK] < 1)
ADDRLP4 4+60
INDIRI4
CNSTI4 1
GEI4 $241
line 405
;405:		{
line 406
;406:			final_Powers[FP_SABERATTACK] = 1;
ADDRLP4 4+60
CNSTI4 1
ASGNI4
line 407
;407:		}
LABELV $241
line 408
;408:		if (final_Powers[FP_SABERDEFEND] < 1)
ADDRLP4 4+64
INDIRI4
CNSTI4 1
GEI4 $245
line 409
;409:		{
line 410
;410:			final_Powers[FP_SABERDEFEND] = 1;
ADDRLP4 4+64
CNSTI4 1
ASGNI4
line 411
;411:		}
LABELV $245
line 412
;412:	}
LABELV $239
line 413
;413:	if (final_Powers[FP_LEVITATION] < 1)
ADDRLP4 4+4
INDIRI4
CNSTI4 1
GEI4 $249
line 414
;414:	{
line 415
;415:		final_Powers[FP_LEVITATION] = 1;
ADDRLP4 4+4
CNSTI4 1
ASGNI4
line 416
;416:	}
LABELV $249
line 418
;417:
;418:	if (fpDisabled)
ADDRFP4 20
INDIRI4
CNSTI4 0
EQI4 $253
line 419
;419:	{ //If we specifically have attack or def disabled, force them up to level 3. It's the way
line 422
;420:	  //things work for the case of all powers disabled.
;421:	  //If jump is disabled, down-cap it to level 1. Otherwise don't do a thing.
;422:		if (fpDisabled & (1 << FP_LEVITATION))
ADDRFP4 20
INDIRI4
CNSTI4 2
BANDI4
CNSTI4 0
EQI4 $255
line 423
;423:		{
line 424
;424:			final_Powers[FP_LEVITATION] = 1;
ADDRLP4 4+4
CNSTI4 1
ASGNI4
line 425
;425:		}
LABELV $255
line 426
;426:		if (fpDisabled & (1 << FP_SABERATTACK))
ADDRFP4 20
INDIRI4
CNSTI4 32768
BANDI4
CNSTI4 0
EQI4 $258
line 427
;427:		{
line 428
;428:			final_Powers[FP_SABERATTACK] = 3;
ADDRLP4 4+60
CNSTI4 3
ASGNI4
line 429
;429:		}
LABELV $258
line 430
;430:		if (fpDisabled & (1 << FP_SABERDEFEND))
ADDRFP4 20
INDIRI4
CNSTI4 65536
BANDI4
CNSTI4 0
EQI4 $261
line 431
;431:		{
line 432
;432:			final_Powers[FP_SABERDEFEND] = 3;
ADDRLP4 4+64
CNSTI4 3
ASGNI4
line 433
;433:		}
LABELV $261
line 434
;434:	}
LABELV $253
line 436
;435:
;436:	if (final_Powers[FP_SABERATTACK] < 1)
ADDRLP4 4+60
INDIRI4
CNSTI4 1
GEI4 $264
line 437
;437:	{
line 438
;438:		final_Powers[FP_SABERDEFEND] = 0;
ADDRLP4 4+64
CNSTI4 0
ASGNI4
line 439
;439:		final_Powers[FP_SABERTHROW] = 0;
ADDRLP4 4+68
CNSTI4 0
ASGNI4
line 440
;440:	}
LABELV $264
line 445
;441:
;442:	//We finally have all the force powers legalized and stored locally.
;443:	//Put them all into the string and return the result. We already have
;444:	//the rank there, so print the side and the powers now.
;445:	Q_strcat(powerOut, 128, va("%i-", final_Side));
ADDRGP4 $143
ARGP4
ADDRLP4 348
INDIRI4
ARGI4
ADDRLP4 400
ADDRGP4 va
CALLP4
ASGNP4
ADDRFP4 0
INDIRP4
ARGP4
CNSTI4 128
ARGI4
ADDRLP4 400
INDIRP4
ARGP4
ADDRGP4 Q_strcat
CALLV
pop
line 447
;446:
;447:	i = strlen(powerOut);
ADDRFP4 0
INDIRP4
ARGP4
ADDRLP4 404
ADDRGP4 strlen
CALLI4
ASGNI4
ADDRLP4 76
ADDRLP4 404
INDIRI4
ASGNI4
line 448
;448:	c = 0;
ADDRLP4 0
CNSTI4 0
ASGNI4
ADDRGP4 $270
JUMPV
LABELV $269
line 450
;449:	while (c < NUM_FORCE_POWERS)
;450:	{
line 451
;451:		strcpy(readBuf, va("%i", final_Powers[c]));
ADDRGP4 $272
ARGP4
ADDRLP4 0
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 4
ADDP4
INDIRI4
ARGI4
ADDRLP4 408
ADDRGP4 va
CALLP4
ASGNP4
ADDRLP4 220
ARGP4
ADDRLP4 408
INDIRP4
ARGP4
ADDRGP4 strcpy
CALLP4
pop
line 452
;452:		powerOut[i] = readBuf[0];
ADDRLP4 76
INDIRI4
ADDRFP4 0
INDIRP4
ADDP4
ADDRLP4 220
INDIRI1
ASGNI1
line 453
;453:		c++;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 454
;454:		i++;
ADDRLP4 76
ADDRLP4 76
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 455
;455:	}
LABELV $270
line 449
ADDRLP4 0
INDIRI4
CNSTI4 18
LTI4 $269
line 456
;456:	powerOut[i] = 0;
ADDRLP4 76
INDIRI4
ADDRFP4 0
INDIRP4
ADDP4
CNSTI1 0
ASGNI1
line 458
;457:
;458:	return maintainsValidity;
ADDRLP4 352
INDIRI4
RETI4
LABELV $139
endproc BG_LegalizedForcePowers 436 12
data
export bg_itemlist
align 4
LABELV bg_itemlist
byte 4 0
byte 4 0
byte 4 0
byte 4 0
byte 4 0
byte 4 0
byte 4 0
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $273
address $273
address $274
address $275
address $276
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $277
byte 4 25
byte 4 3
byte 4 1
address $273
address $273
address $278
address $275
address $279
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $280
byte 4 100
byte 4 3
byte 4 2
address $273
address $273
address $281
address $282
address $283
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $284
byte 4 25
byte 4 4
byte 4 0
address $273
address $273
address $285
address $286
address $287
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $288
byte 4 120
byte 4 6
byte 4 1
address $273
address $273
address $289
address $286
address $290
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $291
byte 4 120
byte 4 6
byte 4 2
address $273
address $292
address $293
address $286
address $294
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $295
byte 4 25
byte 4 6
byte 4 3
address $273
address $273
address $296
address $286
address $297
byte 4 0
byte 4 0
byte 4 0
byte 4 0
byte 4 0
byte 4 1
byte 4 6
byte 4 4
address $273
address $273
address $298
address $286
address $299
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $300
byte 4 60
byte 4 6
byte 4 5
address $273
address $273
address $301
address $286
address $302
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $303
byte 4 120
byte 4 6
byte 4 6
address $273
address $273
address $304
address $305
address $306
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $307
byte 4 25
byte 4 5
byte 4 12
address $273
address $273
address $308
address $305
address $309
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $310
byte 4 25
byte 4 5
byte 4 13
address $273
address $273
address $311
address $312
address $313
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $314
byte 4 25
byte 4 5
byte 4 14
address $273
address $273
address $315
address $316
address $317
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $318
byte 4 25
byte 4 5
byte 4 15
address $273
address $273
address $319
address $286
address $320
byte 4 0
byte 4 0
byte 4 0
address $321
address $322
byte 4 100
byte 4 1
byte 4 1
address $273
address $273
address $323
address $286
address $324
byte 4 0
byte 4 0
byte 4 0
address $325
address $326
byte 4 100
byte 4 1
byte 4 2
address $273
address $273
address $327
address $286
address $328
byte 4 0
byte 4 0
byte 4 0
address $329
address $330
byte 4 100
byte 4 1
byte 4 3
address $273
address $273
address $331
address $286
address $332
byte 4 0
byte 4 0
byte 4 0
address $333
address $334
byte 4 100
byte 4 1
byte 4 4
address $273
address $273
address $335
address $286
address $336
byte 4 0
byte 4 0
byte 4 0
address $337
address $338
byte 4 100
byte 4 1
byte 4 5
address $273
address $273
address $339
address $286
address $340
byte 4 0
byte 4 0
byte 4 0
address $341
address $342
byte 4 100
byte 4 1
byte 4 6
address $273
address $273
address $343
address $286
address $344
byte 4 0
byte 4 0
byte 4 0
address $345
address $346
byte 4 100
byte 4 1
byte 4 7
address $273
address $273
address $347
address $286
address $348
byte 4 0
byte 4 0
byte 4 0
address $349
address $350
byte 4 100
byte 4 1
byte 4 8
address $273
address $273
address $351
address $286
address $352
byte 4 0
byte 4 0
byte 4 0
address $353
address $354
byte 4 100
byte 4 1
byte 4 9
address $273
address $273
address $355
address $286
address $356
byte 4 0
byte 4 0
byte 4 0
address $357
address $358
byte 4 3
byte 4 1
byte 4 10
address $273
address $273
address $359
address $286
address $360
address $361
byte 4 0
byte 4 0
address $362
address $363
byte 4 4
byte 4 2
byte 4 7
address $273
address $273
address $364
address $286
address $365
address $366
byte 4 0
byte 4 0
address $367
address $368
byte 4 3
byte 4 2
byte 4 8
address $273
address $273
address $369
address $286
address $370
address $371
address $372
byte 4 0
address $373
address $374
byte 4 3
byte 4 2
byte 4 9
address $273
address $273
address $375
address $286
address $361
address $360
byte 4 0
byte 4 0
address $362
address $363
byte 4 4
byte 4 1
byte 4 11
address $273
address $273
address $376
address $286
address $366
address $365
byte 4 0
byte 4 0
address $367
address $368
byte 4 3
byte 4 1
byte 4 12
address $273
address $273
address $377
address $286
address $371
address $370
address $372
byte 4 0
address $373
address $374
byte 4 3
byte 4 1
byte 4 13
address $273
address $273
address $378
address $286
address $332
byte 4 0
byte 4 0
byte 4 0
address $333
address $334
byte 4 50
byte 4 1
byte 4 14
address $273
address $273
address $379
address $286
address $332
byte 4 0
byte 4 0
byte 4 0
address $333
address $334
byte 4 50
byte 4 1
byte 4 15
address $273
address $273
address $380
address $381
address $382
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $334
byte 4 100
byte 4 2
byte 4 1
address $273
address $273
address $383
address $381
address $382
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $384
byte 4 100
byte 4 2
byte 4 2
address $273
address $273
address $385
address $381
address $386
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $387
byte 4 100
byte 4 2
byte 4 3
address $273
address $273
address $388
address $381
address $389
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $390
byte 4 100
byte 4 2
byte 4 4
address $273
address $273
address $391
address $381
address $392
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $393
byte 4 3
byte 4 2
byte 4 5
address $273
address $273
address $394
byte 4 0
address $395
address $396
byte 4 0
byte 4 0
byte 4 0
address $397
byte 4 0
byte 4 8
byte 4 4
address $273
address $273
address $398
byte 4 0
address $399
address $400
byte 4 0
byte 4 0
byte 4 0
address $401
byte 4 0
byte 4 8
byte 4 5
address $273
address $273
address $402
byte 4 0
address $403
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $404
byte 4 0
byte 4 8
byte 4 6
address $273
address $273
address $405
address $381
address $406
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $407
byte 4 0
byte 4 8
byte 4 0
address $273
address $273
address $408
address $381
address $409
byte 4 0
byte 4 0
byte 4 0
byte 4 0
address $410
byte 4 0
byte 4 8
byte 4 0
address $273
address $273
byte 4 0
skip 48
export bg_numItems
align 4
LABELV bg_numItems
byte 4 42
export vectoyaw
code
proc vectoyaw 20 8
line 1255
;459:}
;460:
;461:/*QUAKED item_***** ( 0 0 0 ) (-16 -16 -16) (16 16 16) suspended
;462:DO NOT USE THIS CLASS, IT JUST HOLDS GENERAL INFORMATION.
;463:The suspended flag will allow items to hang in the air, otherwise they are dropped to the next surface.
;464:
;465:If an item is the target of another entity, it will not spawn in until fired.
;466:
;467:An item fires all of its targets when it is picked up.  If the toucher can't carry it, the targets won't be fired.
;468:
;469:"notfree" if set to 1, don't spawn in free for all games
;470:"notteam" if set to 1, don't spawn in team games
;471:"notsingle" if set to 1, don't spawn in single player games
;472:"wait"	override the default wait before respawning.  -1 = never respawn automatically, which can be used with targeted spawning.
;473:"random" random number of plus or minus seconds varied from the respawn time
;474:"count" override quantity or duration on most items.
;475:*/
;476:
;477:/*QUAKED misc_shield_floor_unit (1 0 0) (-16 -16 0) (16 16 40)
;478:#MODELNAME="/models/items/a_shield_converter.md3"
;479:Gives shield energy when used.
;480:
;481:"count" - max charge value (default 50)
;482:"chargerate" - rechage 1 point every this many milliseconds (default 3000)
;483:*/
;484:
;485:gitem_t	bg_itemlist[] = 
;486:{
;487:	{
;488:		NULL,				// classname	
;489:		NULL,				// pickup_sound
;490:		{	NULL,			// world_model[0]
;491:			NULL,			// world_model[1]
;492:			0, 0} ,			// world_model[2],[3]
;493:		NULL,				// view_model
;494:/* icon */		NULL,		// icon
;495:/* pickup */	//NULL,		// pickup_name
;496:		0,					// quantity
;497:		0,					// giType (IT_*)
;498:		0,					// giTag
;499:/* precache */ "",			// precaches
;500:/* sounds */ ""				// sounds
;501:	},	// leave index 0 alone
;502:
;503:	//
;504:	// Pickups
;505:	//
;506:
;507:/*QUAKED item_shield_sm_instant (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;508:Instant shield pickup, restores 25
;509:*/
;510:	{
;511:		"item_shield_sm_instant", 
;512:		"sound/player/pickupshield.wav",
;513:        { "models/map_objects/mp/psd_sm.md3",
;514:		0, 0, 0},
;515:/* view */		NULL,			
;516:/* icon */		"gfx/mp/small_shield",
;517:/* pickup *///	"Shield Small",
;518:		25,
;519:		IT_ARMOR,
;520:		1, //special for shield - max on pickup is maxhealth*tag, thus small shield goes up to 100 shield
;521:/* precache */ "",
;522:/* sounds */ ""
;523:	},
;524:
;525:/*QUAKED item_shield_lrg_instant (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;526:Instant shield pickup, restores 100
;527:*/
;528:	{
;529:		"item_shield_lrg_instant", 
;530:		"sound/player/pickupshield.wav",
;531:        { "models/map_objects/mp/psd.md3",
;532:		0, 0, 0},
;533:/* view */		NULL,			
;534:/* icon */		"gfx/mp/large_shield",
;535:/* pickup *///	"Shield Large",
;536:		100,
;537:		IT_ARMOR,
;538:		2, //special for shield - max on pickup is maxhealth*tag, thus large shield goes up to 200 shield
;539:/* precache */ "",
;540:/* sounds */ ""
;541:	},
;542:
;543:/*QUAKED item_medpak_instant (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;544:Instant medpack pickup, heals 25
;545:*/
;546:	{
;547:		"item_medpak_instant",
;548:		"sound/player/pickuphealth.wav",
;549:        { "models/map_objects/mp/medpac.md3", 
;550:		0, 0, 0 },
;551:/* view */		NULL,			
;552:/* icon */		"gfx/hud/i_icon_medkit",
;553:/* pickup *///	"Medpack",
;554:		25,
;555:		IT_HEALTH,
;556:		0,
;557:/* precache */ "",
;558:/* sounds */ ""
;559:	},
;560:
;561:
;562:	//
;563:	// ITEMS
;564:	//
;565:
;566:/*QUAKED item_seeker (.3 .3 1) (-8 -8 -0) (8 8 16) suspended
;567:30 seconds of seeker drone
;568:*/
;569:	{
;570:		"item_seeker", 
;571:		"sound/weapons/w_pkup.wav",
;572:		{ "models/items/remote.md3", 
;573:		0, 0, 0} ,
;574:/* view */		NULL,			
;575:/* icon */		"gfx/hud/i_icon_seeker",
;576:/* pickup *///	"Seeker Drone",
;577:		120,
;578:		IT_HOLDABLE,
;579:		HI_SEEKER,
;580:/* precache */ "",
;581:/* sounds */ ""
;582:	},
;583:
;584:/*QUAKED item_shield (.3 .3 1) (-8 -8 -0) (8 8 16) suspended
;585:Portable shield
;586:*/
;587:	{
;588:		"item_shield", 
;589:		"sound/weapons/w_pkup.wav",
;590:		{ "models/map_objects/mp/shield.md3", 
;591:		0, 0, 0} ,
;592:/* view */		NULL,			
;593:/* icon */		"gfx/hud/i_icon_shieldwall",
;594:/* pickup *///	"Forcefield",
;595:		120,
;596:		IT_HOLDABLE,
;597:		HI_SHIELD,
;598:/* precache */ "",
;599:/* sounds */ "sound/weapons/detpack/stick.wav sound/movers/doors/forcefield_on.wav sound/movers/doors/forcefield_off.wav sound/movers/doors/forcefield_lp.wav sound/effects/bumpfield.wav",
;600:	},
;601:
;602:/*QUAKED item_medpac (.3 .3 1) (-8 -8 -0) (8 8 16) suspended
;603:Bacta canister pickup, heals 25 on use
;604:*/
;605:	{
;606:		"item_medpac",	//should be item_bacta
;607:		"sound/weapons/w_pkup.wav",
;608:		{ "models/map_objects/mp/bacta.md3", 
;609:		0, 0, 0} ,
;610:/* view */		NULL,			
;611:/* icon */		"gfx/hud/i_icon_bacta",
;612:/* pickup *///	"Bacta Canister",
;613:		25,
;614:		IT_HOLDABLE,
;615:		HI_MEDPAC,
;616:/* precache */ "",
;617:/* sounds */ ""
;618:	},
;619:
;620:/*QUAKED item_datapad (.3 .3 1) (-8 -8 -0) (8 8 16) suspended
;621:Do not place this.
;622:*/
;623:	{
;624:		"item_datapad", 
;625:		"sound/weapons/w_pkup.wav",
;626:		{ "models/items/datapad.md3", 
;627:		0, 0, 0} ,
;628:/* view */		NULL,			
;629:/* icon */		NULL,
;630:/* pickup *///	"Datapad",
;631:		1,
;632:		IT_HOLDABLE,
;633:		HI_DATAPAD,
;634:/* precache */ "",
;635:/* sounds */ ""
;636:	},
;637:
;638:/*QUAKED item_binoculars (.3 .3 1) (-8 -8 -0) (8 8 16) suspended
;639:These will be standard equipment on the player - DO NOT PLACE
;640:*/
;641:	{
;642:		"item_binoculars", 
;643:		"sound/weapons/w_pkup.wav",
;644:		{ "models/items/binoculars.md3", 
;645:		0, 0, 0} ,
;646:/* view */		NULL,			
;647:/* icon */		"gfx/hud/i_icon_zoom",
;648:/* pickup *///	"Binoculars",
;649:		60,
;650:		IT_HOLDABLE,
;651:		HI_BINOCULARS,
;652:/* precache */ "",
;653:/* sounds */ ""
;654:	},
;655:
;656:/*QUAKED item_sentry_gun (.3 .3 1) (-8 -8 -0) (8 8 16) suspended
;657:Sentry gun inventory pickup.
;658:*/
;659:	{
;660:		"item_sentry_gun", 
;661:		"sound/weapons/w_pkup.wav",
;662:		{ "models/items/psgun.glm", 
;663:		0, 0, 0} ,
;664:/* view */		NULL,			
;665:/* icon */		"gfx/hud/i_icon_sentrygun",
;666:/* pickup *///	"Sentry Gun",
;667:		120,
;668:		IT_HOLDABLE,
;669:		HI_SENTRY_GUN,
;670:/* precache */ "",
;671:/* sounds */ ""
;672:	},
;673:
;674:/*QUAKED item_force_enlighten_light (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;675:Adds one rank to all Force powers temporarily. Only light jedi can use.
;676:*/
;677:	{
;678:		"item_force_enlighten_light",
;679:		"sound/player/enlightenment.wav",
;680:		{ "models/map_objects/mp/jedi_enlightenment.md3", 
;681:		0, 0, 0} ,
;682:/* view */		NULL,			
;683:/* icon */		"gfx/hud/mpi_jlight",
;684:/* pickup *///	"Light Force Enlightenment",
;685:		25,
;686:		IT_POWERUP,
;687:		PW_FORCE_ENLIGHTENED_LIGHT,
;688:/* precache */ "",
;689:/* sounds */ ""
;690:	},
;691:
;692:/*QUAKED item_force_enlighten_dark (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;693:Adds one rank to all Force powers temporarily. Only dark jedi can use.
;694:*/
;695:	{
;696:		"item_force_enlighten_dark",
;697:		"sound/player/enlightenment.wav",
;698:		{ "models/map_objects/mp/dk_enlightenment.md3", 
;699:		0, 0, 0} ,
;700:/* view */		NULL,			
;701:/* icon */		"gfx/hud/mpi_dklight",
;702:/* pickup *///	"Dark Force Enlightenment",
;703:		25,
;704:		IT_POWERUP,
;705:		PW_FORCE_ENLIGHTENED_DARK,
;706:/* precache */ "",
;707:/* sounds */ ""
;708:	},
;709:
;710:/*QUAKED item_force_boon (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;711:Unlimited Force Pool for a short time.
;712:*/
;713:	{
;714:		"item_force_boon",
;715:		"sound/player/boon.wav",
;716:		{ "models/map_objects/mp/force_boon.md3", 
;717:		0, 0, 0} ,
;718:/* view */		NULL,			
;719:/* icon */		"gfx/hud/mpi_fboon",
;720:/* pickup *///	"Force Boon",
;721:		25,
;722:		IT_POWERUP,
;723:		PW_FORCE_BOON,
;724:/* precache */ "",
;725:/* sounds */ ""
;726:	},
;727:
;728:/*QUAKED item_ysalimari (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;729:A small lizard carried on the player, which prevents the possessor from using any Force power.  However, he is unaffected by any Force power.
;730:*/
;731:	{
;732:		"item_ysalimari",
;733:		"sound/player/ysalimari.wav",
;734:		{ "models/map_objects/mp/ysalimari.md3", 
;735:		0, 0, 0} ,
;736:/* view */		NULL,			
;737:/* icon */		"gfx/hud/mpi_ysamari",
;738:/* pickup *///	"Ysalamiri",
;739:		25,
;740:		IT_POWERUP,
;741:		PW_YSALAMIRI,
;742:/* precache */ "",
;743:/* sounds */ ""
;744:	},
;745:
;746:	//
;747:	// WEAPONS 
;748:	//
;749:
;750:/*QUAKED weapon_stun_baton (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;751:Don't place this
;752:*/
;753:	{
;754:		"weapon_stun_baton", 
;755:		"sound/weapons/w_pkup.wav",
;756:        { "models/weapons2/stun_baton/baton_w.glm", 
;757:		0, 0, 0},
;758:/* view */		"models/weapons2/stun_baton/baton.md3", 
;759:/* icon */		"gfx/hud/w_icon_stunbaton",
;760:/* pickup *///	"Stun Baton",
;761:		100,
;762:		IT_WEAPON,
;763:		WP_STUN_BATON,
;764:/* precache */ "",
;765:/* sounds */ ""
;766:	},
;767:
;768:/*QUAKED weapon_saber (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;769:Don't place this
;770:*/
;771:	{
;772:		"weapon_saber", 
;773:		"sound/weapons/w_pkup.wav",
;774:        { "models/weapons2/saber/saber_w.glm",
;775:		0, 0, 0},
;776:/* view */		"models/weapons2/saber/saber_w.md3",
;777:/* icon */		"gfx/hud/w_icon_lightsaber",
;778:/* pickup *///	"Lightsaber",
;779:		100,
;780:		IT_WEAPON,
;781:		WP_SABER,
;782:/* precache */ "",
;783:/* sounds */ ""
;784:	},
;785:
;786:/*QUAKED weapon_bryar_pistol (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;787:Don't place this
;788:*/
;789:	{
;790:		"weapon_bryar_pistol", 
;791:		"sound/weapons/w_pkup.wav",
;792:        { "models/weapons2/briar_pistol/briar_pistol_w.glm", 
;793:		0, 0, 0},
;794:/* view */		"models/weapons2/briar_pistol/briar_pistol.md3", 
;795:/* icon */		"gfx/hud/w_icon_rifle",
;796:/* pickup *///	"Bryar Pistol",
;797:		100,
;798:		IT_WEAPON,
;799:		WP_BRYAR_PISTOL,
;800:/* precache */ "",
;801:/* sounds */ ""
;802:	},
;803:
;804:/*QUAKED weapon_blaster (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;805:*/
;806:	{
;807:		"weapon_blaster", 
;808:		"sound/weapons/w_pkup.wav",
;809:        { "models/weapons2/blaster_r/blaster_w.glm", 
;810:		0, 0, 0},
;811:/* view */		"models/weapons2/blaster_r/blaster.md3", 
;812:/* icon */		"gfx/hud/w_icon_blaster",
;813:/* pickup *///	"E11 Blaster Rifle",
;814:		100,
;815:		IT_WEAPON,
;816:		WP_BLASTER,
;817:/* precache */ "",
;818:/* sounds */ ""
;819:	},
;820:
;821:/*QUAKED weapon_disruptor (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;822:*/
;823:	{
;824:		"weapon_disruptor",
;825:		"sound/weapons/w_pkup.wav",
;826:        { "models/weapons2/disruptor/disruptor_w.glm", 
;827:		0, 0, 0},
;828:/* view */		"models/weapons2/disruptor/disruptor.md3", 
;829:/* icon */		"gfx/hud/w_icon_disruptor",
;830:/* pickup *///	"Tenloss Disruptor Rifle",
;831:		100,
;832:		IT_WEAPON,
;833:		WP_DISRUPTOR,
;834:/* precache */ "",
;835:/* sounds */ ""
;836:	},
;837:
;838:/*QUAKED weapon_bowcaster (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;839:*/
;840:	{
;841:		"weapon_bowcaster",
;842:		"sound/weapons/w_pkup.wav",
;843:        { "models/weapons2/bowcaster/bowcaster_w.glm", 
;844:		0, 0, 0},
;845:/* view */		"models/weapons2/bowcaster/bowcaster.md3", 
;846:/* icon */		"gfx/hud/w_icon_bowcaster",
;847:/* pickup *///	"Wookiee Bowcaster",
;848:		100,
;849:		IT_WEAPON,
;850:		WP_BOWCASTER,
;851:/* precache */ "",
;852:/* sounds */ ""
;853:	},
;854:
;855:/*QUAKED weapon_repeater (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;856:*/
;857:	{
;858:		"weapon_repeater", 
;859:		"sound/weapons/w_pkup.wav",
;860:        { "models/weapons2/heavy_repeater/heavy_repeater_w.glm", 
;861:		0, 0, 0},
;862:/* view */		"models/weapons2/heavy_repeater/heavy_repeater.md3", 
;863:/* icon */		"gfx/hud/w_icon_repeater",
;864:/* pickup *///	"Imperial Heavy Repeater",
;865:		100,
;866:		IT_WEAPON,
;867:		WP_REPEATER,
;868:/* precache */ "",
;869:/* sounds */ ""
;870:	},
;871:
;872:/*QUAKED weapon_demp2 (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;873:NOTENOTE This weapon is not yet complete.  Don't place it.
;874:*/
;875:	{
;876:		"weapon_demp2", 
;877:		"sound/weapons/w_pkup.wav",
;878:        { "models/weapons2/demp2/demp2_w.glm", 
;879:		0, 0, 0},
;880:/* view */		"models/weapons2/demp2/demp2.md3", 
;881:/* icon */		"gfx/hud/w_icon_demp2",
;882:/* pickup *///	"DEMP2",
;883:		100,
;884:		IT_WEAPON,
;885:		WP_DEMP2,
;886:/* precache */ "",
;887:/* sounds */ ""
;888:	},
;889:
;890:/*QUAKED weapon_flechette (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;891:*/
;892:	{
;893:		"weapon_flechette", 
;894:		"sound/weapons/w_pkup.wav",
;895:        { "models/weapons2/golan_arms/golan_arms_w.glm", 
;896:		0, 0, 0},
;897:/* view */		"models/weapons2/golan_arms/golan_arms.md3", 
;898:/* icon */		"gfx/hud/w_icon_flechette",
;899:/* pickup *///	"Golan Arms Flechette",
;900:		100,
;901:		IT_WEAPON,
;902:		WP_FLECHETTE,
;903:/* precache */ "",
;904:/* sounds */ ""
;905:	},
;906:
;907:/*QUAKED weapon_rocket_launcher (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;908:*/
;909:	{
;910:		"weapon_rocket_launcher",
;911:		"sound/weapons/w_pkup.wav",
;912:        { "models/weapons2/merr_sonn/merr_sonn_w.glm", 
;913:		0, 0, 0},
;914:/* view */		"models/weapons2/merr_sonn/merr_sonn.md3", 
;915:/* icon */		"gfx/hud/w_icon_merrsonn",
;916:/* pickup *///	"Merr-Sonn Missile System",
;917:		3,
;918:		IT_WEAPON,
;919:		WP_ROCKET_LAUNCHER,
;920:/* precache */ "",
;921:/* sounds */ ""
;922:	},
;923:
;924:   /*
;925:// adnan
;926:// tie fighter default weapon
;927:
;928:
;929:/*QUAKED ammo_thermal (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;930:*/
;931:	{
;932:		"ammo_thermal",
;933:		"sound/weapons/w_pkup.wav",
;934:        { "models/weapons2/thermal/thermal_pu.md3", 
;935:		"models/weapons2/thermal/thermal_w.glm", 0, 0},
;936:/* view */		"models/weapons2/thermal/thermal.md3", 
;937:/* icon */		"gfx/hud/w_icon_thermal",
;938:/* pickup *///	"Thermal Detonators",
;939:		4,
;940:		IT_AMMO,
;941:		AMMO_THERMAL,
;942:/* precache */ "",
;943:/* sounds */ ""
;944:	},
;945:
;946:/*QUAKED ammo_tripmine (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;947:*/
;948:	{
;949:		"ammo_tripmine", 
;950:		"sound/weapons/w_pkup.wav",
;951:        { "models/weapons2/laser_trap/laser_trap_pu.md3", 
;952:		"models/weapons2/laser_trap/laser_trap_w.glm", 0, 0},
;953:/* view */		"models/weapons2/laser_trap/laser_trap.md3", 
;954:/* icon */		"gfx/hud/w_icon_tripmine",
;955:/* pickup *///	"Trip Mines",
;956:		3,
;957:		IT_AMMO,
;958:		AMMO_TRIPMINE,
;959:/* precache */ "",
;960:/* sounds */ ""
;961:	},
;962:
;963:/*QUAKED ammo_detpack (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;964:*/
;965:	{
;966:		"ammo_detpack", 
;967:		"sound/weapons/w_pkup.wav",
;968:        { "models/weapons2/detpack/det_pack_pu.md3", "models/weapons2/detpack/det_pack_proj.glm", "models/weapons2/detpack/det_pack_w.glm", 0},
;969:/* view */		"models/weapons2/detpack/det_pack.md3", 
;970:/* icon */		"gfx/hud/w_icon_detpack",
;971:/* pickup *///	"Det Packs",
;972:		3,
;973:		IT_AMMO,
;974:		AMMO_DETPACK,
;975:/* precache */ "",
;976:/* sounds */ ""
;977:	},
;978:
;979:/*QUAKED weapon_thermal (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;980:*/
;981:	{
;982:		"weapon_thermal",
;983:		"sound/weapons/w_pkup.wav",
;984:        { "models/weapons2/thermal/thermal_w.glm", "models/weapons2/thermal/thermal_pu.md3",
;985:		0, 0 },
;986:/* view */		"models/weapons2/thermal/thermal.md3", 
;987:/* icon */		"gfx/hud/w_icon_thermal",
;988:/* pickup *///	"Thermal Detonator",
;989:		4,
;990:		IT_WEAPON,
;991:		WP_THERMAL,
;992:/* precache */ "",
;993:/* sounds */ ""
;994:	},
;995:
;996:/*QUAKED weapon_trip_mine (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;997:*/
;998:	{
;999:		"weapon_trip_mine", 
;1000:		"sound/weapons/w_pkup.wav",
;1001:        { "models/weapons2/laser_trap/laser_trap_w.glm", "models/weapons2/laser_trap/laser_trap_pu.md3",
;1002:		0, 0},
;1003:/* view */		"models/weapons2/laser_trap/laser_trap.md3", 
;1004:/* icon */		"gfx/hud/w_icon_tripmine",
;1005:/* pickup *///	"Trip Mine",
;1006:		3,
;1007:		IT_WEAPON,
;1008:		WP_TRIP_MINE,
;1009:/* precache */ "",
;1010:/* sounds */ ""
;1011:	},
;1012:
;1013:/*QUAKED weapon_det_pack (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;1014:*/
;1015:	{
;1016:		"weapon_det_pack", 
;1017:		"sound/weapons/w_pkup.wav",
;1018:        { "models/weapons2/detpack/det_pack_proj.glm", "models/weapons2/detpack/det_pack_pu.md3", "models/weapons2/detpack/det_pack_w.glm", 0},
;1019:/* view */		"models/weapons2/detpack/det_pack.md3", 
;1020:/* icon */		"gfx/hud/w_icon_detpack",
;1021:/* pickup *///	"Det Pack",
;1022:		3,
;1023:		IT_WEAPON,
;1024:		WP_DET_PACK,
;1025:/* precache */ "",
;1026:/* sounds */ ""
;1027:	},
;1028:
;1029:/*QUAKED weapon_emplaced (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;1030:*/
;1031:	{
;1032:		"weapon_emplaced", 
;1033:		"sound/weapons/w_pkup.wav",
;1034:        { "models/weapons2/blaster_r/blaster_w.glm", 
;1035:		0, 0, 0},
;1036:/* view */		"models/weapons2/blaster_r/blaster.md3", 
;1037:/* icon */		"gfx/hud/w_icon_blaster",
;1038:/* pickup *///	"Emplaced Gun",
;1039:		50,
;1040:		IT_WEAPON,
;1041:		WP_EMPLACED_GUN,
;1042:/* precache */ "",
;1043:/* sounds */ ""
;1044:	},
;1045:
;1046:
;1047://NOTE: This is to keep things from messing up because the turret weapon type isn't real
;1048:	{
;1049:		"weapon_turretwp", 
;1050:		"sound/weapons/w_pkup.wav",
;1051:        { "models/weapons2/blaster_r/blaster_w.glm", 
;1052:		0, 0, 0},
;1053:/* view */		"models/weapons2/blaster_r/blaster.md3", 
;1054:/* icon */		"gfx/hud/w_icon_blaster",
;1055:/* pickup *///	"Turret Gun",
;1056:		50,
;1057:		IT_WEAPON,
;1058:		WP_TURRET,
;1059:/* precache */ "",
;1060:/* sounds */ ""
;1061:	},
;1062:
;1063:	//
;1064:	// AMMO ITEMS
;1065:	//
;1066:
;1067:/*QUAKED ammo_force (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;1068:Don't place this
;1069:*/
;1070:	{
;1071:		"ammo_force",
;1072:		"sound/player/pickupenergy.wav",
;1073:        { "models/items/energy_cell.md3", 
;1074:		0, 0, 0},
;1075:/* view */		NULL,			
;1076:/* icon */		"gfx/hud/w_icon_blaster",
;1077:/* pickup *///	"Force??",
;1078:		100,
;1079:		IT_AMMO,
;1080:		AMMO_FORCE,
;1081:/* precache */ "",
;1082:/* sounds */ ""
;1083:	},
;1084:
;1085:/*QUAKED ammo_blaster (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;1086:Ammo for the Bryar and Blaster pistols.
;1087:*/
;1088:	{
;1089:		"ammo_blaster",
;1090:		"sound/player/pickupenergy.wav",
;1091:        { "models/items/energy_cell.md3", 
;1092:		0, 0, 0},
;1093:/* view */		NULL,			
;1094:/* icon */		"gfx/hud/i_icon_battery",
;1095:/* pickup *///	"Blaster Pack",
;1096:		100,
;1097:		IT_AMMO,
;1098:		AMMO_BLASTER,
;1099:/* precache */ "",
;1100:/* sounds */ ""
;1101:	},
;1102:
;1103:/*QUAKED ammo_powercell (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;1104:Ammo for Tenloss Disruptor, Wookie Bowcaster, and the Destructive Electro Magnetic Pulse (demp2 ) guns
;1105:*/
;1106:	{
;1107:		"ammo_powercell",
;1108:		"sound/player/pickupenergy.wav",
;1109:        { "models/items/power_cell.md3", 
;1110:		0, 0, 0},
;1111:/* view */		NULL,			
;1112:/* icon */		"gfx/mp/ammo_power_cell",
;1113:/* pickup *///	"Power Cell",
;1114:		100,
;1115:		IT_AMMO,
;1116:		AMMO_POWERCELL,
;1117:/* precache */ "",
;1118:/* sounds */ ""
;1119:	},
;1120:
;1121:/*QUAKED ammo_metallic_bolts (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;1122:Ammo for Imperial Heavy Repeater and the Golan Arms Flechette
;1123:*/
;1124:	{
;1125:		"ammo_metallic_bolts",
;1126:		"sound/player/pickupenergy.wav",
;1127:        { "models/items/metallic_bolts.md3", 
;1128:		0, 0, 0},
;1129:/* view */		NULL,			
;1130:/* icon */		"gfx/mp/ammo_metallic_bolts",
;1131:/* pickup *///	"Metallic Bolts",
;1132:		100,
;1133:		IT_AMMO,
;1134:		AMMO_METAL_BOLTS,
;1135:/* precache */ "",
;1136:/* sounds */ ""
;1137:	},
;1138:
;1139:/*QUAKED ammo_rockets (.3 .3 1) (-16 -16 -16) (16 16 16) suspended
;1140:Ammo for Merr-Sonn portable missile launcher
;1141:*/
;1142:	{
;1143:		"ammo_rockets",
;1144:		"sound/player/pickupenergy.wav",
;1145:        { "models/items/rockets.md3", 
;1146:		0, 0, 0},
;1147:/* view */		NULL,			
;1148:/* icon */		"gfx/mp/ammo_rockets",
;1149:/* pickup *///	"Rockets",
;1150:		3,
;1151:		IT_AMMO,
;1152:		AMMO_ROCKETS,
;1153:/* precache */ "",
;1154:/* sounds */ ""
;1155:	},
;1156:
;1157:
;1158:	//
;1159:	// POWERUP ITEMS
;1160:	//
;1161:/*QUAKED team_CTF_redflag (1 0 0) (-16 -16 -16) (16 16 16)
;1162:Only in CTF games
;1163:*/
;1164:	{
;1165:		"team_CTF_redflag",
;1166:		NULL,
;1167:        { "models/flags/r_flag.md3",
;1168:		"models/flags/r_flag_ysal.md3", 0, 0 },
;1169:/* view */		NULL,			
;1170:/* icon */		"gfx/hud/mpi_rflag",
;1171:/* pickup *///	"Red Flag",
;1172:		0,
;1173:		IT_TEAM,
;1174:		PW_REDFLAG,
;1175:/* precache */ "",
;1176:/* sounds */ ""
;1177:	},
;1178:
;1179:/*QUAKED team_CTF_blueflag (0 0 1) (-16 -16 -16) (16 16 16)
;1180:Only in CTF games
;1181:*/
;1182:	{
;1183:		"team_CTF_blueflag",
;1184:		NULL,
;1185:        { "models/flags/b_flag.md3",
;1186:		"models/flags/b_flag_ysal.md3", 0, 0 },
;1187:/* view */		NULL,			
;1188:/* icon */		"gfx/hud/mpi_bflag",
;1189:/* pickup *///	"Blue Flag",
;1190:		0,
;1191:		IT_TEAM,
;1192:		PW_BLUEFLAG,
;1193:/* precache */ "",
;1194:/* sounds */ ""
;1195:	},
;1196:
;1197:	//
;1198:	// PERSISTANT POWERUP ITEMS
;1199:	//
;1200:
;1201:	/*QUAKED team_CTF_neutralflag (0 0 1) (-16 -16 -16) (16 16 16)
;1202:Only in One Flag CTF games
;1203:*/
;1204:	{
;1205:		"team_CTF_neutralflag",
;1206:		NULL,
;1207:        { "models/flags/n_flag.md3",
;1208:		0, 0, 0 },
;1209:/* view */		NULL,			
;1210:/* icon */		"icons/iconf_neutral1",
;1211:/* pickup *///	"Neutral Flag",
;1212:		0,
;1213:		IT_TEAM,
;1214:		PW_NEUTRALFLAG,
;1215:/* precache */ "",
;1216:/* sounds */ ""
;1217:	},
;1218:
;1219:	{
;1220:		"item_redcube",
;1221:		"sound/player/pickupenergy.wav",
;1222:        { "models/powerups/orb/r_orb.md3",
;1223:		0, 0, 0 },
;1224:/* view */		NULL,			
;1225:/* icon */		"icons/iconh_rorb",
;1226:/* pickup *///	"Red Cube",
;1227:		0,
;1228:		IT_TEAM,
;1229:		0,
;1230:/* precache */ "",
;1231:/* sounds */ ""
;1232:	},
;1233:
;1234:	{
;1235:		"item_bluecube",
;1236:		"sound/player/pickupenergy.wav",
;1237:        { "models/powerups/orb/b_orb.md3",
;1238:		0, 0, 0 },
;1239:/* view */		NULL,			
;1240:/* icon */		"icons/iconh_borb",
;1241:/* pickup *///	"Blue Cube",
;1242:		0,
;1243:		IT_TEAM,
;1244:		0,
;1245:/* precache */ "",
;1246:/* sounds */ ""
;1247:	},
;1248:
;1249:	// end of list marker
;1250:	{NULL}
;1251:};
;1252:
;1253:int		bg_numItems = sizeof(bg_itemlist) / sizeof(bg_itemlist[0]) - 1;
;1254:
;1255:float vectoyaw( const vec3_t vec ) {
line 1258
;1256:	float	yaw;
;1257:	
;1258:	if (vec[YAW] == 0 && vec[PITCH] == 0) {
ADDRLP4 4
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 8
CNSTF4 0
ASGNF4
ADDRLP4 4
INDIRP4
CNSTI4 4
ADDP4
INDIRF4
ADDRLP4 8
INDIRF4
NEF4 $412
ADDRLP4 4
INDIRP4
INDIRF4
ADDRLP4 8
INDIRF4
NEF4 $412
line 1259
;1259:		yaw = 0;
ADDRLP4 0
CNSTF4 0
ASGNF4
line 1260
;1260:	} else {
ADDRGP4 $413
JUMPV
LABELV $412
line 1261
;1261:		if (vec[PITCH]) {
ADDRFP4 0
INDIRP4
INDIRF4
CNSTF4 0
EQF4 $414
line 1262
;1262:			yaw = ( atan2( vec[YAW], vec[PITCH]) * 180 / M_PI );
ADDRLP4 12
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 12
INDIRP4
CNSTI4 4
ADDP4
INDIRF4
ARGF4
ADDRLP4 12
INDIRP4
INDIRF4
ARGF4
ADDRLP4 16
ADDRGP4 atan2
CALLF4
ASGNF4
ADDRLP4 0
CNSTF4 1127481344
ADDRLP4 16
INDIRF4
MULF4
CNSTF4 1078530011
DIVF4
ASGNF4
line 1263
;1263:		} else if (vec[YAW] > 0) {
ADDRGP4 $415
JUMPV
LABELV $414
ADDRFP4 0
INDIRP4
CNSTI4 4
ADDP4
INDIRF4
CNSTF4 0
LEF4 $416
line 1264
;1264:			yaw = 90;
ADDRLP4 0
CNSTF4 1119092736
ASGNF4
line 1265
;1265:		} else {
ADDRGP4 $417
JUMPV
LABELV $416
line 1266
;1266:			yaw = 270;
ADDRLP4 0
CNSTF4 1132920832
ASGNF4
line 1267
;1267:		}
LABELV $417
LABELV $415
line 1268
;1268:		if (yaw < 0) {
ADDRLP4 0
INDIRF4
CNSTF4 0
GEF4 $418
line 1269
;1269:			yaw += 360;
ADDRLP4 0
ADDRLP4 0
INDIRF4
CNSTF4 1135869952
ADDF4
ASGNF4
line 1270
;1270:		}
LABELV $418
line 1271
;1271:	}
LABELV $413
line 1273
;1272:
;1273:	return yaw;
ADDRLP4 0
INDIRF4
RETF4
LABELV $411
endproc vectoyaw 20 8
export BG_HasYsalamiri
proc BG_HasYsalamiri 8 0
line 1277
;1274:}
;1275:
;1276:qboolean BG_HasYsalamiri(int gametype, playerState_t *ps)
;1277:{
line 1278
;1278:	if (gametype == GT_CTY &&
ADDRFP4 0
INDIRI4
CNSTI4 8
NEI4 $421
ADDRLP4 0
ADDRFP4 4
INDIRP4
ASGNP4
ADDRLP4 4
CNSTI4 0
ASGNI4
ADDRLP4 0
INDIRP4
CNSTI4 360
ADDP4
INDIRI4
ADDRLP4 4
INDIRI4
NEI4 $423
ADDRLP4 0
INDIRP4
CNSTI4 364
ADDP4
INDIRI4
ADDRLP4 4
INDIRI4
EQI4 $421
LABELV $423
line 1280
;1279:		(ps->powerups[PW_REDFLAG] || ps->powerups[PW_BLUEFLAG]))
;1280:	{
line 1281
;1281:		return qtrue;
CNSTI4 1
RETI4
ADDRGP4 $420
JUMPV
LABELV $421
line 1284
;1282:	}
;1283:
;1284:	if (ps->powerups[PW_YSALAMIRI])
ADDRFP4 4
INDIRP4
CNSTI4 404
ADDP4
INDIRI4
CNSTI4 0
EQI4 $424
line 1285
;1285:	{
line 1286
;1286:		return qtrue;
CNSTI4 1
RETI4
ADDRGP4 $420
JUMPV
LABELV $424
line 1289
;1287:	}
;1288:
;1289:	return qfalse;
CNSTI4 0
RETI4
LABELV $420
endproc BG_HasYsalamiri 8 0
export BG_CanUseFPNow
proc BG_CanUseFPNow 16 8
line 1293
;1290:}
;1291:
;1292:qboolean BG_CanUseFPNow(int gametype, playerState_t *ps, int time, forcePowers_t power)
;1293:{
line 1294
;1294:	if (BG_HasYsalamiri(gametype, ps))
ADDRFP4 0
INDIRI4
ARGI4
ADDRFP4 4
INDIRP4
ARGP4
ADDRLP4 0
ADDRGP4 BG_HasYsalamiri
CALLI4
ASGNI4
ADDRLP4 0
INDIRI4
CNSTI4 0
EQI4 $427
line 1295
;1295:	{
line 1296
;1296:		return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $426
JUMPV
LABELV $427
line 1299
;1297:	}
;1298:
;1299:	if ( ps->forceRestricted || ps->trueNonJedi )
ADDRLP4 4
ADDRFP4 4
INDIRP4
ASGNP4
ADDRLP4 8
CNSTI4 0
ASGNI4
ADDRLP4 4
INDIRP4
CNSTI4 608
ADDP4
INDIRI4
ADDRLP4 8
INDIRI4
NEI4 $431
ADDRLP4 4
INDIRP4
CNSTI4 616
ADDP4
INDIRI4
ADDRLP4 8
INDIRI4
EQI4 $429
LABELV $431
line 1300
;1300:	{
line 1301
;1301:		return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $426
JUMPV
LABELV $429
line 1304
;1302:	}
;1303:
;1304:	if (ps->duelInProgress)
ADDRFP4 4
INDIRP4
CNSTI4 1304
ADDP4
INDIRI4
CNSTI4 0
EQI4 $432
line 1305
;1305:	{
line 1306
;1306:		if (power != FP_SABERATTACK && power != FP_SABERDEFEND && /*power != FP_SABERTHROW &&*/
ADDRLP4 12
ADDRFP4 12
INDIRI4
ASGNI4
ADDRLP4 12
INDIRI4
CNSTI4 15
EQI4 $434
ADDRLP4 12
INDIRI4
CNSTI4 16
EQI4 $434
ADDRLP4 12
INDIRI4
CNSTI4 1
EQI4 $434
line 1308
;1307:			power != FP_LEVITATION)
;1308:		{
line 1309
;1309:			if (!ps->saberLockFrame || power != FP_PUSH)
ADDRFP4 4
INDIRP4
CNSTI4 532
ADDP4
INDIRI4
CNSTI4 0
EQI4 $438
ADDRFP4 12
INDIRI4
CNSTI4 3
EQI4 $436
LABELV $438
line 1310
;1310:			{
line 1311
;1311:				return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $426
JUMPV
LABELV $436
line 1313
;1312:			}
;1313:		}
LABELV $434
line 1314
;1314:	}
LABELV $432
line 1316
;1315:
;1316:	if (ps->saberLockFrame || ps->saberLockTime > time)
ADDRLP4 12
ADDRFP4 4
INDIRP4
ASGNP4
ADDRLP4 12
INDIRP4
CNSTI4 532
ADDP4
INDIRI4
CNSTI4 0
NEI4 $441
ADDRLP4 12
INDIRP4
CNSTI4 524
ADDP4
INDIRI4
ADDRFP4 8
INDIRI4
LEI4 $439
LABELV $441
line 1317
;1317:	{
line 1318
;1318:		if (power != FP_PUSH)
ADDRFP4 12
INDIRI4
CNSTI4 3
EQI4 $442
line 1319
;1319:		{
line 1320
;1320:			return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $426
JUMPV
LABELV $442
line 1322
;1321:		}
;1322:	}
LABELV $439
line 1324
;1323:
;1324:	if (ps->fallingToDeath)
ADDRFP4 4
INDIRP4
CNSTI4 1352
ADDP4
INDIRI4
CNSTI4 0
EQI4 $444
line 1325
;1325:	{
line 1326
;1326:		return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $426
JUMPV
LABELV $444
line 1329
;1327:	}
;1328:
;1329:	return qtrue;
CNSTI4 1
RETI4
LABELV $426
endproc BG_CanUseFPNow 16 8
export BG_FindItemForPowerup
proc BG_FindItemForPowerup 8 0
line 1337
;1330:}
;1331:
;1332:/*
;1333:==============
;1334:BG_FindItemForPowerup
;1335:==============
;1336:*/
;1337:gitem_t	*BG_FindItemForPowerup( powerup_t pw ) {
line 1340
;1338:	int		i;
;1339:
;1340:	for ( i = 0 ; i < bg_numItems ; i++ ) {
ADDRLP4 0
CNSTI4 0
ASGNI4
ADDRGP4 $450
JUMPV
LABELV $447
line 1341
;1341:		if ( (bg_itemlist[i].giType == IT_POWERUP || 
ADDRLP4 4
CNSTI4 52
ADDRLP4 0
INDIRI4
MULI4
ASGNI4
ADDRLP4 4
INDIRI4
ADDRGP4 bg_itemlist+36
ADDP4
INDIRI4
CNSTI4 5
EQI4 $456
ADDRLP4 4
INDIRI4
ADDRGP4 bg_itemlist+36
ADDP4
INDIRI4
CNSTI4 8
NEI4 $451
LABELV $456
CNSTI4 52
ADDRLP4 0
INDIRI4
MULI4
ADDRGP4 bg_itemlist+40
ADDP4
INDIRI4
ADDRFP4 0
INDIRI4
NEI4 $451
line 1343
;1342:					bg_itemlist[i].giType == IT_TEAM) && 
;1343:			bg_itemlist[i].giTag == pw ) {
line 1344
;1344:			return &bg_itemlist[i];
CNSTI4 52
ADDRLP4 0
INDIRI4
MULI4
ADDRGP4 bg_itemlist
ADDP4
RETP4
ADDRGP4 $446
JUMPV
LABELV $451
line 1346
;1345:		}
;1346:	}
LABELV $448
line 1340
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
LABELV $450
ADDRLP4 0
INDIRI4
ADDRGP4 bg_numItems
INDIRI4
LTI4 $447
line 1348
;1347:
;1348:	return NULL;
CNSTP4 0
RETP4
LABELV $446
endproc BG_FindItemForPowerup 8 0
export BG_FindItemForHoldable
proc BG_FindItemForHoldable 8 8
line 1357
;1349:}
;1350:
;1351:
;1352:/*
;1353:==============
;1354:BG_FindItemForHoldable
;1355:==============
;1356:*/
;1357:gitem_t	*BG_FindItemForHoldable( holdable_t pw ) {
line 1360
;1358:	int		i;
;1359:
;1360:	for ( i = 0 ; i < bg_numItems ; i++ ) {
ADDRLP4 0
CNSTI4 0
ASGNI4
ADDRGP4 $461
JUMPV
LABELV $458
line 1361
;1361:		if ( bg_itemlist[i].giType == IT_HOLDABLE && bg_itemlist[i].giTag == pw ) {
ADDRLP4 4
CNSTI4 52
ADDRLP4 0
INDIRI4
MULI4
ASGNI4
ADDRLP4 4
INDIRI4
ADDRGP4 bg_itemlist+36
ADDP4
INDIRI4
CNSTI4 6
NEI4 $462
ADDRLP4 4
INDIRI4
ADDRGP4 bg_itemlist+40
ADDP4
INDIRI4
ADDRFP4 0
INDIRI4
NEI4 $462
line 1362
;1362:			return &bg_itemlist[i];
CNSTI4 52
ADDRLP4 0
INDIRI4
MULI4
ADDRGP4 bg_itemlist
ADDP4
RETP4
ADDRGP4 $457
JUMPV
LABELV $462
line 1364
;1363:		}
;1364:	}
LABELV $459
line 1360
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
LABELV $461
ADDRLP4 0
INDIRI4
ADDRGP4 bg_numItems
INDIRI4
LTI4 $458
line 1366
;1365:
;1366:	Com_Error( ERR_DROP, "HoldableItem not found" );
CNSTI4 1
ARGI4
ADDRGP4 $466
ARGP4
ADDRGP4 Com_Error
CALLV
pop
line 1368
;1367:
;1368:	return NULL;
CNSTP4 0
RETP4
LABELV $457
endproc BG_FindItemForHoldable 8 8
export BG_FindItemForWeapon
proc BG_FindItemForWeapon 8 12
line 1378
;1369:}
;1370:
;1371:
;1372:/*
;1373:===============
;1374:BG_FindItemForWeapon
;1375:
;1376:===============
;1377:*/
;1378:gitem_t	*BG_FindItemForWeapon( weapon_t weapon ) {
line 1381
;1379:	gitem_t	*it;
;1380:	
;1381:	for ( it = bg_itemlist + 1 ; it->classname ; it++) {
ADDRLP4 0
ADDRGP4 bg_itemlist+52
ASGNP4
ADDRGP4 $471
JUMPV
LABELV $468
line 1382
;1382:		if ( it->giType == IT_WEAPON && it->giTag == weapon ) {
ADDRLP4 0
INDIRP4
CNSTI4 36
ADDP4
INDIRI4
CNSTI4 1
NEI4 $473
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
ADDRFP4 0
INDIRI4
NEI4 $473
line 1383
;1383:			return it;
ADDRLP4 0
INDIRP4
RETP4
ADDRGP4 $467
JUMPV
LABELV $473
line 1385
;1384:		}
;1385:	}
LABELV $469
line 1381
ADDRLP4 0
ADDRLP4 0
INDIRP4
CNSTI4 52
ADDP4
ASGNP4
LABELV $471
ADDRLP4 0
INDIRP4
INDIRP4
CVPU4 4
CNSTU4 0
NEU4 $468
line 1387
;1386:
;1387:	Com_Error( ERR_DROP, "Couldn't find item for weapon %i", weapon);
CNSTI4 1
ARGI4
ADDRGP4 $475
ARGP4
ADDRFP4 0
INDIRI4
ARGI4
ADDRGP4 Com_Error
CALLV
pop
line 1388
;1388:	return NULL;
CNSTP4 0
RETP4
LABELV $467
endproc BG_FindItemForWeapon 8 12
export BG_FindItem
proc BG_FindItem 8 8
line 1397
;1389:}
;1390:
;1391:/*
;1392:===============
;1393:BG_FindItem
;1394:
;1395:===============
;1396:*/
;1397:gitem_t	*BG_FindItem( const char *classname ) {
line 1400
;1398:	gitem_t	*it;
;1399:	
;1400:	for ( it = bg_itemlist + 1 ; it->classname ; it++ ) {
ADDRLP4 0
ADDRGP4 bg_itemlist+52
ASGNP4
ADDRGP4 $480
JUMPV
LABELV $477
line 1401
;1401:		if ( !Q_stricmp( it->classname, classname) )
ADDRLP4 0
INDIRP4
INDIRP4
ARGP4
ADDRFP4 0
INDIRP4
ARGP4
ADDRLP4 4
ADDRGP4 Q_stricmp
CALLI4
ASGNI4
ADDRLP4 4
INDIRI4
CNSTI4 0
NEI4 $482
line 1402
;1402:			return it;
ADDRLP4 0
INDIRP4
RETP4
ADDRGP4 $476
JUMPV
LABELV $482
line 1403
;1403:	}
LABELV $478
line 1400
ADDRLP4 0
ADDRLP4 0
INDIRP4
CNSTI4 52
ADDP4
ASGNP4
LABELV $480
ADDRLP4 0
INDIRP4
INDIRP4
CVPU4 4
CNSTU4 0
NEU4 $477
line 1405
;1404:
;1405:	return NULL;
CNSTP4 0
RETP4
LABELV $476
endproc BG_FindItem 8 8
export BG_PlayerTouchesItem
proc BG_PlayerTouchesItem 36 12
line 1416
;1406:}
;1407:
;1408:/*
;1409:============
;1410:BG_PlayerTouchesItem
;1411:
;1412:Items can be picked up without actually touching their physical bounds to make
;1413:grabbing them easier
;1414:============
;1415:*/
;1416:qboolean	BG_PlayerTouchesItem( playerState_t *ps, entityState_t *item, int atTime ) {
line 1419
;1417:	vec3_t		origin;
;1418:
;1419:	BG_EvaluateTrajectory( &item->pos, atTime, origin );
ADDRFP4 4
INDIRP4
CNSTI4 12
ADDP4
ARGP4
ADDRFP4 8
INDIRI4
ARGI4
ADDRLP4 0
ARGP4
ADDRGP4 BG_EvaluateTrajectory
CALLV
pop
line 1422
;1420:
;1421:	// we are ignoring ducked differences here
;1422:	if ( ps->origin[0] - origin[0] > 44
ADDRLP4 12
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 16
ADDRLP4 12
INDIRP4
CNSTI4 20
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
SUBF4
ASGNF4
ADDRLP4 16
INDIRF4
CNSTF4 1110441984
GTF4 $495
ADDRLP4 16
INDIRF4
CNSTF4 3259498496
LTF4 $495
ADDRLP4 20
ADDRLP4 12
INDIRP4
CNSTI4 24
ADDP4
INDIRF4
ASGNF4
ADDRLP4 24
CNSTF4 1108344832
ASGNF4
ADDRLP4 20
INDIRF4
ADDRLP4 0+4
INDIRF4
SUBF4
ADDRLP4 24
INDIRF4
GTF4 $495
ADDRLP4 28
CNSTF4 3255828480
ASGNF4
ADDRLP4 20
INDIRF4
ADDRLP4 0+4
INDIRF4
SUBF4
ADDRLP4 28
INDIRF4
LTF4 $495
ADDRLP4 32
ADDRLP4 12
INDIRP4
CNSTI4 28
ADDP4
INDIRF4
ASGNF4
ADDRLP4 32
INDIRF4
ADDRLP4 0+8
INDIRF4
SUBF4
ADDRLP4 24
INDIRF4
GTF4 $495
ADDRLP4 32
INDIRF4
ADDRLP4 0+8
INDIRF4
SUBF4
ADDRLP4 28
INDIRF4
GEF4 $485
LABELV $495
line 1427
;1423:		|| ps->origin[0] - origin[0] < -50
;1424:		|| ps->origin[1] - origin[1] > 36
;1425:		|| ps->origin[1] - origin[1] < -36
;1426:		|| ps->origin[2] - origin[2] > 36
;1427:		|| ps->origin[2] - origin[2] < -36 ) {
line 1428
;1428:		return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $484
JUMPV
LABELV $485
line 1431
;1429:	}
;1430:
;1431:	return qtrue;
CNSTI4 1
RETI4
LABELV $484
endproc BG_PlayerTouchesItem 36 12
export BG_ProperForceIndex
proc BG_ProperForceIndex 4 0
line 1435
;1432:}
;1433:
;1434:int BG_ProperForceIndex(int power)
;1435:{
line 1436
;1436:	int i = 0;
ADDRLP4 0
CNSTI4 0
ASGNI4
ADDRGP4 $498
JUMPV
LABELV $497
line 1439
;1437:
;1438:	while (i < NUM_FORCE_POWERS)
;1439:	{
line 1440
;1440:		if (forcePowerSorted[i] == power)
ADDRLP4 0
INDIRI4
CNSTI4 2
LSHI4
ADDRGP4 forcePowerSorted
ADDP4
INDIRI4
ADDRFP4 0
INDIRI4
NEI4 $500
line 1441
;1441:		{
line 1442
;1442:			return i;
ADDRLP4 0
INDIRI4
RETI4
ADDRGP4 $496
JUMPV
LABELV $500
line 1445
;1443:		}
;1444:
;1445:		i++;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 1446
;1446:	}
LABELV $498
line 1438
ADDRLP4 0
INDIRI4
CNSTI4 18
LTI4 $497
line 1448
;1447:
;1448:	return -1;
CNSTI4 -1
RETI4
LABELV $496
endproc BG_ProperForceIndex 4 0
export BG_CycleForce
proc BG_CycleForce 40 4
line 1452
;1449:}
;1450:
;1451:void BG_CycleForce(playerState_t *ps, int direction)
;1452:{
line 1453
;1453:	int i = ps->fd.forcePowerSelected;
ADDRLP4 4
ADDRFP4 0
INDIRP4
CNSTI4 852
ADDP4
INDIRI4
ASGNI4
line 1454
;1454:	int x = i;
ADDRLP4 0
ADDRLP4 4
INDIRI4
ASGNI4
line 1455
;1455:	int presel = i;
ADDRLP4 8
ADDRLP4 4
INDIRI4
ASGNI4
line 1456
;1456:	int foundnext = -1;
ADDRLP4 12
CNSTI4 -1
ASGNI4
line 1458
;1457:
;1458:	if (!ps->fd.forcePowersKnown & (1 << x) ||
ADDRFP4 0
INDIRP4
CNSTI4 844
ADDP4
INDIRI4
CNSTI4 0
NEI4 $507
ADDRLP4 16
CNSTI4 1
ASGNI4
ADDRGP4 $508
JUMPV
LABELV $507
ADDRLP4 16
CNSTI4 0
ASGNI4
LABELV $508
ADDRLP4 16
INDIRI4
CNSTI4 1
ADDRLP4 0
INDIRI4
LSHI4
BANDI4
CNSTI4 0
NEI4 $509
ADDRLP4 0
INDIRI4
CNSTI4 18
GEI4 $509
ADDRLP4 0
INDIRI4
CNSTI4 -1
NEI4 $503
LABELV $509
line 1461
;1459:		x >= NUM_FORCE_POWERS ||
;1460:		x == -1)
;1461:	{ //apparently we have no valid force powers
line 1462
;1462:		return;
ADDRGP4 $502
JUMPV
LABELV $503
line 1465
;1463:	}
;1464:
;1465:	x = BG_ProperForceIndex(x);
ADDRLP4 0
INDIRI4
ARGI4
ADDRLP4 24
ADDRGP4 BG_ProperForceIndex
CALLI4
ASGNI4
ADDRLP4 0
ADDRLP4 24
INDIRI4
ASGNI4
line 1466
;1466:	presel = x;
ADDRLP4 8
ADDRLP4 0
INDIRI4
ASGNI4
line 1468
;1467:
;1468:	if (direction == 1)
ADDRFP4 4
INDIRI4
CNSTI4 1
NEI4 $510
line 1469
;1469:	{ //get the next power
line 1470
;1470:		x++;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 1471
;1471:	}
ADDRGP4 $511
JUMPV
LABELV $510
line 1473
;1472:	else
;1473:	{ //get the previous power
line 1474
;1474:		x--;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
SUBI4
ASGNI4
line 1475
;1475:	}
LABELV $511
line 1477
;1476:
;1477:	if (x >= NUM_FORCE_POWERS)
ADDRLP4 0
INDIRI4
CNSTI4 18
LTI4 $512
line 1478
;1478:	{ //cycled off the end.. cycle around to the first
line 1479
;1479:		x = 0;
ADDRLP4 0
CNSTI4 0
ASGNI4
line 1480
;1480:	}
LABELV $512
line 1481
;1481:	if (x < 0)
ADDRLP4 0
INDIRI4
CNSTI4 0
GEI4 $514
line 1482
;1482:	{ //cycled off the beginning.. cycle around to the last
line 1483
;1483:		x = NUM_FORCE_POWERS-1;
ADDRLP4 0
CNSTI4 17
ASGNI4
line 1484
;1484:	}
LABELV $514
line 1486
;1485:
;1486:	i = forcePowerSorted[x]; //the "sorted" value of this power
ADDRLP4 4
ADDRLP4 0
INDIRI4
CNSTI4 2
LSHI4
ADDRGP4 forcePowerSorted
ADDP4
INDIRI4
ASGNI4
ADDRGP4 $517
JUMPV
LABELV $516
line 1489
;1487:
;1488:	while (x != presel)
;1489:	{ //loop around to the current force power
line 1490
;1490:		if (ps->fd.forcePowersKnown & (1 << i) && i != ps->fd.forcePowerSelected)
ADDRLP4 28
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 28
INDIRP4
CNSTI4 844
ADDP4
INDIRI4
CNSTI4 1
ADDRLP4 4
INDIRI4
LSHI4
BANDI4
CNSTI4 0
EQI4 $519
ADDRLP4 4
INDIRI4
ADDRLP4 28
INDIRP4
CNSTI4 852
ADDP4
INDIRI4
EQI4 $519
line 1491
;1491:		{ //we have the force power
line 1492
;1492:			if (i != FP_LEVITATION &&
ADDRLP4 4
INDIRI4
CNSTI4 1
EQI4 $521
ADDRLP4 4
INDIRI4
CNSTI4 15
EQI4 $521
ADDRLP4 4
INDIRI4
CNSTI4 16
EQI4 $521
ADDRLP4 4
INDIRI4
CNSTI4 17
EQI4 $521
line 1496
;1493:				i != FP_SABERATTACK &&
;1494:				i != FP_SABERDEFEND &&
;1495:				i != FP_SABERTHROW)
;1496:			{ //it's selectable
line 1497
;1497:				foundnext = i;
ADDRLP4 12
ADDRLP4 4
INDIRI4
ASGNI4
line 1498
;1498:				break;
ADDRGP4 $518
JUMPV
LABELV $521
line 1500
;1499:			}
;1500:		}
LABELV $519
line 1502
;1501:
;1502:		if (direction == 1)
ADDRFP4 4
INDIRI4
CNSTI4 1
NEI4 $523
line 1503
;1503:		{ //next
line 1504
;1504:			x++;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 1505
;1505:		}
ADDRGP4 $524
JUMPV
LABELV $523
line 1507
;1506:		else
;1507:		{ //previous
line 1508
;1508:			x--;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
SUBI4
ASGNI4
line 1509
;1509:		}
LABELV $524
line 1511
;1510:	
;1511:		if (x >= NUM_FORCE_POWERS)
ADDRLP4 0
INDIRI4
CNSTI4 18
LTI4 $525
line 1512
;1512:		{ //loop around
line 1513
;1513:			x = 0;
ADDRLP4 0
CNSTI4 0
ASGNI4
line 1514
;1514:		}
LABELV $525
line 1515
;1515:		if (x < 0)
ADDRLP4 0
INDIRI4
CNSTI4 0
GEI4 $527
line 1516
;1516:		{ //loop around
line 1517
;1517:			x = NUM_FORCE_POWERS-1;
ADDRLP4 0
CNSTI4 17
ASGNI4
line 1518
;1518:		}
LABELV $527
line 1520
;1519:
;1520:		i = forcePowerSorted[x]; //set to the sorted value again
ADDRLP4 4
ADDRLP4 0
INDIRI4
CNSTI4 2
LSHI4
ADDRGP4 forcePowerSorted
ADDP4
INDIRI4
ASGNI4
line 1521
;1521:	}
LABELV $517
line 1488
ADDRLP4 0
INDIRI4
ADDRLP4 8
INDIRI4
NEI4 $516
LABELV $518
line 1523
;1522:
;1523:	if (foundnext != -1)
ADDRLP4 12
INDIRI4
CNSTI4 -1
EQI4 $529
line 1524
;1524:	{ //found one, select it
line 1525
;1525:		ps->fd.forcePowerSelected = foundnext;
ADDRFP4 0
INDIRP4
CNSTI4 852
ADDP4
ADDRLP4 12
INDIRI4
ASGNI4
line 1526
;1526:	}
LABELV $529
line 1527
;1527:}
LABELV $502
endproc BG_CycleForce 40 4
export BG_GetItemIndexByTag
proc BG_GetItemIndexByTag 8 0
line 1530
;1528:
;1529:int BG_GetItemIndexByTag(int tag, int type)
;1530:{ //Get the itemlist index from the tag and type
line 1531
;1531:	int i = 0;
ADDRLP4 0
CNSTI4 0
ASGNI4
ADDRGP4 $533
JUMPV
LABELV $532
line 1534
;1532:
;1533:	while (i < bg_numItems)
;1534:	{
line 1535
;1535:		if (bg_itemlist[i].giTag == tag &&
ADDRLP4 4
CNSTI4 52
ADDRLP4 0
INDIRI4
MULI4
ASGNI4
ADDRLP4 4
INDIRI4
ADDRGP4 bg_itemlist+40
ADDP4
INDIRI4
ADDRFP4 0
INDIRI4
NEI4 $535
ADDRLP4 4
INDIRI4
ADDRGP4 bg_itemlist+36
ADDP4
INDIRI4
ADDRFP4 4
INDIRI4
NEI4 $535
line 1537
;1536:			bg_itemlist[i].giType == type)
;1537:		{
line 1538
;1538:			return i;
ADDRLP4 0
INDIRI4
RETI4
ADDRGP4 $531
JUMPV
LABELV $535
line 1541
;1539:		}
;1540:
;1541:		i++;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 1542
;1542:	}
LABELV $533
line 1533
ADDRLP4 0
INDIRI4
ADDRGP4 bg_numItems
INDIRI4
LTI4 $532
line 1544
;1543:
;1544:	return 0;
CNSTI4 0
RETI4
LABELV $531
endproc BG_GetItemIndexByTag 8 0
export BG_CycleInven
proc BG_CycleInven 12 8
line 1548
;1545:}
;1546:
;1547:void BG_CycleInven(playerState_t *ps, int direction)
;1548:{
line 1552
;1549:	int i;
;1550:	int original;
;1551:
;1552:	i = bg_itemlist[ps->stats[STAT_HOLDABLE_ITEM]].giTag;
ADDRLP4 0
CNSTI4 52
ADDRFP4 0
INDIRP4
CNSTI4 220
ADDP4
INDIRI4
MULI4
ADDRGP4 bg_itemlist+40
ADDP4
INDIRI4
ASGNI4
line 1553
;1553:	original = i;
ADDRLP4 4
ADDRLP4 0
INDIRI4
ASGNI4
line 1555
;1554:
;1555:	if (direction == 1)
ADDRFP4 4
INDIRI4
CNSTI4 1
NEI4 $541
line 1556
;1556:	{ //next
line 1557
;1557:		i++;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 1558
;1558:	}
ADDRGP4 $544
JUMPV
LABELV $541
line 1560
;1559:	else
;1560:	{ //previous
line 1561
;1561:		i--;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
SUBI4
ASGNI4
line 1562
;1562:	}
ADDRGP4 $544
JUMPV
LABELV $543
line 1565
;1563:
;1564:	while (i != original)
;1565:	{ //go in a full loop until hitting something, if hit nothing then select nothing
line 1566
;1566:		if (ps->stats[STAT_HOLDABLE_ITEMS] & (1 << i))
ADDRFP4 0
INDIRP4
CNSTI4 224
ADDP4
INDIRI4
CNSTI4 1
ADDRLP4 0
INDIRI4
LSHI4
BANDI4
CNSTI4 0
EQI4 $546
line 1567
;1567:		{ //we have it, select it.
line 1568
;1568:			ps->stats[STAT_HOLDABLE_ITEM] = BG_GetItemIndexByTag(i, IT_HOLDABLE);
ADDRLP4 0
INDIRI4
ARGI4
CNSTI4 6
ARGI4
ADDRLP4 8
ADDRGP4 BG_GetItemIndexByTag
CALLI4
ASGNI4
ADDRFP4 0
INDIRP4
CNSTI4 220
ADDP4
ADDRLP4 8
INDIRI4
ASGNI4
line 1569
;1569:			break;
ADDRGP4 $545
JUMPV
LABELV $546
line 1572
;1570:		}
;1571:
;1572:		if (direction == 1)
ADDRFP4 4
INDIRI4
CNSTI4 1
NEI4 $548
line 1573
;1573:		{ //next
line 1574
;1574:			i++;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 1575
;1575:		}
ADDRGP4 $549
JUMPV
LABELV $548
line 1577
;1576:		else
;1577:		{ //previous
line 1578
;1578:			i--;
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
SUBI4
ASGNI4
line 1579
;1579:		}
LABELV $549
line 1581
;1580:
;1581:		if (i < 0)
ADDRLP4 0
INDIRI4
CNSTI4 0
GEI4 $550
line 1582
;1582:		{ //wrap around to the last
line 1583
;1583:			i = HI_NUM_HOLDABLE;
ADDRLP4 0
CNSTI4 7
ASGNI4
line 1584
;1584:		}
ADDRGP4 $551
JUMPV
LABELV $550
line 1585
;1585:		else if (i >= HI_NUM_HOLDABLE)
ADDRLP4 0
INDIRI4
CNSTI4 7
LTI4 $552
line 1586
;1586:		{ //wrap around to the first
line 1587
;1587:			i = 0;
ADDRLP4 0
CNSTI4 0
ASGNI4
line 1588
;1588:		}
LABELV $552
LABELV $551
line 1589
;1589:	}
LABELV $544
line 1564
ADDRLP4 0
INDIRI4
ADDRLP4 4
INDIRI4
NEI4 $543
LABELV $545
line 1590
;1590:}
LABELV $539
endproc BG_CycleInven 12 8
export BG_CanItemBeGrabbed
proc BG_CanItemBeGrabbed 56 8
line 1600
;1591:
;1592:/*
;1593:================
;1594:BG_CanItemBeGrabbed
;1595:
;1596:Returns false if the item should not be picked up.
;1597:This needs to be the same for client side prediction and server use.
;1598:================
;1599:*/
;1600:qboolean BG_CanItemBeGrabbed( int gametype, const entityState_t *ent, const playerState_t *ps ) {
line 1603
;1601:	gitem_t	*item;
;1602:
;1603:	if ( ent->modelindex < 1 || ent->modelindex >= bg_numItems ) {
ADDRLP4 4
ADDRFP4 4
INDIRP4
CNSTI4 212
ADDP4
INDIRI4
ASGNI4
ADDRLP4 4
INDIRI4
CNSTI4 1
LTI4 $557
ADDRLP4 4
INDIRI4
ADDRGP4 bg_numItems
INDIRI4
LTI4 $555
LABELV $557
line 1604
;1604:		Com_Error( ERR_DROP, "BG_CanItemBeGrabbed: index out of range" );
CNSTI4 1
ARGI4
ADDRGP4 $558
ARGP4
ADDRGP4 Com_Error
CALLV
pop
line 1605
;1605:	}
LABELV $555
line 1607
;1606:
;1607:	item = &bg_itemlist[ent->modelindex];
ADDRLP4 0
CNSTI4 52
ADDRFP4 4
INDIRP4
CNSTI4 212
ADDP4
INDIRI4
MULI4
ADDRGP4 bg_itemlist
ADDP4
ASGNP4
line 1609
;1608:
;1609:	if ( ps )
ADDRFP4 8
INDIRP4
CVPU4 4
CNSTU4 0
EQU4 $559
line 1610
;1610:	{
line 1611
;1611:		if ( ps->trueJedi )
ADDRFP4 8
INDIRP4
CNSTI4 612
ADDP4
INDIRI4
CNSTI4 0
EQI4 $561
line 1612
;1612:		{//force powers and saber only
line 1613
;1613:			if ( item->giType != IT_TEAM //not a flag
ADDRLP4 12
ADDRLP4 0
INDIRP4
CNSTI4 36
ADDP4
INDIRI4
ASGNI4
ADDRLP4 12
INDIRI4
CNSTI4 8
EQI4 $562
ADDRLP4 12
INDIRI4
CNSTI4 3
EQI4 $562
ADDRLP4 12
INDIRI4
CNSTI4 1
NEI4 $565
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
CNSTI4 2
EQI4 $562
LABELV $565
ADDRLP4 0
INDIRP4
CNSTI4 36
ADDP4
INDIRI4
CNSTI4 6
NEI4 $566
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
CNSTI4 1
EQI4 $562
LABELV $566
ADDRLP4 0
INDIRP4
CNSTI4 36
ADDP4
INDIRI4
CNSTI4 5
NEI4 $567
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
CNSTI4 15
NEI4 $562
LABELV $567
line 1618
;1614:				&& item->giType != IT_ARMOR//not shields
;1615:				&& (item->giType != IT_WEAPON || item->giTag != WP_SABER)//not a saber
;1616:				&& (item->giType != IT_HOLDABLE || item->giTag != HI_SEEKER)//not a seeker
;1617:				&& (item->giType != IT_POWERUP || item->giTag == PW_YSALAMIRI) )//not a force pick-up
;1618:			{
line 1619
;1619:				return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
line 1621
;1620:			}
;1621:		}
LABELV $561
line 1622
;1622:		else if ( ps->trueNonJedi )
ADDRFP4 8
INDIRP4
CNSTI4 616
ADDP4
INDIRI4
CNSTI4 0
EQI4 $568
line 1623
;1623:		{//can't pick up force powerups
line 1624
;1624:			if ( (item->giType == IT_POWERUP && item->giTag != PW_YSALAMIRI) //if a powerup, can only can pick up ysalamiri
ADDRLP4 0
INDIRP4
CNSTI4 36
ADDP4
INDIRI4
CNSTI4 5
NEI4 $573
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
CNSTI4 15
NEI4 $574
LABELV $573
ADDRLP4 0
INDIRP4
CNSTI4 36
ADDP4
INDIRI4
CNSTI4 6
NEI4 $575
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
CNSTI4 1
EQI4 $574
LABELV $575
ADDRLP4 0
INDIRP4
CNSTI4 36
ADDP4
INDIRI4
CNSTI4 1
NEI4 $570
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
CNSTI4 2
NEI4 $570
LABELV $574
line 1627
;1625:				|| (item->giType == IT_HOLDABLE && item->giTag == HI_SEEKER)//if holdable, cannot pick up seeker 
;1626:				|| (item->giType == IT_WEAPON && item->giTag == WP_SABER ) )//or if it's a saber
;1627:			{
line 1628
;1628:				return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $570
line 1630
;1629:			}
;1630:		}
LABELV $568
LABELV $562
line 1631
;1631:		if ( ps->isJediMaster && item && (item->giType == IT_WEAPON || item->giType == IT_AMMO))
ADDRFP4 8
INDIRP4
CNSTI4 604
ADDP4
INDIRI4
CNSTI4 0
EQI4 $576
ADDRLP4 0
INDIRP4
CVPU4 4
CNSTU4 0
EQU4 $576
ADDRLP4 12
ADDRLP4 0
INDIRP4
CNSTI4 36
ADDP4
INDIRI4
ASGNI4
ADDRLP4 12
INDIRI4
CNSTI4 1
EQI4 $578
ADDRLP4 12
INDIRI4
CNSTI4 2
NEI4 $576
LABELV $578
line 1632
;1632:		{//jedi master cannot pick up weapons
line 1633
;1633:			return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $576
line 1635
;1634:		}
;1635:		if ( ps->duelInProgress )
ADDRFP4 8
INDIRP4
CNSTI4 1304
ADDP4
INDIRI4
CNSTI4 0
EQI4 $560
line 1636
;1636:		{ //no picking stuff up while in a duel, no matter what the type is
line 1637
;1637:			return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
line 1639
;1638:		}
;1639:	}
LABELV $559
line 1641
;1640:	else
;1641:	{//safety return since below code assumes a non-null ps
line 1642
;1642:		return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $560
line 1645
;1643:	}
;1644:
;1645:	switch( item->giType ) {
ADDRLP4 8
ADDRLP4 0
INDIRP4
CNSTI4 36
ADDP4
INDIRI4
ASGNI4
ADDRLP4 8
INDIRI4
CNSTI4 0
LTI4 $582
ADDRLP4 8
INDIRI4
CNSTI4 8
GTI4 $582
ADDRLP4 8
INDIRI4
CNSTI4 2
LSHI4
ADDRGP4 $633
ADDP4
INDIRP4
JUMPV
lit
align 4
LABELV $633
address $631
address $584
address $589
address $592
address $595
address $605
address $628
address $582
address $610
code
LABELV $584
line 1647
;1646:	case IT_WEAPON:
;1647:		if (ent->generic1 == ps->clientNum && ent->powerups)
ADDRLP4 16
ADDRFP4 4
INDIRP4
ASGNP4
ADDRLP4 16
INDIRP4
CNSTI4 292
ADDP4
INDIRI4
ADDRFP4 8
INDIRP4
CNSTI4 144
ADDP4
INDIRI4
NEI4 $585
ADDRLP4 16
INDIRP4
CNSTI4 272
ADDP4
INDIRI4
CNSTI4 0
EQI4 $585
line 1648
;1648:		{
line 1649
;1649:			return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $585
line 1651
;1650:		}
;1651:		if (!(ent->eFlags & EF_DROPPEDWEAPON) && (ps->stats[STAT_WEAPONS] & (1 << item->giTag)) &&
ADDRLP4 20
CNSTI4 0
ASGNI4
ADDRFP4 4
INDIRP4
CNSTI4 8
ADDP4
INDIRI4
CNSTI4 16777216
BANDI4
ADDRLP4 20
INDIRI4
NEI4 $587
ADDRLP4 24
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
ASGNI4
ADDRFP4 8
INDIRP4
CNSTI4 232
ADDP4
INDIRI4
CNSTI4 1
ADDRLP4 24
INDIRI4
LSHI4
BANDI4
ADDRLP4 20
INDIRI4
EQI4 $587
ADDRLP4 24
INDIRI4
CNSTI4 11
EQI4 $587
ADDRLP4 24
INDIRI4
CNSTI4 12
EQI4 $587
ADDRLP4 24
INDIRI4
CNSTI4 13
EQI4 $587
line 1653
;1652:			item->giTag != WP_THERMAL && item->giTag != WP_TRIP_MINE && item->giTag != WP_DET_PACK)
;1653:		{ //weaponstay stuff.. if this isn't dropped, and you already have it, you don't get it.
line 1654
;1654:			return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $587
line 1656
;1655:		}
;1656:		return qtrue;	// weapons are always picked up
CNSTI4 1
RETI4
ADDRGP4 $554
JUMPV
LABELV $589
line 1659
;1657:
;1658:	case IT_AMMO:
;1659:		if ( ps->ammo[item->giTag] >= ammoData[item->giTag].max) {
ADDRLP4 28
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
CNSTI4 2
LSHI4
ASGNI4
ADDRLP4 28
INDIRI4
ADDRFP4 8
INDIRP4
CNSTI4 408
ADDP4
ADDP4
INDIRI4
ADDRLP4 28
INDIRI4
ADDRGP4 ammoData
ADDP4
INDIRI4
LTI4 $590
line 1660
;1660:			return qfalse;		// can't hold any more
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $590
line 1662
;1661:		}
;1662:		return qtrue;
CNSTI4 1
RETI4
ADDRGP4 $554
JUMPV
LABELV $592
line 1665
;1663:
;1664:	case IT_ARMOR:
;1665:		if ( ps->stats[STAT_ARMOR] >= ps->stats[STAT_MAX_HEALTH] * item->giTag ) {
ADDRLP4 32
ADDRFP4 8
INDIRP4
ASGNP4
ADDRLP4 32
INDIRP4
CNSTI4 236
ADDP4
INDIRI4
ADDRLP4 32
INDIRP4
CNSTI4 248
ADDP4
INDIRI4
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
MULI4
LTI4 $593
line 1666
;1666:			return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $593
line 1668
;1667:		}
;1668:		return qtrue;
CNSTI4 1
RETI4
ADDRGP4 $554
JUMPV
LABELV $595
line 1673
;1669:
;1670:	case IT_HEALTH:
;1671:		// small and mega healths will go over the max, otherwise
;1672:		// don't pick up if already at max
;1673:		if ((ps->fd.forcePowersActive & (1 << FP_RAGE)))
ADDRFP4 8
INDIRP4
CNSTI4 848
ADDP4
INDIRI4
CNSTI4 256
BANDI4
CNSTI4 0
EQI4 $596
line 1674
;1674:		{
line 1675
;1675:			return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $596
line 1678
;1676:		}
;1677:
;1678:		if ( item->quantity == 5 || item->quantity == 100 ) {
ADDRLP4 36
ADDRLP4 0
INDIRP4
CNSTI4 32
ADDP4
INDIRI4
ASGNI4
ADDRLP4 36
INDIRI4
CNSTI4 5
EQI4 $600
ADDRLP4 36
INDIRI4
CNSTI4 100
NEI4 $598
LABELV $600
line 1679
;1679:			if ( ps->stats[STAT_HEALTH] >= ps->stats[STAT_MAX_HEALTH] * 2 ) {
ADDRLP4 40
ADDRFP4 8
INDIRP4
ASGNP4
ADDRLP4 40
INDIRP4
CNSTI4 216
ADDP4
INDIRI4
ADDRLP4 40
INDIRP4
CNSTI4 248
ADDP4
INDIRI4
CNSTI4 1
LSHI4
LTI4 $601
line 1680
;1680:				return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $601
line 1682
;1681:			}
;1682:			return qtrue;
CNSTI4 1
RETI4
ADDRGP4 $554
JUMPV
LABELV $598
line 1685
;1683:		}
;1684:
;1685:		if ( ps->stats[STAT_HEALTH] >= ps->stats[STAT_MAX_HEALTH] ) {
ADDRLP4 40
ADDRFP4 8
INDIRP4
ASGNP4
ADDRLP4 40
INDIRP4
CNSTI4 216
ADDP4
INDIRI4
ADDRLP4 40
INDIRP4
CNSTI4 248
ADDP4
INDIRI4
LTI4 $603
line 1686
;1686:			return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $603
line 1688
;1687:		}
;1688:		return qtrue;
CNSTI4 1
RETI4
ADDRGP4 $554
JUMPV
LABELV $605
line 1691
;1689:
;1690:	case IT_POWERUP:
;1691:		if (ps && (ps->powerups[PW_YSALAMIRI]))
ADDRLP4 44
ADDRFP4 8
INDIRP4
ASGNP4
ADDRLP4 44
INDIRP4
CVPU4 4
CNSTU4 0
EQU4 $606
ADDRLP4 44
INDIRP4
CNSTI4 404
ADDP4
INDIRI4
CNSTI4 0
EQI4 $606
line 1692
;1692:		{
line 1693
;1693:			if (item->giTag != PW_YSALAMIRI)
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
CNSTI4 15
EQI4 $608
line 1694
;1694:			{
line 1695
;1695:				return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $608
line 1697
;1696:			}
;1697:		}
LABELV $606
line 1698
;1698:		return qtrue;	// powerups are always picked up
CNSTI4 1
RETI4
ADDRGP4 $554
JUMPV
LABELV $610
line 1701
;1699:
;1700:	case IT_TEAM: // team items, such as flags
;1701:		if( gametype == GT_CTF || gametype == GT_CTY ) {
ADDRLP4 48
ADDRFP4 0
INDIRI4
ASGNI4
ADDRLP4 48
INDIRI4
CNSTI4 7
EQI4 $613
ADDRLP4 48
INDIRI4
CNSTI4 8
NEI4 $611
LABELV $613
line 1705
;1702:			// ent->modelindex2 is non-zero on items if they are dropped
;1703:			// we need to know this because we can pick up our dropped flag (and return it)
;1704:			// but we can't pick up our flag at base
;1705:			if (ps->persistant[PERS_TEAM] == TEAM_RED) {
ADDRFP4 8
INDIRP4
CNSTI4 292
ADDP4
INDIRI4
CNSTI4 1
NEI4 $614
line 1706
;1706:				if (item->giTag == PW_BLUEFLAG ||
ADDRLP4 52
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
ASGNI4
ADDRLP4 52
INDIRI4
CNSTI4 5
EQI4 $619
ADDRLP4 52
INDIRI4
CNSTI4 4
NEI4 $620
ADDRFP4 4
INDIRP4
CNSTI4 216
ADDP4
INDIRI4
CNSTI4 0
NEI4 $619
LABELV $620
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
CNSTI4 4
NEI4 $615
ADDRFP4 8
INDIRP4
CNSTI4 364
ADDP4
INDIRI4
CNSTI4 0
EQI4 $615
LABELV $619
line 1709
;1707:					(item->giTag == PW_REDFLAG && ent->modelindex2) ||
;1708:					(item->giTag == PW_REDFLAG && ps->powerups[PW_BLUEFLAG]) )
;1709:					return qtrue;
CNSTI4 1
RETI4
ADDRGP4 $554
JUMPV
line 1710
;1710:			} else if (ps->persistant[PERS_TEAM] == TEAM_BLUE) {
LABELV $614
ADDRFP4 8
INDIRP4
CNSTI4 292
ADDP4
INDIRI4
CNSTI4 2
NEI4 $621
line 1711
;1711:				if (item->giTag == PW_REDFLAG ||
ADDRLP4 52
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
ASGNI4
ADDRLP4 52
INDIRI4
CNSTI4 4
EQI4 $626
ADDRLP4 52
INDIRI4
CNSTI4 5
NEI4 $627
ADDRFP4 4
INDIRP4
CNSTI4 216
ADDP4
INDIRI4
CNSTI4 0
NEI4 $626
LABELV $627
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
CNSTI4 5
NEI4 $623
ADDRFP4 8
INDIRP4
CNSTI4 360
ADDP4
INDIRI4
CNSTI4 0
EQI4 $623
LABELV $626
line 1714
;1712:					(item->giTag == PW_BLUEFLAG && ent->modelindex2) ||
;1713:					(item->giTag == PW_BLUEFLAG && ps->powerups[PW_REDFLAG]) )
;1714:					return qtrue;
CNSTI4 1
RETI4
ADDRGP4 $554
JUMPV
LABELV $623
line 1715
;1715:			}
LABELV $621
LABELV $615
line 1716
;1716:		}
LABELV $611
line 1718
;1717:
;1718:		return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $628
line 1721
;1719:
;1720:	case IT_HOLDABLE:
;1721:		if ( ps->stats[STAT_HOLDABLE_ITEMS] & (1 << item->giTag))
ADDRFP4 8
INDIRP4
CNSTI4 224
ADDP4
INDIRI4
CNSTI4 1
ADDRLP4 0
INDIRP4
CNSTI4 40
ADDP4
INDIRI4
LSHI4
BANDI4
CNSTI4 0
EQI4 $629
line 1722
;1722:		{
line 1723
;1723:			return qfalse;
CNSTI4 0
RETI4
ADDRGP4 $554
JUMPV
LABELV $629
line 1725
;1724:		}
;1725:		return qtrue;
CNSTI4 1
RETI4
ADDRGP4 $554
JUMPV
LABELV $631
line 1728
;1726:
;1727:        case IT_BAD:
;1728:            Com_Error( ERR_DROP, "BG_CanItemBeGrabbed: IT_BAD" );
CNSTI4 1
ARGI4
ADDRGP4 $632
ARGP4
ADDRGP4 Com_Error
CALLV
pop
line 1735
;1729:        default:
;1730:#ifndef Q3_VM
;1731:#ifndef NDEBUG // bk0001204
;1732:          Com_Printf("BG_CanItemBeGrabbed: unknown enum %d\n", item->giType );
;1733:#endif
;1734:#endif
;1735:         break;
LABELV $582
line 1738
;1736:	}
;1737:
;1738:	return qfalse;
CNSTI4 0
RETI4
LABELV $554
endproc BG_CanItemBeGrabbed 56 8
export BG_EvaluateTrajectory
proc BG_EvaluateTrajectory 84 12
line 1749
;1739:}
;1740:
;1741://======================================================================
;1742:
;1743:/*
;1744:================
;1745:BG_EvaluateTrajectory
;1746:
;1747:================
;1748:*/
;1749:void BG_EvaluateTrajectory( const trajectory_t *tr, int atTime, vec3_t result ) {
line 1753
;1750:	float		deltaTime;
;1751:	float		phase;
;1752:
;1753:	switch( tr->trType ) {
ADDRLP4 8
ADDRFP4 0
INDIRP4
INDIRI4
ASGNI4
ADDRLP4 8
INDIRI4
CNSTI4 0
LTI4 $635
ADDRLP4 8
INDIRI4
CNSTI4 5
GTI4 $635
ADDRLP4 8
INDIRI4
CNSTI4 2
LSHI4
ADDRGP4 $648
ADDP4
INDIRP4
JUMPV
lit
align 4
LABELV $648
address $638
address $638
address $639
address $641
address $640
address $646
code
LABELV $638
line 1756
;1754:	case TR_STATIONARY:
;1755:	case TR_INTERPOLATE:
;1756:		VectorCopy( tr->trBase, result );
ADDRFP4 8
INDIRP4
ADDRFP4 0
INDIRP4
CNSTI4 12
ADDP4
INDIRB
ASGNB 12
line 1757
;1757:		break;
ADDRGP4 $636
JUMPV
LABELV $639
line 1759
;1758:	case TR_LINEAR:
;1759:		deltaTime = ( atTime - tr->trTime ) * 0.001;	// milliseconds to seconds
ADDRLP4 0
CNSTF4 981668463
ADDRFP4 4
INDIRI4
ADDRFP4 0
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
SUBI4
CVIF4 4
MULF4
ASGNF4
line 1760
;1760:		VectorMA( tr->trBase, deltaTime, tr->trDelta, result );
ADDRLP4 16
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 8
INDIRP4
ADDRLP4 16
INDIRP4
CNSTI4 12
ADDP4
INDIRF4
ADDRLP4 16
INDIRP4
CNSTI4 24
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
MULF4
ADDF4
ASGNF4
ADDRLP4 20
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 8
INDIRP4
CNSTI4 4
ADDP4
ADDRLP4 20
INDIRP4
CNSTI4 16
ADDP4
INDIRF4
ADDRLP4 20
INDIRP4
CNSTI4 28
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
MULF4
ADDF4
ASGNF4
ADDRLP4 24
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 8
INDIRP4
CNSTI4 8
ADDP4
ADDRLP4 24
INDIRP4
CNSTI4 20
ADDP4
INDIRF4
ADDRLP4 24
INDIRP4
CNSTI4 32
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
MULF4
ADDF4
ASGNF4
line 1761
;1761:		break;
ADDRGP4 $636
JUMPV
LABELV $640
line 1763
;1762:	case TR_SINE:
;1763:		deltaTime = ( atTime - tr->trTime ) / (float) tr->trDuration;
ADDRLP4 28
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 0
ADDRFP4 4
INDIRI4
ADDRLP4 28
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
SUBI4
CVIF4 4
ADDRLP4 28
INDIRP4
CNSTI4 8
ADDP4
INDIRI4
CVIF4 4
DIVF4
ASGNF4
line 1764
;1764:		phase = sin( deltaTime * M_PI * 2 );
CNSTF4 1073741824
CNSTF4 1078530011
ADDRLP4 0
INDIRF4
MULF4
MULF4
ARGF4
ADDRLP4 32
ADDRGP4 sin
CALLF4
ASGNF4
ADDRLP4 4
ADDRLP4 32
INDIRF4
ASGNF4
line 1765
;1765:		VectorMA( tr->trBase, phase, tr->trDelta, result );
ADDRLP4 36
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 8
INDIRP4
ADDRLP4 36
INDIRP4
CNSTI4 12
ADDP4
INDIRF4
ADDRLP4 36
INDIRP4
CNSTI4 24
ADDP4
INDIRF4
ADDRLP4 4
INDIRF4
MULF4
ADDF4
ASGNF4
ADDRLP4 40
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 8
INDIRP4
CNSTI4 4
ADDP4
ADDRLP4 40
INDIRP4
CNSTI4 16
ADDP4
INDIRF4
ADDRLP4 40
INDIRP4
CNSTI4 28
ADDP4
INDIRF4
ADDRLP4 4
INDIRF4
MULF4
ADDF4
ASGNF4
ADDRLP4 44
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 8
INDIRP4
CNSTI4 8
ADDP4
ADDRLP4 44
INDIRP4
CNSTI4 20
ADDP4
INDIRF4
ADDRLP4 44
INDIRP4
CNSTI4 32
ADDP4
INDIRF4
ADDRLP4 4
INDIRF4
MULF4
ADDF4
ASGNF4
line 1766
;1766:		break;
ADDRGP4 $636
JUMPV
LABELV $641
line 1768
;1767:	case TR_LINEAR_STOP:
;1768:		if ( atTime > tr->trTime + tr->trDuration ) {
ADDRLP4 48
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 4
INDIRI4
ADDRLP4 48
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
ADDRLP4 48
INDIRP4
CNSTI4 8
ADDP4
INDIRI4
ADDI4
LEI4 $642
line 1769
;1769:			atTime = tr->trTime + tr->trDuration;
ADDRLP4 52
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 4
ADDRLP4 52
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
ADDRLP4 52
INDIRP4
CNSTI4 8
ADDP4
INDIRI4
ADDI4
ASGNI4
line 1770
;1770:		}
LABELV $642
line 1771
;1771:		deltaTime = ( atTime - tr->trTime ) * 0.001;	// milliseconds to seconds
ADDRLP4 0
CNSTF4 981668463
ADDRFP4 4
INDIRI4
ADDRFP4 0
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
SUBI4
CVIF4 4
MULF4
ASGNF4
line 1772
;1772:		if ( deltaTime < 0 ) {
ADDRLP4 0
INDIRF4
CNSTF4 0
GEF4 $644
line 1773
;1773:			deltaTime = 0;
ADDRLP4 0
CNSTF4 0
ASGNF4
line 1774
;1774:		}
LABELV $644
line 1775
;1775:		VectorMA( tr->trBase, deltaTime, tr->trDelta, result );
ADDRLP4 52
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 8
INDIRP4
ADDRLP4 52
INDIRP4
CNSTI4 12
ADDP4
INDIRF4
ADDRLP4 52
INDIRP4
CNSTI4 24
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
MULF4
ADDF4
ASGNF4
ADDRLP4 56
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 8
INDIRP4
CNSTI4 4
ADDP4
ADDRLP4 56
INDIRP4
CNSTI4 16
ADDP4
INDIRF4
ADDRLP4 56
INDIRP4
CNSTI4 28
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
MULF4
ADDF4
ASGNF4
ADDRLP4 60
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 8
INDIRP4
CNSTI4 8
ADDP4
ADDRLP4 60
INDIRP4
CNSTI4 20
ADDP4
INDIRF4
ADDRLP4 60
INDIRP4
CNSTI4 32
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
MULF4
ADDF4
ASGNF4
line 1776
;1776:		break;
ADDRGP4 $636
JUMPV
LABELV $646
line 1778
;1777:	case TR_GRAVITY:
;1778:		deltaTime = ( atTime - tr->trTime ) * 0.001;	// milliseconds to seconds
ADDRLP4 0
CNSTF4 981668463
ADDRFP4 4
INDIRI4
ADDRFP4 0
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
SUBI4
CVIF4 4
MULF4
ASGNF4
line 1779
;1779:		VectorMA( tr->trBase, deltaTime, tr->trDelta, result );
ADDRLP4 64
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 8
INDIRP4
ADDRLP4 64
INDIRP4
CNSTI4 12
ADDP4
INDIRF4
ADDRLP4 64
INDIRP4
CNSTI4 24
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
MULF4
ADDF4
ASGNF4
ADDRLP4 68
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 8
INDIRP4
CNSTI4 4
ADDP4
ADDRLP4 68
INDIRP4
CNSTI4 16
ADDP4
INDIRF4
ADDRLP4 68
INDIRP4
CNSTI4 28
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
MULF4
ADDF4
ASGNF4
ADDRLP4 72
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 8
INDIRP4
CNSTI4 8
ADDP4
ADDRLP4 72
INDIRP4
CNSTI4 20
ADDP4
INDIRF4
ADDRLP4 72
INDIRP4
CNSTI4 32
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
MULF4
ADDF4
ASGNF4
line 1780
;1780:		result[2] -= 0.5 * DEFAULT_GRAVITY * deltaTime * deltaTime;		// FIXME: local gravity...
ADDRLP4 76
ADDRFP4 8
INDIRP4
CNSTI4 8
ADDP4
ASGNP4
ADDRLP4 80
ADDRLP4 0
INDIRF4
ASGNF4
ADDRLP4 76
INDIRP4
ADDRLP4 76
INDIRP4
INDIRF4
CNSTF4 1137180672
ADDRLP4 80
INDIRF4
MULF4
ADDRLP4 80
INDIRF4
MULF4
SUBF4
ASGNF4
line 1781
;1781:		break;
ADDRGP4 $636
JUMPV
LABELV $635
line 1786
;1782:	default:
;1783:#ifdef QAGAME
;1784:		Com_Error( ERR_DROP, "BG_EvaluateTrajectory: [GAME SIDE] unknown trType: %i", tr->trType );
;1785:#else
;1786:		Com_Error( ERR_DROP, "BG_EvaluateTrajectory: [CLIENTGAME SIDE] unknown trType: %i", tr->trType );
CNSTI4 1
ARGI4
ADDRGP4 $647
ARGP4
ADDRFP4 0
INDIRP4
INDIRI4
ARGI4
ADDRGP4 Com_Error
CALLV
pop
line 1788
;1787:#endif
;1788:		break;
LABELV $636
line 1790
;1789:	}
;1790:}
LABELV $634
endproc BG_EvaluateTrajectory 84 12
export BG_EvaluateTrajectoryDelta
proc BG_EvaluateTrajectoryDelta 44 12
line 1799
;1791:
;1792:/*
;1793:================
;1794:BG_EvaluateTrajectoryDelta
;1795:
;1796:For determining velocity at a given time
;1797:================
;1798:*/
;1799:void BG_EvaluateTrajectoryDelta( const trajectory_t *tr, int atTime, vec3_t result ) {
line 1803
;1800:	float	deltaTime;
;1801:	float	phase;
;1802:
;1803:	switch( tr->trType ) {
ADDRLP4 8
ADDRFP4 0
INDIRP4
INDIRI4
ASGNI4
ADDRLP4 8
INDIRI4
CNSTI4 0
LTI4 $650
ADDRLP4 8
INDIRI4
CNSTI4 5
GTI4 $650
ADDRLP4 8
INDIRI4
CNSTI4 2
LSHI4
ADDRGP4 $661
ADDP4
INDIRP4
JUMPV
lit
align 4
LABELV $661
address $653
address $653
address $654
address $656
address $655
address $659
code
LABELV $653
line 1806
;1804:	case TR_STATIONARY:
;1805:	case TR_INTERPOLATE:
;1806:		VectorClear( result );
ADDRLP4 16
ADDRFP4 8
INDIRP4
ASGNP4
ADDRLP4 20
CNSTF4 0
ASGNF4
ADDRLP4 16
INDIRP4
CNSTI4 8
ADDP4
ADDRLP4 20
INDIRF4
ASGNF4
ADDRLP4 16
INDIRP4
CNSTI4 4
ADDP4
ADDRLP4 20
INDIRF4
ASGNF4
ADDRLP4 16
INDIRP4
ADDRLP4 20
INDIRF4
ASGNF4
line 1807
;1807:		break;
ADDRGP4 $651
JUMPV
LABELV $654
line 1809
;1808:	case TR_LINEAR:
;1809:		VectorCopy( tr->trDelta, result );
ADDRFP4 8
INDIRP4
ADDRFP4 0
INDIRP4
CNSTI4 24
ADDP4
INDIRB
ASGNB 12
line 1810
;1810:		break;
ADDRGP4 $651
JUMPV
LABELV $655
line 1812
;1811:	case TR_SINE:
;1812:		deltaTime = ( atTime - tr->trTime ) / (float) tr->trDuration;
ADDRLP4 24
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 4
ADDRFP4 4
INDIRI4
ADDRLP4 24
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
SUBI4
CVIF4 4
ADDRLP4 24
INDIRP4
CNSTI4 8
ADDP4
INDIRI4
CVIF4 4
DIVF4
ASGNF4
line 1813
;1813:		phase = cos( deltaTime * M_PI * 2 );	// derivative of sin = cos
CNSTF4 1073741824
CNSTF4 1078530011
ADDRLP4 4
INDIRF4
MULF4
MULF4
ARGF4
ADDRLP4 28
ADDRGP4 cos
CALLF4
ASGNF4
ADDRLP4 0
ADDRLP4 28
INDIRF4
ASGNF4
line 1814
;1814:		phase *= 0.5;
ADDRLP4 0
CNSTF4 1056964608
ADDRLP4 0
INDIRF4
MULF4
ASGNF4
line 1815
;1815:		VectorScale( tr->trDelta, phase, result );
ADDRFP4 8
INDIRP4
ADDRFP4 0
INDIRP4
CNSTI4 24
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
MULF4
ASGNF4
ADDRFP4 8
INDIRP4
CNSTI4 4
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 28
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
MULF4
ASGNF4
ADDRFP4 8
INDIRP4
CNSTI4 8
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 32
ADDP4
INDIRF4
ADDRLP4 0
INDIRF4
MULF4
ASGNF4
line 1816
;1816:		break;
ADDRGP4 $651
JUMPV
LABELV $656
line 1818
;1817:	case TR_LINEAR_STOP:
;1818:		if ( atTime > tr->trTime + tr->trDuration ) {
ADDRLP4 32
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 4
INDIRI4
ADDRLP4 32
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
ADDRLP4 32
INDIRP4
CNSTI4 8
ADDP4
INDIRI4
ADDI4
LEI4 $657
line 1819
;1819:			VectorClear( result );
ADDRLP4 36
ADDRFP4 8
INDIRP4
ASGNP4
ADDRLP4 40
CNSTF4 0
ASGNF4
ADDRLP4 36
INDIRP4
CNSTI4 8
ADDP4
ADDRLP4 40
INDIRF4
ASGNF4
ADDRLP4 36
INDIRP4
CNSTI4 4
ADDP4
ADDRLP4 40
INDIRF4
ASGNF4
ADDRLP4 36
INDIRP4
ADDRLP4 40
INDIRF4
ASGNF4
line 1820
;1820:			return;
ADDRGP4 $649
JUMPV
LABELV $657
line 1822
;1821:		}
;1822:		VectorCopy( tr->trDelta, result );
ADDRFP4 8
INDIRP4
ADDRFP4 0
INDIRP4
CNSTI4 24
ADDP4
INDIRB
ASGNB 12
line 1823
;1823:		break;
ADDRGP4 $651
JUMPV
LABELV $659
line 1825
;1824:	case TR_GRAVITY:
;1825:		deltaTime = ( atTime - tr->trTime ) * 0.001;	// milliseconds to seconds
ADDRLP4 4
CNSTF4 981668463
ADDRFP4 4
INDIRI4
ADDRFP4 0
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
SUBI4
CVIF4 4
MULF4
ASGNF4
line 1826
;1826:		VectorCopy( tr->trDelta, result );
ADDRFP4 8
INDIRP4
ADDRFP4 0
INDIRP4
CNSTI4 24
ADDP4
INDIRB
ASGNB 12
line 1827
;1827:		result[2] -= DEFAULT_GRAVITY * deltaTime;		// FIXME: local gravity...
ADDRLP4 36
ADDRFP4 8
INDIRP4
CNSTI4 8
ADDP4
ASGNP4
ADDRLP4 36
INDIRP4
ADDRLP4 36
INDIRP4
INDIRF4
CNSTF4 1145569280
ADDRLP4 4
INDIRF4
MULF4
SUBF4
ASGNF4
line 1828
;1828:		break;
ADDRGP4 $651
JUMPV
LABELV $650
line 1830
;1829:	default:
;1830:		Com_Error( ERR_DROP, "BG_EvaluateTrajectoryDelta: unknown trType: %i", tr->trTime );
CNSTI4 1
ARGI4
ADDRGP4 $660
ARGP4
ADDRFP4 0
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
ARGI4
ADDRGP4 Com_Error
CALLV
pop
line 1831
;1831:		break;
LABELV $651
line 1833
;1832:	}
;1833:}
LABELV $649
endproc BG_EvaluateTrajectoryDelta 44 12
data
export eventnames
align 4
LABELV eventnames
address $662
address $663
address $664
address $665
address $666
address $667
address $668
address $669
address $670
address $671
address $672
address $673
address $674
address $675
address $676
address $677
address $678
address $679
address $680
address $681
address $682
address $683
address $684
address $685
address $686
address $687
address $688
address $689
address $690
address $691
address $692
address $693
address $694
address $695
address $696
address $697
address $698
address $699
address $700
address $701
address $702
address $703
address $704
address $705
address $706
address $707
address $708
address $709
address $710
address $711
address $712
address $713
address $714
address $715
address $716
address $717
address $718
address $719
address $720
address $721
address $722
address $723
address $724
address $725
address $726
address $727
address $728
address $729
address $730
address $731
address $732
address $733
address $734
address $735
address $736
address $737
address $738
address $739
address $740
address $741
address $742
address $743
address $744
address $745
address $746
address $747
address $748
address $749
address $750
address $751
address $752
address $753
address $754
address $755
address $756
address $757
address $758
address $759
address $760
address $761
address $762
address $763
address $764
address $765
address $766
address $767
address $768
address $769
address $770
address $771
export BG_AddPredictableEventToPlayerstate
code
proc BG_AddPredictableEventToPlayerstate 12 0
line 1996
;1834:
;1835:char *eventnames[] = {
;1836:	"EV_NONE",
;1837:
;1838:	"EV_CLIENTJOIN",
;1839:
;1840:	"EV_FOOTSTEP",
;1841:	"EV_FOOTSTEP_METAL",
;1842:	"EV_FOOTSPLASH",
;1843:	"EV_FOOTWADE",
;1844:	"EV_SWIM",
;1845:
;1846:	"EV_STEP_4",
;1847:	"EV_STEP_8",
;1848:	"EV_STEP_12",
;1849:	"EV_STEP_16",
;1850:
;1851:	"EV_FALL",
;1852:
;1853:	"EV_JUMP_PAD",			// boing sound at origin", jump sound on player
;1854:
;1855:	"EV_PRIVATE_DUEL",
;1856:
;1857:	"EV_JUMP",
;1858:	"EV_ROLL",
;1859:	"EV_WATER_TOUCH",	// foot touches
;1860:	"EV_WATER_LEAVE",	// foot leaves
;1861:	"EV_WATER_UNDER",	// head touches
;1862:	"EV_WATER_CLEAR",	// head leaves
;1863:
;1864:	"EV_ITEM_PICKUP",			// normal item pickups are predictable
;1865:	"EV_GLOBAL_ITEM_PICKUP",	// powerup / team sounds are broadcast to everyone
;1866:
;1867:	"EV_NOAMMO",
;1868:	"EV_CHANGE_WEAPON",
;1869:	"EV_FIRE_WEAPON",
;1870:	"EV_ALT_FIRE",
;1871:	"EV_SABER_ATTACK",
;1872:	"EV_SABER_HIT",
;1873:	"EV_SABER_BLOCK",
;1874:	"EV_SABER_UNHOLSTER",
;1875:	"EV_BECOME_JEDIMASTER",
;1876:	"EV_DISRUPTOR_MAIN_SHOT",
;1877:	"EV_DISRUPTOR_SNIPER_SHOT",
;1878:	"EV_DISRUPTOR_SNIPER_MISS",
;1879:	"EV_DISRUPTOR_HIT",
;1880:	"EV_DISRUPTOR_ZOOMSOUND",
;1881:
;1882:	"EV_PREDEFSOUND",
;1883:
;1884:	"EV_TEAM_POWER",
;1885:
;1886:	"EV_SCREENSHAKE",
;1887:
;1888:	"EV_USE",			// +Use key
;1889:
;1890:	"EV_USE_ITEM0",
;1891:	"EV_USE_ITEM1",
;1892:	"EV_USE_ITEM2",
;1893:	"EV_USE_ITEM3",
;1894:	"EV_USE_ITEM4",
;1895:	"EV_USE_ITEM5",
;1896:	"EV_USE_ITEM6",
;1897:	"EV_USE_ITEM7",
;1898:	"EV_USE_ITEM8",
;1899:	"EV_USE_ITEM9",
;1900:	"EV_USE_ITEM10",
;1901:	"EV_USE_ITEM11",
;1902:	"EV_USE_ITEM12",
;1903:	"EV_USE_ITEM13",
;1904:	"EV_USE_ITEM14",
;1905:	"EV_USE_ITEM15",
;1906:
;1907:	"EV_ITEMUSEFAIL",
;1908:
;1909:	"EV_ITEM_RESPAWN",
;1910:	"EV_ITEM_POP",
;1911:	"EV_PLAYER_TELEPORT_IN",
;1912:	"EV_PLAYER_TELEPORT_OUT",
;1913:
;1914:	"EV_GRENADE_BOUNCE",		// eventParm will be the soundindex
;1915:	"EV_MISSILE_STICK",
;1916:
;1917:	"EV_PLAY_EFFECT",
;1918:	"EV_PLAY_EFFECT_ID", //finally gave in and added it..
;1919:
;1920:	"EV_MUTE_SOUND",
;1921:	"EV_GENERAL_SOUND",
;1922:	"EV_GLOBAL_SOUND",		// no attenuation
;1923:	"EV_GLOBAL_TEAM_SOUND",
;1924:	"EV_ENTITY_SOUND",
;1925:
;1926:	"EV_PLAY_ROFF",
;1927:
;1928:	"EV_GLASS_SHATTER",
;1929:	"EV_DEBRIS",
;1930:
;1931:	"EV_MISSILE_HIT",
;1932:	"EV_MISSILE_MISS",
;1933:	"EV_MISSILE_MISS_METAL",
;1934:	"EV_BULLET",				// otherEntity is the shooter
;1935:
;1936:	"EV_PAIN",
;1937:	"EV_DEATH1",
;1938:	"EV_DEATH2",
;1939:	"EV_DEATH3",
;1940:	"EV_OBITUARY",
;1941:
;1942:	"EV_POWERUP_QUAD",
;1943:	"EV_POWERUP_BATTLESUIT",
;1944:	//"EV_POWERUP_REGEN",
;1945:
;1946:	"EV_FORCE_DRAINED",
;1947:
;1948:	"EV_GIB_PLAYER",			// gib a previously living player
;1949:	"EV_SCOREPLUM",			// score plum
;1950:
;1951:	"EV_CTFMESSAGE",
;1952:
;1953:	"EV_SAGA_ROUNDOVER",
;1954:	"EV_SAGA_OBJECTIVECOMPLETE",
;1955:
;1956:	"EV_DESTROY_GHOUL2_INSTANCE",
;1957:
;1958:	"EV_DESTROY_WEAPON_MODEL",
;1959:
;1960:	"EV_GIVE_NEW_RANK",
;1961:	"EV_SET_FREE_SABER",
;1962:	"EV_SET_FORCE_DISABLE",
;1963:
;1964:	"EV_WEAPON_CHARGE",
;1965:	"EV_WEAPON_CHARGE_ALT",
;1966:
;1967:	"EV_SHIELD_HIT",
;1968:
;1969:	"EV_DEBUG_LINE",
;1970:	"EV_TESTLINE",
;1971:	"EV_STOPLOOPINGSOUND",
;1972:	"EV_STARTLOOPINGSOUND",
;1973:	"EV_TAUNT",
;1974:
;1975:	"EV_TAUNT_YES",
;1976:	"EV_TAUNT_NO",
;1977:	"EV_TAUNT_FOLLOWME",
;1978:	"EV_TAUNT_GETFLAG",
;1979:	"EV_TAUNT_GUARDBASE",
;1980:	"EV_TAUNT_PATROL",
;1981:
;1982:	"EV_BODY_QUEUE_COPY"
;1983:
;1984:};
;1985:
;1986:/*
;1987:===============
;1988:BG_AddPredictableEventToPlayerstate
;1989:
;1990:Handles the sequence numbers
;1991:===============
;1992:*/
;1993:
;1994:void	trap_Cvar_VariableStringBuffer( const char *var_name, char *buffer, int bufsize );
;1995:
;1996:void BG_AddPredictableEventToPlayerstate( int newEvent, int eventParm, playerState_t *ps ) {
line 2011
;1997:
;1998:#ifdef _DEBUG
;1999:	{
;2000:		char buf[256];
;2001:		trap_Cvar_VariableStringBuffer("showevents", buf, sizeof(buf));
;2002:		if ( atof(buf) != 0 ) {
;2003:#ifdef QAGAME
;2004:			Com_Printf(" game event svt %5d -> %5d: num = %20s parm %d\n", ps->pmove_framecount/*ps->commandTime*/, ps->eventSequence, eventnames[newEvent], eventParm);
;2005:#else
;2006:			Com_Printf("Cgame event svt %5d -> %5d: num = %20s parm %d\n", ps->pmove_framecount/*ps->commandTime*/, ps->eventSequence, eventnames[newEvent], eventParm);
;2007:#endif
;2008:		}
;2009:	}
;2010:#endif
;2011:	ps->events[ps->eventSequence & (MAX_PS_EVENTS-1)] = newEvent;
ADDRLP4 0
ADDRFP4 8
INDIRP4
ASGNP4
ADDRLP4 0
INDIRP4
CNSTI4 112
ADDP4
INDIRI4
CNSTI4 1
BANDI4
CNSTI4 2
LSHI4
ADDRLP4 0
INDIRP4
CNSTI4 116
ADDP4
ADDP4
ADDRFP4 0
INDIRI4
ASGNI4
line 2012
;2012:	ps->eventParms[ps->eventSequence & (MAX_PS_EVENTS-1)] = eventParm;
ADDRLP4 4
ADDRFP4 8
INDIRP4
ASGNP4
ADDRLP4 4
INDIRP4
CNSTI4 112
ADDP4
INDIRI4
CNSTI4 1
BANDI4
CNSTI4 2
LSHI4
ADDRLP4 4
INDIRP4
CNSTI4 124
ADDP4
ADDP4
ADDRFP4 4
INDIRI4
ASGNI4
line 2013
;2013:	ps->eventSequence++;
ADDRLP4 8
ADDRFP4 8
INDIRP4
CNSTI4 112
ADDP4
ASGNP4
ADDRLP4 8
INDIRP4
ADDRLP4 8
INDIRP4
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 2014
;2014:}
LABELV $772
endproc BG_AddPredictableEventToPlayerstate 12 0
export BG_TouchJumpPad
proc BG_TouchJumpPad 32 8
line 2021
;2015:
;2016:/*
;2017:========================
;2018:BG_TouchJumpPad
;2019:========================
;2020:*/
;2021:void BG_TouchJumpPad( playerState_t *ps, entityState_t *jumppad ) {
line 2027
;2022:	vec3_t	angles;
;2023:	float p;
;2024:	int effectNum;
;2025:
;2026:	// spectators don't use jump pads
;2027:	if ( ps->pm_type != PM_NORMAL && ps->pm_type != PM_FLOAT ) {
ADDRLP4 20
ADDRFP4 0
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
ASGNI4
ADDRLP4 20
INDIRI4
CNSTI4 0
EQI4 $774
ADDRLP4 20
INDIRI4
CNSTI4 1
EQI4 $774
line 2028
;2028:		return;
ADDRGP4 $773
JUMPV
LABELV $774
line 2033
;2029:	}
;2030:
;2031:	// if we didn't hit this same jumppad the previous frame
;2032:	// then don't play the event sound again if we are in a fat trigger
;2033:	if ( ps->jumppad_ent != jumppad->number ) {
ADDRFP4 0
INDIRP4
CNSTI4 480
ADDP4
INDIRI4
ADDRFP4 4
INDIRP4
INDIRI4
EQI4 $776
line 2035
;2034:
;2035:		vectoangles( jumppad->origin2, angles);
ADDRFP4 4
INDIRP4
CNSTI4 104
ADDP4
ARGP4
ADDRLP4 0
ARGP4
ADDRGP4 vectoangles
CALLV
pop
line 2036
;2036:		p = fabs( AngleNormalize180( angles[PITCH] ) );
ADDRLP4 0
INDIRF4
ARGF4
ADDRLP4 24
ADDRGP4 AngleNormalize180
CALLF4
ASGNF4
ADDRLP4 24
INDIRF4
ARGF4
ADDRLP4 28
ADDRGP4 fabs
CALLF4
ASGNF4
ADDRLP4 12
ADDRLP4 28
INDIRF4
ASGNF4
line 2037
;2037:		if( p < 45 ) {
ADDRLP4 12
INDIRF4
CNSTF4 1110704128
GEF4 $778
line 2038
;2038:			effectNum = 0;
ADDRLP4 16
CNSTI4 0
ASGNI4
line 2039
;2039:		} else {
ADDRGP4 $779
JUMPV
LABELV $778
line 2040
;2040:			effectNum = 1;
ADDRLP4 16
CNSTI4 1
ASGNI4
line 2041
;2041:		}
LABELV $779
line 2042
;2042:	}
LABELV $776
line 2044
;2043:	// remember hitting this jumppad this frame
;2044:	ps->jumppad_ent = jumppad->number;
ADDRFP4 0
INDIRP4
CNSTI4 480
ADDP4
ADDRFP4 4
INDIRP4
INDIRI4
ASGNI4
line 2045
;2045:	ps->jumppad_frame = ps->pmove_framecount;
ADDRLP4 24
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 24
INDIRP4
CNSTI4 492
ADDP4
ADDRLP4 24
INDIRP4
CNSTI4 488
ADDP4
INDIRI4
ASGNI4
line 2047
;2046:	// give the player the velocity from the jumppad
;2047:	VectorCopy( jumppad->origin2, ps->velocity );
ADDRFP4 0
INDIRP4
CNSTI4 32
ADDP4
ADDRFP4 4
INDIRP4
CNSTI4 104
ADDP4
INDIRB
ASGNB 12
line 2048
;2048:}
LABELV $773
endproc BG_TouchJumpPad 32 8
export BG_PlayerStateToEntityState
proc BG_PlayerStateToEntityState 28 0
line 2058
;2049:
;2050:/*
;2051:========================
;2052:BG_PlayerStateToEntityState
;2053:
;2054:This is done after each set of usercmd_t on the server,
;2055:and after local prediction on the client
;2056:========================
;2057:*/
;2058:void BG_PlayerStateToEntityState( playerState_t *ps, entityState_t *s, qboolean snap ) {
line 2061
;2059:	int		i;
;2060:
;2061:	if ( ps->pm_type == PM_INTERMISSION || ps->pm_type == PM_SPECTATOR ) {
ADDRLP4 4
ADDRFP4 0
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
ASGNI4
ADDRLP4 4
INDIRI4
CNSTI4 6
EQI4 $783
ADDRLP4 4
INDIRI4
CNSTI4 3
NEI4 $781
LABELV $783
line 2062
;2062:		s->eType = ET_INVISIBLE;
ADDRFP4 4
INDIRP4
CNSTI4 4
ADDP4
CNSTI4 12
ASGNI4
line 2063
;2063:	} else if ( ps->stats[STAT_HEALTH] <= GIB_HEALTH ) {
ADDRGP4 $782
JUMPV
LABELV $781
ADDRFP4 0
INDIRP4
CNSTI4 216
ADDP4
INDIRI4
CNSTI4 -40
GTI4 $784
line 2064
;2064:		s->eType = ET_INVISIBLE;
ADDRFP4 4
INDIRP4
CNSTI4 4
ADDP4
CNSTI4 12
ASGNI4
line 2065
;2065:	} else {
ADDRGP4 $785
JUMPV
LABELV $784
line 2066
;2066:		s->eType = ET_PLAYER;
ADDRFP4 4
INDIRP4
CNSTI4 4
ADDP4
CNSTI4 1
ASGNI4
line 2067
;2067:	}
LABELV $785
LABELV $782
line 2069
;2068:
;2069:	s->number = ps->clientNum;
ADDRFP4 4
INDIRP4
ADDRFP4 0
INDIRP4
CNSTI4 144
ADDP4
INDIRI4
ASGNI4
line 2071
;2070:
;2071:	s->pos.trType = TR_INTERPOLATE;
ADDRFP4 4
INDIRP4
CNSTI4 12
ADDP4
CNSTI4 1
ASGNI4
line 2072
;2072:	VectorCopy( ps->origin, s->pos.trBase );
ADDRFP4 4
INDIRP4
CNSTI4 24
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 20
ADDP4
INDIRB
ASGNB 12
line 2073
;2073:	if ( snap ) {
ADDRFP4 8
INDIRI4
CNSTI4 0
EQI4 $786
line 2074
;2074:		SnapVector( s->pos.trBase );
ADDRLP4 8
ADDRFP4 4
INDIRP4
CNSTI4 24
ADDP4
ASGNP4
ADDRLP4 8
INDIRP4
ADDRLP4 8
INDIRP4
INDIRF4
CVFI4 4
CVIF4 4
ASGNF4
ADDRLP4 12
ADDRFP4 4
INDIRP4
CNSTI4 28
ADDP4
ASGNP4
ADDRLP4 12
INDIRP4
ADDRLP4 12
INDIRP4
INDIRF4
CVFI4 4
CVIF4 4
ASGNF4
ADDRLP4 16
ADDRFP4 4
INDIRP4
CNSTI4 32
ADDP4
ASGNP4
ADDRLP4 16
INDIRP4
ADDRLP4 16
INDIRP4
INDIRF4
CVFI4 4
CVIF4 4
ASGNF4
line 2075
;2075:	}
LABELV $786
line 2077
;2076:	// set the trDelta for flag direction
;2077:	VectorCopy( ps->velocity, s->pos.trDelta );
ADDRFP4 4
INDIRP4
CNSTI4 36
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 32
ADDP4
INDIRB
ASGNB 12
line 2079
;2078:
;2079:	s->apos.trType = TR_INTERPOLATE;
ADDRFP4 4
INDIRP4
CNSTI4 48
ADDP4
CNSTI4 1
ASGNI4
line 2080
;2080:	VectorCopy( ps->viewangles, s->apos.trBase );
ADDRFP4 4
INDIRP4
CNSTI4 60
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 156
ADDP4
INDIRB
ASGNB 12
line 2081
;2081:	if ( snap ) {
ADDRFP4 8
INDIRI4
CNSTI4 0
EQI4 $788
line 2082
;2082:		SnapVector( s->apos.trBase );
ADDRLP4 8
ADDRFP4 4
INDIRP4
CNSTI4 60
ADDP4
ASGNP4
ADDRLP4 8
INDIRP4
ADDRLP4 8
INDIRP4
INDIRF4
CVFI4 4
CVIF4 4
ASGNF4
ADDRLP4 12
ADDRFP4 4
INDIRP4
CNSTI4 64
ADDP4
ASGNP4
ADDRLP4 12
INDIRP4
ADDRLP4 12
INDIRP4
INDIRF4
CVFI4 4
CVIF4 4
ASGNF4
ADDRLP4 16
ADDRFP4 4
INDIRP4
CNSTI4 68
ADDP4
ASGNP4
ADDRLP4 16
INDIRP4
ADDRLP4 16
INDIRP4
INDIRF4
CVFI4 4
CVIF4 4
ASGNF4
line 2083
;2083:	}
LABELV $788
line 2085
;2084:
;2085:	s->trickedentindex = ps->fd.forceMindtrickTargetIndex;
ADDRFP4 4
INDIRP4
CNSTI4 148
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1156
ADDP4
INDIRI4
ASGNI4
line 2086
;2086:	s->trickedentindex2 = ps->fd.forceMindtrickTargetIndex2;
ADDRFP4 4
INDIRP4
CNSTI4 152
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1160
ADDP4
INDIRI4
ASGNI4
line 2087
;2087:	s->trickedentindex3 = ps->fd.forceMindtrickTargetIndex3;
ADDRFP4 4
INDIRP4
CNSTI4 156
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1164
ADDP4
INDIRI4
ASGNI4
line 2088
;2088:	s->trickedentindex4 = ps->fd.forceMindtrickTargetIndex4;
ADDRFP4 4
INDIRP4
CNSTI4 160
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1168
ADDP4
INDIRI4
ASGNI4
line 2090
;2089:
;2090:	s->forceFrame = ps->saberLockFrame;
ADDRFP4 4
INDIRP4
CNSTI4 288
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 532
ADDP4
INDIRI4
ASGNI4
line 2092
;2091:
;2092:	s->emplacedOwner = ps->electrifyTime;
ADDRFP4 4
INDIRP4
CNSTI4 180
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 740
ADDP4
INDIRI4
ASGNI4
line 2094
;2093:
;2094:	s->speed = ps->speed;
ADDRFP4 4
INDIRP4
CNSTI4 164
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 60
ADDP4
INDIRI4
CVIF4 4
ASGNF4
line 2096
;2095:
;2096:	s->genericenemyindex = ps->genericEnemyIndex;
ADDRFP4 4
INDIRP4
CNSTI4 172
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 624
ADDP4
INDIRI4
ASGNI4
line 2098
;2097:
;2098:	s->activeForcePass = ps->activeForcePass;
ADDRFP4 4
INDIRP4
CNSTI4 176
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 636
ADDP4
INDIRI4
ASGNI4
line 2100
;2099:
;2100:	s->angles2[YAW] = ps->movementDir;
ADDRFP4 4
INDIRP4
CNSTI4 132
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 104
ADDP4
INDIRI4
CVIF4 4
ASGNF4
line 2101
;2101:	s->legsAnim = ps->legsAnim;
ADDRFP4 4
INDIRP4
CNSTI4 280
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 92
ADDP4
INDIRI4
ASGNI4
line 2102
;2102:	s->torsoAnim = ps->torsoAnim;
ADDRFP4 4
INDIRP4
CNSTI4 284
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 100
ADDP4
INDIRI4
ASGNI4
line 2103
;2103:	s->clientNum = ps->clientNum;		// ET_PLAYER looks here instead of at number
ADDRFP4 4
INDIRP4
CNSTI4 220
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 144
ADDP4
INDIRI4
ASGNI4
line 2105
;2104:										// so corpses can also reference the proper config
;2105:	s->eFlags = ps->eFlags;
ADDRFP4 4
INDIRP4
CNSTI4 8
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 108
ADDP4
INDIRI4
ASGNI4
line 2107
;2106:
;2107:	s->saberInFlight = ps->saberInFlight;
ADDRFP4 4
INDIRP4
CNSTI4 228
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 504
ADDP4
INDIRI4
ASGNI4
line 2108
;2108:	s->saberEntityNum = ps->saberEntityNum;
ADDRFP4 4
INDIRP4
CNSTI4 232
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 544
ADDP4
INDIRI4
ASGNI4
line 2109
;2109:	s->saberMove = ps->saberMove;
ADDRFP4 4
INDIRP4
CNSTI4 236
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 512
ADDP4
INDIRI4
ASGNI4
line 2110
;2110:	s->forcePowersActive = ps->fd.forcePowersActive;
ADDRFP4 4
INDIRP4
CNSTI4 240
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 848
ADDP4
INDIRI4
ASGNI4
line 2112
;2111:
;2112:	if (ps->duelInProgress)
ADDRFP4 0
INDIRP4
CNSTI4 1304
ADDP4
INDIRI4
CNSTI4 0
EQI4 $790
line 2113
;2113:	{
line 2114
;2114:		s->bolt1 = 1;
ADDRFP4 4
INDIRP4
CNSTI4 140
ADDP4
CNSTI4 1
ASGNI4
line 2115
;2115:	}
ADDRGP4 $791
JUMPV
LABELV $790
line 2117
;2116:	else
;2117:	{
line 2118
;2118:		s->bolt1 = 0;
ADDRFP4 4
INDIRP4
CNSTI4 140
ADDP4
CNSTI4 0
ASGNI4
line 2119
;2119:	}
LABELV $791
line 2121
;2120:
;2121:	if (ps->dualBlade)
ADDRFP4 0
INDIRP4
CNSTI4 1364
ADDP4
INDIRI4
CNSTI4 0
EQI4 $792
line 2122
;2122:	{
line 2123
;2123:		s->bolt2 = 1;
ADDRFP4 4
INDIRP4
CNSTI4 144
ADDP4
CNSTI4 1
ASGNI4
line 2124
;2124:	}
ADDRGP4 $793
JUMPV
LABELV $792
line 2126
;2125:	else
;2126:	{
line 2127
;2127:		s->bolt2 = 0;
ADDRFP4 4
INDIRP4
CNSTI4 144
ADDP4
CNSTI4 0
ASGNI4
line 2128
;2128:	}
LABELV $793
line 2130
;2129:
;2130:	s->otherEntityNum2 = ps->emplacedIndex;
ADDRFP4 4
INDIRP4
CNSTI4 188
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 596
ADDP4
INDIRI4
ASGNI4
line 2132
;2131:
;2132:	s->shouldtarget = ps->saberHolstered; //reuse bool in entitystate for players differently
ADDRFP4 4
INDIRP4
CNSTI4 268
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1312
ADDP4
INDIRI4
ASGNI4
line 2133
;2133:	s->teamowner = ps->usingATST;
ADDRFP4 4
INDIRP4
CNSTI4 264
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1316
ADDP4
INDIRI4
ASGNI4
line 2135
;2134:
;2135:	if (ps->genericEnemyIndex != -1)
ADDRFP4 0
INDIRP4
CNSTI4 624
ADDP4
INDIRI4
CNSTI4 -1
EQI4 $794
line 2136
;2136:	{
line 2137
;2137:		s->eFlags |= EF_SEEKERDRONE;
ADDRLP4 8
ADDRFP4 4
INDIRP4
CNSTI4 8
ADDP4
ASGNP4
ADDRLP4 8
INDIRP4
ADDRLP4 8
INDIRP4
INDIRI4
CNSTI4 1048576
BORI4
ASGNI4
line 2138
;2138:	}
LABELV $794
line 2140
;2139:
;2140:	if ( ps->stats[STAT_HEALTH] <= 0 ) {
ADDRFP4 0
INDIRP4
CNSTI4 216
ADDP4
INDIRI4
CNSTI4 0
GTI4 $796
line 2141
;2141:		s->eFlags |= EF_DEAD;
ADDRLP4 8
ADDRFP4 4
INDIRP4
CNSTI4 8
ADDP4
ASGNP4
ADDRLP4 8
INDIRP4
ADDRLP4 8
INDIRP4
INDIRI4
CNSTI4 1
BORI4
ASGNI4
line 2142
;2142:	} else {
ADDRGP4 $797
JUMPV
LABELV $796
line 2143
;2143:		s->eFlags &= ~EF_DEAD;
ADDRLP4 8
ADDRFP4 4
INDIRP4
CNSTI4 8
ADDP4
ASGNP4
ADDRLP4 8
INDIRP4
ADDRLP4 8
INDIRP4
INDIRI4
CNSTI4 -2
BANDI4
ASGNI4
line 2144
;2144:	}
LABELV $797
line 2146
;2145:
;2146:	if ( ps->externalEvent ) {
ADDRFP4 0
INDIRP4
CNSTI4 132
ADDP4
INDIRI4
CNSTI4 0
EQI4 $798
line 2147
;2147:		s->event = ps->externalEvent;
ADDRFP4 4
INDIRP4
CNSTI4 252
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 132
ADDP4
INDIRI4
ASGNI4
line 2148
;2148:		s->eventParm = ps->externalEventParm;
ADDRFP4 4
INDIRP4
CNSTI4 256
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 136
ADDP4
INDIRI4
ASGNI4
line 2149
;2149:	} else if ( ps->entityEventSequence < ps->eventSequence ) {
ADDRGP4 $799
JUMPV
LABELV $798
ADDRLP4 8
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 8
INDIRP4
CNSTI4 496
ADDP4
INDIRI4
ADDRLP4 8
INDIRP4
CNSTI4 112
ADDP4
INDIRI4
GEI4 $800
line 2152
;2150:		int		seq;
;2151:
;2152:		if ( ps->entityEventSequence < ps->eventSequence - MAX_PS_EVENTS) {
ADDRLP4 16
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 16
INDIRP4
CNSTI4 496
ADDP4
INDIRI4
ADDRLP4 16
INDIRP4
CNSTI4 112
ADDP4
INDIRI4
CNSTI4 2
SUBI4
GEI4 $802
line 2153
;2153:			ps->entityEventSequence = ps->eventSequence - MAX_PS_EVENTS;
ADDRLP4 20
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 20
INDIRP4
CNSTI4 496
ADDP4
ADDRLP4 20
INDIRP4
CNSTI4 112
ADDP4
INDIRI4
CNSTI4 2
SUBI4
ASGNI4
line 2154
;2154:		}
LABELV $802
line 2155
;2155:		seq = ps->entityEventSequence & (MAX_PS_EVENTS-1);
ADDRLP4 12
ADDRFP4 0
INDIRP4
CNSTI4 496
ADDP4
INDIRI4
CNSTI4 1
BANDI4
ASGNI4
line 2156
;2156:		s->event = ps->events[ seq ] | ( ( ps->entityEventSequence & 3 ) << 8 );
ADDRLP4 20
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 4
INDIRP4
CNSTI4 252
ADDP4
ADDRLP4 12
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 20
INDIRP4
CNSTI4 116
ADDP4
ADDP4
INDIRI4
ADDRLP4 20
INDIRP4
CNSTI4 496
ADDP4
INDIRI4
CNSTI4 3
BANDI4
CNSTI4 8
LSHI4
BORI4
ASGNI4
line 2157
;2157:		s->eventParm = ps->eventParms[ seq ];
ADDRFP4 4
INDIRP4
CNSTI4 256
ADDP4
ADDRLP4 12
INDIRI4
CNSTI4 2
LSHI4
ADDRFP4 0
INDIRP4
CNSTI4 124
ADDP4
ADDP4
INDIRI4
ASGNI4
line 2158
;2158:		ps->entityEventSequence++;
ADDRLP4 24
ADDRFP4 0
INDIRP4
CNSTI4 496
ADDP4
ASGNP4
ADDRLP4 24
INDIRP4
ADDRLP4 24
INDIRP4
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 2159
;2159:	}
LABELV $800
LABELV $799
line 2162
;2160:
;2161:
;2162:	s->weapon = ps->weapon;
ADDRFP4 4
INDIRP4
CNSTI4 276
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 148
ADDP4
INDIRI4
ASGNI4
line 2163
;2163:	s->groundEntityNum = ps->groundEntityNum;
ADDRFP4 4
INDIRP4
CNSTI4 192
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 84
ADDP4
INDIRI4
ASGNI4
line 2165
;2164:
;2165:	s->powerups = 0;
ADDRFP4 4
INDIRP4
CNSTI4 272
ADDP4
CNSTI4 0
ASGNI4
line 2166
;2166:	for ( i = 0 ; i < MAX_POWERUPS ; i++ ) {
ADDRLP4 0
CNSTI4 0
ASGNI4
LABELV $804
line 2167
;2167:		if ( ps->powerups[ i ] ) {
ADDRLP4 0
INDIRI4
CNSTI4 2
LSHI4
ADDRFP4 0
INDIRP4
CNSTI4 344
ADDP4
ADDP4
INDIRI4
CNSTI4 0
EQI4 $808
line 2168
;2168:			s->powerups |= 1 << i;
ADDRLP4 12
ADDRFP4 4
INDIRP4
CNSTI4 272
ADDP4
ASGNP4
ADDRLP4 12
INDIRP4
ADDRLP4 12
INDIRP4
INDIRI4
CNSTI4 1
ADDRLP4 0
INDIRI4
LSHI4
BORI4
ASGNI4
line 2169
;2169:		}
LABELV $808
line 2170
;2170:	}
LABELV $805
line 2166
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
ADDRLP4 0
INDIRI4
CNSTI4 16
LTI4 $804
line 2172
;2171:
;2172:	s->loopSound = ps->loopSound;
ADDRFP4 4
INDIRP4
CNSTI4 200
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 476
ADDP4
INDIRI4
ASGNI4
line 2173
;2173:	s->generic1 = ps->generic1;
ADDRFP4 4
INDIRP4
CNSTI4 292
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 472
ADDP4
INDIRI4
ASGNI4
line 2176
;2174:
;2175:	//NOT INCLUDED IN ENTITYSTATETOPLAYERSTATE:
;2176:	s->modelindex2 = ps->weaponstate;
ADDRFP4 4
INDIRP4
CNSTI4 216
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 152
ADDP4
INDIRI4
ASGNI4
line 2177
;2177:	s->constantLight = ps->weaponChargeTime;
ADDRFP4 4
INDIRP4
CNSTI4 196
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 48
ADDP4
INDIRI4
ASGNI4
line 2179
;2178:
;2179:	VectorCopy(ps->lastHitLoc, s->origin2);
ADDRFP4 4
INDIRP4
CNSTI4 104
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1368
ADDP4
INDIRB
ASGNB 12
line 2181
;2180:
;2181:	s->isJediMaster = ps->isJediMaster;
ADDRFP4 4
INDIRP4
CNSTI4 244
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 604
ADDP4
INDIRI4
ASGNI4
line 2183
;2182:
;2183:	s->time2 = ps->holocronBits;
ADDRFP4 4
INDIRP4
CNSTI4 88
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 652
ADDP4
INDIRI4
ASGNI4
line 2185
;2184:
;2185:	s->fireflag = ps->fd.saberAnimLevel;
ADDRFP4 4
INDIRP4
CNSTI4 168
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1228
ADDP4
INDIRI4
ASGNI4
line 2193
;2186:
;2187:   // adnan
;2188:   /*
;2189:   for(i = 0; i < 18; i++) {
;2190:      s->tieFloats[i] = ps->tieFloats[i];
;2191:   }
;2192:   */
;2193:}
LABELV $780
endproc BG_PlayerStateToEntityState 28 0
export BG_PlayerStateToEntityStateExtraPolate
proc BG_PlayerStateToEntityStateExtraPolate 28 0
line 2203
;2194:
;2195:/*
;2196:========================
;2197:BG_PlayerStateToEntityStateExtraPolate
;2198:
;2199:This is done after each set of usercmd_t on the server,
;2200:and after local prediction on the client
;2201:========================
;2202:*/
;2203:void BG_PlayerStateToEntityStateExtraPolate( playerState_t *ps, entityState_t *s, int time, qboolean snap ) {
line 2206
;2204:	int		i;
;2205:
;2206:	if ( ps->pm_type == PM_INTERMISSION || ps->pm_type == PM_SPECTATOR ) {
ADDRLP4 4
ADDRFP4 0
INDIRP4
CNSTI4 4
ADDP4
INDIRI4
ASGNI4
ADDRLP4 4
INDIRI4
CNSTI4 6
EQI4 $813
ADDRLP4 4
INDIRI4
CNSTI4 3
NEI4 $811
LABELV $813
line 2207
;2207:		s->eType = ET_INVISIBLE;
ADDRFP4 4
INDIRP4
CNSTI4 4
ADDP4
CNSTI4 12
ASGNI4
line 2208
;2208:	} else if ( ps->stats[STAT_HEALTH] <= GIB_HEALTH ) {
ADDRGP4 $812
JUMPV
LABELV $811
ADDRFP4 0
INDIRP4
CNSTI4 216
ADDP4
INDIRI4
CNSTI4 -40
GTI4 $814
line 2209
;2209:		s->eType = ET_INVISIBLE;
ADDRFP4 4
INDIRP4
CNSTI4 4
ADDP4
CNSTI4 12
ASGNI4
line 2210
;2210:	} else {
ADDRGP4 $815
JUMPV
LABELV $814
line 2211
;2211:		s->eType = ET_PLAYER;
ADDRFP4 4
INDIRP4
CNSTI4 4
ADDP4
CNSTI4 1
ASGNI4
line 2212
;2212:	}
LABELV $815
LABELV $812
line 2214
;2213:
;2214:	s->number = ps->clientNum;
ADDRFP4 4
INDIRP4
ADDRFP4 0
INDIRP4
CNSTI4 144
ADDP4
INDIRI4
ASGNI4
line 2216
;2215:
;2216:	s->pos.trType = TR_LINEAR_STOP;
ADDRFP4 4
INDIRP4
CNSTI4 12
ADDP4
CNSTI4 3
ASGNI4
line 2217
;2217:	VectorCopy( ps->origin, s->pos.trBase );
ADDRFP4 4
INDIRP4
CNSTI4 24
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 20
ADDP4
INDIRB
ASGNB 12
line 2218
;2218:	if ( snap ) {
ADDRFP4 12
INDIRI4
CNSTI4 0
EQI4 $816
line 2219
;2219:		SnapVector( s->pos.trBase );
ADDRLP4 8
ADDRFP4 4
INDIRP4
CNSTI4 24
ADDP4
ASGNP4
ADDRLP4 8
INDIRP4
ADDRLP4 8
INDIRP4
INDIRF4
CVFI4 4
CVIF4 4
ASGNF4
ADDRLP4 12
ADDRFP4 4
INDIRP4
CNSTI4 28
ADDP4
ASGNP4
ADDRLP4 12
INDIRP4
ADDRLP4 12
INDIRP4
INDIRF4
CVFI4 4
CVIF4 4
ASGNF4
ADDRLP4 16
ADDRFP4 4
INDIRP4
CNSTI4 32
ADDP4
ASGNP4
ADDRLP4 16
INDIRP4
ADDRLP4 16
INDIRP4
INDIRF4
CVFI4 4
CVIF4 4
ASGNF4
line 2220
;2220:	}
LABELV $816
line 2222
;2221:	// set the trDelta for flag direction and linear prediction
;2222:	VectorCopy( ps->velocity, s->pos.trDelta );
ADDRFP4 4
INDIRP4
CNSTI4 36
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 32
ADDP4
INDIRB
ASGNB 12
line 2224
;2223:	// set the time for linear prediction
;2224:	s->pos.trTime = time;
ADDRFP4 4
INDIRP4
CNSTI4 16
ADDP4
ADDRFP4 8
INDIRI4
ASGNI4
line 2226
;2225:	// set maximum extra polation time
;2226:	s->pos.trDuration = 50; // 1000 / sv_fps (default = 20)
ADDRFP4 4
INDIRP4
CNSTI4 20
ADDP4
CNSTI4 50
ASGNI4
line 2228
;2227:
;2228:	s->apos.trType = TR_INTERPOLATE;
ADDRFP4 4
INDIRP4
CNSTI4 48
ADDP4
CNSTI4 1
ASGNI4
line 2229
;2229:	VectorCopy( ps->viewangles, s->apos.trBase );
ADDRFP4 4
INDIRP4
CNSTI4 60
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 156
ADDP4
INDIRB
ASGNB 12
line 2230
;2230:	if ( snap ) {
ADDRFP4 12
INDIRI4
CNSTI4 0
EQI4 $818
line 2231
;2231:		SnapVector( s->apos.trBase );
ADDRLP4 8
ADDRFP4 4
INDIRP4
CNSTI4 60
ADDP4
ASGNP4
ADDRLP4 8
INDIRP4
ADDRLP4 8
INDIRP4
INDIRF4
CVFI4 4
CVIF4 4
ASGNF4
ADDRLP4 12
ADDRFP4 4
INDIRP4
CNSTI4 64
ADDP4
ASGNP4
ADDRLP4 12
INDIRP4
ADDRLP4 12
INDIRP4
INDIRF4
CVFI4 4
CVIF4 4
ASGNF4
ADDRLP4 16
ADDRFP4 4
INDIRP4
CNSTI4 68
ADDP4
ASGNP4
ADDRLP4 16
INDIRP4
ADDRLP4 16
INDIRP4
INDIRF4
CVFI4 4
CVIF4 4
ASGNF4
line 2232
;2232:	}
LABELV $818
line 2234
;2233:
;2234:	s->trickedentindex = ps->fd.forceMindtrickTargetIndex;
ADDRFP4 4
INDIRP4
CNSTI4 148
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1156
ADDP4
INDIRI4
ASGNI4
line 2235
;2235:	s->trickedentindex2 = ps->fd.forceMindtrickTargetIndex2;
ADDRFP4 4
INDIRP4
CNSTI4 152
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1160
ADDP4
INDIRI4
ASGNI4
line 2236
;2236:	s->trickedentindex3 = ps->fd.forceMindtrickTargetIndex3;
ADDRFP4 4
INDIRP4
CNSTI4 156
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1164
ADDP4
INDIRI4
ASGNI4
line 2237
;2237:	s->trickedentindex4 = ps->fd.forceMindtrickTargetIndex4;
ADDRFP4 4
INDIRP4
CNSTI4 160
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1168
ADDP4
INDIRI4
ASGNI4
line 2239
;2238:
;2239:	s->forceFrame = ps->saberLockFrame;
ADDRFP4 4
INDIRP4
CNSTI4 288
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 532
ADDP4
INDIRI4
ASGNI4
line 2241
;2240:
;2241:	s->emplacedOwner = ps->electrifyTime;
ADDRFP4 4
INDIRP4
CNSTI4 180
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 740
ADDP4
INDIRI4
ASGNI4
line 2243
;2242:
;2243:	s->speed = ps->speed;
ADDRFP4 4
INDIRP4
CNSTI4 164
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 60
ADDP4
INDIRI4
CVIF4 4
ASGNF4
line 2245
;2244:
;2245:	s->genericenemyindex = ps->genericEnemyIndex;
ADDRFP4 4
INDIRP4
CNSTI4 172
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 624
ADDP4
INDIRI4
ASGNI4
line 2247
;2246:
;2247:	s->activeForcePass = ps->activeForcePass;
ADDRFP4 4
INDIRP4
CNSTI4 176
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 636
ADDP4
INDIRI4
ASGNI4
line 2249
;2248:
;2249:	s->angles2[YAW] = ps->movementDir;
ADDRFP4 4
INDIRP4
CNSTI4 132
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 104
ADDP4
INDIRI4
CVIF4 4
ASGNF4
line 2250
;2250:	s->legsAnim = ps->legsAnim;
ADDRFP4 4
INDIRP4
CNSTI4 280
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 92
ADDP4
INDIRI4
ASGNI4
line 2251
;2251:	s->torsoAnim = ps->torsoAnim;
ADDRFP4 4
INDIRP4
CNSTI4 284
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 100
ADDP4
INDIRI4
ASGNI4
line 2252
;2252:	s->clientNum = ps->clientNum;		// ET_PLAYER looks here instead of at number
ADDRFP4 4
INDIRP4
CNSTI4 220
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 144
ADDP4
INDIRI4
ASGNI4
line 2254
;2253:										// so corpses can also reference the proper config
;2254:	s->eFlags = ps->eFlags;
ADDRFP4 4
INDIRP4
CNSTI4 8
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 108
ADDP4
INDIRI4
ASGNI4
line 2256
;2255:
;2256:	s->saberInFlight = ps->saberInFlight;
ADDRFP4 4
INDIRP4
CNSTI4 228
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 504
ADDP4
INDIRI4
ASGNI4
line 2257
;2257:	s->saberEntityNum = ps->saberEntityNum;
ADDRFP4 4
INDIRP4
CNSTI4 232
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 544
ADDP4
INDIRI4
ASGNI4
line 2258
;2258:	s->saberMove = ps->saberMove;
ADDRFP4 4
INDIRP4
CNSTI4 236
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 512
ADDP4
INDIRI4
ASGNI4
line 2259
;2259:	s->forcePowersActive = ps->fd.forcePowersActive;
ADDRFP4 4
INDIRP4
CNSTI4 240
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 848
ADDP4
INDIRI4
ASGNI4
line 2261
;2260:
;2261:	if (ps->duelInProgress)
ADDRFP4 0
INDIRP4
CNSTI4 1304
ADDP4
INDIRI4
CNSTI4 0
EQI4 $820
line 2262
;2262:	{
line 2263
;2263:		s->bolt1 = 1;
ADDRFP4 4
INDIRP4
CNSTI4 140
ADDP4
CNSTI4 1
ASGNI4
line 2264
;2264:	}
ADDRGP4 $821
JUMPV
LABELV $820
line 2266
;2265:	else
;2266:	{
line 2267
;2267:		s->bolt1 = 0;
ADDRFP4 4
INDIRP4
CNSTI4 140
ADDP4
CNSTI4 0
ASGNI4
line 2268
;2268:	}
LABELV $821
line 2270
;2269:
;2270:	if (ps->dualBlade)
ADDRFP4 0
INDIRP4
CNSTI4 1364
ADDP4
INDIRI4
CNSTI4 0
EQI4 $822
line 2271
;2271:	{
line 2272
;2272:		s->bolt2 = 1;
ADDRFP4 4
INDIRP4
CNSTI4 144
ADDP4
CNSTI4 1
ASGNI4
line 2273
;2273:	}
ADDRGP4 $823
JUMPV
LABELV $822
line 2275
;2274:	else
;2275:	{
line 2276
;2276:		s->bolt2 = 0;
ADDRFP4 4
INDIRP4
CNSTI4 144
ADDP4
CNSTI4 0
ASGNI4
line 2277
;2277:	}
LABELV $823
line 2279
;2278:
;2279:	s->otherEntityNum2 = ps->emplacedIndex;
ADDRFP4 4
INDIRP4
CNSTI4 188
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 596
ADDP4
INDIRI4
ASGNI4
line 2281
;2280:
;2281:	s->shouldtarget = ps->saberHolstered; //reuse bool in entitystate for players differently
ADDRFP4 4
INDIRP4
CNSTI4 268
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1312
ADDP4
INDIRI4
ASGNI4
line 2282
;2282:	s->teamowner = ps->usingATST;
ADDRFP4 4
INDIRP4
CNSTI4 264
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1316
ADDP4
INDIRI4
ASGNI4
line 2284
;2283:
;2284:	if (ps->genericEnemyIndex != -1)
ADDRFP4 0
INDIRP4
CNSTI4 624
ADDP4
INDIRI4
CNSTI4 -1
EQI4 $824
line 2285
;2285:	{
line 2286
;2286:		s->eFlags |= EF_SEEKERDRONE;
ADDRLP4 8
ADDRFP4 4
INDIRP4
CNSTI4 8
ADDP4
ASGNP4
ADDRLP4 8
INDIRP4
ADDRLP4 8
INDIRP4
INDIRI4
CNSTI4 1048576
BORI4
ASGNI4
line 2287
;2287:	}
LABELV $824
line 2289
;2288:
;2289:	if ( ps->stats[STAT_HEALTH] <= 0 ) {
ADDRFP4 0
INDIRP4
CNSTI4 216
ADDP4
INDIRI4
CNSTI4 0
GTI4 $826
line 2290
;2290:		s->eFlags |= EF_DEAD;
ADDRLP4 8
ADDRFP4 4
INDIRP4
CNSTI4 8
ADDP4
ASGNP4
ADDRLP4 8
INDIRP4
ADDRLP4 8
INDIRP4
INDIRI4
CNSTI4 1
BORI4
ASGNI4
line 2291
;2291:	} else {
ADDRGP4 $827
JUMPV
LABELV $826
line 2292
;2292:		s->eFlags &= ~EF_DEAD;
ADDRLP4 8
ADDRFP4 4
INDIRP4
CNSTI4 8
ADDP4
ASGNP4
ADDRLP4 8
INDIRP4
ADDRLP4 8
INDIRP4
INDIRI4
CNSTI4 -2
BANDI4
ASGNI4
line 2293
;2293:	}
LABELV $827
line 2295
;2294:
;2295:	if ( ps->externalEvent ) {
ADDRFP4 0
INDIRP4
CNSTI4 132
ADDP4
INDIRI4
CNSTI4 0
EQI4 $828
line 2296
;2296:		s->event = ps->externalEvent;
ADDRFP4 4
INDIRP4
CNSTI4 252
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 132
ADDP4
INDIRI4
ASGNI4
line 2297
;2297:		s->eventParm = ps->externalEventParm;
ADDRFP4 4
INDIRP4
CNSTI4 256
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 136
ADDP4
INDIRI4
ASGNI4
line 2298
;2298:	} else if ( ps->entityEventSequence < ps->eventSequence ) {
ADDRGP4 $829
JUMPV
LABELV $828
ADDRLP4 8
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 8
INDIRP4
CNSTI4 496
ADDP4
INDIRI4
ADDRLP4 8
INDIRP4
CNSTI4 112
ADDP4
INDIRI4
GEI4 $830
line 2301
;2299:		int		seq;
;2300:
;2301:		if ( ps->entityEventSequence < ps->eventSequence - MAX_PS_EVENTS) {
ADDRLP4 16
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 16
INDIRP4
CNSTI4 496
ADDP4
INDIRI4
ADDRLP4 16
INDIRP4
CNSTI4 112
ADDP4
INDIRI4
CNSTI4 2
SUBI4
GEI4 $832
line 2302
;2302:			ps->entityEventSequence = ps->eventSequence - MAX_PS_EVENTS;
ADDRLP4 20
ADDRFP4 0
INDIRP4
ASGNP4
ADDRLP4 20
INDIRP4
CNSTI4 496
ADDP4
ADDRLP4 20
INDIRP4
CNSTI4 112
ADDP4
INDIRI4
CNSTI4 2
SUBI4
ASGNI4
line 2303
;2303:		}
LABELV $832
line 2304
;2304:		seq = ps->entityEventSequence & (MAX_PS_EVENTS-1);
ADDRLP4 12
ADDRFP4 0
INDIRP4
CNSTI4 496
ADDP4
INDIRI4
CNSTI4 1
BANDI4
ASGNI4
line 2305
;2305:		s->event = ps->events[ seq ] | ( ( ps->entityEventSequence & 3 ) << 8 );
ADDRLP4 20
ADDRFP4 0
INDIRP4
ASGNP4
ADDRFP4 4
INDIRP4
CNSTI4 252
ADDP4
ADDRLP4 12
INDIRI4
CNSTI4 2
LSHI4
ADDRLP4 20
INDIRP4
CNSTI4 116
ADDP4
ADDP4
INDIRI4
ADDRLP4 20
INDIRP4
CNSTI4 496
ADDP4
INDIRI4
CNSTI4 3
BANDI4
CNSTI4 8
LSHI4
BORI4
ASGNI4
line 2306
;2306:		s->eventParm = ps->eventParms[ seq ];
ADDRFP4 4
INDIRP4
CNSTI4 256
ADDP4
ADDRLP4 12
INDIRI4
CNSTI4 2
LSHI4
ADDRFP4 0
INDIRP4
CNSTI4 124
ADDP4
ADDP4
INDIRI4
ASGNI4
line 2307
;2307:		ps->entityEventSequence++;
ADDRLP4 24
ADDRFP4 0
INDIRP4
CNSTI4 496
ADDP4
ASGNP4
ADDRLP4 24
INDIRP4
ADDRLP4 24
INDIRP4
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
line 2308
;2308:	}
LABELV $830
LABELV $829
line 2309
;2309:	s->weapon = ps->weapon;
ADDRFP4 4
INDIRP4
CNSTI4 276
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 148
ADDP4
INDIRI4
ASGNI4
line 2310
;2310:	s->groundEntityNum = ps->groundEntityNum;
ADDRFP4 4
INDIRP4
CNSTI4 192
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 84
ADDP4
INDIRI4
ASGNI4
line 2312
;2311:
;2312:	s->powerups = 0;
ADDRFP4 4
INDIRP4
CNSTI4 272
ADDP4
CNSTI4 0
ASGNI4
line 2313
;2313:	for ( i = 0 ; i < MAX_POWERUPS ; i++ ) {
ADDRLP4 0
CNSTI4 0
ASGNI4
LABELV $834
line 2314
;2314:		if ( ps->powerups[ i ] ) {
ADDRLP4 0
INDIRI4
CNSTI4 2
LSHI4
ADDRFP4 0
INDIRP4
CNSTI4 344
ADDP4
ADDP4
INDIRI4
CNSTI4 0
EQI4 $838
line 2315
;2315:			s->powerups |= 1 << i;
ADDRLP4 12
ADDRFP4 4
INDIRP4
CNSTI4 272
ADDP4
ASGNP4
ADDRLP4 12
INDIRP4
ADDRLP4 12
INDIRP4
INDIRI4
CNSTI4 1
ADDRLP4 0
INDIRI4
LSHI4
BORI4
ASGNI4
line 2316
;2316:		}
LABELV $838
line 2317
;2317:	}
LABELV $835
line 2313
ADDRLP4 0
ADDRLP4 0
INDIRI4
CNSTI4 1
ADDI4
ASGNI4
ADDRLP4 0
INDIRI4
CNSTI4 16
LTI4 $834
line 2319
;2318:
;2319:	s->loopSound = ps->loopSound;
ADDRFP4 4
INDIRP4
CNSTI4 200
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 476
ADDP4
INDIRI4
ASGNI4
line 2320
;2320:	s->generic1 = ps->generic1;
ADDRFP4 4
INDIRP4
CNSTI4 292
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 472
ADDP4
INDIRI4
ASGNI4
line 2323
;2321:
;2322:	//NOT INCLUDED IN ENTITYSTATETOPLAYERSTATE:
;2323:	s->modelindex2 = ps->weaponstate;
ADDRFP4 4
INDIRP4
CNSTI4 216
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 152
ADDP4
INDIRI4
ASGNI4
line 2324
;2324:	s->constantLight = ps->weaponChargeTime;
ADDRFP4 4
INDIRP4
CNSTI4 196
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 48
ADDP4
INDIRI4
ASGNI4
line 2326
;2325:
;2326:	VectorCopy(ps->lastHitLoc, s->origin2);
ADDRFP4 4
INDIRP4
CNSTI4 104
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1368
ADDP4
INDIRB
ASGNB 12
line 2328
;2327:
;2328:	s->isJediMaster = ps->isJediMaster;
ADDRFP4 4
INDIRP4
CNSTI4 244
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 604
ADDP4
INDIRI4
ASGNI4
line 2330
;2329:
;2330:	s->time2 = ps->holocronBits;
ADDRFP4 4
INDIRP4
CNSTI4 88
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 652
ADDP4
INDIRI4
ASGNI4
line 2332
;2331:
;2332:	s->fireflag = ps->fd.saberAnimLevel;
ADDRFP4 4
INDIRP4
CNSTI4 168
ADDP4
ADDRFP4 0
INDIRP4
CNSTI4 1228
ADDP4
INDIRI4
ASGNI4
line 2340
;2333:
;2334:   // adnan
;2335:   /*
;2336:   for(i = 0; i < 18; i++) {
;2337:      s->tieFloats[i] = ps->tieFloats[i];
;2338:   }
;2339:   */
;2340:}
LABELV $810
endproc BG_PlayerStateToEntityStateExtraPolate 28 0
data
align 4
LABELV bg_poolSize
byte 4 0
align 4
LABELV bg_poolTail
byte 4 2048000
export BG_Alloc
code
proc BG_Alloc 8 16
line 2356
;2341:
;2342:/*
;2343:=============================================================================
;2344:
;2345:PLAYER ANGLES
;2346:
;2347:=============================================================================
;2348:*/
;2349:#define MAX_POOL_SIZE	2048000 //1024000
;2350:
;2351:static char		bg_pool[MAX_POOL_SIZE];
;2352:static int		bg_poolSize = 0;
;2353:static int		bg_poolTail = MAX_POOL_SIZE;
;2354:
;2355:void *BG_Alloc ( int size )
;2356:{
line 2357
;2357:	bg_poolSize = ((bg_poolSize + 0x00000003) & 0xfffffffc);
ADDRLP4 0
ADDRGP4 bg_poolSize
ASGNP4
ADDRLP4 0
INDIRP4
ADDRLP4 0
INDIRP4
INDIRI4
CNSTI4 3
ADDI4
CVIU4 4
CNSTU4 4294967292
BANDU4
CVUI4 4
ASGNI4
line 2359
;2358:
;2359:	if (bg_poolSize + size > bg_poolTail)
ADDRGP4 bg_poolSize
INDIRI4
ADDRFP4 0
INDIRI4
ADDI4
ADDRGP4 bg_poolTail
INDIRI4
LEI4 $841
line 2360
;2360:	{
line 2361
;2361:		Com_Error( ERR_DROP, "BG_Alloc: buffer exceeded tail (%d > %d)", bg_poolSize + size, bg_poolTail);
CNSTI4 1
ARGI4
ADDRGP4 $843
ARGP4
ADDRGP4 bg_poolSize
INDIRI4
ADDRFP4 0
INDIRI4
ADDI4
ARGI4
ADDRGP4 bg_poolTail
INDIRI4
ARGI4
ADDRGP4 Com_Error
CALLV
pop
line 2362
;2362:		return 0;
CNSTP4 0
RETP4
ADDRGP4 $840
JUMPV
LABELV $841
line 2365
;2363:	}
;2364:
;2365:	bg_poolSize += size;
ADDRLP4 4
ADDRGP4 bg_poolSize
ASGNP4
ADDRLP4 4
INDIRP4
ADDRLP4 4
INDIRP4
INDIRI4
ADDRFP4 0
INDIRI4
ADDI4
ASGNI4
line 2367
;2366:
;2367:	return &bg_pool[bg_poolSize-size];
ADDRGP4 bg_poolSize
INDIRI4
ADDRFP4 0
INDIRI4
SUBI4
ADDRGP4 bg_pool
ADDP4
RETP4
LABELV $840
endproc BG_Alloc 8 16
export BG_AllocUnaligned
proc BG_AllocUnaligned 4 16
line 2371
;2368:}
;2369:
;2370:void *BG_AllocUnaligned ( int size )
;2371:{
line 2372
;2372:	if (bg_poolSize + size > bg_poolTail)
ADDRGP4 bg_poolSize
INDIRI4
ADDRFP4 0
INDIRI4
ADDI4
ADDRGP4 bg_poolTail
INDIRI4
LEI4 $845
line 2373
;2373:	{
line 2374
;2374:		Com_Error( ERR_DROP, "BG_AllocUnaligned: buffer exceeded tail (%d > %d)", bg_poolSize + size, bg_poolTail);
CNSTI4 1
ARGI4
ADDRGP4 $847
ARGP4
ADDRGP4 bg_poolSize
INDIRI4
ADDRFP4 0
INDIRI4
ADDI4
ARGI4
ADDRGP4 bg_poolTail
INDIRI4
ARGI4
ADDRGP4 Com_Error
CALLV
pop
line 2375
;2375:		return 0;
CNSTP4 0
RETP4
ADDRGP4 $844
JUMPV
LABELV $845
line 2378
;2376:	}
;2377:
;2378:	bg_poolSize += size;
ADDRLP4 0
ADDRGP4 bg_poolSize
ASGNP4
ADDRLP4 0
INDIRP4
ADDRLP4 0
INDIRP4
INDIRI4
ADDRFP4 0
INDIRI4
ADDI4
ASGNI4
line 2380
;2379:
;2380:	return &bg_pool[bg_poolSize-size];
ADDRGP4 bg_poolSize
INDIRI4
ADDRFP4 0
INDIRI4
SUBI4
ADDRGP4 bg_pool
ADDP4
RETP4
LABELV $844
endproc BG_AllocUnaligned 4 16
export BG_TempAlloc
proc BG_TempAlloc 4 16
line 2384
;2381:}
;2382:
;2383:void *BG_TempAlloc( int size )
;2384:{
line 2385
;2385:	size = ((size + 0x00000003) & 0xfffffffc);
ADDRFP4 0
ADDRFP4 0
INDIRI4
CNSTI4 3
ADDI4
CVIU4 4
CNSTU4 4294967292
BANDU4
CVUI4 4
ASGNI4
line 2387
;2386:
;2387:	if (bg_poolTail - size < bg_poolSize)
ADDRGP4 bg_poolTail
INDIRI4
ADDRFP4 0
INDIRI4
SUBI4
ADDRGP4 bg_poolSize
INDIRI4
GEI4 $849
line 2388
;2388:	{
line 2389
;2389:		Com_Error( ERR_DROP, "BG_TempAlloc: buffer exceeded head (%d > %d)", bg_poolTail - size, bg_poolSize);
CNSTI4 1
ARGI4
ADDRGP4 $851
ARGP4
ADDRGP4 bg_poolTail
INDIRI4
ADDRFP4 0
INDIRI4
SUBI4
ARGI4
ADDRGP4 bg_poolSize
INDIRI4
ARGI4
ADDRGP4 Com_Error
CALLV
pop
line 2390
;2390:		return 0;
CNSTP4 0
RETP4
ADDRGP4 $848
JUMPV
LABELV $849
line 2393
;2391:	}
;2392:
;2393:	bg_poolTail -= size;
ADDRLP4 0
ADDRGP4 bg_poolTail
ASGNP4
ADDRLP4 0
INDIRP4
ADDRLP4 0
INDIRP4
INDIRI4
ADDRFP4 0
INDIRI4
SUBI4
ASGNI4
line 2395
;2394:
;2395:	return &bg_pool[bg_poolTail];
ADDRGP4 bg_poolTail
INDIRI4
ADDRGP4 bg_pool
ADDP4
RETP4
LABELV $848
endproc BG_TempAlloc 4 16
export BG_TempFree
proc BG_TempFree 4 16
line 2399
;2396:}
;2397:
;2398:void BG_TempFree( int size )
;2399:{
line 2400
;2400:	size = ((size + 0x00000003) & 0xfffffffc);
ADDRFP4 0
ADDRFP4 0
INDIRI4
CNSTI4 3
ADDI4
CVIU4 4
CNSTU4 4294967292
BANDU4
CVUI4 4
ASGNI4
line 2402
;2401:
;2402:	if (bg_poolTail+size > MAX_POOL_SIZE)
ADDRGP4 bg_poolTail
INDIRI4
ADDRFP4 0
INDIRI4
ADDI4
CNSTI4 2048000
LEI4 $853
line 2403
;2403:	{
line 2404
;2404:		Com_Error( ERR_DROP, "BG_TempFree: tail greater than size (%d > %d)", bg_poolTail+size, MAX_POOL_SIZE );
CNSTI4 1
ARGI4
ADDRGP4 $855
ARGP4
ADDRGP4 bg_poolTail
INDIRI4
ADDRFP4 0
INDIRI4
ADDI4
ARGI4
CNSTI4 2048000
ARGI4
ADDRGP4 Com_Error
CALLV
pop
line 2405
;2405:	}
LABELV $853
line 2407
;2406:
;2407:	bg_poolTail += size;
ADDRLP4 0
ADDRGP4 bg_poolTail
ASGNP4
ADDRLP4 0
INDIRP4
ADDRLP4 0
INDIRP4
INDIRI4
ADDRFP4 0
INDIRI4
ADDI4
ASGNI4
line 2408
;2408:}
LABELV $852
endproc BG_TempFree 4 16
export BG_StringAlloc
proc BG_StringAlloc 12 8
line 2411
;2409:
;2410:char *BG_StringAlloc ( const char *source )
;2411:{
line 2414
;2412:	char *dest;
;2413:
;2414:	dest = BG_Alloc ( strlen ( source ) + 1 );
ADDRFP4 0
INDIRP4
ARGP4
ADDRLP4 4
ADDRGP4 strlen
CALLI4
ASGNI4
ADDRLP4 4
INDIRI4
CNSTI4 1
ADDI4
ARGI4
ADDRLP4 8
ADDRGP4 BG_Alloc
CALLP4
ASGNP4
ADDRLP4 0
ADDRLP4 8
INDIRP4
ASGNP4
line 2415
;2415:	strcpy ( dest, source );
ADDRLP4 0
INDIRP4
ARGP4
ADDRFP4 0
INDIRP4
ARGP4
ADDRGP4 strcpy
CALLP4
pop
line 2416
;2416:	return dest;
ADDRLP4 0
INDIRP4
RETP4
LABELV $856
endproc BG_StringAlloc 12 8
export BG_OutOfMemory
proc BG_OutOfMemory 4 0
line 2420
;2417:}
;2418:
;2419:qboolean BG_OutOfMemory ( void )
;2420:{
line 2421
;2421:	return bg_poolSize >= MAX_POOL_SIZE;
ADDRGP4 bg_poolSize
INDIRI4
CNSTI4 2048000
LTI4 $859
ADDRLP4 0
CNSTI4 1
ASGNI4
ADDRGP4 $860
JUMPV
LABELV $859
ADDRLP4 0
CNSTI4 0
ASGNI4
LABELV $860
ADDRLP4 0
INDIRI4
RETI4
LABELV $857
endproc BG_OutOfMemory 4 0
bss
align 1
LABELV bg_pool
skip 2048000
import g2WeaponInstances
import CG_CheckPlayerG2Weapons
import CG_CopyG2WeaponInstance
import CG_ShutDownG2Weapons
import CG_InitG2Weapons
import CG_CreateBBRefEnts
import CG_SetGhoul2Info
import CG_Init_CGents
import CG_Init_CG
import trap_G2API_SetNewOrigin
import trap_G2API_SetSurfaceOnOff
import trap_G2API_SetRootSurface
import trap_G2API_SetBoneAnim
import trap_G2API_GetGLAName
import trap_G2API_SetBoneAngles
import trap_G2API_CleanGhoul2Models
import trap_G2API_SetBoltInfo
import trap_G2API_AddBolt
import trap_G2API_RemoveGhoul2Model
import trap_G2API_HasGhoul2ModelOnIndex
import trap_G2API_DuplicateGhoul2Instance
import trap_G2API_CopySpecificGhoul2Model
import trap_G2API_CopyGhoul2Instance
import trap_G2API_GiveMeVectorFromMatrix
import trap_G2API_InitGhoul2Model
import trap_G2API_GetBoltMatrix_NoRecNoRot
import trap_G2API_GetBoltMatrix_NoReconstruct
import trap_G2API_GetBoltMatrix
import trap_G2_HaveWeGhoul2Models
import trap_G2_SetGhoul2ModelIndexes
import trap_G2_ListModelBones
import trap_G2_ListModelSurfaces
import trap_G2API_CollisionDetect
import FX_ForceDrained
import FX_TieLaserAltFireThink
import FX_TieLaserWeaponHitPlayer
import FX_TieLaserWeaponHitWall
import FX_TieLaserProjectileThink
import FX_BlasterWeaponHitPlayer
import FX_BlasterWeaponHitWall
import FX_BlasterAltFireThink
import FX_BlasterProjectileThink
import FX_BryarAltHitPlayer
import FX_BryarHitPlayer
import FX_BryarAltHitWall
import FX_BryarHitWall
import CG_Spark
import FX_TurretHitPlayer
import FX_TurretHitWall
import FX_TurretProjectileThink
import CG_NewParticleArea
import initparticles
import CG_GetStripEdString
import CG_ParticleExplosion
import CG_ParticleMisc
import CG_ParticleDust
import CG_ParticleSparks
import CG_ParticleBulletDebris
import CG_ParticleSnowFlurry
import CG_AddParticleShrapnel
import CG_ParticleSmoke
import CG_ParticleSnow
import CG_AddParticles
import CG_ClearParticles
import trap_ROFF_Purge_Ent
import trap_ROFF_Play
import trap_ROFF_Cache
import trap_ROFF_UpdateEntities
import trap_ROFF_Clean
import trap_CG_RegisterSharedMemory
import trap_SP_GetStringTextString
import trap_SP_Print
import trap_FX_AddSprite
import trap_FX_AddPrimitive
import trap_FX_AddBezier
import trap_FX_AddPoly
import trap_FX_AdjustTime
import trap_FX_FreeSystem
import trap_FX_InitSystem
import trap_FX_AddScheduledEffects
import trap_FX_PlayBoltedEffectID
import trap_FX_PlayEntityEffectID
import trap_FX_PlayEffectID
import trap_FX_PlaySimpleEffectID
import trap_FX_PlayEntityEffect
import trap_FX_PlayEffect
import trap_FX_PlaySimpleEffect
import trap_FX_RegisterEffect
import trap_R_inPVS
import trap_GetEntityToken
import trap_getCameraInfo
import trap_startCamera
import trap_loadCamera
import trap_SnapVector
import trap_CIN_SetExtents
import trap_CIN_DrawCinematic
import trap_CIN_RunCinematic
import trap_CIN_StopCinematic
import trap_CIN_PlayCinematic
import trap_Key_GetKey
import trap_Key_SetCatcher
import trap_Key_GetCatcher
import trap_Key_IsDown
import trap_MemoryRemaining
import testPrintFloat
import testPrintInt
import trap_OpenUIMenu
import trap_SetClientTurnExtent
import trap_SetClientForceAngle
import trap_SetUserCmdValue
import trap_GetUserCmd
import trap_GetCurrentCmdNumber
import trap_GetServerCommand
import trap_GetSnapshot
import trap_GetCurrentSnapshotNumber
import trap_GetGameState
import trap_GetGlconfig
import trap_FX_AddLine
import trap_R_GetBModelVerts
import trap_R_SetLightStyle
import trap_R_GetLightStyle
import trap_R_RemapShader
import trap_R_DrawRotatePic2
import trap_R_DrawRotatePic
import trap_R_LerpTag
import trap_R_ModelBounds
import trap_R_DrawStretchPic
import trap_R_SetColor
import trap_R_RenderScene
import trap_R_LightForPoint
import trap_R_AddLightToScene
import trap_R_AddPolysToScene
import trap_R_AddPolyToScene
import trap_R_AddRefEntityToScene
import trap_R_ClearScene
import trap_AnyLanguage_ReadCharFromString
import trap_Language_UsesSpaces
import trap_Language_IsAsian
import trap_R_Font_DrawString
import trap_R_Font_HeightPixels
import trap_R_Font_StrLenChars
import trap_R_Font_StrLenPixels
import trap_R_RegisterFont
import trap_R_RegisterShaderNoMip
import trap_R_RegisterShader
import trap_R_RegisterSkin
import trap_R_RegisterModel
import trap_R_LoadWorldMap
import trap_S_StopBackgroundTrack
import trap_S_StartBackgroundTrack
import trap_S_RegisterSound
import trap_S_Respatialize
import trap_S_UpdateEntityPosition
import trap_S_AddRealLoopingSound
import trap_S_AddLoopingSound
import trap_S_ClearLoopingSounds
import trap_S_StartLocalSound
import trap_S_StopLoopingSound
import trap_S_StartSound
import trap_S_MuteSound
import trap_CM_MarkFragments
import trap_CM_TransformedBoxTrace
import trap_CM_BoxTrace
import trap_CM_TransformedPointContents
import trap_CM_PointContents
import trap_CM_TempBoxModel
import trap_CM_InlineModel
import trap_CM_NumInlineModels
import trap_CM_LoadMap
import trap_UpdateScreen
import trap_SendClientCommand
import trap_AddCommand
import trap_SendConsoleCommand
import trap_FS_FCloseFile
import trap_FS_Write
import trap_FS_Read
import trap_FS_FOpenFile
import trap_Args
import trap_Argv
import trap_Argc
import trap_Cvar_VariableStringBuffer
import trap_Cvar_Set
import trap_Cvar_Update
import trap_Cvar_Register
import trap_Milliseconds
import trap_Error
import trap_Print
import CG_SagaObjectiveCompleted
import CG_SagaRoundOver
import CG_InitSagaMode
import CG_CheckChangedPredictableEvents
import CG_TransitionPlayerState
import CG_Respawn
import CG_IsMindTricked
import CG_PlayBufferedVoiceChats
import CG_VoiceChatLocal
import CG_ShaderStateChanged
import CG_LoadVoiceChats
import CG_SetConfigValues
import CG_ParseServerinfo
import CG_ExecuteNewServerCommands
import CG_InitConsoleCommands
import CG_ConsoleCommand
import CG_DrawOldTourneyScoreboard
import CG_DrawOldScoreboard
import CG_DrawInformation
import CG_LoadingClient
import CG_LoadingItem
import CG_LoadingString
import CG_ProcessSnapshots
import CG_InitGlass
import CG_TestLine
import CG_SurfaceExplosion
import CG_MakeExplosion
import CG_Bleed
import CG_ScorePlum
import CG_CreateDebris
import CG_GlassShatter
import CG_BubbleTrail
import CG_SmokePuff
import CG_AddLocalEntities
import CG_AllocLocalEntity
import CG_InitLocalEntities
import CG_ImpactMark
import CG_AddMarks
import CG_InitMarkPolys
import CG_OutOfAmmoChange
import CG_DrawIconBackground
import CG_DrawWeaponSelect
import CG_AddPlayerWeapon
import CG_AddViewWeapon
import CG_MissileHitPlayer
import CG_MissileHitWall
import CG_FireWeapon
import CG_RegisterItemVisuals
import CG_RegisterWeapon
import CG_Weapon_f
import CG_PrevWeapon_f
import CG_NextWeapon_f
import CG_GetClientWeaponMuzzleBoltPoint
import TurretClientRun
import ScaleModelAxis
import CG_PositionRotatedEntityOnTag
import CG_PositionEntityOnTag
import CG_AdjustPositionForMover
import CG_Beam
import CG_ManualEntityRender
import CG_AddPacketEntities
import CG_SetEntitySoundPosition
import CG_ReattachLimb
import CG_PainEvent
import CG_EntityEvent
import CG_PlaceString
import CG_CheckEvents
import CG_LoadDeferredPlayers
import CG_PredictPlayerState
import CG_Trace
import CG_PointContents
import CG_BuildSolidList
import CG_PlayerShieldHit
import CG_CustomSound
import CG_NewClientInfo
import CG_AddRefEntityWithPowerups
import CG_ResetPlayerEntity
import CG_Player
import CG_StatusHandle
import CG_OtherTeamHasFlag
import CG_YourTeamHasFlag
import CG_GameTypeString
import CG_CheckOrderPending
import CG_Text_PaintChar
import CG_Draw3DModel
import CG_GetKillerText
import CG_GetGameStatusText
import CG_GetTeamColor
import CG_InitTeamChat
import CG_SetPrintString
import CG_ShowResponseHead
import CG_DeferMenuScript
import CG_RunMenuScript
import CG_OwnerDrawVisible
import CG_GetValue
import CG_SelectNextPlayer
import CG_SelectPrevPlayer
import CG_Text_Height
import CG_Text_Width
import CG_Text_Paint
import CG_OwnerDraw
import CG_DrawTeamBackground
import CG_DrawFlagModel
import CG_DrawActive
import CG_DrawHead
import CG_CenterPrint
import CG_AddLagometerSnapshotInfo
import CG_AddLagometerFrameInfo
import teamChat2
import teamChat1
import systemChat
import drawTeamOverlayModificationCount
import numSortedTeamPlayers
import sortedTeamPlayers
import CG_DrawTopBottom
import CG_DrawSides
import CG_DrawRect
import UI_DrawScaledProportionalString
import UI_DrawProportionalString
import CG_GetColorForHealth
import CG_ColorForHealth
import CG_TileClear
import CG_TeamColor
import CG_FadeColor
import CG_DrawStrlen
import CG_DrawSmallStringColor
import CG_DrawSmallString
import CG_DrawBigStringColor
import CG_DrawBigString
import CG_DrawStringExt
import CG_DrawNumField
import CG_DrawString
import CG_DrawRotatePic2
import CG_DrawRotatePic
import CG_DrawPic
import CG_FillRect
import CG_TestModelAnimate_f
import CG_TestModelSetAnglespost_f
import CG_TestModelSetAnglespre_f
import CG_ListModelBones_f
import CG_ListModelSurfaces_f
import CG_TestModelSurfaceOnOff_f
import CG_TestG2Model_f
import CG_DrawActiveFrame
import CG_AddBufferedSound
import CG_ZoomUp_f
import CG_ZoomDown_f
import CG_TestModelPrevSkin_f
import CG_TestModelNextSkin_f
import CG_TestModelPrevFrame_f
import CG_TestModelNextFrame_f
import CG_TestGun_f
import CG_TestModel_f
import CG_PrevForcePower_f
import CG_NextForcePower_f
import CG_PrevInventory_f
import CG_NextInventory_f
import CG_BuildSpectatorString
import CG_SetScoreSelection
import CG_RankRunFrame
import CG_EventHandling
import CG_MouseEvent
import CG_KeyEvent
import CG_LoadMenus
import CG_LastAttacker
import CG_CrosshairPlayer
import CG_UpdateCvars
import CG_StartMusic
import CG_Error
import CG_Printf
import CG_Argv
import CG_ConfigString
import cg_followCamTransition
import cg_followCam
import cg_roll
import cg_throttle
import cg_debugBB
import ui_myteam
import cg_recordSPDemoName
import cg_recordSPDemo
import cg_singlePlayerActive
import cg_enableBreath
import cg_enableDust
import cg_singlePlayer
import cg_currentSelectedPlayerName
import cg_currentSelectedPlayer
import cg_blueTeamName
import cg_redTeamName
import cg_trueLightning
import cg_noProjectileTrail
import cg_noTaunt
import cg_bigFont
import cg_smallFont
import cg_cameraMode
import cg_timescale
import cg_timescaleFadeSpeed
import cg_timescaleFadeEnd
import cg_cameraOrbitDelay
import cg_cameraOrbit
import pmove_msec
import pmove_fixed
import cg_smoothClients
import cg_hudFiles
import cg_scorePlum
import cg_noVoiceText
import cg_noVoiceChats
import cg_teamChatsOnly
import cg_drawFriend
import cg_deferPlayers
import cg_predictItems
import cg_blood
import cg_paused
import cg_buildScript
import cg_forceModel
import cg_stats
import cg_teamChatHeight
import cg_teamChatTime
import cg_synchronousClients
import cg_drawEnemyInfo
import cg_lagometer
import cg_stereoSeparation
import cg_thirdPersonHorzOffset
import cg_thirdPersonAlpha
import cg_thirdPersonTargetDamp
import cg_thirdPersonCameraDamp
import cg_thirdPersonVertOffset
import cg_thirdPersonPitchOffset
import cg_thirdPersonAngle
import cg_thirdPersonRange
import cg_thirdPerson
import cg_dismember
import cg_animBlend
import cg_auraShell
import cg_speedTrail
import cg_duelHeadAngles
import cg_saberTrail
import cg_saberContact
import cg_saberDynamicMarkTime
import cg_saberDynamicMarks
import cg_fpls
import cg_saberModelTraceEffect
import cg_oldPainSounds
import cg_swingAngles
import cg_zoomFov
import cg_fov
import cg_simpleItems
import cg_ignore
import cg_autoswitch
import cg_tracerLength
import cg_tracerWidth
import cg_tracerChance
import cg_viewsize
import cg_drawGun
import cg_gun_z
import cg_gun_y
import cg_gun_x
import cg_gun_frame
import cg_addMarks
import cg_footsteps
import cg_showmiss
import cg_noPlayerAnims
import cg_nopredict
import cg_errorDecay
import cg_debugEvents
import cg_debugPosition
import cg_debugAnim
import cg_animSpeed
import cg_draw2D
import cg_drawStatus
import cg_crosshairHealth
import cg_crosshairSize
import cg_crosshairY
import cg_crosshairX
import cg_teamOverlayUserinfo
import cg_drawTeamOverlay
import cg_drawRewards
import cg_dynamicCrosshair
import cg_drawScores
import cg_drawCrosshairNames
import cg_drawCrosshair
import cg_drawAmmoWarning
import cg_drawIcons
import cg_draw3dIcons
import cg_drawSnapshot
import cg_drawFPS
import cg_drawTimer
import cg_shadows
import cg_bobroll
import cg_bobpitch
import cg_bobup
import cg_runroll
import cg_runpitch
import cg_centertime
import cg_vehicleTemplates
import cg_vehicles
import VehicleInfo_GetNameForMovementType
import VehicleInfo_GetBitForMovementType
import VehicleInfo_GetNameForWeapon
import VehicleInfo_GetIndexForWeapon
import VehicleInfo_GetBitForWeapon
import VehicleInfo_GetBitForVehicleType
import Vehicle_CopyVehicle
import Vehicle_InitVehicle
import cg_markPolys
import cg_items
import cg_weapons
import cg_entities
import cg
import cgs
import CGCam_SetMusicMult
import CGCam_Shake
import cgScreenEffects
import ammoTicPos
import forceTicPos
import BG_ParseAnimationFile
import BG_ForcePowerDrain
import BG_SaberStartTransAnim
import BG_InDeathAnim
import BG_InRoll
import BG_KnockawayForParry
import BG_BrokenParryForParry
import BG_BrokenParryForAttack
import BG_SaberInSpecialAttack
import BG_SpinningSaberAnim
import BG_FlippingAnim
import BG_SaberInIdle
import BG_SaberInSpecial
import BG_SaberInAttack
import BG_DirectFlippingAnim
import BG_InSaberStandAnim
import BG_InSpecialJump
import saberMoveData
import PM_CalculateRelativeViewAngles
import Pmove
import PM_QuaternionViewAngles
import PM_UpdateViewAngles
import pm
import bgGlobalAnimations
import BGPAFtextLoaded
import WP_MuzzlePoint
import ammoData
import weaponData
import GetStringForID
import GetIDForString
import Q_irand
import irand
import flrand
import Rand_Init
import Com_Printf
import Com_Error
import Info_NextPair
import Info_Validate
import Info_SetValueForKey_Big
import Info_SetValueForKey
import Info_RemoveKey_big
import Info_RemoveKey
import Info_ValueForKey
import va
import Q_CleanStr
import Q_PrintStrlen
import Q_strcat
import Q_strncpyz
import Q_strrchr
import Q_strupr
import Q_strlwr
import Q_stricmpn
import Q_strncmp
import Q_stricmp
import Q_isalpha
import Q_isupper
import Q_islower
import Q_isprint
import Com_sprintf
import Parse3DMatrix
import Parse2DMatrix
import Parse1DMatrix
import SkipRestOfLine
import SkipBracedSection
import COM_MatchToken
import COM_ParseVec4
import COM_ParseFloat
import COM_ParseInt
import COM_ParseString
import COM_ParseWarning
import COM_ParseError
import COM_Compress
import COM_ParseExt
import COM_Parse
import SkipWhitespace
import COM_GetCurrentParseLine
import COM_BeginParseSession
import COM_DefaultExtension
import COM_StripExtension
import COM_SkipPath
import Com_Clamp
import MatrixToEuler
import QuatToAngles
import QuatMul
import AnglesToQuat
import AxisToQuaternion
import QuaternionToAxis
import QuaternionToEuler
import QuatToAxis
import QuaternionMultiply
import QuaternionNormalize
import QuaternionMagnitude
import QuaternionFromString
import AnglesToTieFloats
import AnglesFromTieFloats
import QuaternionToTieFloats
import QuaternionFromTieFloats
import QuaternionCopy
import PerpendicularVector
import AngleVectors
import RotationMatrixAroundDir
import MatrixMultiply
import MakeNormalVectors
import RotateAroundDirection
import RotatePointAroundVector
import ProjectPointOnPlane
import PlaneFromPoints
import AngleDelta
import AngleNormalize180
import AngleNormalize360
import AnglesSubtract
import AngleSubtract
import LerpAngle
import AngleMod
import BoxOnPlaneSide
import SetPlaneSignbits
import AxisCopy
import AxisClear
import AnglesToAxis
import vectoangles
import Q_crandom
import Q_random
import Q_rand
import Q_acos
import Q_log2
import VectorRotate
import Vector4Scale
import VectorNormalize2
import VectorNormalize
import CrossProduct
import VectorInverse
import VectorNormalizeFast
import DistanceSquared
import Distance
import VectorLengthSquared
import VectorLength
import VectorCompare
import AddPointToBounds
import ClearBounds
import RadiusFromBounds
import NormalizeColor
import ColorBytes4
import ColorBytes3
import _VectorMA
import _VectorScale
import _VectorCopy
import _VectorAdd
import _VectorSubtract
import _DotProduct
import ByteToDir
import DirToByte
import powf
import ClampShort
import ClampChar
import Q_rsqrt
import Q_fabs
import axisDefault
import vec3_origin
import g_color_table
import colorDkBlue
import colorLtBlue
import colorDkGrey
import colorMdGrey
import colorLtGrey
import colorWhite
import colorCyan
import colorMagenta
import colorYellow
import colorBlue
import colorGreen
import colorRed
import colorBlack
import colorTable
import bytedirs
import Com_Memcpy
import Com_Memset
import Hunk_Alloc
import forceSpeedLevels
import FloatSwap
import LongSwap
import ShortSwap
import acos
import fabs
import abs
import tan
import atan2
import cos
import sin
import sqrt
import floor
import ceil
import memcpy
import memset
import memmove
import sscanf
import vsprintf
import _atoi
import atoi
import _atof
import atof
import toupper
import tolower
import strncpy
import strstr
import strchr
import strcmp
import strcpy
import strcat
import strlen
import rand
import srand
import qsort
lit
align 1
LABELV $855
byte 1 66
byte 1 71
byte 1 95
byte 1 84
byte 1 101
byte 1 109
byte 1 112
byte 1 70
byte 1 114
byte 1 101
byte 1 101
byte 1 58
byte 1 32
byte 1 116
byte 1 97
byte 1 105
byte 1 108
byte 1 32
byte 1 103
byte 1 114
byte 1 101
byte 1 97
byte 1 116
byte 1 101
byte 1 114
byte 1 32
byte 1 116
byte 1 104
byte 1 97
byte 1 110
byte 1 32
byte 1 115
byte 1 105
byte 1 122
byte 1 101
byte 1 32
byte 1 40
byte 1 37
byte 1 100
byte 1 32
byte 1 62
byte 1 32
byte 1 37
byte 1 100
byte 1 41
byte 1 0
align 1
LABELV $851
byte 1 66
byte 1 71
byte 1 95
byte 1 84
byte 1 101
byte 1 109
byte 1 112
byte 1 65
byte 1 108
byte 1 108
byte 1 111
byte 1 99
byte 1 58
byte 1 32
byte 1 98
byte 1 117
byte 1 102
byte 1 102
byte 1 101
byte 1 114
byte 1 32
byte 1 101
byte 1 120
byte 1 99
byte 1 101
byte 1 101
byte 1 100
byte 1 101
byte 1 100
byte 1 32
byte 1 104
byte 1 101
byte 1 97
byte 1 100
byte 1 32
byte 1 40
byte 1 37
byte 1 100
byte 1 32
byte 1 62
byte 1 32
byte 1 37
byte 1 100
byte 1 41
byte 1 0
align 1
LABELV $847
byte 1 66
byte 1 71
byte 1 95
byte 1 65
byte 1 108
byte 1 108
byte 1 111
byte 1 99
byte 1 85
byte 1 110
byte 1 97
byte 1 108
byte 1 105
byte 1 103
byte 1 110
byte 1 101
byte 1 100
byte 1 58
byte 1 32
byte 1 98
byte 1 117
byte 1 102
byte 1 102
byte 1 101
byte 1 114
byte 1 32
byte 1 101
byte 1 120
byte 1 99
byte 1 101
byte 1 101
byte 1 100
byte 1 101
byte 1 100
byte 1 32
byte 1 116
byte 1 97
byte 1 105
byte 1 108
byte 1 32
byte 1 40
byte 1 37
byte 1 100
byte 1 32
byte 1 62
byte 1 32
byte 1 37
byte 1 100
byte 1 41
byte 1 0
align 1
LABELV $843
byte 1 66
byte 1 71
byte 1 95
byte 1 65
byte 1 108
byte 1 108
byte 1 111
byte 1 99
byte 1 58
byte 1 32
byte 1 98
byte 1 117
byte 1 102
byte 1 102
byte 1 101
byte 1 114
byte 1 32
byte 1 101
byte 1 120
byte 1 99
byte 1 101
byte 1 101
byte 1 100
byte 1 101
byte 1 100
byte 1 32
byte 1 116
byte 1 97
byte 1 105
byte 1 108
byte 1 32
byte 1 40
byte 1 37
byte 1 100
byte 1 32
byte 1 62
byte 1 32
byte 1 37
byte 1 100
byte 1 41
byte 1 0
align 1
LABELV $771
byte 1 69
byte 1 86
byte 1 95
byte 1 66
byte 1 79
byte 1 68
byte 1 89
byte 1 95
byte 1 81
byte 1 85
byte 1 69
byte 1 85
byte 1 69
byte 1 95
byte 1 67
byte 1 79
byte 1 80
byte 1 89
byte 1 0
align 1
LABELV $770
byte 1 69
byte 1 86
byte 1 95
byte 1 84
byte 1 65
byte 1 85
byte 1 78
byte 1 84
byte 1 95
byte 1 80
byte 1 65
byte 1 84
byte 1 82
byte 1 79
byte 1 76
byte 1 0
align 1
LABELV $769
byte 1 69
byte 1 86
byte 1 95
byte 1 84
byte 1 65
byte 1 85
byte 1 78
byte 1 84
byte 1 95
byte 1 71
byte 1 85
byte 1 65
byte 1 82
byte 1 68
byte 1 66
byte 1 65
byte 1 83
byte 1 69
byte 1 0
align 1
LABELV $768
byte 1 69
byte 1 86
byte 1 95
byte 1 84
byte 1 65
byte 1 85
byte 1 78
byte 1 84
byte 1 95
byte 1 71
byte 1 69
byte 1 84
byte 1 70
byte 1 76
byte 1 65
byte 1 71
byte 1 0
align 1
LABELV $767
byte 1 69
byte 1 86
byte 1 95
byte 1 84
byte 1 65
byte 1 85
byte 1 78
byte 1 84
byte 1 95
byte 1 70
byte 1 79
byte 1 76
byte 1 76
byte 1 79
byte 1 87
byte 1 77
byte 1 69
byte 1 0
align 1
LABELV $766
byte 1 69
byte 1 86
byte 1 95
byte 1 84
byte 1 65
byte 1 85
byte 1 78
byte 1 84
byte 1 95
byte 1 78
byte 1 79
byte 1 0
align 1
LABELV $765
byte 1 69
byte 1 86
byte 1 95
byte 1 84
byte 1 65
byte 1 85
byte 1 78
byte 1 84
byte 1 95
byte 1 89
byte 1 69
byte 1 83
byte 1 0
align 1
LABELV $764
byte 1 69
byte 1 86
byte 1 95
byte 1 84
byte 1 65
byte 1 85
byte 1 78
byte 1 84
byte 1 0
align 1
LABELV $763
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 84
byte 1 65
byte 1 82
byte 1 84
byte 1 76
byte 1 79
byte 1 79
byte 1 80
byte 1 73
byte 1 78
byte 1 71
byte 1 83
byte 1 79
byte 1 85
byte 1 78
byte 1 68
byte 1 0
align 1
LABELV $762
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 84
byte 1 79
byte 1 80
byte 1 76
byte 1 79
byte 1 79
byte 1 80
byte 1 73
byte 1 78
byte 1 71
byte 1 83
byte 1 79
byte 1 85
byte 1 78
byte 1 68
byte 1 0
align 1
LABELV $761
byte 1 69
byte 1 86
byte 1 95
byte 1 84
byte 1 69
byte 1 83
byte 1 84
byte 1 76
byte 1 73
byte 1 78
byte 1 69
byte 1 0
align 1
LABELV $760
byte 1 69
byte 1 86
byte 1 95
byte 1 68
byte 1 69
byte 1 66
byte 1 85
byte 1 71
byte 1 95
byte 1 76
byte 1 73
byte 1 78
byte 1 69
byte 1 0
align 1
LABELV $759
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 72
byte 1 73
byte 1 69
byte 1 76
byte 1 68
byte 1 95
byte 1 72
byte 1 73
byte 1 84
byte 1 0
align 1
LABELV $758
byte 1 69
byte 1 86
byte 1 95
byte 1 87
byte 1 69
byte 1 65
byte 1 80
byte 1 79
byte 1 78
byte 1 95
byte 1 67
byte 1 72
byte 1 65
byte 1 82
byte 1 71
byte 1 69
byte 1 95
byte 1 65
byte 1 76
byte 1 84
byte 1 0
align 1
LABELV $757
byte 1 69
byte 1 86
byte 1 95
byte 1 87
byte 1 69
byte 1 65
byte 1 80
byte 1 79
byte 1 78
byte 1 95
byte 1 67
byte 1 72
byte 1 65
byte 1 82
byte 1 71
byte 1 69
byte 1 0
align 1
LABELV $756
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 69
byte 1 84
byte 1 95
byte 1 70
byte 1 79
byte 1 82
byte 1 67
byte 1 69
byte 1 95
byte 1 68
byte 1 73
byte 1 83
byte 1 65
byte 1 66
byte 1 76
byte 1 69
byte 1 0
align 1
LABELV $755
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 69
byte 1 84
byte 1 95
byte 1 70
byte 1 82
byte 1 69
byte 1 69
byte 1 95
byte 1 83
byte 1 65
byte 1 66
byte 1 69
byte 1 82
byte 1 0
align 1
LABELV $754
byte 1 69
byte 1 86
byte 1 95
byte 1 71
byte 1 73
byte 1 86
byte 1 69
byte 1 95
byte 1 78
byte 1 69
byte 1 87
byte 1 95
byte 1 82
byte 1 65
byte 1 78
byte 1 75
byte 1 0
align 1
LABELV $753
byte 1 69
byte 1 86
byte 1 95
byte 1 68
byte 1 69
byte 1 83
byte 1 84
byte 1 82
byte 1 79
byte 1 89
byte 1 95
byte 1 87
byte 1 69
byte 1 65
byte 1 80
byte 1 79
byte 1 78
byte 1 95
byte 1 77
byte 1 79
byte 1 68
byte 1 69
byte 1 76
byte 1 0
align 1
LABELV $752
byte 1 69
byte 1 86
byte 1 95
byte 1 68
byte 1 69
byte 1 83
byte 1 84
byte 1 82
byte 1 79
byte 1 89
byte 1 95
byte 1 71
byte 1 72
byte 1 79
byte 1 85
byte 1 76
byte 1 50
byte 1 95
byte 1 73
byte 1 78
byte 1 83
byte 1 84
byte 1 65
byte 1 78
byte 1 67
byte 1 69
byte 1 0
align 1
LABELV $751
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 65
byte 1 71
byte 1 65
byte 1 95
byte 1 79
byte 1 66
byte 1 74
byte 1 69
byte 1 67
byte 1 84
byte 1 73
byte 1 86
byte 1 69
byte 1 67
byte 1 79
byte 1 77
byte 1 80
byte 1 76
byte 1 69
byte 1 84
byte 1 69
byte 1 0
align 1
LABELV $750
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 65
byte 1 71
byte 1 65
byte 1 95
byte 1 82
byte 1 79
byte 1 85
byte 1 78
byte 1 68
byte 1 79
byte 1 86
byte 1 69
byte 1 82
byte 1 0
align 1
LABELV $749
byte 1 69
byte 1 86
byte 1 95
byte 1 67
byte 1 84
byte 1 70
byte 1 77
byte 1 69
byte 1 83
byte 1 83
byte 1 65
byte 1 71
byte 1 69
byte 1 0
align 1
LABELV $748
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 67
byte 1 79
byte 1 82
byte 1 69
byte 1 80
byte 1 76
byte 1 85
byte 1 77
byte 1 0
align 1
LABELV $747
byte 1 69
byte 1 86
byte 1 95
byte 1 71
byte 1 73
byte 1 66
byte 1 95
byte 1 80
byte 1 76
byte 1 65
byte 1 89
byte 1 69
byte 1 82
byte 1 0
align 1
LABELV $746
byte 1 69
byte 1 86
byte 1 95
byte 1 70
byte 1 79
byte 1 82
byte 1 67
byte 1 69
byte 1 95
byte 1 68
byte 1 82
byte 1 65
byte 1 73
byte 1 78
byte 1 69
byte 1 68
byte 1 0
align 1
LABELV $745
byte 1 69
byte 1 86
byte 1 95
byte 1 80
byte 1 79
byte 1 87
byte 1 69
byte 1 82
byte 1 85
byte 1 80
byte 1 95
byte 1 66
byte 1 65
byte 1 84
byte 1 84
byte 1 76
byte 1 69
byte 1 83
byte 1 85
byte 1 73
byte 1 84
byte 1 0
align 1
LABELV $744
byte 1 69
byte 1 86
byte 1 95
byte 1 80
byte 1 79
byte 1 87
byte 1 69
byte 1 82
byte 1 85
byte 1 80
byte 1 95
byte 1 81
byte 1 85
byte 1 65
byte 1 68
byte 1 0
align 1
LABELV $743
byte 1 69
byte 1 86
byte 1 95
byte 1 79
byte 1 66
byte 1 73
byte 1 84
byte 1 85
byte 1 65
byte 1 82
byte 1 89
byte 1 0
align 1
LABELV $742
byte 1 69
byte 1 86
byte 1 95
byte 1 68
byte 1 69
byte 1 65
byte 1 84
byte 1 72
byte 1 51
byte 1 0
align 1
LABELV $741
byte 1 69
byte 1 86
byte 1 95
byte 1 68
byte 1 69
byte 1 65
byte 1 84
byte 1 72
byte 1 50
byte 1 0
align 1
LABELV $740
byte 1 69
byte 1 86
byte 1 95
byte 1 68
byte 1 69
byte 1 65
byte 1 84
byte 1 72
byte 1 49
byte 1 0
align 1
LABELV $739
byte 1 69
byte 1 86
byte 1 95
byte 1 80
byte 1 65
byte 1 73
byte 1 78
byte 1 0
align 1
LABELV $738
byte 1 69
byte 1 86
byte 1 95
byte 1 66
byte 1 85
byte 1 76
byte 1 76
byte 1 69
byte 1 84
byte 1 0
align 1
LABELV $737
byte 1 69
byte 1 86
byte 1 95
byte 1 77
byte 1 73
byte 1 83
byte 1 83
byte 1 73
byte 1 76
byte 1 69
byte 1 95
byte 1 77
byte 1 73
byte 1 83
byte 1 83
byte 1 95
byte 1 77
byte 1 69
byte 1 84
byte 1 65
byte 1 76
byte 1 0
align 1
LABELV $736
byte 1 69
byte 1 86
byte 1 95
byte 1 77
byte 1 73
byte 1 83
byte 1 83
byte 1 73
byte 1 76
byte 1 69
byte 1 95
byte 1 77
byte 1 73
byte 1 83
byte 1 83
byte 1 0
align 1
LABELV $735
byte 1 69
byte 1 86
byte 1 95
byte 1 77
byte 1 73
byte 1 83
byte 1 83
byte 1 73
byte 1 76
byte 1 69
byte 1 95
byte 1 72
byte 1 73
byte 1 84
byte 1 0
align 1
LABELV $734
byte 1 69
byte 1 86
byte 1 95
byte 1 68
byte 1 69
byte 1 66
byte 1 82
byte 1 73
byte 1 83
byte 1 0
align 1
LABELV $733
byte 1 69
byte 1 86
byte 1 95
byte 1 71
byte 1 76
byte 1 65
byte 1 83
byte 1 83
byte 1 95
byte 1 83
byte 1 72
byte 1 65
byte 1 84
byte 1 84
byte 1 69
byte 1 82
byte 1 0
align 1
LABELV $732
byte 1 69
byte 1 86
byte 1 95
byte 1 80
byte 1 76
byte 1 65
byte 1 89
byte 1 95
byte 1 82
byte 1 79
byte 1 70
byte 1 70
byte 1 0
align 1
LABELV $731
byte 1 69
byte 1 86
byte 1 95
byte 1 69
byte 1 78
byte 1 84
byte 1 73
byte 1 84
byte 1 89
byte 1 95
byte 1 83
byte 1 79
byte 1 85
byte 1 78
byte 1 68
byte 1 0
align 1
LABELV $730
byte 1 69
byte 1 86
byte 1 95
byte 1 71
byte 1 76
byte 1 79
byte 1 66
byte 1 65
byte 1 76
byte 1 95
byte 1 84
byte 1 69
byte 1 65
byte 1 77
byte 1 95
byte 1 83
byte 1 79
byte 1 85
byte 1 78
byte 1 68
byte 1 0
align 1
LABELV $729
byte 1 69
byte 1 86
byte 1 95
byte 1 71
byte 1 76
byte 1 79
byte 1 66
byte 1 65
byte 1 76
byte 1 95
byte 1 83
byte 1 79
byte 1 85
byte 1 78
byte 1 68
byte 1 0
align 1
LABELV $728
byte 1 69
byte 1 86
byte 1 95
byte 1 71
byte 1 69
byte 1 78
byte 1 69
byte 1 82
byte 1 65
byte 1 76
byte 1 95
byte 1 83
byte 1 79
byte 1 85
byte 1 78
byte 1 68
byte 1 0
align 1
LABELV $727
byte 1 69
byte 1 86
byte 1 95
byte 1 77
byte 1 85
byte 1 84
byte 1 69
byte 1 95
byte 1 83
byte 1 79
byte 1 85
byte 1 78
byte 1 68
byte 1 0
align 1
LABELV $726
byte 1 69
byte 1 86
byte 1 95
byte 1 80
byte 1 76
byte 1 65
byte 1 89
byte 1 95
byte 1 69
byte 1 70
byte 1 70
byte 1 69
byte 1 67
byte 1 84
byte 1 95
byte 1 73
byte 1 68
byte 1 0
align 1
LABELV $725
byte 1 69
byte 1 86
byte 1 95
byte 1 80
byte 1 76
byte 1 65
byte 1 89
byte 1 95
byte 1 69
byte 1 70
byte 1 70
byte 1 69
byte 1 67
byte 1 84
byte 1 0
align 1
LABELV $724
byte 1 69
byte 1 86
byte 1 95
byte 1 77
byte 1 73
byte 1 83
byte 1 83
byte 1 73
byte 1 76
byte 1 69
byte 1 95
byte 1 83
byte 1 84
byte 1 73
byte 1 67
byte 1 75
byte 1 0
align 1
LABELV $723
byte 1 69
byte 1 86
byte 1 95
byte 1 71
byte 1 82
byte 1 69
byte 1 78
byte 1 65
byte 1 68
byte 1 69
byte 1 95
byte 1 66
byte 1 79
byte 1 85
byte 1 78
byte 1 67
byte 1 69
byte 1 0
align 1
LABELV $722
byte 1 69
byte 1 86
byte 1 95
byte 1 80
byte 1 76
byte 1 65
byte 1 89
byte 1 69
byte 1 82
byte 1 95
byte 1 84
byte 1 69
byte 1 76
byte 1 69
byte 1 80
byte 1 79
byte 1 82
byte 1 84
byte 1 95
byte 1 79
byte 1 85
byte 1 84
byte 1 0
align 1
LABELV $721
byte 1 69
byte 1 86
byte 1 95
byte 1 80
byte 1 76
byte 1 65
byte 1 89
byte 1 69
byte 1 82
byte 1 95
byte 1 84
byte 1 69
byte 1 76
byte 1 69
byte 1 80
byte 1 79
byte 1 82
byte 1 84
byte 1 95
byte 1 73
byte 1 78
byte 1 0
align 1
LABELV $720
byte 1 69
byte 1 86
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 95
byte 1 80
byte 1 79
byte 1 80
byte 1 0
align 1
LABELV $719
byte 1 69
byte 1 86
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 95
byte 1 82
byte 1 69
byte 1 83
byte 1 80
byte 1 65
byte 1 87
byte 1 78
byte 1 0
align 1
LABELV $718
byte 1 69
byte 1 86
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 85
byte 1 83
byte 1 69
byte 1 70
byte 1 65
byte 1 73
byte 1 76
byte 1 0
align 1
LABELV $717
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 49
byte 1 53
byte 1 0
align 1
LABELV $716
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 49
byte 1 52
byte 1 0
align 1
LABELV $715
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 49
byte 1 51
byte 1 0
align 1
LABELV $714
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 49
byte 1 50
byte 1 0
align 1
LABELV $713
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 49
byte 1 49
byte 1 0
align 1
LABELV $712
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 49
byte 1 48
byte 1 0
align 1
LABELV $711
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 57
byte 1 0
align 1
LABELV $710
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 56
byte 1 0
align 1
LABELV $709
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 55
byte 1 0
align 1
LABELV $708
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 54
byte 1 0
align 1
LABELV $707
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 53
byte 1 0
align 1
LABELV $706
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 52
byte 1 0
align 1
LABELV $705
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 51
byte 1 0
align 1
LABELV $704
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 50
byte 1 0
align 1
LABELV $703
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 49
byte 1 0
align 1
LABELV $702
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 48
byte 1 0
align 1
LABELV $701
byte 1 69
byte 1 86
byte 1 95
byte 1 85
byte 1 83
byte 1 69
byte 1 0
align 1
LABELV $700
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 67
byte 1 82
byte 1 69
byte 1 69
byte 1 78
byte 1 83
byte 1 72
byte 1 65
byte 1 75
byte 1 69
byte 1 0
align 1
LABELV $699
byte 1 69
byte 1 86
byte 1 95
byte 1 84
byte 1 69
byte 1 65
byte 1 77
byte 1 95
byte 1 80
byte 1 79
byte 1 87
byte 1 69
byte 1 82
byte 1 0
align 1
LABELV $698
byte 1 69
byte 1 86
byte 1 95
byte 1 80
byte 1 82
byte 1 69
byte 1 68
byte 1 69
byte 1 70
byte 1 83
byte 1 79
byte 1 85
byte 1 78
byte 1 68
byte 1 0
align 1
LABELV $697
byte 1 69
byte 1 86
byte 1 95
byte 1 68
byte 1 73
byte 1 83
byte 1 82
byte 1 85
byte 1 80
byte 1 84
byte 1 79
byte 1 82
byte 1 95
byte 1 90
byte 1 79
byte 1 79
byte 1 77
byte 1 83
byte 1 79
byte 1 85
byte 1 78
byte 1 68
byte 1 0
align 1
LABELV $696
byte 1 69
byte 1 86
byte 1 95
byte 1 68
byte 1 73
byte 1 83
byte 1 82
byte 1 85
byte 1 80
byte 1 84
byte 1 79
byte 1 82
byte 1 95
byte 1 72
byte 1 73
byte 1 84
byte 1 0
align 1
LABELV $695
byte 1 69
byte 1 86
byte 1 95
byte 1 68
byte 1 73
byte 1 83
byte 1 82
byte 1 85
byte 1 80
byte 1 84
byte 1 79
byte 1 82
byte 1 95
byte 1 83
byte 1 78
byte 1 73
byte 1 80
byte 1 69
byte 1 82
byte 1 95
byte 1 77
byte 1 73
byte 1 83
byte 1 83
byte 1 0
align 1
LABELV $694
byte 1 69
byte 1 86
byte 1 95
byte 1 68
byte 1 73
byte 1 83
byte 1 82
byte 1 85
byte 1 80
byte 1 84
byte 1 79
byte 1 82
byte 1 95
byte 1 83
byte 1 78
byte 1 73
byte 1 80
byte 1 69
byte 1 82
byte 1 95
byte 1 83
byte 1 72
byte 1 79
byte 1 84
byte 1 0
align 1
LABELV $693
byte 1 69
byte 1 86
byte 1 95
byte 1 68
byte 1 73
byte 1 83
byte 1 82
byte 1 85
byte 1 80
byte 1 84
byte 1 79
byte 1 82
byte 1 95
byte 1 77
byte 1 65
byte 1 73
byte 1 78
byte 1 95
byte 1 83
byte 1 72
byte 1 79
byte 1 84
byte 1 0
align 1
LABELV $692
byte 1 69
byte 1 86
byte 1 95
byte 1 66
byte 1 69
byte 1 67
byte 1 79
byte 1 77
byte 1 69
byte 1 95
byte 1 74
byte 1 69
byte 1 68
byte 1 73
byte 1 77
byte 1 65
byte 1 83
byte 1 84
byte 1 69
byte 1 82
byte 1 0
align 1
LABELV $691
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 65
byte 1 66
byte 1 69
byte 1 82
byte 1 95
byte 1 85
byte 1 78
byte 1 72
byte 1 79
byte 1 76
byte 1 83
byte 1 84
byte 1 69
byte 1 82
byte 1 0
align 1
LABELV $690
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 65
byte 1 66
byte 1 69
byte 1 82
byte 1 95
byte 1 66
byte 1 76
byte 1 79
byte 1 67
byte 1 75
byte 1 0
align 1
LABELV $689
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 65
byte 1 66
byte 1 69
byte 1 82
byte 1 95
byte 1 72
byte 1 73
byte 1 84
byte 1 0
align 1
LABELV $688
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 65
byte 1 66
byte 1 69
byte 1 82
byte 1 95
byte 1 65
byte 1 84
byte 1 84
byte 1 65
byte 1 67
byte 1 75
byte 1 0
align 1
LABELV $687
byte 1 69
byte 1 86
byte 1 95
byte 1 65
byte 1 76
byte 1 84
byte 1 95
byte 1 70
byte 1 73
byte 1 82
byte 1 69
byte 1 0
align 1
LABELV $686
byte 1 69
byte 1 86
byte 1 95
byte 1 70
byte 1 73
byte 1 82
byte 1 69
byte 1 95
byte 1 87
byte 1 69
byte 1 65
byte 1 80
byte 1 79
byte 1 78
byte 1 0
align 1
LABELV $685
byte 1 69
byte 1 86
byte 1 95
byte 1 67
byte 1 72
byte 1 65
byte 1 78
byte 1 71
byte 1 69
byte 1 95
byte 1 87
byte 1 69
byte 1 65
byte 1 80
byte 1 79
byte 1 78
byte 1 0
align 1
LABELV $684
byte 1 69
byte 1 86
byte 1 95
byte 1 78
byte 1 79
byte 1 65
byte 1 77
byte 1 77
byte 1 79
byte 1 0
align 1
LABELV $683
byte 1 69
byte 1 86
byte 1 95
byte 1 71
byte 1 76
byte 1 79
byte 1 66
byte 1 65
byte 1 76
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 95
byte 1 80
byte 1 73
byte 1 67
byte 1 75
byte 1 85
byte 1 80
byte 1 0
align 1
LABELV $682
byte 1 69
byte 1 86
byte 1 95
byte 1 73
byte 1 84
byte 1 69
byte 1 77
byte 1 95
byte 1 80
byte 1 73
byte 1 67
byte 1 75
byte 1 85
byte 1 80
byte 1 0
align 1
LABELV $681
byte 1 69
byte 1 86
byte 1 95
byte 1 87
byte 1 65
byte 1 84
byte 1 69
byte 1 82
byte 1 95
byte 1 67
byte 1 76
byte 1 69
byte 1 65
byte 1 82
byte 1 0
align 1
LABELV $680
byte 1 69
byte 1 86
byte 1 95
byte 1 87
byte 1 65
byte 1 84
byte 1 69
byte 1 82
byte 1 95
byte 1 85
byte 1 78
byte 1 68
byte 1 69
byte 1 82
byte 1 0
align 1
LABELV $679
byte 1 69
byte 1 86
byte 1 95
byte 1 87
byte 1 65
byte 1 84
byte 1 69
byte 1 82
byte 1 95
byte 1 76
byte 1 69
byte 1 65
byte 1 86
byte 1 69
byte 1 0
align 1
LABELV $678
byte 1 69
byte 1 86
byte 1 95
byte 1 87
byte 1 65
byte 1 84
byte 1 69
byte 1 82
byte 1 95
byte 1 84
byte 1 79
byte 1 85
byte 1 67
byte 1 72
byte 1 0
align 1
LABELV $677
byte 1 69
byte 1 86
byte 1 95
byte 1 82
byte 1 79
byte 1 76
byte 1 76
byte 1 0
align 1
LABELV $676
byte 1 69
byte 1 86
byte 1 95
byte 1 74
byte 1 85
byte 1 77
byte 1 80
byte 1 0
align 1
LABELV $675
byte 1 69
byte 1 86
byte 1 95
byte 1 80
byte 1 82
byte 1 73
byte 1 86
byte 1 65
byte 1 84
byte 1 69
byte 1 95
byte 1 68
byte 1 85
byte 1 69
byte 1 76
byte 1 0
align 1
LABELV $674
byte 1 69
byte 1 86
byte 1 95
byte 1 74
byte 1 85
byte 1 77
byte 1 80
byte 1 95
byte 1 80
byte 1 65
byte 1 68
byte 1 0
align 1
LABELV $673
byte 1 69
byte 1 86
byte 1 95
byte 1 70
byte 1 65
byte 1 76
byte 1 76
byte 1 0
align 1
LABELV $672
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 84
byte 1 69
byte 1 80
byte 1 95
byte 1 49
byte 1 54
byte 1 0
align 1
LABELV $671
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 84
byte 1 69
byte 1 80
byte 1 95
byte 1 49
byte 1 50
byte 1 0
align 1
LABELV $670
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 84
byte 1 69
byte 1 80
byte 1 95
byte 1 56
byte 1 0
align 1
LABELV $669
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 84
byte 1 69
byte 1 80
byte 1 95
byte 1 52
byte 1 0
align 1
LABELV $668
byte 1 69
byte 1 86
byte 1 95
byte 1 83
byte 1 87
byte 1 73
byte 1 77
byte 1 0
align 1
LABELV $667
byte 1 69
byte 1 86
byte 1 95
byte 1 70
byte 1 79
byte 1 79
byte 1 84
byte 1 87
byte 1 65
byte 1 68
byte 1 69
byte 1 0
align 1
LABELV $666
byte 1 69
byte 1 86
byte 1 95
byte 1 70
byte 1 79
byte 1 79
byte 1 84
byte 1 83
byte 1 80
byte 1 76
byte 1 65
byte 1 83
byte 1 72
byte 1 0
align 1
LABELV $665
byte 1 69
byte 1 86
byte 1 95
byte 1 70
byte 1 79
byte 1 79
byte 1 84
byte 1 83
byte 1 84
byte 1 69
byte 1 80
byte 1 95
byte 1 77
byte 1 69
byte 1 84
byte 1 65
byte 1 76
byte 1 0
align 1
LABELV $664
byte 1 69
byte 1 86
byte 1 95
byte 1 70
byte 1 79
byte 1 79
byte 1 84
byte 1 83
byte 1 84
byte 1 69
byte 1 80
byte 1 0
align 1
LABELV $663
byte 1 69
byte 1 86
byte 1 95
byte 1 67
byte 1 76
byte 1 73
byte 1 69
byte 1 78
byte 1 84
byte 1 74
byte 1 79
byte 1 73
byte 1 78
byte 1 0
align 1
LABELV $662
byte 1 69
byte 1 86
byte 1 95
byte 1 78
byte 1 79
byte 1 78
byte 1 69
byte 1 0
align 1
LABELV $660
byte 1 66
byte 1 71
byte 1 95
byte 1 69
byte 1 118
byte 1 97
byte 1 108
byte 1 117
byte 1 97
byte 1 116
byte 1 101
byte 1 84
byte 1 114
byte 1 97
byte 1 106
byte 1 101
byte 1 99
byte 1 116
byte 1 111
byte 1 114
byte 1 121
byte 1 68
byte 1 101
byte 1 108
byte 1 116
byte 1 97
byte 1 58
byte 1 32
byte 1 117
byte 1 110
byte 1 107
byte 1 110
byte 1 111
byte 1 119
byte 1 110
byte 1 32
byte 1 116
byte 1 114
byte 1 84
byte 1 121
byte 1 112
byte 1 101
byte 1 58
byte 1 32
byte 1 37
byte 1 105
byte 1 0
align 1
LABELV $647
byte 1 66
byte 1 71
byte 1 95
byte 1 69
byte 1 118
byte 1 97
byte 1 108
byte 1 117
byte 1 97
byte 1 116
byte 1 101
byte 1 84
byte 1 114
byte 1 97
byte 1 106
byte 1 101
byte 1 99
byte 1 116
byte 1 111
byte 1 114
byte 1 121
byte 1 58
byte 1 32
byte 1 91
byte 1 67
byte 1 76
byte 1 73
byte 1 69
byte 1 78
byte 1 84
byte 1 71
byte 1 65
byte 1 77
byte 1 69
byte 1 32
byte 1 83
byte 1 73
byte 1 68
byte 1 69
byte 1 93
byte 1 32
byte 1 117
byte 1 110
byte 1 107
byte 1 110
byte 1 111
byte 1 119
byte 1 110
byte 1 32
byte 1 116
byte 1 114
byte 1 84
byte 1 121
byte 1 112
byte 1 101
byte 1 58
byte 1 32
byte 1 37
byte 1 105
byte 1 0
align 1
LABELV $632
byte 1 66
byte 1 71
byte 1 95
byte 1 67
byte 1 97
byte 1 110
byte 1 73
byte 1 116
byte 1 101
byte 1 109
byte 1 66
byte 1 101
byte 1 71
byte 1 114
byte 1 97
byte 1 98
byte 1 98
byte 1 101
byte 1 100
byte 1 58
byte 1 32
byte 1 73
byte 1 84
byte 1 95
byte 1 66
byte 1 65
byte 1 68
byte 1 0
align 1
LABELV $558
byte 1 66
byte 1 71
byte 1 95
byte 1 67
byte 1 97
byte 1 110
byte 1 73
byte 1 116
byte 1 101
byte 1 109
byte 1 66
byte 1 101
byte 1 71
byte 1 114
byte 1 97
byte 1 98
byte 1 98
byte 1 101
byte 1 100
byte 1 58
byte 1 32
byte 1 105
byte 1 110
byte 1 100
byte 1 101
byte 1 120
byte 1 32
byte 1 111
byte 1 117
byte 1 116
byte 1 32
byte 1 111
byte 1 102
byte 1 32
byte 1 114
byte 1 97
byte 1 110
byte 1 103
byte 1 101
byte 1 0
align 1
LABELV $475
byte 1 67
byte 1 111
byte 1 117
byte 1 108
byte 1 100
byte 1 110
byte 1 39
byte 1 116
byte 1 32
byte 1 102
byte 1 105
byte 1 110
byte 1 100
byte 1 32
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 32
byte 1 102
byte 1 111
byte 1 114
byte 1 32
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 32
byte 1 37
byte 1 105
byte 1 0
align 1
LABELV $466
byte 1 72
byte 1 111
byte 1 108
byte 1 100
byte 1 97
byte 1 98
byte 1 108
byte 1 101
byte 1 73
byte 1 116
byte 1 101
byte 1 109
byte 1 32
byte 1 110
byte 1 111
byte 1 116
byte 1 32
byte 1 102
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 0
align 1
LABELV $410
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 115
byte 1 47
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 104
byte 1 95
byte 1 98
byte 1 111
byte 1 114
byte 1 98
byte 1 0
align 1
LABELV $409
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 112
byte 1 111
byte 1 119
byte 1 101
byte 1 114
byte 1 117
byte 1 112
byte 1 115
byte 1 47
byte 1 111
byte 1 114
byte 1 98
byte 1 47
byte 1 98
byte 1 95
byte 1 111
byte 1 114
byte 1 98
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $408
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 98
byte 1 108
byte 1 117
byte 1 101
byte 1 99
byte 1 117
byte 1 98
byte 1 101
byte 1 0
align 1
LABELV $407
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 115
byte 1 47
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 104
byte 1 95
byte 1 114
byte 1 111
byte 1 114
byte 1 98
byte 1 0
align 1
LABELV $406
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 112
byte 1 111
byte 1 119
byte 1 101
byte 1 114
byte 1 117
byte 1 112
byte 1 115
byte 1 47
byte 1 111
byte 1 114
byte 1 98
byte 1 47
byte 1 114
byte 1 95
byte 1 111
byte 1 114
byte 1 98
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $405
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 114
byte 1 101
byte 1 100
byte 1 99
byte 1 117
byte 1 98
byte 1 101
byte 1 0
align 1
LABELV $404
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 115
byte 1 47
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 102
byte 1 95
byte 1 110
byte 1 101
byte 1 117
byte 1 116
byte 1 114
byte 1 97
byte 1 108
byte 1 49
byte 1 0
align 1
LABELV $403
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 115
byte 1 47
byte 1 110
byte 1 95
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $402
byte 1 116
byte 1 101
byte 1 97
byte 1 109
byte 1 95
byte 1 67
byte 1 84
byte 1 70
byte 1 95
byte 1 110
byte 1 101
byte 1 117
byte 1 116
byte 1 114
byte 1 97
byte 1 108
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 0
align 1
LABELV $401
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 109
byte 1 112
byte 1 105
byte 1 95
byte 1 98
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 0
align 1
LABELV $400
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 115
byte 1 47
byte 1 98
byte 1 95
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 95
byte 1 121
byte 1 115
byte 1 97
byte 1 108
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $399
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 115
byte 1 47
byte 1 98
byte 1 95
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $398
byte 1 116
byte 1 101
byte 1 97
byte 1 109
byte 1 95
byte 1 67
byte 1 84
byte 1 70
byte 1 95
byte 1 98
byte 1 108
byte 1 117
byte 1 101
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 0
align 1
LABELV $397
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 109
byte 1 112
byte 1 105
byte 1 95
byte 1 114
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 0
align 1
LABELV $396
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 115
byte 1 47
byte 1 114
byte 1 95
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 95
byte 1 121
byte 1 115
byte 1 97
byte 1 108
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $395
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 115
byte 1 47
byte 1 114
byte 1 95
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $394
byte 1 116
byte 1 101
byte 1 97
byte 1 109
byte 1 95
byte 1 67
byte 1 84
byte 1 70
byte 1 95
byte 1 114
byte 1 101
byte 1 100
byte 1 102
byte 1 108
byte 1 97
byte 1 103
byte 1 0
align 1
LABELV $393
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 97
byte 1 109
byte 1 109
byte 1 111
byte 1 95
byte 1 114
byte 1 111
byte 1 99
byte 1 107
byte 1 101
byte 1 116
byte 1 115
byte 1 0
align 1
LABELV $392
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 115
byte 1 47
byte 1 114
byte 1 111
byte 1 99
byte 1 107
byte 1 101
byte 1 116
byte 1 115
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $391
byte 1 97
byte 1 109
byte 1 109
byte 1 111
byte 1 95
byte 1 114
byte 1 111
byte 1 99
byte 1 107
byte 1 101
byte 1 116
byte 1 115
byte 1 0
align 1
LABELV $390
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 97
byte 1 109
byte 1 109
byte 1 111
byte 1 95
byte 1 109
byte 1 101
byte 1 116
byte 1 97
byte 1 108
byte 1 108
byte 1 105
byte 1 99
byte 1 95
byte 1 98
byte 1 111
byte 1 108
byte 1 116
byte 1 115
byte 1 0
align 1
LABELV $389
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 115
byte 1 47
byte 1 109
byte 1 101
byte 1 116
byte 1 97
byte 1 108
byte 1 108
byte 1 105
byte 1 99
byte 1 95
byte 1 98
byte 1 111
byte 1 108
byte 1 116
byte 1 115
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $388
byte 1 97
byte 1 109
byte 1 109
byte 1 111
byte 1 95
byte 1 109
byte 1 101
byte 1 116
byte 1 97
byte 1 108
byte 1 108
byte 1 105
byte 1 99
byte 1 95
byte 1 98
byte 1 111
byte 1 108
byte 1 116
byte 1 115
byte 1 0
align 1
LABELV $387
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 97
byte 1 109
byte 1 109
byte 1 111
byte 1 95
byte 1 112
byte 1 111
byte 1 119
byte 1 101
byte 1 114
byte 1 95
byte 1 99
byte 1 101
byte 1 108
byte 1 108
byte 1 0
align 1
LABELV $386
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 115
byte 1 47
byte 1 112
byte 1 111
byte 1 119
byte 1 101
byte 1 114
byte 1 95
byte 1 99
byte 1 101
byte 1 108
byte 1 108
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $385
byte 1 97
byte 1 109
byte 1 109
byte 1 111
byte 1 95
byte 1 112
byte 1 111
byte 1 119
byte 1 101
byte 1 114
byte 1 99
byte 1 101
byte 1 108
byte 1 108
byte 1 0
align 1
LABELV $384
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 105
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 98
byte 1 97
byte 1 116
byte 1 116
byte 1 101
byte 1 114
byte 1 121
byte 1 0
align 1
LABELV $383
byte 1 97
byte 1 109
byte 1 109
byte 1 111
byte 1 95
byte 1 98
byte 1 108
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 0
align 1
LABELV $382
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 115
byte 1 47
byte 1 101
byte 1 110
byte 1 101
byte 1 114
byte 1 103
byte 1 121
byte 1 95
byte 1 99
byte 1 101
byte 1 108
byte 1 108
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $381
byte 1 115
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 47
byte 1 112
byte 1 108
byte 1 97
byte 1 121
byte 1 101
byte 1 114
byte 1 47
byte 1 112
byte 1 105
byte 1 99
byte 1 107
byte 1 117
byte 1 112
byte 1 101
byte 1 110
byte 1 101
byte 1 114
byte 1 103
byte 1 121
byte 1 46
byte 1 119
byte 1 97
byte 1 118
byte 1 0
align 1
LABELV $380
byte 1 97
byte 1 109
byte 1 109
byte 1 111
byte 1 95
byte 1 102
byte 1 111
byte 1 114
byte 1 99
byte 1 101
byte 1 0
align 1
LABELV $379
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 116
byte 1 117
byte 1 114
byte 1 114
byte 1 101
byte 1 116
byte 1 119
byte 1 112
byte 1 0
align 1
LABELV $378
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 101
byte 1 109
byte 1 112
byte 1 108
byte 1 97
byte 1 99
byte 1 101
byte 1 100
byte 1 0
align 1
LABELV $377
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 100
byte 1 101
byte 1 116
byte 1 95
byte 1 112
byte 1 97
byte 1 99
byte 1 107
byte 1 0
align 1
LABELV $376
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 116
byte 1 114
byte 1 105
byte 1 112
byte 1 95
byte 1 109
byte 1 105
byte 1 110
byte 1 101
byte 1 0
align 1
LABELV $375
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 116
byte 1 104
byte 1 101
byte 1 114
byte 1 109
byte 1 97
byte 1 108
byte 1 0
align 1
LABELV $374
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 100
byte 1 101
byte 1 116
byte 1 112
byte 1 97
byte 1 99
byte 1 107
byte 1 0
align 1
LABELV $373
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 100
byte 1 101
byte 1 116
byte 1 112
byte 1 97
byte 1 99
byte 1 107
byte 1 47
byte 1 100
byte 1 101
byte 1 116
byte 1 95
byte 1 112
byte 1 97
byte 1 99
byte 1 107
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $372
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 100
byte 1 101
byte 1 116
byte 1 112
byte 1 97
byte 1 99
byte 1 107
byte 1 47
byte 1 100
byte 1 101
byte 1 116
byte 1 95
byte 1 112
byte 1 97
byte 1 99
byte 1 107
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $371
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 100
byte 1 101
byte 1 116
byte 1 112
byte 1 97
byte 1 99
byte 1 107
byte 1 47
byte 1 100
byte 1 101
byte 1 116
byte 1 95
byte 1 112
byte 1 97
byte 1 99
byte 1 107
byte 1 95
byte 1 112
byte 1 114
byte 1 111
byte 1 106
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $370
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 100
byte 1 101
byte 1 116
byte 1 112
byte 1 97
byte 1 99
byte 1 107
byte 1 47
byte 1 100
byte 1 101
byte 1 116
byte 1 95
byte 1 112
byte 1 97
byte 1 99
byte 1 107
byte 1 95
byte 1 112
byte 1 117
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $369
byte 1 97
byte 1 109
byte 1 109
byte 1 111
byte 1 95
byte 1 100
byte 1 101
byte 1 116
byte 1 112
byte 1 97
byte 1 99
byte 1 107
byte 1 0
align 1
LABELV $368
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 116
byte 1 114
byte 1 105
byte 1 112
byte 1 109
byte 1 105
byte 1 110
byte 1 101
byte 1 0
align 1
LABELV $367
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 108
byte 1 97
byte 1 115
byte 1 101
byte 1 114
byte 1 95
byte 1 116
byte 1 114
byte 1 97
byte 1 112
byte 1 47
byte 1 108
byte 1 97
byte 1 115
byte 1 101
byte 1 114
byte 1 95
byte 1 116
byte 1 114
byte 1 97
byte 1 112
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $366
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 108
byte 1 97
byte 1 115
byte 1 101
byte 1 114
byte 1 95
byte 1 116
byte 1 114
byte 1 97
byte 1 112
byte 1 47
byte 1 108
byte 1 97
byte 1 115
byte 1 101
byte 1 114
byte 1 95
byte 1 116
byte 1 114
byte 1 97
byte 1 112
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $365
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 108
byte 1 97
byte 1 115
byte 1 101
byte 1 114
byte 1 95
byte 1 116
byte 1 114
byte 1 97
byte 1 112
byte 1 47
byte 1 108
byte 1 97
byte 1 115
byte 1 101
byte 1 114
byte 1 95
byte 1 116
byte 1 114
byte 1 97
byte 1 112
byte 1 95
byte 1 112
byte 1 117
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $364
byte 1 97
byte 1 109
byte 1 109
byte 1 111
byte 1 95
byte 1 116
byte 1 114
byte 1 105
byte 1 112
byte 1 109
byte 1 105
byte 1 110
byte 1 101
byte 1 0
align 1
LABELV $363
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 116
byte 1 104
byte 1 101
byte 1 114
byte 1 109
byte 1 97
byte 1 108
byte 1 0
align 1
LABELV $362
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 116
byte 1 104
byte 1 101
byte 1 114
byte 1 109
byte 1 97
byte 1 108
byte 1 47
byte 1 116
byte 1 104
byte 1 101
byte 1 114
byte 1 109
byte 1 97
byte 1 108
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $361
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 116
byte 1 104
byte 1 101
byte 1 114
byte 1 109
byte 1 97
byte 1 108
byte 1 47
byte 1 116
byte 1 104
byte 1 101
byte 1 114
byte 1 109
byte 1 97
byte 1 108
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $360
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 116
byte 1 104
byte 1 101
byte 1 114
byte 1 109
byte 1 97
byte 1 108
byte 1 47
byte 1 116
byte 1 104
byte 1 101
byte 1 114
byte 1 109
byte 1 97
byte 1 108
byte 1 95
byte 1 112
byte 1 117
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $359
byte 1 97
byte 1 109
byte 1 109
byte 1 111
byte 1 95
byte 1 116
byte 1 104
byte 1 101
byte 1 114
byte 1 109
byte 1 97
byte 1 108
byte 1 0
align 1
LABELV $358
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 109
byte 1 101
byte 1 114
byte 1 114
byte 1 115
byte 1 111
byte 1 110
byte 1 110
byte 1 0
align 1
LABELV $357
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 109
byte 1 101
byte 1 114
byte 1 114
byte 1 95
byte 1 115
byte 1 111
byte 1 110
byte 1 110
byte 1 47
byte 1 109
byte 1 101
byte 1 114
byte 1 114
byte 1 95
byte 1 115
byte 1 111
byte 1 110
byte 1 110
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $356
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 109
byte 1 101
byte 1 114
byte 1 114
byte 1 95
byte 1 115
byte 1 111
byte 1 110
byte 1 110
byte 1 47
byte 1 109
byte 1 101
byte 1 114
byte 1 114
byte 1 95
byte 1 115
byte 1 111
byte 1 110
byte 1 110
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $355
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 114
byte 1 111
byte 1 99
byte 1 107
byte 1 101
byte 1 116
byte 1 95
byte 1 108
byte 1 97
byte 1 117
byte 1 110
byte 1 99
byte 1 104
byte 1 101
byte 1 114
byte 1 0
align 1
LABELV $354
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 102
byte 1 108
byte 1 101
byte 1 99
byte 1 104
byte 1 101
byte 1 116
byte 1 116
byte 1 101
byte 1 0
align 1
LABELV $353
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 103
byte 1 111
byte 1 108
byte 1 97
byte 1 110
byte 1 95
byte 1 97
byte 1 114
byte 1 109
byte 1 115
byte 1 47
byte 1 103
byte 1 111
byte 1 108
byte 1 97
byte 1 110
byte 1 95
byte 1 97
byte 1 114
byte 1 109
byte 1 115
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $352
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 103
byte 1 111
byte 1 108
byte 1 97
byte 1 110
byte 1 95
byte 1 97
byte 1 114
byte 1 109
byte 1 115
byte 1 47
byte 1 103
byte 1 111
byte 1 108
byte 1 97
byte 1 110
byte 1 95
byte 1 97
byte 1 114
byte 1 109
byte 1 115
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $351
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 102
byte 1 108
byte 1 101
byte 1 99
byte 1 104
byte 1 101
byte 1 116
byte 1 116
byte 1 101
byte 1 0
align 1
LABELV $350
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 100
byte 1 101
byte 1 109
byte 1 112
byte 1 50
byte 1 0
align 1
LABELV $349
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 100
byte 1 101
byte 1 109
byte 1 112
byte 1 50
byte 1 47
byte 1 100
byte 1 101
byte 1 109
byte 1 112
byte 1 50
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $348
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 100
byte 1 101
byte 1 109
byte 1 112
byte 1 50
byte 1 47
byte 1 100
byte 1 101
byte 1 109
byte 1 112
byte 1 50
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $347
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 100
byte 1 101
byte 1 109
byte 1 112
byte 1 50
byte 1 0
align 1
LABELV $346
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 114
byte 1 101
byte 1 112
byte 1 101
byte 1 97
byte 1 116
byte 1 101
byte 1 114
byte 1 0
align 1
LABELV $345
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 104
byte 1 101
byte 1 97
byte 1 118
byte 1 121
byte 1 95
byte 1 114
byte 1 101
byte 1 112
byte 1 101
byte 1 97
byte 1 116
byte 1 101
byte 1 114
byte 1 47
byte 1 104
byte 1 101
byte 1 97
byte 1 118
byte 1 121
byte 1 95
byte 1 114
byte 1 101
byte 1 112
byte 1 101
byte 1 97
byte 1 116
byte 1 101
byte 1 114
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $344
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 104
byte 1 101
byte 1 97
byte 1 118
byte 1 121
byte 1 95
byte 1 114
byte 1 101
byte 1 112
byte 1 101
byte 1 97
byte 1 116
byte 1 101
byte 1 114
byte 1 47
byte 1 104
byte 1 101
byte 1 97
byte 1 118
byte 1 121
byte 1 95
byte 1 114
byte 1 101
byte 1 112
byte 1 101
byte 1 97
byte 1 116
byte 1 101
byte 1 114
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $343
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 114
byte 1 101
byte 1 112
byte 1 101
byte 1 97
byte 1 116
byte 1 101
byte 1 114
byte 1 0
align 1
LABELV $342
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 98
byte 1 111
byte 1 119
byte 1 99
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 0
align 1
LABELV $341
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 98
byte 1 111
byte 1 119
byte 1 99
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 47
byte 1 98
byte 1 111
byte 1 119
byte 1 99
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $340
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 98
byte 1 111
byte 1 119
byte 1 99
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 47
byte 1 98
byte 1 111
byte 1 119
byte 1 99
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $339
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 98
byte 1 111
byte 1 119
byte 1 99
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 0
align 1
LABELV $338
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 100
byte 1 105
byte 1 115
byte 1 114
byte 1 117
byte 1 112
byte 1 116
byte 1 111
byte 1 114
byte 1 0
align 1
LABELV $337
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 100
byte 1 105
byte 1 115
byte 1 114
byte 1 117
byte 1 112
byte 1 116
byte 1 111
byte 1 114
byte 1 47
byte 1 100
byte 1 105
byte 1 115
byte 1 114
byte 1 117
byte 1 112
byte 1 116
byte 1 111
byte 1 114
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $336
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 100
byte 1 105
byte 1 115
byte 1 114
byte 1 117
byte 1 112
byte 1 116
byte 1 111
byte 1 114
byte 1 47
byte 1 100
byte 1 105
byte 1 115
byte 1 114
byte 1 117
byte 1 112
byte 1 116
byte 1 111
byte 1 114
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $335
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 100
byte 1 105
byte 1 115
byte 1 114
byte 1 117
byte 1 112
byte 1 116
byte 1 111
byte 1 114
byte 1 0
align 1
LABELV $334
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 98
byte 1 108
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 0
align 1
LABELV $333
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 98
byte 1 108
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 95
byte 1 114
byte 1 47
byte 1 98
byte 1 108
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $332
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 98
byte 1 108
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 95
byte 1 114
byte 1 47
byte 1 98
byte 1 108
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $331
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 98
byte 1 108
byte 1 97
byte 1 115
byte 1 116
byte 1 101
byte 1 114
byte 1 0
align 1
LABELV $330
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 114
byte 1 105
byte 1 102
byte 1 108
byte 1 101
byte 1 0
align 1
LABELV $329
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 98
byte 1 114
byte 1 105
byte 1 97
byte 1 114
byte 1 95
byte 1 112
byte 1 105
byte 1 115
byte 1 116
byte 1 111
byte 1 108
byte 1 47
byte 1 98
byte 1 114
byte 1 105
byte 1 97
byte 1 114
byte 1 95
byte 1 112
byte 1 105
byte 1 115
byte 1 116
byte 1 111
byte 1 108
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $328
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 98
byte 1 114
byte 1 105
byte 1 97
byte 1 114
byte 1 95
byte 1 112
byte 1 105
byte 1 115
byte 1 116
byte 1 111
byte 1 108
byte 1 47
byte 1 98
byte 1 114
byte 1 105
byte 1 97
byte 1 114
byte 1 95
byte 1 112
byte 1 105
byte 1 115
byte 1 116
byte 1 111
byte 1 108
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $327
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 98
byte 1 114
byte 1 121
byte 1 97
byte 1 114
byte 1 95
byte 1 112
byte 1 105
byte 1 115
byte 1 116
byte 1 111
byte 1 108
byte 1 0
align 1
LABELV $326
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 108
byte 1 105
byte 1 103
byte 1 104
byte 1 116
byte 1 115
byte 1 97
byte 1 98
byte 1 101
byte 1 114
byte 1 0
align 1
LABELV $325
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 115
byte 1 97
byte 1 98
byte 1 101
byte 1 114
byte 1 47
byte 1 115
byte 1 97
byte 1 98
byte 1 101
byte 1 114
byte 1 95
byte 1 119
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $324
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 115
byte 1 97
byte 1 98
byte 1 101
byte 1 114
byte 1 47
byte 1 115
byte 1 97
byte 1 98
byte 1 101
byte 1 114
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $323
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 115
byte 1 97
byte 1 98
byte 1 101
byte 1 114
byte 1 0
align 1
LABELV $322
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 119
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 115
byte 1 116
byte 1 117
byte 1 110
byte 1 98
byte 1 97
byte 1 116
byte 1 111
byte 1 110
byte 1 0
align 1
LABELV $321
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 115
byte 1 116
byte 1 117
byte 1 110
byte 1 95
byte 1 98
byte 1 97
byte 1 116
byte 1 111
byte 1 110
byte 1 47
byte 1 98
byte 1 97
byte 1 116
byte 1 111
byte 1 110
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $320
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 50
byte 1 47
byte 1 115
byte 1 116
byte 1 117
byte 1 110
byte 1 95
byte 1 98
byte 1 97
byte 1 116
byte 1 111
byte 1 110
byte 1 47
byte 1 98
byte 1 97
byte 1 116
byte 1 111
byte 1 110
byte 1 95
byte 1 119
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $319
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 95
byte 1 115
byte 1 116
byte 1 117
byte 1 110
byte 1 95
byte 1 98
byte 1 97
byte 1 116
byte 1 111
byte 1 110
byte 1 0
align 1
LABELV $318
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 109
byte 1 112
byte 1 105
byte 1 95
byte 1 121
byte 1 115
byte 1 97
byte 1 109
byte 1 97
byte 1 114
byte 1 105
byte 1 0
align 1
LABELV $317
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 109
byte 1 97
byte 1 112
byte 1 95
byte 1 111
byte 1 98
byte 1 106
byte 1 101
byte 1 99
byte 1 116
byte 1 115
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 121
byte 1 115
byte 1 97
byte 1 108
byte 1 105
byte 1 109
byte 1 97
byte 1 114
byte 1 105
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $316
byte 1 115
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 47
byte 1 112
byte 1 108
byte 1 97
byte 1 121
byte 1 101
byte 1 114
byte 1 47
byte 1 121
byte 1 115
byte 1 97
byte 1 108
byte 1 105
byte 1 109
byte 1 97
byte 1 114
byte 1 105
byte 1 46
byte 1 119
byte 1 97
byte 1 118
byte 1 0
align 1
LABELV $315
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 121
byte 1 115
byte 1 97
byte 1 108
byte 1 105
byte 1 109
byte 1 97
byte 1 114
byte 1 105
byte 1 0
align 1
LABELV $314
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 109
byte 1 112
byte 1 105
byte 1 95
byte 1 102
byte 1 98
byte 1 111
byte 1 111
byte 1 110
byte 1 0
align 1
LABELV $313
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 109
byte 1 97
byte 1 112
byte 1 95
byte 1 111
byte 1 98
byte 1 106
byte 1 101
byte 1 99
byte 1 116
byte 1 115
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 102
byte 1 111
byte 1 114
byte 1 99
byte 1 101
byte 1 95
byte 1 98
byte 1 111
byte 1 111
byte 1 110
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $312
byte 1 115
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 47
byte 1 112
byte 1 108
byte 1 97
byte 1 121
byte 1 101
byte 1 114
byte 1 47
byte 1 98
byte 1 111
byte 1 111
byte 1 110
byte 1 46
byte 1 119
byte 1 97
byte 1 118
byte 1 0
align 1
LABELV $311
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 102
byte 1 111
byte 1 114
byte 1 99
byte 1 101
byte 1 95
byte 1 98
byte 1 111
byte 1 111
byte 1 110
byte 1 0
align 1
LABELV $310
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 109
byte 1 112
byte 1 105
byte 1 95
byte 1 100
byte 1 107
byte 1 108
byte 1 105
byte 1 103
byte 1 104
byte 1 116
byte 1 0
align 1
LABELV $309
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 109
byte 1 97
byte 1 112
byte 1 95
byte 1 111
byte 1 98
byte 1 106
byte 1 101
byte 1 99
byte 1 116
byte 1 115
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 100
byte 1 107
byte 1 95
byte 1 101
byte 1 110
byte 1 108
byte 1 105
byte 1 103
byte 1 104
byte 1 116
byte 1 101
byte 1 110
byte 1 109
byte 1 101
byte 1 110
byte 1 116
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $308
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 102
byte 1 111
byte 1 114
byte 1 99
byte 1 101
byte 1 95
byte 1 101
byte 1 110
byte 1 108
byte 1 105
byte 1 103
byte 1 104
byte 1 116
byte 1 101
byte 1 110
byte 1 95
byte 1 100
byte 1 97
byte 1 114
byte 1 107
byte 1 0
align 1
LABELV $307
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 109
byte 1 112
byte 1 105
byte 1 95
byte 1 106
byte 1 108
byte 1 105
byte 1 103
byte 1 104
byte 1 116
byte 1 0
align 1
LABELV $306
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 109
byte 1 97
byte 1 112
byte 1 95
byte 1 111
byte 1 98
byte 1 106
byte 1 101
byte 1 99
byte 1 116
byte 1 115
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 106
byte 1 101
byte 1 100
byte 1 105
byte 1 95
byte 1 101
byte 1 110
byte 1 108
byte 1 105
byte 1 103
byte 1 104
byte 1 116
byte 1 101
byte 1 110
byte 1 109
byte 1 101
byte 1 110
byte 1 116
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $305
byte 1 115
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 47
byte 1 112
byte 1 108
byte 1 97
byte 1 121
byte 1 101
byte 1 114
byte 1 47
byte 1 101
byte 1 110
byte 1 108
byte 1 105
byte 1 103
byte 1 104
byte 1 116
byte 1 101
byte 1 110
byte 1 109
byte 1 101
byte 1 110
byte 1 116
byte 1 46
byte 1 119
byte 1 97
byte 1 118
byte 1 0
align 1
LABELV $304
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 102
byte 1 111
byte 1 114
byte 1 99
byte 1 101
byte 1 95
byte 1 101
byte 1 110
byte 1 108
byte 1 105
byte 1 103
byte 1 104
byte 1 116
byte 1 101
byte 1 110
byte 1 95
byte 1 108
byte 1 105
byte 1 103
byte 1 104
byte 1 116
byte 1 0
align 1
LABELV $303
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 105
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 115
byte 1 101
byte 1 110
byte 1 116
byte 1 114
byte 1 121
byte 1 103
byte 1 117
byte 1 110
byte 1 0
align 1
LABELV $302
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 115
byte 1 47
byte 1 112
byte 1 115
byte 1 103
byte 1 117
byte 1 110
byte 1 46
byte 1 103
byte 1 108
byte 1 109
byte 1 0
align 1
LABELV $301
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 115
byte 1 101
byte 1 110
byte 1 116
byte 1 114
byte 1 121
byte 1 95
byte 1 103
byte 1 117
byte 1 110
byte 1 0
align 1
LABELV $300
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 105
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 122
byte 1 111
byte 1 111
byte 1 109
byte 1 0
align 1
LABELV $299
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 115
byte 1 47
byte 1 98
byte 1 105
byte 1 110
byte 1 111
byte 1 99
byte 1 117
byte 1 108
byte 1 97
byte 1 114
byte 1 115
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $298
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 98
byte 1 105
byte 1 110
byte 1 111
byte 1 99
byte 1 117
byte 1 108
byte 1 97
byte 1 114
byte 1 115
byte 1 0
align 1
LABELV $297
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 115
byte 1 47
byte 1 100
byte 1 97
byte 1 116
byte 1 97
byte 1 112
byte 1 97
byte 1 100
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $296
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 100
byte 1 97
byte 1 116
byte 1 97
byte 1 112
byte 1 97
byte 1 100
byte 1 0
align 1
LABELV $295
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 105
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 98
byte 1 97
byte 1 99
byte 1 116
byte 1 97
byte 1 0
align 1
LABELV $294
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 109
byte 1 97
byte 1 112
byte 1 95
byte 1 111
byte 1 98
byte 1 106
byte 1 101
byte 1 99
byte 1 116
byte 1 115
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 98
byte 1 97
byte 1 99
byte 1 116
byte 1 97
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $293
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 109
byte 1 101
byte 1 100
byte 1 112
byte 1 97
byte 1 99
byte 1 0
align 1
LABELV $292
byte 1 115
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 47
byte 1 100
byte 1 101
byte 1 116
byte 1 112
byte 1 97
byte 1 99
byte 1 107
byte 1 47
byte 1 115
byte 1 116
byte 1 105
byte 1 99
byte 1 107
byte 1 46
byte 1 119
byte 1 97
byte 1 118
byte 1 32
byte 1 115
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 47
byte 1 109
byte 1 111
byte 1 118
byte 1 101
byte 1 114
byte 1 115
byte 1 47
byte 1 100
byte 1 111
byte 1 111
byte 1 114
byte 1 115
byte 1 47
byte 1 102
byte 1 111
byte 1 114
byte 1 99
byte 1 101
byte 1 102
byte 1 105
byte 1 101
byte 1 108
byte 1 100
byte 1 95
byte 1 111
byte 1 110
byte 1 46
byte 1 119
byte 1 97
byte 1 118
byte 1 32
byte 1 115
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 47
byte 1 109
byte 1 111
byte 1 118
byte 1 101
byte 1 114
byte 1 115
byte 1 47
byte 1 100
byte 1 111
byte 1 111
byte 1 114
byte 1 115
byte 1 47
byte 1 102
byte 1 111
byte 1 114
byte 1 99
byte 1 101
byte 1 102
byte 1 105
byte 1 101
byte 1 108
byte 1 100
byte 1 95
byte 1 111
byte 1 102
byte 1 102
byte 1 46
byte 1 119
byte 1 97
byte 1 118
byte 1 32
byte 1 115
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 47
byte 1 109
byte 1 111
byte 1 118
byte 1 101
byte 1 114
byte 1 115
byte 1 47
byte 1 100
byte 1 111
byte 1 111
byte 1 114
byte 1 115
byte 1 47
byte 1 102
byte 1 111
byte 1 114
byte 1 99
byte 1 101
byte 1 102
byte 1 105
byte 1 101
byte 1 108
byte 1 100
byte 1 95
byte 1 108
byte 1 112
byte 1 46
byte 1 119
byte 1 97
byte 1 118
byte 1 32
byte 1 115
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 47
byte 1 101
byte 1 102
byte 1 102
byte 1 101
byte 1 99
byte 1 116
byte 1 115
byte 1 47
byte 1 98
byte 1 117
byte 1 109
byte 1 112
byte 1 102
byte 1 105
byte 1 101
byte 1 108
byte 1 100
byte 1 46
byte 1 119
byte 1 97
byte 1 118
byte 1 0
align 1
LABELV $291
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 105
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 115
byte 1 104
byte 1 105
byte 1 101
byte 1 108
byte 1 100
byte 1 119
byte 1 97
byte 1 108
byte 1 108
byte 1 0
align 1
LABELV $290
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 109
byte 1 97
byte 1 112
byte 1 95
byte 1 111
byte 1 98
byte 1 106
byte 1 101
byte 1 99
byte 1 116
byte 1 115
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 115
byte 1 104
byte 1 105
byte 1 101
byte 1 108
byte 1 100
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $289
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 115
byte 1 104
byte 1 105
byte 1 101
byte 1 108
byte 1 100
byte 1 0
align 1
LABELV $288
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 105
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 115
byte 1 101
byte 1 101
byte 1 107
byte 1 101
byte 1 114
byte 1 0
align 1
LABELV $287
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 115
byte 1 47
byte 1 114
byte 1 101
byte 1 109
byte 1 111
byte 1 116
byte 1 101
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $286
byte 1 115
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 47
byte 1 119
byte 1 101
byte 1 97
byte 1 112
byte 1 111
byte 1 110
byte 1 115
byte 1 47
byte 1 119
byte 1 95
byte 1 112
byte 1 107
byte 1 117
byte 1 112
byte 1 46
byte 1 119
byte 1 97
byte 1 118
byte 1 0
align 1
LABELV $285
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 115
byte 1 101
byte 1 101
byte 1 107
byte 1 101
byte 1 114
byte 1 0
align 1
LABELV $284
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 104
byte 1 117
byte 1 100
byte 1 47
byte 1 105
byte 1 95
byte 1 105
byte 1 99
byte 1 111
byte 1 110
byte 1 95
byte 1 109
byte 1 101
byte 1 100
byte 1 107
byte 1 105
byte 1 116
byte 1 0
align 1
LABELV $283
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 109
byte 1 97
byte 1 112
byte 1 95
byte 1 111
byte 1 98
byte 1 106
byte 1 101
byte 1 99
byte 1 116
byte 1 115
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 109
byte 1 101
byte 1 100
byte 1 112
byte 1 97
byte 1 99
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $282
byte 1 115
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 47
byte 1 112
byte 1 108
byte 1 97
byte 1 121
byte 1 101
byte 1 114
byte 1 47
byte 1 112
byte 1 105
byte 1 99
byte 1 107
byte 1 117
byte 1 112
byte 1 104
byte 1 101
byte 1 97
byte 1 108
byte 1 116
byte 1 104
byte 1 46
byte 1 119
byte 1 97
byte 1 118
byte 1 0
align 1
LABELV $281
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 109
byte 1 101
byte 1 100
byte 1 112
byte 1 97
byte 1 107
byte 1 95
byte 1 105
byte 1 110
byte 1 115
byte 1 116
byte 1 97
byte 1 110
byte 1 116
byte 1 0
align 1
LABELV $280
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 108
byte 1 97
byte 1 114
byte 1 103
byte 1 101
byte 1 95
byte 1 115
byte 1 104
byte 1 105
byte 1 101
byte 1 108
byte 1 100
byte 1 0
align 1
LABELV $279
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 109
byte 1 97
byte 1 112
byte 1 95
byte 1 111
byte 1 98
byte 1 106
byte 1 101
byte 1 99
byte 1 116
byte 1 115
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 112
byte 1 115
byte 1 100
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $278
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 115
byte 1 104
byte 1 105
byte 1 101
byte 1 108
byte 1 100
byte 1 95
byte 1 108
byte 1 114
byte 1 103
byte 1 95
byte 1 105
byte 1 110
byte 1 115
byte 1 116
byte 1 97
byte 1 110
byte 1 116
byte 1 0
align 1
LABELV $277
byte 1 103
byte 1 102
byte 1 120
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 115
byte 1 109
byte 1 97
byte 1 108
byte 1 108
byte 1 95
byte 1 115
byte 1 104
byte 1 105
byte 1 101
byte 1 108
byte 1 100
byte 1 0
align 1
LABELV $276
byte 1 109
byte 1 111
byte 1 100
byte 1 101
byte 1 108
byte 1 115
byte 1 47
byte 1 109
byte 1 97
byte 1 112
byte 1 95
byte 1 111
byte 1 98
byte 1 106
byte 1 101
byte 1 99
byte 1 116
byte 1 115
byte 1 47
byte 1 109
byte 1 112
byte 1 47
byte 1 112
byte 1 115
byte 1 100
byte 1 95
byte 1 115
byte 1 109
byte 1 46
byte 1 109
byte 1 100
byte 1 51
byte 1 0
align 1
LABELV $275
byte 1 115
byte 1 111
byte 1 117
byte 1 110
byte 1 100
byte 1 47
byte 1 112
byte 1 108
byte 1 97
byte 1 121
byte 1 101
byte 1 114
byte 1 47
byte 1 112
byte 1 105
byte 1 99
byte 1 107
byte 1 117
byte 1 112
byte 1 115
byte 1 104
byte 1 105
byte 1 101
byte 1 108
byte 1 100
byte 1 46
byte 1 119
byte 1 97
byte 1 118
byte 1 0
align 1
LABELV $274
byte 1 105
byte 1 116
byte 1 101
byte 1 109
byte 1 95
byte 1 115
byte 1 104
byte 1 105
byte 1 101
byte 1 108
byte 1 100
byte 1 95
byte 1 115
byte 1 109
byte 1 95
byte 1 105
byte 1 110
byte 1 115
byte 1 116
byte 1 97
byte 1 110
byte 1 116
byte 1 0
align 1
LABELV $273
byte 1 0
align 1
LABELV $272
byte 1 37
byte 1 105
byte 1 0
align 1
LABELV $143
byte 1 37
byte 1 105
byte 1 45
byte 1 0
align 1
LABELV $142
byte 1 55
byte 1 45
byte 1 49
byte 1 45
byte 1 48
byte 1 51
byte 1 50
byte 1 51
byte 1 51
byte 1 48
byte 1 48
byte 1 48
byte 1 48
byte 1 48
byte 1 48
byte 1 48
byte 1 48
byte 1 48
byte 1 49
byte 1 51
byte 1 51
byte 1 51
byte 1 0
align 1
LABELV $138
byte 1 77
byte 1 65
byte 1 83
byte 1 84
byte 1 69
byte 1 82
byte 1 89
byte 1 55
byte 1 0
align 1
LABELV $137
byte 1 77
byte 1 65
byte 1 83
byte 1 84
byte 1 69
byte 1 82
byte 1 89
byte 1 54
byte 1 0
align 1
LABELV $136
byte 1 77
byte 1 65
byte 1 83
byte 1 84
byte 1 69
byte 1 82
byte 1 89
byte 1 53
byte 1 0
align 1
LABELV $135
byte 1 77
byte 1 65
byte 1 83
byte 1 84
byte 1 69
byte 1 82
byte 1 89
byte 1 52
byte 1 0
align 1
LABELV $134
byte 1 77
byte 1 65
byte 1 83
byte 1 84
byte 1 69
byte 1 82
byte 1 89
byte 1 51
byte 1 0
align 1
LABELV $133
byte 1 77
byte 1 65
byte 1 83
byte 1 84
byte 1 69
byte 1 82
byte 1 89
byte 1 50
byte 1 0
align 1
LABELV $132
byte 1 77
byte 1 65
byte 1 83
byte 1 84
byte 1 69
byte 1 82
byte 1 89
byte 1 49
byte 1 0
align 1
LABELV $131
byte 1 77
byte 1 65
byte 1 83
byte 1 84
byte 1 69
byte 1 82
byte 1 89
byte 1 48
byte 1 0
