<?xml version="1.0" encoding="UTF-8"?>
<GameModel>
	<Time> Real-Time </Time>
	<Field> 3D Board </Field>
	<Classes>
		<Structure>
			<name> EnumDiplomaticStatus </name>
			<methods>
				<Function>
					<Name> fromString </Name>
					<Variable>
						<Name>  </Name>
						<Type> Integer </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> name </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> name </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> war </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kWar </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> name </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> neut </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kNeutral </Name>
												<Type> Integer </Type>
												<Value> 1 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> name </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> ally </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kAlliance </Name>
												<Type> Integer </Type>
												<Value> 2 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> kNeutral </Name>
										<Type> Integer </Type>
										<Value> 1 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> toString </Name>
					<Variable>
						<Name>  </Name>
						<Type> String </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> type </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> type </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kWar </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> war </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> type </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kNeutral </Name>
												<Type> Integer </Type>
												<Value> 1 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> neut </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> type </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kAlliance </Name>
												<Type> Integer </Type>
												<Value> 2 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> ally </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> String </Type>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> kWar </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kNeutral </Name>
					<Type> Integer </Type>
					<Value> 1 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kAlliance </Name>
					<Type> Integer </Type>
					<Value> 2 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> MapTile </name>
			<methods>
				<Function>
					<Name> Construct </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> isLand </Name>
							<Type> Boolean </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> isWater </Name>
							<Type> Boolean </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> isBlocked </Name>
							<Type> Boolean </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> containsResources </Name>
							<Type> Boolean </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> elevation </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> territoryID </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> terrainType </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> isLand </Name>
										<Type> Boolean </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_IsLand </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> isWater </Name>
										<Type> Boolean </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_IsWater </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> isBlocked </Name>
										<Type> Boolean </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_IsBlocked </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> containsResources </Name>
										<Type> Boolean </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_ContainsResources </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> elevation </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Elevation </Name>
										<Type> Real </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> territoryID </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_TerritoryID </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> terrainType </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_TerrainType </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_IsLand </Name>
					<Type> Boolean </Type>
					<Value> true </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_IsWater </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_IsBlocked </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ContainsResources </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Elevation </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_TerritoryID </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_TerrainType </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> GlobalData </name>
			<methods>
				<Function>
					<Name> ResizeMap </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> w </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> h </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="call">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> m_Map.ResizeMap </Name>
										<Variable>
											<Name>  </Name>
											<Type> void </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> w </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> h </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> true </IsMethod>
										<ObjectName> m_Map </ObjectName>
										<MethodName> ResizeMap </MethodName>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> w </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> h </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> UpdateTicks </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> time </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> tick </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> time </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_GameTime </Name>
										<Type> Real </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> tick </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_GameTick </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_Map </Name>
					<Type> Map </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Territories </Name>
					<Type> Territories </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_GameTime </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_GameTick </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_TotalNumberOfResources </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityGarrison </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_Capacity </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_GarrisonUnitTypes </Name>
					<Type> UnitTypes </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_AllowsAllies </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_AllowsNeutral </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_AllowsEnemies </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_AttackBonus </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ResourceBonus </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_HealPoints </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ResourceGatherRate </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ResoruceType </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityTargetingList </name>
			<super> UnitAbility </super><methods/><members/>
		</Structure>
		<Structure>
			<name> StringStringMap </name>
			<methods>
				<Function>
					<Name> Add </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> entry </Name>
							<Type> SSEntry </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> index </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> fEntry </Name>
								<Type> SSEntry </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> lenMin2 </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> FindIndex </Name>
										<Variable>
											<Name>  </Name>
											<Type> Integer </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> mapVal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> entry.m_StrA </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> index </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> index </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> m_Strings.length </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> entry </Name>
												<Type> StringPair </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> m_Strings[] </Name>
												<Type> StringPair </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Strings </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> index </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</SetObject>
								</Statement>
							</StatementBlock>
							<ElseBlock>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Strings[] </Name>
												<Type> StringPair </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Strings </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> index </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> fEntry </Name>
												<Type> StringPair </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> equals </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
													<Variable>
														<Name> param2 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> entry.m_StrA </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
												<Equation>
													<Variable>
														<Name> fEntry.m_StrA </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="set">
											<Calculation>
												<Equation>
													<Variable>
														<Name> entry </Name>
														<Type> StringPair </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Calculation>
											<SetObject>
												<Equation>
													<Variable>
														<Name> m_Strings[] </Name>
														<Type> StringPair </Type>
														<Constant> false </Constant>
														<ParentArray>
															<Variable>
																<Name> m_Strings </Name>
																<Type> Array </Type>
																<Constant> false </Constant>
															</Variable>
														</ParentArray>
													</Variable>
													<Parameters>
														<Equation>
															<Variable>
																<Name> index </Name>
																<Type> Integer </Type>
																<Constant> false </Constant>
															</Variable>
														</Equation>
													</Parameters>
												</Equation>
											</SetObject>
										</Statement>
									</StatementBlock>
									<ElseBlock>
										<Statement type="call">
											<Calculation>
												<Equation>
													<FunctionReference>
														<Name> InsertEntry </Name>
														<Variable>
															<Name>  </Name>
															<Type> void </Type>
															<Constant> false </Constant>
														</Variable>
														<VariableSet Name="Parameters">
															<Variable>
																<Name> entry </Name>
																<Type> StringPair </Type>
																<Constant> false </Constant>
															</Variable>
															<Variable>
																<Name> index </Name>
																<Type> Integer </Type>
																<Constant> false </Constant>
															</Variable>
														</VariableSet>
														<IsMethod> false </IsMethod>
														<Source> GM </Source>
													</FunctionReference>
													<Parameters>
														<Equation>
															<Variable>
																<Name> entry </Name>
																<Type> StringPair </Type>
																<Constant> false </Constant>
															</Variable>
														</Equation>
														<Equation>
															<Variable>
																<Name> index </Name>
																<Type> Integer </Type>
																<Constant> false </Constant>
															</Variable>
														</Equation>
													</Parameters>
												</Equation>
											</Calculation>
										</Statement>
									</ElseBlock>
								</Statement>
							</ElseBlock>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> Add </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> strA </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> strB </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> intB </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> strPair </Name>
								<Type> SSEntry </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> strA </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> strPair.m_StrA </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> strB </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> strPair.m_StrB </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> intB </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> strPair.m_IntB </Name>
										<Type> Real </Type>
										<Value> 1 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="call">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> Add </Name>
										<Variable>
											<Name>  </Name>
											<Type> void </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> entry </Name>
												<Type> SSEntry </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> strPair </Name>
												<Type> SSEntry </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> Find </Name>
					<Variable>
						<Name>  </Name>
						<Type> StringIntPair </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> mapVal </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="note">
							<CommentText> Finding string 'mapVal' </CommentText>
						</Statement>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> index </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> entry </Name>
								<Type> SSEntry </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> sip </Name>
								<Type> StringIntPair </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> FindIndex </Name>
										<Variable>
											<Name>  </Name>
											<Type> Integer </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> mapVal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> mapVal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> index </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> index </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> m_Strings.length </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> sip </Name>
												<Type> StringIntPair </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
							<ElseBlock>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Strings[] </Name>
												<Type> StringPair </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Strings </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> index </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> entry </Name>
												<Type> StringPair </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> equals </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
													<Variable>
														<Name> param2 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> mapVal </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
												<Equation>
													<Variable>
														<Name> entry.m_StrA </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="call">
											<Calculation>
												<Equation>
													<FunctionReference>
														<Name> sip.Construct </Name>
														<Variable>
															<Name>  </Name>
															<Type> void </Type>
															<Constant> false </Constant>
														</Variable>
														<VariableSet Name="Parameters">
															<Variable>
																<Name> str </Name>
																<Type> String </Type>
																<Constant> false </Constant>
															</Variable>
															<Variable>
																<Name> int </Name>
																<Type> Real </Type>
																<Constant> false </Constant>
															</Variable>
														</VariableSet>
														<IsMethod> true </IsMethod>
														<ObjectName> sip </ObjectName>
														<MethodName> Construct </MethodName>
														<Source> GM </Source>
													</FunctionReference>
													<Parameters>
														<Equation>
															<Variable>
																<Name> entry.m_StrB </Name>
																<Type> String </Type>
																<Constant> false </Constant>
															</Variable>
														</Equation>
														<Equation>
															<Variable>
																<Name> entry.m_IntB </Name>
																<Type> Real </Type>
																<Value> 1 </Value>
																<Constant> false </Constant>
															</Variable>
														</Equation>
													</Parameters>
												</Equation>
											</Calculation>
										</Statement>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> sip </Name>
														<Type> StringIntPair </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</ElseBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> sip </Name>
										<Type> StringIntPair </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> FindIndex </Name>
					<Variable>
						<Name>  </Name>
						<Type> Integer </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> mapVal </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="note">
							<CommentText> We can't sort strings because we can't compare them.  This should be a binary search. </CommentText>
						</Statement>
						<Statement type="note">
							<CommentText> FindIndex(mapVal) </CommentText>
						</Statement>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> lenMin1 </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_Strings.length </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="-">
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> Integer </Type>
												<Value> 1 </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> lenMin1 </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> strPair </Name>
										<Type> SSEntry </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Strings[] </Name>
												<Type> StringPair </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Strings </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> strPair </Name>
												<Type> StringPair </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> equals </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
													<Variable>
														<Name> param2 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> mapVal </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
												<Equation>
													<Variable>
														<Name> strPair.m_StrA </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 0 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> lenMin1 </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_Strings.length </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> InsertEntry </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> entry </Name>
							<Type> SSEntry </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> index </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> lenMin2 </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_Strings.length </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="-">
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> Integer </Type>
												<Value> 2 </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> lenMin2 </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="for">
							<StatementBlock>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Strings[] </Name>
												<Type> StringPair </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Strings </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> m_Strings[] </Name>
												<Type> StringPair </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Strings </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="+">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</SetObject>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> lenMin2 </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> index </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> -1 </Value>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> entry </Name>
										<Type> StringPair </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Strings[] </Name>
										<Type> StringPair </Type>
										<Constant> false </Constant>
										<ParentArray>
											<Variable>
												<Name> m_Strings </Name>
												<Type> Array </Type>
												<Constant> false </Constant>
											</Variable>
										</ParentArray>
									</Variable>
									<Parameters>
										<Equation>
											<Variable>
												<Name> index </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_Strings </Name>
					<Type> Array </Type>
					<Constant> false </Constant>
					<ArrayType>
						<Variable>
							<Name>  </Name>
							<Type> SSEntry </Type>
							<Constant> false </Constant>
						</Variable>
					</ArrayType>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityMakeUnits </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_UnitTypes </Name>
					<Type> UnitTypes </Type>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> Map </name>
			<methods>
				<Function>
					<Name> GetTile </Name>
					<Variable>
						<Name>  </Name>
						<Type> MapTile </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> x </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> y </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> greaterThanOrEqualTo </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> x </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> m_Map.length </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="call">
									<Calculation>
										<Equation>
											<FunctionReference>
												<Name> _errorOut </Name>
												<Variable>
													<Name>  </Name>
													<Type> void </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> String </Type>
														<Value> Map x index out of range! </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> greaterThanOrEqualTo </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> y </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> m_Map[].length </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="call">
									<Calculation>
										<Equation>
											<FunctionReference>
												<Name> _errorOut </Name>
												<Variable>
													<Name>  </Name>
													<Type> void </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> String </Type>
														<Value> Map y index out of range! </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> GetTileNoCheck </Name>
										<Variable>
											<Name>  </Name>
											<Type> MapTile </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> x </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> y </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> x </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> y </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> GetTileNoCheck </Name>
					<Variable>
						<Name>  </Name>
						<Type> MapTile </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> x </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> y </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_Map[][] </Name>
										<Type> MapTile </Type>
										<Constant> false </Constant>
										<ParentArray>
											<Variable>
												<Name>  </Name>
												<Type> Array </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Map </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
										</ParentArray>
									</Variable>
									<Parameters>
										<Equation>
											<Variable>
												<Name> x </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> y </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> ResizeMap </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> w </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> h </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="note">
							<CommentText> This just makes sure our map is (w x h) by accessing the last element. </CommentText>
						</Statement>
						<Statement type="call">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> GetTileNoCheck </Name>
										<Variable>
											<Name>  </Name>
											<Type> MapTile </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> x </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> y </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> w </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Operation op="-">
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Integer </Type>
														<Value> 1 </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Operation>
										</Equation>
										<Equation>
											<Variable>
												<Name> h </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Operation op="-">
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Integer </Type>
														<Value> 1 </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Operation>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_Map </Name>
					<Type> Array </Type>
					<Constant> false </Constant>
					<ArrayType>
						<Variable>
							<Name>  </Name>
							<Type> Array </Type>
							<Constant> false </Constant>
							<ArrayType>
								<Variable>
									<Name>  </Name>
									<Type> MapTile </Type>
									<Constant> false </Constant>
								</Variable>
							</ArrayType>
						</Variable>
					</ArrayType>
				</Variable>
				<Variable>
					<Name> m_TerrainTypes </Name>
					<Type> TerrainTypes </Type>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityConnect </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_AidsMovement </Name>
					<Type> Boolean </Type>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> SSEntry </name><methods/>
			<members>
				<Variable>
					<Name> m_StrA </Name>
					<Type> String </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_StrB </Name>
					<Type> String </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_IntB </Name>
					<Type> Real </Type>
					<Value> 1 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityLOS </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_Range </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbility </name><methods/>
			<members>
				<Variable>
					<Name> m_HasAbility </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> StringIntPair </name>
			<methods>
				<Function>
					<Name> Construct </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> str </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> int </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> str </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Str </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> int </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Int </Name>
										<Type> Real </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_Str </Name>
					<Type> String </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Int </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityGate </name>
			<super> UnitAbility </super><methods/><members/>
		</Structure>
		<Structure>
			<name> Resources </name>
			<methods>
				<Function>
					<Name> GetResource </Name>
					<Variable>
						<Name>  </Name>
						<Type> Integer </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> ResID </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_Resources[] </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
										<ParentArray>
											<Variable>
												<Name> m_Resources </Name>
												<Type> Array </Type>
												<Constant> false </Constant>
											</Variable>
										</ParentArray>
									</Variable>
									<Parameters>
										<Equation>
											<Variable>
												<Name> ResID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> SetResource </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> resID </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> quantity </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> quantity </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Resources[] </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
										<ParentArray>
											<Variable>
												<Name> m_Resources </Name>
												<Type> Array </Type>
												<Constant> false </Constant>
											</Variable>
										</ParentArray>
									</Variable>
									<Parameters>
										<Equation>
											<Variable>
												<Name> resID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_Resources </Name>
					<Type> Array </Type>
					<Constant> false </Constant>
					<ArrayType>
						<Variable>
							<Name>  </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</ArrayType>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityResourceDropoff </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_GatherType </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityAttack </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_Range </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_MustUnpack </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_AreaEffectRadius </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_HurtsFriendlyUnits </Name>
					<Type> Boolean </Type>
					<Value> true </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ShootsOverStructures </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Damage </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_RateOfFire </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_MaxOrdinance </Name>
					<Type> Integer </Type>
					<Value> 1 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_HasInfiniteAmmo </Name>
					<Type> Boolean </Type>
					<Value> true </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> StringPair </name><methods/>
			<members>
				<Variable>
					<Name> m_StrA </Name>
					<Type> String </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_StrB </Name>
					<Type> String </Type>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityHeal </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_HealRate </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Range </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_AuraRange </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UnitTypes </Name>
					<Type> UnitTypes </Type>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> Unit </name>
			<methods>
				<Function>
					<Name> Construct </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> unitID </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> playerID </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> unitType </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> loc </Name>
							<Type> Location </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> unitID </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Structure </Type>
										<Value> m_UnitID </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> playerID </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Structure </Type>
										<Value> m_PlayerID </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> unitType </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_UnitTypeIndex </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> loc </Name>
										<Type> Location </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Structure </Type>
										<Value> m_Loc </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> g_UnitTypes.GetUnitType </Name>
										<Variable>
											<Name>  </Name>
											<Type> UnitType </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> index </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> true </IsMethod>
										<ObjectName> g_UnitTypes </ObjectName>
										<MethodName> GetUnitType </MethodName>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> m_UnitTypeIndex </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_UnitType </Name>
										<Type> UnitType </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> GetAttackDamage </Name>
					<Variable>
						<Name>  </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAAttack.m_Damage </Name>
										<Type> Real </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasAmmo </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAAttack.m_HasInfiniteAmmo </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> false </Constant>
									</Variable>
									<Operation op="or">
										<Equation>
											<FunctionReference>
												<Name> greaterThan </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Variable>
														<Name> param2 </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> m_AbilityData.m_OrdnanceLeft </Name>
														<Type> Integer </Type>
														<Value> 0 </Value>
														<Constant> false </Constant>
													</Variable>
												</Equation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Integer </Type>
														<Value> 0 </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasAttackAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAAttack.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasBuildAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UABuild.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasConnectAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAConnect.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasConstructionAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAConstruction.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasConvertAttackAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAConvertAttack.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasConvertableAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAConvertable.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasCoverSpotAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UACoverSpot.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasGarrisonAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAGarrison.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasGarrisonableAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAGarrisonable.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasGateAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAGate.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasGatherAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAGather.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasHealAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAHeal.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasLOSAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UALOS.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasMoveAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAMove.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasPowerReserveAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAPowerReserve.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasProduceAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAProduce.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasResourceAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAResource.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasResourceDropoffAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UAResourceDropoff.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasTargetingListAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UATargetingList.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasTradeAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UATrade.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> HasTradeCenterAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_UATradeCenter.m_HasAbility </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> InAttackRange </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> loc </Name>
							<Type> Location </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> lessThanOrEqualTo </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<FunctionReference>
												<Name> loc.DistanceFrom </Name>
												<Variable>
													<Name>  </Name>
													<Type> Real </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> otherLoc </Name>
														<Type> Location </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> true </IsMethod>
												<ObjectName> loc </ObjectName>
												<MethodName> DistanceFrom </MethodName>
												<Source> GM </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> m_Loc </Name>
														<Type> Location </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
										<Equation>
											<Variable>
												<Name> m_UnitType.m_UAAttack.m_Range </Name>
												<Type> Real </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> IsPlayerUnit </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> m_PlayerID </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> g_PlayerInfo.m_PlayerID </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> MoveTo </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> x </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> y </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> x </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Loc.m_X </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> y </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Loc.m_Y </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> kGoalEnum.kMove </Name>
										<Type> Integer </Type>
										<Value> 3 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Goal </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> SetGoal </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> goal </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> goal </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Goal </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> ToString </Name>
					<Variable>
						<Name>  </Name>
						<Type> String </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> res </Name>
								<Type> String </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> String </Type>
										<Value> Unit(P </Value>
										<Constant> true </Constant>
									</Variable>
									<Operation op="+">
										<Equation>
											<FunctionReference>
												<Name> toString </Name>
												<Variable>
													<Name>  </Name>
													<Type> String </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> m_PlayerID </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
											<Operation op="+">
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> String </Type>
														<Value> : </Value>
														<Constant> true </Constant>
													</Variable>
													<Operation op="+">
														<Equation>
															<FunctionReference>
																<Name> toString </Name>
																<Variable>
																	<Name>  </Name>
																	<Type> String </Type>
																	<Constant> false </Constant>
																</Variable>
																<VariableSet Name="Parameters">
																	<Variable>
																		<Name> param1 </Name>
																		<Type> Integer </Type>
																		<Constant> false </Constant>
																	</Variable>
																</VariableSet>
																<IsMethod> false </IsMethod>
																<Source> PC </Source>
															</FunctionReference>
															<Parameters>
																<Equation>
																	<Variable>
																		<Name> m_UnitID </Name>
																		<Type> Integer </Type>
																		<Constant> false </Constant>
																	</Variable>
																</Equation>
															</Parameters>
															<Operation op="+">
																<Equation>
																	<Variable>
																		<Name> _UNNAMED </Name>
																		<Type> String </Type>
																		<Value> ) </Value>
																		<Constant> true </Constant>
																	</Variable>
																</Equation>
															</Operation>
														</Equation>
													</Operation>
												</Equation>
											</Operation>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="+">
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> T( </Value>
												<Constant> true </Constant>
											</Variable>
											<Operation op="+">
												<Equation>
													<FunctionReference>
														<Name> toString </Name>
														<Variable>
															<Name>  </Name>
															<Type> String </Type>
															<Constant> false </Constant>
														</Variable>
														<VariableSet Name="Parameters">
															<Variable>
																<Name> param1 </Name>
																<Type> Integer </Type>
																<Constant> false </Constant>
															</Variable>
														</VariableSet>
														<IsMethod> false </IsMethod>
														<Source> PC </Source>
													</FunctionReference>
													<Parameters>
														<Equation>
															<Variable>
																<Name> m_UnitTypeIndex </Name>
																<Type> Integer </Type>
																<Value> 0 </Value>
																<Constant> false </Constant>
															</Variable>
														</Equation>
													</Parameters>
													<Operation op="+">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> String </Type>
																<Value> ) at </Value>
																<Constant> true </Constant>
															</Variable>
															<Operation op="+">
																<Equation>
																	<FunctionReference>
																		<Name> m_Loc.ToString </Name>
																		<Variable>
																			<Name>  </Name>
																			<Type> String </Type>
																			<Constant> false </Constant>
																		</Variable><VariableSet Name="Parameters"/>
																		<IsMethod> true </IsMethod>
																		<ObjectName> m_Loc </ObjectName>
																		<MethodName> ToString </MethodName>
																		<Source> GM </Source>
																	</FunctionReference>
																</Equation>
															</Operation>
														</Equation>
													</Operation>
												</Equation>
											</Operation>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="+">
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> HP( </Value>
												<Constant> true </Constant>
											</Variable>
											<Operation op="+">
												<Equation>
													<FunctionReference>
														<Name> toString </Name>
														<Variable>
															<Name>  </Name>
															<Type> String </Type>
															<Constant> false </Constant>
														</Variable>
														<VariableSet Name="Parameters">
															<Variable>
																<Name> param1 </Name>
																<Type> Real </Type>
																<Constant> false </Constant>
															</Variable>
														</VariableSet>
														<IsMethod> false </IsMethod>
														<Source> PC </Source>
													</FunctionReference>
													<Parameters>
														<Equation>
															<Variable>
																<Name> m_Health </Name>
																<Type> Real </Type>
																<Constant> false </Constant>
															</Variable>
														</Equation>
													</Parameters>
													<Operation op="+">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> String </Type>
																<Value> ) </Value>
																<Constant> true </Constant>
															</Variable>
															<Operation op="+">
																<Equation>
																	<Variable>
																		<Name> _UNNAMED </Name>
																		<Type> String </Type>
																		<Value> doing ' </Value>
																		<Constant> true </Constant>
																	</Variable>
																	<Operation op="+">
																		<Equation>
																			<Variable>
																				<Name> m_Goal </Name>
																				<Type> String </Type>
																				<Constant> false </Constant>
																			</Variable>
																			<Operation op="+">
																				<Equation>
																					<Variable>
																						<Name> _UNNAMED </Name>
																						<Type> String </Type>
																						<Value> ' </Value>
																						<Constant> true </Constant>
																					</Variable>
																				</Equation>
																			</Operation>
																		</Equation>
																	</Operation>
																</Equation>
															</Operation>
														</Equation>
													</Operation>
												</Equation>
											</Operation>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<Variable>
										<Name> m_Visible </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> res </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Operation op="+">
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> String </Type>
														<Value> Visible </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Operation>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> res </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
							</StatementBlock>
							<ElseBlock>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> res </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Operation op="+">
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> String </Type>
														<Value> Invisible </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Operation>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> res </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
							</ElseBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> Update </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> health </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> visible </Name>
							<Type> Boolean </Type>
							<Value> true </Value>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> goal </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> health </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Health </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> visible </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Visible </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> kGoalEnum.fromString </Name>
										<Variable>
											<Name>  </Name>
											<Type> Integer </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> true </IsMethod>
										<ObjectName> kGoalEnum </ObjectName>
										<MethodName> fromString </MethodName>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Goal </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> UpdateVis </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> pid </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> type </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> hp </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> x </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> y </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> z </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> goal </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> pid </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_PlayerID </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> g_UnitTypes.GetUnitType </Name>
										<Variable>
											<Name>  </Name>
											<Type> UnitType </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> index </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> true </IsMethod>
										<ObjectName> g_UnitTypes </ObjectName>
										<MethodName> GetUnitType </MethodName>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> type </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_UnitType </Name>
										<Type> UnitType </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitType.m_Index </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_UnitTypeIndex </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> hp </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Health </Name>
										<Type> Real </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="call">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> m_Loc.Construct </Name>
										<Variable>
											<Name>  </Name>
											<Type> void </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> x </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> y </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> z </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> true </IsMethod>
										<ObjectName> m_Loc </ObjectName>
										<MethodName> Construct </MethodName>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> x </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> y </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> z </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> kGoalEnum.fromString </Name>
										<Variable>
											<Name>  </Name>
											<Type> Integer </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> true </IsMethod>
										<ObjectName> kGoalEnum </ObjectName>
										<MethodName> fromString </MethodName>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Goal </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_IsDead </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Visible </Name>
										<Type> Boolean </Type>
										<Value> false </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_UnitID </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_PlayerID </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UnitTypeIndex </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Loc </Name>
					<Type> Location </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Health </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Visible </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Goal </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_IsDead </Name>
					<Type> Boolean </Type>
					<Value> true </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_AbilityData </Name>
					<Type> UnitAbilityData </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UnitType </Name>
					<Type> UnitType </Type>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityGarrisonable </name>
			<super> UnitAbility </super><methods/><members/>
		</Structure>
		<Structure>
			<name> UnitAbilityTrade </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_IsNaval </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_GoldMultiplier </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_TechMultiplier </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ForeignTradeAllowed </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ReloadTime </Name>
					<Type> Real </Type>
					<Value> 1 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> Territories </name>
			<methods>
				<Function>
					<Name> GetTerritory </Name>
					<Variable>
						<Name>  </Name>
						<Type> Territory </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> index </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="note">
							<CommentText> We always construct new territories if need be, so don't check the lenght. </CommentText>
						</Statement>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> territory </Name>
								<Type> Territory </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_Territories[] </Name>
										<Type> Territory </Type>
										<Constant> false </Constant>
										<ParentArray>
											<Variable>
												<Name> m_Territories </Name>
												<Type> Array </Type>
												<Constant> false </Constant>
											</Variable>
										</ParentArray>
									</Variable>
									<Parameters>
										<Equation>
											<Variable>
												<Name> index </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> territory </Name>
										<Type> Territory </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> index </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> territory.m_TerritoryID </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> territory </Name>
										<Type> Territory </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_Territories </Name>
					<Type> Array </Type>
					<Constant> false </Constant>
					<ArrayType>
						<Variable>
							<Name>  </Name>
							<Type> Territory </Type>
							<Constant> false </Constant>
						</Variable>
					</ArrayType>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> Goal </name><methods/>
			<members>
				<Variable>
					<Name> m_Goal </Name>
					<Type> Integer </Type>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityTradeCenter </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_IsNaval </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> PlayerInfo </name>
			<methods>
				<Function>
					<Name> UpdatePlayer </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> playerID </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> status </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> epoch </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> p </Name>
								<Type> Player </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_OtherPlayers[] </Name>
										<Type> Player </Type>
										<Constant> false </Constant>
										<ParentArray>
											<Variable>
												<Name> m_OtherPlayers </Name>
												<Type> Array </Type>
												<Constant> false </Constant>
											</Variable>
										</ParentArray>
									</Variable>
									<Parameters>
										<Equation>
											<Variable>
												<Name> playerID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> p </Name>
										<Type> Player </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="call">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> p.Construct </Name>
										<Variable>
											<Name>  </Name>
											<Type> void </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> pid </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> status </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> epoch </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> true </IsMethod>
										<ObjectName> p </ObjectName>
										<MethodName> Construct </MethodName>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> playerID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> status </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> epoch </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_PlayerID </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_OtherPlayers </Name>
					<Type> Array </Type>
					<Constant> false </Constant>
					<ArrayType>
						<Variable>
							<Name>  </Name>
							<Type> Player </Type>
							<Constant> false </Constant>
						</Variable>
					</ArrayType>
				</Variable>
				<Variable>
					<Name> m_Epoch </Name>
					<Type> Integer </Type>
					<Value> 1 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Resources </Name>
					<Type> Resources </Type>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> Territory </name>
			<methods>
				<Function>
					<Name> Construct </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> owner </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> type </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> owner </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_CurrentOwner </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> type </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_TerritoryType </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_TerritoryID </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_CurrentOwner </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_TerritoryType </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityConvertAttack </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_Range </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_IsCapture </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ConversionRateModifier </Name>
					<Type> Real </Type>
					<Value> 1 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitTypes </name>
			<methods>
				<Function>
					<Name> GetUnitType </Name>
					<Variable>
						<Name>  </Name>
						<Type> UnitType </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> index </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> uType </Name>
								<Type> UnitType </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_UnitTypes[] </Name>
										<Type> UnitType </Type>
										<Constant> false </Constant>
										<ParentArray>
											<Variable>
												<Name> m_UnitTypes </Name>
												<Type> Array </Type>
												<Constant> false </Constant>
											</Variable>
										</ParentArray>
									</Variable>
									<Parameters>
										<Equation>
											<Variable>
												<Name> index </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> uType </Name>
										<Type> UnitType </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> index </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> uType.m_Index </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> uType </Name>
										<Type> UnitType </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> GetUnitType </Name>
					<Variable>
						<Name>  </Name>
						<Type> UnitType </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> name </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unitType </Name>
										<Type> UnitType </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_UnitTypes[] </Name>
												<Type> UnitType </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_UnitTypes </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unitType </Name>
												<Type> UnitType </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> equals </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
													<Variable>
														<Name> param2 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> unitType.m_Name </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
												<Equation>
													<Variable>
														<Name> name </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> unitType </Name>
														<Type> UnitType </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_UnitTypes.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="call">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> _errorOut </Name>
										<Variable>
											<Name>  </Name>
											<Type> void </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Unable to find a unit type with the name </Value>
												<Constant> true </Constant>
											</Variable>
											<Operation op="+">
												<Equation>
													<Variable>
														<Name> name </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Operation>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_UnitTypes </Name>
					<Type> Array </Type>
					<Constant> false </Constant>
					<ArrayType>
						<Variable>
							<Name>  </Name>
							<Type> UnitType </Type>
							<Constant> false </Constant>
						</Variable>
					</ArrayType>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityConvertable </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_IsCapture </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ConversionRateModifier </Name>
					<Type> Real </Type>
					<Value> 1 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityConstruction </name>
			<super> UnitAbility </super><methods/><members/>
		</Structure>
		<Structure>
			<name> EnumTerritoryType </name>
			<methods>
				<Function>
					<Name> fromString </Name>
					<Variable>
						<Name>  </Name>
						<Type> Integer </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> str </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> str </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> FixedOwner </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kFixedOwner </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> str </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> CCenter </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kCityCenter </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> str </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> CCAndFortress </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kCCAndFortress </Name>
												<Type> Integer </Type>
												<Value> 1 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> str </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> EliminateForces </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kEliminateForces </Name>
												<Type> Integer </Type>
												<Value> 2 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="call">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> _errorOut </Name>
										<Variable>
											<Name>  </Name>
											<Type> void </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Not a valid Terrain Type: </Value>
												<Constant> true </Constant>
											</Variable>
											<Operation op="+">
												<Equation>
													<Variable>
														<Name> str </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Operation>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> toString </Name>
					<Variable>
						<Name>  </Name>
						<Type> String </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> val </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> val </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kFixedOwner </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> FixedOwner </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> val </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kCityCenter </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> CityCenter </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> val </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kCCAndFortress </Name>
												<Type> Integer </Type>
												<Value> 1 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> CCAndFortress </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> val </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kEliminateForces </Name>
												<Type> Integer </Type>
												<Value> 2 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> EliminateForces </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="call">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> _errorOut </Name>
										<Variable>
											<Name>  </Name>
											<Type> void </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Not a valid Terrain Type: </Value>
												<Constant> true </Constant>
											</Variable>
											<Operation op="+">
												<Equation>
													<FunctionReference>
														<Name> toString </Name>
														<Variable>
															<Name>  </Name>
															<Type> String </Type>
															<Constant> false </Constant>
														</Variable>
														<VariableSet Name="Parameters">
															<Variable>
																<Name> param1 </Name>
																<Type> Integer </Type>
																<Constant> false </Constant>
															</Variable>
														</VariableSet>
														<IsMethod> false </IsMethod>
														<Source> PC </Source>
													</FunctionReference>
													<Parameters>
														<Equation>
															<Variable>
																<Name> val </Name>
																<Type> Integer </Type>
																<Constant> false </Constant>
															</Variable>
														</Equation>
													</Parameters>
												</Equation>
											</Operation>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> kFixedOwner </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kCityCenter </Name>
					<Type> Integer </Type>
					<Value> 1 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kCCAndFortress </Name>
					<Type> Integer </Type>
					<Value> 2 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kEliminateForces </Name>
					<Type> Integer </Type>
					<Value> 3 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> QueryResult </name><methods/>
			<members>
				<Variable>
					<Name> m_QID </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Location </Name>
					<Type> Location </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Status </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityProduce </name>
			<super> UnitAbilityMakeUnits </super><methods/><members/>
		</Structure>
		<Structure>
			<name> UnitType </name>
			<methods>
				<Function>
					<Name> Construct </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> name </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> maxHP </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> name </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Name </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> maxHP </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_MaximumHealth </Name>
										<Type> Real </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="note">
							<CommentText> Initialize our resources to the proper number. </CommentText>
						</Statement>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> res </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_Resources.m_Resources[] </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
										<ParentArray>
											<Variable>
												<Name> m_Resources </Name>
												<Type> Array </Type>
												<Constant> false </Constant>
											</Variable>
										</ParentArray>
									</Variable>
									<Parameters>
										<Equation>
											<Variable>
												<Name> g_GlobalData.m_TotalNumberOfResources </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
											<Operation op="-">
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Integer </Type>
														<Value> 1 </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Operation>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_Name </Name>
					<Type> String </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Index </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Resources </Name>
					<Type> Resources </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_MaximumHealth </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAMove </Name>
					<Type> UnitAbilityMove </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAAttack </Name>
					<Type> UnitAbilityAttack </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UALOS </Name>
					<Type> UnitAbilityLOS </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UABuild </Name>
					<Type> UnitAbilityBuild </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAConstruction </Name>
					<Type> UnitAbilityConstruction </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAProduce </Name>
					<Type> UnitAbilityProduce </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAConnect </Name>
					<Type> UnitAbilityConnect </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAGather </Name>
					<Type> UnitAbilityGather </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAResource </Name>
					<Type> UnitAbilityResource </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAResourceDropoff </Name>
					<Type> UnitAbilityResourceDropoff </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAHeal </Name>
					<Type> UnitAbilityHeal </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAGarrison </Name>
					<Type> UnitAbilityGarrison </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UATradeCenter </Name>
					<Type> UnitAbilityTradeCenter </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAConvertable </Name>
					<Type> UnitAbilityConvertable </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAGate </Name>
					<Type> UnitAbilityGate </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAPowerReserve </Name>
					<Type> UnitAbilityPowerReserve </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAConvertAttack </Name>
					<Type> UnitAbilityConvertAttack </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UATrade </Name>
					<Type> UnitAbilityTrade </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UATargetingList </Name>
					<Type> UnitAbilityTargetingList </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UAGarrisonable </Name>
					<Type> UnitAbilityGarrisonable </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_UACoverSpot </Name>
					<Type> UnitAbilityCoverSpot </Type>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityBuild </name>
			<super> UnitAbilityMakeUnits </super><methods/>
			<members>
				<Variable>
					<Name> m_Rate </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> QueryResults </name><methods/>
			<members>
				<Variable>
					<Name> m_Results </Name>
					<Type> Array </Type>
					<Constant> false </Constant>
					<ArrayType>
						<Variable>
							<Name>  </Name>
							<Type> QueryResult </Type>
							<Constant> false </Constant>
						</Variable>
					</ArrayType>
					<Length>
						<Variable>
							<Name> kMaxQueries </Name>
							<Type> Integer </Type>
							<Value> 10 </Value>
							<Constant> false </Constant>
						</Variable>
					</Length>
				</Variable>
				<Variable>
					<Name> m_NextQID </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> GoalEnum </name>
			<methods>
				<Function>
					<Name> fromString </Name>
					<Variable>
						<Name>  </Name>
						<Type> Integer </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> goal </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="note">
							<CommentText> Converts from a goal abbreviation to a goal enumerated type. </CommentText>
						</Statement>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> goalID </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> fromString1 </Name>
										<Variable>
											<Name>  </Name>
											<Type> Integer </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> goalID </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> not </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Boolean </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<FunctionReference>
												<Name> equals </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Variable>
														<Name> param2 </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> goalID </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
												<Equation>
													<Variable>
														<Name> kInvalid </Name>
														<Type> Integer </Type>
														<Value> 0 </Value>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> res </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> fromString2 </Name>
										<Variable>
											<Name>  </Name>
											<Type> Integer </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> goalID </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> not </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Boolean </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<FunctionReference>
												<Name> equals </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Variable>
														<Name> param2 </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> goalID </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
												<Equation>
													<Variable>
														<Name> kInvalid </Name>
														<Type> Integer </Type>
														<Value> 0 </Value>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> res </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> fromString3 </Name>
										<Variable>
											<Name>  </Name>
											<Type> Integer </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> fromString1 </Name>
					<Variable>
						<Name>  </Name>
						<Type> Integer </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> goal </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="note">
							<CommentText> Helper function for fromString </CommentText>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Invalid </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kInvalid </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Att </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kAttackUnit </Name>
												<Type> Integer </Type>
												<Value> 1 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> AttLoc </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kAttackLocation </Name>
												<Type> Integer </Type>
												<Value> 2 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Mv </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kMove </Name>
												<Type> Integer </Type>
												<Value> 3 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Hl </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kHealUnit </Name>
												<Type> Integer </Type>
												<Value> 4 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Bld </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kBuild </Name>
												<Type> Integer </Type>
												<Value> 5 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Prd </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kProduce </Name>
												<Type> Integer </Type>
												<Value> 6 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Res </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kResearch </Name>
												<Type> Integer </Type>
												<Value> 7 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Run </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kRunForLife </Name>
												<Type> Integer </Type>
												<Value> 8 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Gat </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kGatherResource </Name>
												<Type> Integer </Type>
												<Value> 9 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> kInvalid </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> fromString2 </Name>
					<Variable>
						<Name>  </Name>
						<Type> Integer </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> goal </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="note">
							<CommentText> Helper function for fromString </CommentText>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Fol </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kFollow </Name>
												<Type> Integer </Type>
												<Value> 10 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Drop </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kDropoffResource </Name>
												<Type> Integer </Type>
												<Value> 11 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Garr </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kGarrison </Name>
												<Type> Integer </Type>
												<Value> 12 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Ungarr </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kUngarrison </Name>
												<Type> Integer </Type>
												<Value> 13 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Cnvrt </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kConvertUnit </Name>
												<Type> Integer </Type>
												<Value> 14 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Spec </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kSpecialPower </Name>
												<Type> Integer </Type>
												<Value> 15 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Cptr </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kCaptureUnit </Name>
												<Type> Integer </Type>
												<Value> 16 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Air </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kAirMission </Name>
												<Type> Integer </Type>
												<Value> 17 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Rdzvs </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kRendezvous </Name>
												<Type> Integer </Type>
												<Value> 18 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Trd </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kTrade </Name>
												<Type> Integer </Type>
												<Value> 19 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> kInvalid </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> fromString3 </Name>
					<Variable>
						<Name>  </Name>
						<Type> Integer </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> goal </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="note">
							<CommentText> Helper function for fromString </CommentText>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> anim </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kPlayAnimation </Name>
												<Type> Integer </Type>
												<Value> 20 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Gua </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kGuard </Name>
												<Type> Integer </Type>
												<Value> 21 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Wait </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kWait </Name>
												<Type> Integer </Type>
												<Value> 22 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Idle </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kIdle </Name>
												<Type> Integer </Type>
												<Value> 23 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Ptrl </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kPatrol </Name>
												<Type> Integer </Type>
												<Value> 24 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Expl </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kExplore </Name>
												<Type> Integer </Type>
												<Value> 25 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> SD </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> kSearchAndDestroy </Name>
												<Type> Integer </Type>
												<Value> 26 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> kInvalid </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> toString </Name>
					<Variable>
						<Name>  </Name>
						<Type> String </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> goalID </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> goal </Name>
								<Type> String </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> toString1 </Name>
										<Variable>
											<Name>  </Name>
											<Type> String </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> goal </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> not </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Boolean </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<FunctionReference>
												<Name> equals </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
													<Variable>
														<Name> param2 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> goal </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> String </Type>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> toString2 </Name>
										<Variable>
											<Name>  </Name>
											<Type> String </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> goal </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> not </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Boolean </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<FunctionReference>
												<Name> equals </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
													<Variable>
														<Name> param2 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> goal </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> String </Type>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> toString3 </Name>
										<Variable>
											<Name>  </Name>
											<Type> String </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> goal </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> not </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Boolean </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<FunctionReference>
												<Name> equals </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
													<Variable>
														<Name> param2 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> goal </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> String </Type>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> goal </Name>
												<Type> String </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> String </Type>
										<Value> Invalid </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> toString1 </Name>
					<Variable>
						<Name>  </Name>
						<Type> String </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> goalID </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="note">
							<CommentText> Helper function for toString </CommentText>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kInvalid </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Invalid </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kAttackUnit </Name>
												<Type> Integer </Type>
												<Value> 1 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Att </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kAttackLocation </Name>
												<Type> Integer </Type>
												<Value> 2 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> AttLoc </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kMove </Name>
												<Type> Integer </Type>
												<Value> 3 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Mv </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kHealUnit </Name>
												<Type> Integer </Type>
												<Value> 4 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Hl </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kBuild </Name>
												<Type> Integer </Type>
												<Value> 5 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Bld </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kProduce </Name>
												<Type> Integer </Type>
												<Value> 6 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Prd </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kResearch </Name>
												<Type> Integer </Type>
												<Value> 7 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Res </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kRunForLife </Name>
												<Type> Integer </Type>
												<Value> 8 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Run </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kGatherResource </Name>
												<Type> Integer </Type>
												<Value> 9 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Gat </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> String </Type>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> toString2 </Name>
					<Variable>
						<Name>  </Name>
						<Type> String </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> goalID </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="note">
							<CommentText> Helper function for toString </CommentText>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kFollow </Name>
												<Type> Integer </Type>
												<Value> 10 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Fol </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kDropoffResource </Name>
												<Type> Integer </Type>
												<Value> 11 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Drop </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kGarrison </Name>
												<Type> Integer </Type>
												<Value> 12 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Garr </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kUngarrison </Name>
												<Type> Integer </Type>
												<Value> 13 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Ungarr </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kConvertUnit </Name>
												<Type> Integer </Type>
												<Value> 14 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Cnvrt </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kSpecialPower </Name>
												<Type> Integer </Type>
												<Value> 15 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Spec </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kCaptureUnit </Name>
												<Type> Integer </Type>
												<Value> 16 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Cptr </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kAirMission </Name>
												<Type> Integer </Type>
												<Value> 17 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Air </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kRendezvous </Name>
												<Type> Integer </Type>
												<Value> 18 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Rdzvs </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kTrade </Name>
												<Type> Integer </Type>
												<Value> 19 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Trd </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> String </Type>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> toString3 </Name>
					<Variable>
						<Name>  </Name>
						<Type> String </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> goalID </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="note">
							<CommentText> Helper function for toString </CommentText>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kPlayAnimation </Name>
												<Type> Integer </Type>
												<Value> 20 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> anim </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kGuard </Name>
												<Type> Integer </Type>
												<Value> 21 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Gua </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kWait </Name>
												<Type> Integer </Type>
												<Value> 22 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Wait </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kIdle </Name>
												<Type> Integer </Type>
												<Value> 23 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Idle </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kPatrol </Name>
												<Type> Integer </Type>
												<Value> 24 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Ptrl </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kExplore </Name>
												<Type> Integer </Type>
												<Value> 25 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> Expl </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> goalID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> kSearchAndDestroy </Name>
												<Type> Integer </Type>
												<Value> 26 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="return">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> String </Type>
												<Value> SD </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> String </Type>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> kInvalid </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kAttackUnit </Name>
					<Type> Integer </Type>
					<Value> 1 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kAttackLocation </Name>
					<Type> Integer </Type>
					<Value> 2 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kMove </Name>
					<Type> Integer </Type>
					<Value> 3 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kHealUnit </Name>
					<Type> Integer </Type>
					<Value> 4 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kBuild </Name>
					<Type> Integer </Type>
					<Value> 5 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kProduce </Name>
					<Type> Integer </Type>
					<Value> 6 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kResearch </Name>
					<Type> Integer </Type>
					<Value> 7 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kRunForLife </Name>
					<Type> Integer </Type>
					<Value> 8 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kGatherResource </Name>
					<Type> Integer </Type>
					<Value> 9 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kFollow </Name>
					<Type> Integer </Type>
					<Value> 10 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kDropoffResource </Name>
					<Type> Integer </Type>
					<Value> 11 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kGarrison </Name>
					<Type> Integer </Type>
					<Value> 12 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kUngarrison </Name>
					<Type> Integer </Type>
					<Value> 13 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kConvertUnit </Name>
					<Type> Integer </Type>
					<Value> 14 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kSpecialPower </Name>
					<Type> Integer </Type>
					<Value> 15 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kCaptureUnit </Name>
					<Type> Integer </Type>
					<Value> 16 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kAirMission </Name>
					<Type> Integer </Type>
					<Value> 17 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kRendezvous </Name>
					<Type> Integer </Type>
					<Value> 18 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kTrade </Name>
					<Type> Integer </Type>
					<Value> 19 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kPlayAnimation </Name>
					<Type> Integer </Type>
					<Value> 20 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kGuard </Name>
					<Type> Integer </Type>
					<Value> 21 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kWait </Name>
					<Type> Integer </Type>
					<Value> 22 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kIdle </Name>
					<Type> Integer </Type>
					<Value> 23 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kPatrol </Name>
					<Type> Integer </Type>
					<Value> 24 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kExplore </Name>
					<Type> Integer </Type>
					<Value> 25 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> kSearchAndDestroy </Name>
					<Type> Integer </Type>
					<Value> 26 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityPowerReserve </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_TimeToRecharge </Name>
					<Type> Real </Type>
					<Value> 1 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> Player </name>
			<methods>
				<Function>
					<Name> AddUnit </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> unit </Name>
							<Type> Unit </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> equals </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name>  </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name>  </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> unit.m_PlayerID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> m_PlayerID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> player </Type>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit.m_Player </Name>
												<Type> Player </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> m_NumUnits </Name>
														<Type> Integer </Type>
														<Value> 0 </Value>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_NumUnits </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
											<Operation op="+">
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Integer </Type>
														<Value> 1 </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Operation>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> m_NumUnits </Name>
												<Type> Integer </Type>
												<Value> 0 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
							</StatementBlock>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> Construct </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> pid </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> status </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> epoch </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> pid </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_PlayerID </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> status </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_DiplomaticStatus </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> epoch </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Epoch </Name>
										<Type> Integer </Type>
										<Value> 1 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> RemoveUnit </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> unitIndex </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> uLenMin2 </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_NumUnits </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
									<Operation op="-">
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> Integer </Type>
												<Value> 2 </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> uLenMin2 </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="for">
							<StatementBlock>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="+">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</SetObject>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> unitIndex </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> uLenMin2 </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="note">
							<CommentText> Update Unit Length </CommentText>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_NumUnits </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
									<Operation op="-">
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> Integer </Type>
												<Value> 1 </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_NumUnits </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> ToString </Name>
					<Variable>
						<Name>  </Name>
						<Type> String </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> res </Name>
								<Type> String </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> String </Type>
										<Value> Player </Value>
										<Constant> true </Constant>
									</Variable>
									<Operation op="+">
										<Equation>
											<FunctionReference>
												<Name> toString </Name>
												<Variable>
													<Name>  </Name>
													<Type> String </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> m_PlayerID </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
											<Operation op="+">
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> String </Type>
														<Value> has </Value>
														<Constant> true </Constant>
													</Variable>
													<Operation op="+">
														<Equation>
															<FunctionReference>
																<Name> toString </Name>
																<Variable>
																	<Name>  </Name>
																	<Type> String </Type>
																	<Constant> false </Constant>
																</Variable>
																<VariableSet Name="Parameters">
																	<Variable>
																		<Name> param1 </Name>
																		<Type> Integer </Type>
																		<Constant> false </Constant>
																	</Variable>
																</VariableSet>
																<IsMethod> false </IsMethod>
																<Source> PC </Source>
															</FunctionReference>
															<Parameters>
																<Equation>
																	<Variable>
																		<Name> m_NumUnits </Name>
																		<Type> Integer </Type>
																		<Value> 0 </Value>
																		<Constant> false </Constant>
																	</Variable>
																</Equation>
															</Parameters>
															<Operation op="+">
																<Equation>
																	<Variable>
																		<Name> _UNNAMED </Name>
																		<Type> String </Type>
																		<Value> units. </Value>
																		<Constant> true </Constant>
																	</Variable>
																</Equation>
															</Operation>
														</Equation>
													</Operation>
												</Equation>
											</Operation>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_PlayerID </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_DiplomaticStatus </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Epoch </Name>
					<Type> Integer </Type>
					<Value> 1 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> Units </name>
			<methods>
				<Function>
					<Name> AllArePlayerUnits </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.IsPlayerUnit </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> IsPlayerUnit </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveAmmo </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasAmmo </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasAmmo </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveAttackAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasAttackAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasAttackAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveConnectAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasConnectAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasConnectAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveConstructionAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasConstructionAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasConstructionAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveConvertAttackAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasConvertAttackAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasConvertAttackAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveConvertableAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasConvertableAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasConvertableAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveCoverSpotAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasCoverSpotAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasCoverSpotAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveGarrisonAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasGarrisonAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasGarrisonAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveGarrisonableAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasGarrisonableAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasGarrisonableAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveGateAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasGateAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasGateAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveGatherAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasGatherAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasGatherAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveHealAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasHealAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasHealAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveLOSAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasLOSAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasLOSAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveMoveAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasMoveAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasMoveAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHavePowerReserveAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasPowerReserveAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasPowerReserveAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveProduceAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasProduceAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasProduceAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveResourceAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasResourceAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasResourceAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveResourceDropoffAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasResourceDropoffAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasResourceDropoffAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveTargetingListAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasTargetingListAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasTargetingListAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveTradeAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasTradeAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasTradeAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllHaveTradeCenterAb </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.HasTradeCenterAb </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> HasTradeCenterAb </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> AllInAttackRange </Name>
					<Variable>
						<Name>  </Name>
						<Type> Boolean </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> loc </Name>
							<Type> Location </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> not </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Boolean </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<FunctionReference>
														<Name> unit.InAttackRange </Name>
														<Variable>
															<Name>  </Name>
															<Type> Boolean </Type>
															<Constant> false </Constant>
														</Variable>
														<VariableSet Name="Parameters">
															<Variable>
																<Name> loc </Name>
																<Type> Location </Type>
																<Constant> false </Constant>
															</Variable>
														</VariableSet>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> InAttackRange </MethodName>
														<Source> GM </Source>
													</FunctionReference>
													<Parameters>
														<Equation>
															<Variable>
																<Name> loc </Name>
																<Type> Location </Type>
																<Constant> false </Constant>
															</Variable>
														</Equation>
													</Parameters>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> Boolean </Type>
														<Value> false </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Boolean </Type>
										<Value> true </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> GetTotalAttackDamage </Name>
					<Variable>
						<Name>  </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> dmg </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Real </Type>
										<Value> 0 </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> dmg </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> dmg </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
											<Operation op="+">
												<Equation>
													<FunctionReference>
														<Name> unit.GetAttackDamage </Name>
														<Variable>
															<Name>  </Name>
															<Type> Real </Type>
															<Constant> false </Constant>
														</Variable><VariableSet Name="Parameters"/>
														<IsMethod> true </IsMethod>
														<ObjectName> unit </ObjectName>
														<MethodName> GetAttackDamage </MethodName>
														<Source> GM </Source>
													</FunctionReference>
												</Equation>
											</Operation>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> dmg </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> dmg </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> GetUnit </Name>
					<Variable>
						<Name>  </Name>
						<Type> Unit </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> unitID </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> unit </Name>
								<Type> Unit </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_Units[] </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
										<ParentArray>
											<Variable>
												<Name> m_Units </Name>
												<Type> Array </Type>
												<Constant> false </Constant>
											</Variable>
										</ParentArray>
									</Variable>
									<Parameters>
										<Equation>
											<Variable>
												<Name> unitID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> unitID </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> unit.m_UnitID </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> MoveAllTo </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> x </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> y </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="declare">
									<Variable purpose="declare">
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Statement>
								<Statement type="set">
									<Calculation>
										<Equation>
											<Variable>
												<Name> m_Units[] </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
												<ParentArray>
													<Variable>
														<Name> m_Units </Name>
														<Type> Array </Type>
														<Constant> false </Constant>
													</Variable>
												</ParentArray>
											</Variable>
											<Parameters>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
									<SetObject>
										<Equation>
											<Variable>
												<Name> unit </Name>
												<Type> Unit </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</SetObject>
								</Statement>
								<Statement type="call">
									<Calculation>
										<Equation>
											<FunctionReference>
												<Name> unit.MoveTo </Name>
												<Variable>
													<Name>  </Name>
													<Type> void </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> x </Name>
														<Type> Real </Type>
														<Constant> false </Constant>
													</Variable>
													<Variable>
														<Name> y </Name>
														<Type> Real </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> true </IsMethod>
												<ObjectName> unit </ObjectName>
												<MethodName> MoveTo </MethodName>
												<Source> GM </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> x </Name>
														<Type> Real </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
												<Equation>
													<Variable>
														<Name> y </Name>
														<Type> Real </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Units.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_Units </Name>
					<Type> Array </Type>
					<Constant> false </Constant>
					<ArrayType>
						<Variable>
							<Name>  </Name>
							<Type> Unit </Type>
							<Constant> false </Constant>
						</Variable>
					</ArrayType>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityMove </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_Speed </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_TurnRate </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_OnLand </Name>
					<Type> Boolean </Type>
					<Value> true </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_OnWater </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_InAir </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityData </name><methods/>
			<members>
				<Variable>
					<Name> m_OrdnanceLeft </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_BuildingType </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_BuildingHealth </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ResourceAmountCarried </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ResourceTypeCarried </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ResourceAmountAvailable </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_ConversionHealth </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_CurrentPower </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_HostID </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_IsGarrisoned </Name>
					<Type> Boolean </Type>
					<Value> false </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityResource </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_ResourceType </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_MaxWorkers </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_GatherType </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> DemoIntelRequest </name>
			<methods>
				<Function>
					<Name> Construct </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> unit </Name>
							<Type> Unit </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> radius </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> radius </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Radius </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> ToString </Name>
					<Variable>
						<Name>  </Name>
						<Type> String </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> res </Name>
								<Type> String </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> String </Type>
										<Value> Unit </Value>
										<Constant> true </Constant>
									</Variable>
									<Operation op="+">
										<Equation>
											<FunctionReference>
												<Name> toString </Name>
												<Variable>
													<Name>  </Name>
													<Type> String </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> m_Unit.m_UnitID </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
											<Operation op="+">
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> String </Type>
														<Value> at rad </Value>
														<Constant> true </Constant>
													</Variable>
													<Operation op="+">
														<Equation>
															<FunctionReference>
																<Name> toString </Name>
																<Variable>
																	<Name>  </Name>
																	<Type> String </Type>
																	<Constant> false </Constant>
																</Variable>
																<VariableSet Name="Parameters">
																	<Variable>
																		<Name> param1 </Name>
																		<Type> Real </Type>
																		<Constant> false </Constant>
																	</Variable>
																</VariableSet>
																<IsMethod> false </IsMethod>
																<Source> PC </Source>
															</FunctionReference>
															<Parameters>
																<Equation>
																	<Variable>
																		<Name> m_Radius </Name>
																		<Type> Real </Type>
																		<Constant> false </Constant>
																	</Variable>
																</Equation>
															</Parameters>
														</Equation>
													</Operation>
												</Equation>
											</Operation>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_Unit </Name>
					<Type> Unit </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Radius </Name>
					<Type> Real </Type>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> TerrainTypes </name>
			<methods>
				<Function>
					<Name> GetName </Name>
					<Variable>
						<Name>  </Name>
						<Type> String </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> type </Name>
							<Type> Integer </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_Names[] </Name>
										<Type> String </Type>
										<Constant> false </Constant>
										<ParentArray>
											<Variable>
												<Name> m_Names </Name>
												<Type> Array </Type>
												<Constant> false </Constant>
											</Variable>
										</ParentArray>
									</Variable>
									<Parameters>
										<Equation>
											<Variable>
												<Name> type </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> GetType </Name>
					<Variable>
						<Name>  </Name>
						<Type> Integer </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> name </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="for">
							<StatementBlock>
								<Statement type="if">
									<Condition>
										<Equation>
											<FunctionReference>
												<Name> equals </Name>
												<Variable>
													<Name>  </Name>
													<Type> Boolean </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
													<Variable>
														<Name> param2 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> m_Names[] </Name>
														<Type> String </Type>
														<Constant> false </Constant>
														<ParentArray>
															<Variable>
																<Name> m_Names </Name>
																<Type> Array </Type>
																<Constant> false </Constant>
															</Variable>
														</ParentArray>
													</Variable>
													<Parameters>
														<Equation>
															<Variable>
																<Name> i </Name>
																<Type> Integer </Type>
																<Constant> false </Constant>
															</Variable>
															<Operation op="-">
																<Equation>
																	<Variable>
																		<Name> _UNNAMED </Name>
																		<Type> Integer </Type>
																		<Value> 1 </Value>
																		<Constant> true </Constant>
																	</Variable>
																</Equation>
															</Operation>
														</Equation>
													</Parameters>
												</Equation>
												<Equation>
													<Variable>
														<Name> name </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Condition>
									<StatementBlock>
										<Statement type="return">
											<Calculation>
												<Equation>
													<Variable>
														<Name> i </Name>
														<Type> Integer </Type>
														<Constant> false </Constant>
													</Variable>
													<Operation op="-">
														<Equation>
															<Variable>
																<Name> _UNNAMED </Name>
																<Type> Integer </Type>
																<Value> 1 </Value>
																<Constant> true </Constant>
															</Variable>
														</Equation>
													</Operation>
												</Equation>
											</Calculation>
										</Statement>
									</StatementBlock>
								</Statement>
							</StatementBlock>
							<Variable purpose="for">
								<Name> i </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="start">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Variable purpose="end">
								<Name> m_Names.length </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
							<Variable purpose="step">
								<Name> _UNNAMED </Name>
								<Type> Integer </Type>
								<Constant> true </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> name </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> m_Names[] </Name>
										<Type> String </Type>
										<Constant> false </Constant>
										<ParentArray>
											<Variable>
												<Name> m_Names </Name>
												<Type> Array </Type>
												<Constant> false </Constant>
											</Variable>
										</ParentArray>
									</Variable>
									<Parameters>
										<Equation>
											<Variable>
												<Name> m_Names.length </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> m_Names.length </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="-">
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> Integer </Type>
												<Value> 1 </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_Names </Name>
					<Type> Array </Type>
					<Constant> false </Constant>
					<ArrayType>
						<Variable>
							<Name>  </Name>
							<Type> String </Type>
							<Constant> false </Constant>
						</Variable>
					</ArrayType>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityCoverSpot </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_Radius </Name>
					<Type> Real </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> Location </name>
			<methods>
				<Function>
					<Name> Construct </Name>
					<Variable>
						<Name>  </Name>
						<Type> void </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> x </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> y </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
						<Variable>
							<Name> z </Name>
							<Type> Real </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> x </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> structure </Type>
										<Value> m_X </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> y </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> structure </Type>
										<Value> m_Y </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> z </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> structure </Type>
										<Value> m_Z </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> DistanceFrom </Name>
					<Variable>
						<Name>  </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
					<VariableSet Name="Parameters">
						<Variable>
							<Name> otherLoc </Name>
							<Type> Location </Type>
							<Constant> false </Constant>
						</Variable>
					</VariableSet>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> x1 </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> y1 </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> z1 </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> otherLoc.m_X </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="-">
										<Equation>
											<Variable>
												<Name> m_X </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> x1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> otherLoc.m_Y </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="-">
										<Equation>
											<Variable>
												<Name> m_Y </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> y1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> otherLoc.m_Z </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="-">
										<Equation>
											<Variable>
												<Name> m_Z </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> z1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> x1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="*">
										<Equation>
											<Variable>
												<Name> x1 </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> x1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> y1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="*">
										<Equation>
											<Variable>
												<Name> y1 </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> y1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> z1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="*">
										<Equation>
											<Variable>
												<Name> z1 </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> z1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> x1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="+">
										<Equation>
											<Variable>
												<Name> y1 </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
											<Operation op="+">
												<Equation>
													<Variable>
														<Name> z1 </Name>
														<Type> Real </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Operation>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> x1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="if">
							<Condition>
								<Equation>
									<FunctionReference>
										<Name> lessThan </Name>
										<Variable>
											<Name>  </Name>
											<Type> Boolean </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
											<Variable>
												<Name> param2 </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> x1 </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
										<Equation>
											<Variable>
												<Name> _UNNAMED </Name>
												<Type> Real </Type>
												<Value> 0 </Value>
												<Constant> true </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Condition>
							<StatementBlock>
								<Statement type="call">
									<Calculation>
										<Equation>
											<FunctionReference>
												<Name> _errorOut </Name>
												<Variable>
													<Name>  </Name>
													<Type> void </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> String </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> String </Type>
														<Value> Distance was negative! </Value>
														<Constant> true </Constant>
													</Variable>
												</Equation>
											</Parameters>
										</Equation>
									</Calculation>
								</Statement>
							</StatementBlock>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> sqrt </Name>
										<Variable>
											<Name>  </Name>
											<Type> Real </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> param1 </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> x1 </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> x1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> x1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
				<Function>
					<Name> ToString </Name>
					<Variable>
						<Name>  </Name>
						<Type> String </Type>
						<Constant> false </Constant>
					</Variable><VariableSet Name="Parameters"/>
					<Implementation>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> res </Name>
								<Type> String </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> String </Type>
										<Value> Loc( </Value>
										<Constant> true </Constant>
									</Variable>
									<Operation op="+">
										<Equation>
											<FunctionReference>
												<Name> toString </Name>
												<Variable>
													<Name>  </Name>
													<Type> String </Type>
													<Constant> false </Constant>
												</Variable>
												<VariableSet Name="Parameters">
													<Variable>
														<Name> param1 </Name>
														<Type> Real </Type>
														<Constant> false </Constant>
													</Variable>
												</VariableSet>
												<IsMethod> false </IsMethod>
												<Source> PC </Source>
											</FunctionReference>
											<Parameters>
												<Equation>
													<Variable>
														<Name> m_X </Name>
														<Type> Real </Type>
														<Constant> false </Constant>
													</Variable>
												</Equation>
											</Parameters>
											<Operation op="+">
												<Equation>
													<Variable>
														<Name> _UNNAMED </Name>
														<Type> String </Type>
														<Value> , </Value>
														<Constant> true </Constant>
													</Variable>
													<Operation op="+">
														<Equation>
															<FunctionReference>
																<Name> toString </Name>
																<Variable>
																	<Name>  </Name>
																	<Type> String </Type>
																	<Constant> false </Constant>
																</Variable>
																<VariableSet Name="Parameters">
																	<Variable>
																		<Name> param1 </Name>
																		<Type> Real </Type>
																		<Constant> false </Constant>
																	</Variable>
																</VariableSet>
																<IsMethod> false </IsMethod>
																<Source> PC </Source>
															</FunctionReference>
															<Parameters>
																<Equation>
																	<Variable>
																		<Name> m_Y </Name>
																		<Type> Real </Type>
																		<Constant> false </Constant>
																	</Variable>
																</Equation>
															</Parameters>
															<Operation op="+">
																<Equation>
																	<Variable>
																		<Name> _UNNAMED </Name>
																		<Type> String </Type>
																		<Value> , </Value>
																		<Constant> true </Constant>
																	</Variable>
																	<Operation op="+">
																		<Equation>
																			<FunctionReference>
																				<Name> toString </Name>
																				<Variable>
																					<Name>  </Name>
																					<Type> String </Type>
																					<Constant> false </Constant>
																				</Variable>
																				<VariableSet Name="Parameters">
																					<Variable>
																						<Name> param1 </Name>
																						<Type> Real </Type>
																						<Constant> false </Constant>
																					</Variable>
																				</VariableSet>
																				<IsMethod> false </IsMethod>
																				<Source> PC </Source>
																			</FunctionReference>
																			<Parameters>
																				<Equation>
																					<Variable>
																						<Name> m_Z </Name>
																						<Type> Real </Type>
																						<Constant> false </Constant>
																					</Variable>
																				</Equation>
																			</Parameters>
																			<Operation op="+">
																				<Equation>
																					<Variable>
																						<Name> _UNNAMED </Name>
																						<Type> String </Type>
																						<Value> ) </Value>
																						<Constant> true </Constant>
																					</Variable>
																				</Equation>
																			</Operation>
																		</Equation>
																	</Operation>
																</Equation>
															</Operation>
														</Equation>
													</Operation>
												</Equation>
											</Operation>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="return">
							<Calculation>
								<Equation>
									<Variable>
										<Name> res </Name>
										<Type> String </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
						</Statement>
						<Validated> false </Validated>
					</Implementation>
					<ImplementedDirectly> false </ImplementedDirectly>
					<Source> GM </Source>
					<Package>  </Package>
				</Function>
			</methods>
			<members>
				<Variable>
					<Name> m_X </Name>
					<Type> Real </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Y </Name>
					<Type> Real </Type>
					<Constant> false </Constant>
				</Variable>
				<Variable>
					<Name> m_Z </Name>
					<Type> Real </Type>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
		<Structure>
			<name> UnitAbilityGather </name>
			<super> UnitAbility </super><methods/>
			<members>
				<Variable>
					<Name> m_GatherType </Name>
					<Type> Integer </Type>
					<Value> 0 </Value>
					<Constant> false </Constant>
				</Variable>
			</members>
		</Structure>
	</Classes>
	<Phases>
		<OperatorSet Phase="Playing">
			<Operator>
				<Name> AirMission </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> x </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> y </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> AttackLocation </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> x </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> y </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> AttackUnit </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> attackingUnits </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> defendingUnit </Name>
						<Type> Unit </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
				<Rule>
					<Name> AttackUnitRule </Name>
					<Phase> Playing </Phase>
					<Conditions>
						<Equation>
							<FunctionReference>
								<Name> attackingUnits.AllArePlayerUnits </Name>
								<Variable>
									<Name>  </Name>
									<Type> Boolean </Type>
									<Constant> false </Constant>
								</Variable><VariableSet Name="Parameters"/>
								<IsMethod> true </IsMethod>
								<ObjectName> attackingUnits </ObjectName>
								<MethodName> AllArePlayerUnits </MethodName>
								<Source> GM </Source>
							</FunctionReference>
						</Equation>
						<Equation>
							<FunctionReference>
								<Name> attackingUnits.AllHaveAttackAb </Name>
								<Variable>
									<Name>  </Name>
									<Type> Boolean </Type>
									<Constant> false </Constant>
								</Variable><VariableSet Name="Parameters"/>
								<IsMethod> true </IsMethod>
								<ObjectName> attackingUnits </ObjectName>
								<MethodName> AllHaveAttackAb </MethodName>
								<Source> GM </Source>
							</FunctionReference>
						</Equation>
						<Equation>
							<FunctionReference>
								<Name> attackingUnits.AllHaveAmmo </Name>
								<Variable>
									<Name>  </Name>
									<Type> Boolean </Type>
									<Constant> false </Constant>
								</Variable><VariableSet Name="Parameters"/>
								<IsMethod> true </IsMethod>
								<ObjectName> attackingUnits </ObjectName>
								<MethodName> AllHaveAmmo </MethodName>
								<Source> GM </Source>
							</FunctionReference>
						</Equation>
						<Equation>
							<FunctionReference>
								<Name> attackingUnits.AllInAttackRange </Name>
								<Variable>
									<Name>  </Name>
									<Type> Boolean </Type>
									<Constant> false </Constant>
								</Variable>
								<VariableSet Name="Parameters">
									<Variable>
										<Name> loc </Name>
										<Type> Location </Type>
										<Constant> false </Constant>
									</Variable>
								</VariableSet>
								<IsMethod> true </IsMethod>
								<ObjectName> attackingUnits </ObjectName>
								<MethodName> AllInAttackRange </MethodName>
								<Source> GM </Source>
							</FunctionReference>
							<Parameters>
								<Equation>
									<Variable>
										<Name> defendingUnit.m_Loc </Name>
										<Type> Location </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Parameters>
						</Equation>
					</Conditions>
					<Changes>
						<Statement type="declare">
							<Variable purpose="declare">
								<Name> damage </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> random </Name>
										<Variable>
											<Name>  </Name>
											<Type> Real </Type>
											<Constant> false </Constant>
										</Variable><VariableSet Name="Parameters"/>
										<IsMethod> false </IsMethod>
										<Source> PC </Source>
									</FunctionReference>
									<Operation op="*">
										<Equation>
											<FunctionReference>
												<Name> attackingUnits.GetTotalAttackDamage </Name>
												<Variable>
													<Name>  </Name>
													<Type> Real </Type>
													<Constant> false </Constant>
												</Variable><VariableSet Name="Parameters"/>
												<IsMethod> true </IsMethod>
												<ObjectName> attackingUnits </ObjectName>
												<MethodName> GetTotalAttackDamage </MethodName>
												<Source> GM </Source>
											</FunctionReference>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> damage </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> defendingUnit.m_Health </Name>
										<Type> Real </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
									<Operation op="-">
										<Equation>
											<Variable>
												<Name> damage </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> defendingUnit.m_Health </Name>
										<Type> Real </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="note">
							<CommentText> Also damages friend/unfriendly units within area effect radius </CommentText>
						</Statement>
						<Validated> false </Validated>
					</Changes><TransitionTable/>
				</Rule>
			</Operator>
			<Operator>
				<Name> Build </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> unitType </Name>
						<Type> UnitType </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> x </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> y </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> CaptureUnit </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> targetUnit </Name>
						<Type> Unit </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> ConvertUnit </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> targetUnit </Name>
						<Type> Unit </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> DropoffResource </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> targetUnit </Name>
						<Type> Unit </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> Explore </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> Follow </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> targetUnit </Name>
						<Type> Unit </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> Garrison </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> targetUnit </Name>
						<Type> Unit </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> GatherResource </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> x </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> y </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> Guard </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> targetUnit </Name>
						<Type> Unit </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> HealUnit </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> targetUnit </Name>
						<Type> Unit </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
				<Rule>
					<Name> HealUnitRule </Name>
					<Phase> Playing </Phase>
					<Conditions>
						<Equation>
							<FunctionReference>
								<Name> units.AllArePlayerUnits </Name>
								<Variable>
									<Name>  </Name>
									<Type> Boolean </Type>
									<Constant> false </Constant>
								</Variable><VariableSet Name="Parameters"/>
								<IsMethod> true </IsMethod>
								<ObjectName> units </ObjectName>
								<MethodName> AllArePlayerUnits </MethodName>
								<Source> GM </Source>
							</FunctionReference>
						</Equation>
					</Conditions>
					<Changes>
						<Validated> false </Validated>
					</Changes><TransitionTable/>
				</Rule>
			</Operator>
			<Operator>
				<Name> MoveUnit </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> x </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> y </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
				<Rule>
					<Name> MoveUnitRule </Name>
					<Phase> Playing </Phase>
					<Conditions>
						<Equation>
							<FunctionReference>
								<Name> units.AllArePlayerUnits </Name>
								<Variable>
									<Name>  </Name>
									<Type> Boolean </Type>
									<Constant> false </Constant>
								</Variable><VariableSet Name="Parameters"/>
								<IsMethod> true </IsMethod>
								<ObjectName> units </ObjectName>
								<MethodName> AllArePlayerUnits </MethodName>
								<Source> GM </Source>
							</FunctionReference>
						</Equation>
						<Equation>
							<Variable>
								<Name> unit.m_UnitType.m_UAMove.m_HasAbility </Name>
								<Type> Boolean </Type>
								<Value> false </Value>
								<Constant> false </Constant>
							</Variable>
						</Equation>
					</Conditions>
					<Changes>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> x </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> unit.m_Loc.m_X </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> y </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> unit.m_Loc.m_Y </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> kGoalEnum.kMove </Name>
										<Type> Integer </Type>
										<Value> 3 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> unit.m_Goal </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
						<Validated> false </Validated>
					</Changes><TransitionTable/>
				</Rule>
			</Operator>
			<Operator>
				<Name> Patrol </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> points </Name>
						<Type> Array </Type>
						<Constant> false </Constant>
						<ArrayType>
							<Variable>
								<Name>  </Name>
								<Type> Location </Type>
								<Constant> false </Constant>
							</Variable>
						</ArrayType>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> PrintText </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> msg </Name>
						<Type> String </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> Produce </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> unitType </Name>
						<Type> UnitType </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> SearchAndDestroy </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> Stop </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> Trade </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> targetUnit1 </Name>
						<Type> Unit </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> targetUnit2 </Name>
						<Type> Unit </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
			<Operator>
				<Name> Ungarrison </Name>
				<VariableSet Name="Parameters">
					<Variable>
						<Name> units </Name>
						<Type> Units </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> targetUnit </Name>
						<Type> Unit </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> x </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
					<Variable>
						<Name> y </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
				</VariableSet>
			</Operator>
		</OperatorSet>
	</Phases><PhaseRules/>
	<Functions>
		<Function>
			<Name> AddUnit </Name>
			<Variable>
				<Name>  </Name>
				<Type> void </Type>
				<Constant> false </Constant>
			</Variable>
			<VariableSet Name="Parameters">
				<Variable>
					<Name> unit </Name>
					<Type> Unit </Type>
					<Constant> false </Constant>
				</Variable>
			</VariableSet>
			<Implementation>
				<Statement type="declare">
					<Variable purpose="declare">
						<Name> playerIndex </Name>
						<Type> Integer </Type>
						<Constant> false </Constant>
					</Variable>
				</Statement>
				<Statement type="set">
					<Calculation>
						<Equation>
							<FunctionReference>
								<Name> GetPlayerIndex </Name>
								<Variable>
									<Name>  </Name>
									<Type> Integer </Type>
									<Constant> false </Constant>
								</Variable>
								<VariableSet Name="Parameters">
									<Variable>
										<Name> playerID </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</VariableSet>
								<IsMethod> false </IsMethod>
								<Source> GM </Source>
							</FunctionReference>
							<Parameters>
								<Equation>
									<Variable>
										<Name> unit.m_PlayerID </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Parameters>
						</Equation>
					</Calculation>
					<SetObject>
						<Equation>
							<Variable>
								<Name> playerIndex </Name>
								<Type> Integer </Type>
								<Constant> false </Constant>
							</Variable>
						</Equation>
					</SetObject>
				</Statement>
				<Statement type="if">
					<Condition>
						<Equation>
							<FunctionReference>
								<Name> equals </Name>
								<Variable>
									<Name>  </Name>
									<Type> Boolean </Type>
									<Constant> false </Constant>
								</Variable>
								<VariableSet Name="Parameters">
									<Variable>
										<Name> param1 </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
									<Variable>
										<Name> param2 </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</VariableSet>
								<IsMethod> false </IsMethod>
								<Source> PC </Source>
							</FunctionReference>
							<Parameters>
								<Equation>
									<Variable>
										<Name> playerIndex </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
								<Equation>
									<Variable>
										<Name> g_NumPlayers </Name>
										<Type> Integer </Type>
										<Value> 0 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Parameters>
						</Equation>
					</Condition>
					<StatementBlock>
						<Statement type="call">
							<Calculation>
								<Equation>
									<FunctionReference>
										<Name> CreatePlayer </Name>
										<Variable>
											<Name>  </Name>
											<Type> void </Type>
											<Constant> false </Constant>
										</Variable>
										<VariableSet Name="Parameters">
											<Variable>
												<Name> playerID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</VariableSet>
										<IsMethod> false </IsMethod>
										<Source> GM </Source>
									</FunctionReference>
									<Parameters>
										<Equation>
											<Variable>
												<Name> unit.m_PlayerID </Name>
												<Type> Integer </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Parameters>
								</Equation>
							</Calculation>
						</Statement>
					</StatementBlock>
				</Statement>
				<Statement type="declare">
					<Variable purpose="declare">
						<Name> uPlayer </Name>
						<Type> Player </Type>
						<Constant> false </Constant>
					</Variable>
				</Statement>
				<Statement type="set">
					<Calculation>
						<Equation>
							<Variable>
								<Name> gPlayers[] </Name>
								<Type> Player </Type>
								<Constant> false </Constant>
								<ParentArray>
									<Variable>
										<Name> gPlayers </Name>
										<Type> Array </Type>
										<Constant> false </Constant>
									</Variable>
								</ParentArray>
							</Variable>
							<Parameters>
								<Equation>
									<Variable>
										<Name> playerIndex </Name>
										<Type> Integer </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Parameters>
						</Equation>
					</Calculation>
					<SetObject>
						<Equation>
							<Variable>
								<Name> _UNNAMED </Name>
								<Type> structure </Type>
								<Value> uPlayer </Value>
								<Constant> true </Constant>
							</Variable>
						</Equation>
					</SetObject>
				</Statement>
				<Statement type="set">
					<Calculation>
						<Equation>
							<Variable>
								<Name> uPlayer </Name>
								<Type> Player </Type>
								<Constant> false </Constant>
							</Variable>
						</Equation>
					</Calculation>
					<SetObject>
						<Equation>
							<Variable>
								<Name> unit.m_Player </Name>
								<Type> Player </Type>
								<Constant> false </Constant>
							</Variable>
						</Equation>
					</SetObject>
				</Statement>
				<Statement type="call">
					<Calculation>
						<Equation>
							<FunctionReference>
								<Name> uPlayer.AddUnit </Name>
								<Variable>
									<Name>  </Name>
									<Type> void </Type>
									<Constant> false </Constant>
								</Variable>
								<VariableSet Name="Parameters">
									<Variable>
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</VariableSet>
								<IsMethod> true </IsMethod>
								<ObjectName> uPlayer </ObjectName>
								<MethodName> AddUnit </MethodName>
								<Source> GM </Source>
							</FunctionReference>
							<Parameters>
								<Equation>
									<Variable>
										<Name> unit </Name>
										<Type> Unit </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Parameters>
						</Equation>
					</Calculation>
				</Statement>
				<Statement type="set">
					<Calculation>
						<Equation>
							<Variable>
								<Name> unit </Name>
								<Type> Unit </Type>
								<Constant> false </Constant>
							</Variable>
						</Equation>
					</Calculation>
					<SetObject>
						<Equation>
							<Variable>
								<Name> g_LastUpdated </Name>
								<Type> Unit </Type>
								<Constant> false </Constant>
							</Variable>
						</Equation>
					</SetObject>
				</Statement>
				<Validated> false </Validated>
			</Implementation>
			<ImplementedDirectly> false </ImplementedDirectly>
			<Source> GM </Source>
			<Package>  </Package>
		</Function>
		<Function>
			<Name> ApproxCos </Name>
			<Variable>
				<Name>  </Name>
				<Type> Real </Type>
				<Constant> false </Constant>
			</Variable>
			<VariableSet Name="Parameters">
				<Variable>
					<Name> theta </Name>
					<Type> Real </Type>
					<Constant> false </Constant>
				</Variable>
			</VariableSet>
			<Implementation>
				<Statement type="declare">
					<Variable purpose="declare">
						<Name> ans </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
				</Statement>
				<Statement type="declare">
					<Variable purpose="declare">
						<Name> t </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
				</Statement>
				<Statement type="declare">
					<Variable purpose="declare">
						<Name> working </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
				</Statement>
				<Statement type="declare">
					<Variable purpose="declare">
						<Name> mul </Name>
						<Type> Real </Type>
						<Constant> false </Constant>
					</Variable>
				</Statement>
				<Statement type="if">
					<Condition>
						<Equation>
							<FunctionReference>
								<Name> greaterThanOrEqualTo </Name>
								<Variable>
									<Name>  </Name>
									<Type> Boolean </Type>
									<Constant> false </Constant>
								</Variable>
								<VariableSet Name="Parameters">
									<Variable>
										<Name> param1 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
									<Variable>
										<Name> param2 </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</VariableSet>
								<IsMethod> false </IsMethod>
								<Source> PC </Source>
							</FunctionReference>
							<Parameters>
								<Equation>
									<Variable>
										<Name> theta </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
								<Equation>
									<Variable>
										<Name> g_PI </Name>
										<Type> Real </Type>
										<Value> 3.14159 </Value>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Parameters>
						</Equation>
					</Condition>
					<StatementBlock>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> theta </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="-">
										<Equation>
											<Variable>
												<Name> g_PI </Name>
												<Type> Real </Type>
												<Value> 3.14159 </Value>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> t </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
					</StatementBlock>
					<ElseBlock>
						<Statement type="set">
							<Calculation>
								<Equation>
									<Variable>
										<Name> theta </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Calculation>
							<SetObject>
								<Equation>
									<Variable>
										<Name> t </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</SetObject>
						</Statement>
					</ElseBlock>
				</Statement>
				<Statement type="set">
					<Calculation>
						<Equation>
							<Variable>
								<Name> t </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
							<Operation op="*">
								<Equation>
									<Variable>
										<Name> t </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Operation>
						</Equation>
					</Calculation>
					<SetObject>
						<Equation>
							<Variable>
								<Name> mul </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
						</Equation>
					</SetObject>
				</Statement>
				<Statement type="set">
					<Calculation>
						<Equation>
							<Variable>
								<Name> mul </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
							<Operation op="/">
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Real </Type>
										<Value> 2 </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							</Operation>
						</Equation>
					</Calculation>
					<SetObject>
						<Equation>
							<Variable>
								<Name> working </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
						</Equation>
					</SetObject>
				</Statement>
				<Statement type="set">
					<Calculation>
						<Equation>
							<Variable>
								<Name> _UNNAMED </Name>
								<Type> Real </Type>
								<Value> 1 </Value>
								<Constant> true </Constant>
							</Variable>
							<Operation op="-">
								<Equation>
									<Variable>
										<Name> working </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
								</Equation>
							</Operation>
						</Equation>
					</Calculation>
					<SetObject>
						<Equation>
							<Variable>
								<Name> ans </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
						</Equation>
					</SetObject>
				</Statement>
				<Statement type="set">
					<Calculation>
						<Equation>
							<Variable>
								<Name> mul </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
							<Operation op="*">
								<Equation>
									<Variable>
										<Name> t </Name>
										<Type> Real </Type>
										<Constant> false </Constant>
									</Variable>
									<Operation op="*">
										<Equation>
											<Variable>
												<Name> t </Name>
												<Type> Real </Type>
												<Constant> false </Constant>
											</Variable>
										</Equation>
									</Operation>
								</Equation>
							</Operation>
						</Equation>
					</Calculation>
					<SetObject>
						<Equation>
							<Variable>
								<Name> mul </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
						</Equation>
					</SetObject>
				</Statement>
				<Statement type="set">
					<Calculation>
						<Equation>
							<Variable>
								<Name> mul </Name>
								<Type> Real </Type>
								<Constant> false </Constant>
							</Variable>
							<Operation op="/">
								<Equation>
									<Variable>
										<Name> _UNNAMED </Name>
										<Type> Real </Type>
										<Value> 24 </Value>
										<Constant> true </Constant>
									</Variable>
								</Equation>
							<