text:
#2 Assignment: The Argument by David Guterson and Kenneth Jackson Essay
Essay #2 Assignment: The Argument by David Guterson and Kenneth Jackson
David Guterson, in his paper entitled 'The Mall as Prison', came to the recently opened Mall of America somewhere in Minneapolis during the month of April to observe how the mall goers take the mall. With a skeptical eye, he agreed with what James Farrell indicated that "one can take the pulse of American culture by spending time in malls" (Guterson 286). What is the sense of shopping malls in America? Can it be that the malls could be a center too, of community life? Would it be an authentic community life?
This paper revolves around shopping malls in America and what the author sees in relation to community life. In the end, the author argues that shopping malls could be an authentic place for community life; however, it is not always a fine and excellent community life that lingers in malls. Films alone and the media could be sources of youth aggressiveness and violence. On the other hand, it could also be a place for empowering and motivating communities in general. Shopping malls could be the best or worst place in the community.
David Guterson's Argument
Two authors, David Guterson and Kenneth Jackson, argue that the bazaars and marketplaces of old are places to engage in the give and take of community life. In David Guterson's article entitled 'The Mall as Prison', he establishes the argument that shopping malls and bazaars are places that institute the economy of the community. As stated,
Eleven thousand articles, the press kit warned me, had already been written on the mall. Four hundred trees had been planted in its gardens, $625 million had been spent to build it, 350 stores had been leased. Three thousand bus tours were anticipated each year along with a half-million Canadian visitors and 200,000 Japanese tourists. Sales were projected at $650 million for 1993 and at $1 billion for 1996… (Guterson 287)
It was created to represent, not a mall, but a national tourist spot for vacationers in America. These large buildings like the malls, according to Guterson, stand as "markers in the lives of nations and in the stream of a people's history" (287). Despite the extravagance and the profligacy of a mall, it only appeared to be a place for claustrophobia, sensory deprivation, as well as disorientation (288). As described by Guterson,
Here we are free to wander endlessly and to furtively watch our fellow wanderers, thousands upon thousands of milling strangers who have come with the intent of losing themselves in the mall's grand, stimulating design. (Guterson 288)
From here it appears that, despite the luxury and extravagance that shopping malls and bazaars bring us, they could also be defined as prisons as based on Guterson's argument. It does not reflect communal relationship or interaction—one that can be found in simple marketplaces and smaller stores—but a private interaction with oneself or with others. From here it is being made evident that, as reflected in the article of Guterson, shopping malls should be seen as a center for community life; however, as seen in this case, it is being manifested that shopping malls do not appear to be a place for genuine community life but a clandestine, secretive one. Going alone in shopping malls and bazaars is being alone.
There are other cultures wherein big public buildings, such as the shopping malls, tend to be places of communal relationship. It just so happened that America has a culture wherein urban life mirrors one that is more secretive and private. It should be a center for community life however. Lots of things could happen there that includes interacting with other people, however stranger they may be. I have been to other places where shopping malls are seen as places for communication and interaction… even between strangers. It is evident that whether or not shopping malls are being accepted as places for community enhancing lies on the culture of the specific place. Culture creates the exact environment that allows people to intermingle with one another. As for America, I have to agree that yes, shopping malls are becoming more like 'prisons', with people going to and fro just to look at the site. Unless one goes there with others to shop it remains to be a prison where strangers meet and outsiders remain to stand almost everywhere.
In the 1990s, youth apocalypse films emerged, which usually entertained fourteen-year-old boys and girls. Films such as Natural Born Killers (1994), Kids (1995), and The Basketball Diaries (1995) came out of the shopping malls, while presenting violence and aggressiveness, and violence to these teenagers (Benjamin 1). The Doom Generation in 1995 even presented heterosexual disaster movie that share dark orientations to teenagers. All these are being shown in the movie houses of the shopping malls, and even outside the movie houses where teenagers meet and relate with other teenagers in the community. It is evident therefore that, as shopping malls are places for media and entertainment that do not always create the perfect type of environment for the kids, shopping malls could also be dangerous.
Kenneth Jackson's Argument
Kenneth Jackson also argues that the bazaars and marketplaces should be places to engage in the give and take of community life. As America contains the best shopping malls in the world, the American community will not be complete without the existence of these shopping malls. Jackson implied in his article 'A Brief History of Malls' that…
By 1992, there were 38,966 operating shopping centers in the United States, 1,835 of them large, regional malls, and increasingly they were featuring the same products, the same stores, and the same antiseptic environment. (274)
It appears that the whole of America is actually one shopping center that is freely expanding at the speed of light (Jackson 274). Despite the fact that shopping malls were not invented or first created in America but in the Middle East, it became a global phenomenon by the 20th century, after modern malls were initiated in Hong Kong, and stores such as these we are now having started to spread about the country. In Osaka there were also about a million people per day buying clothes, food, toys, lizards, and seeweeds (Jackson 276). Nevertheless, according to Jackson, "it is in the United States that the shopping center and the shopping mall have found especially fertile ground" (276). There was large-scale retailing in North America, while the Country Club Plaza in 1923 became "the first automobile-oriented shopping center" (276). It was in the mid-1930s, however, that shopping malls began to contain only one management association, complete with parking facilities. It is being stated,
The first major planned retail shopping center in the world went up in Raleigh, North Carolina, in 1949, the brainchild of Homer Hoyt, a well-known author and demographer best remembered for his sector model of urban growth. Another early prototype was Northgate, which opened on the outskirts of Seattle in 1950. (Jackson 277)
By 1970s, it is said that the typical Americans were spending more and more of their time in shopping centers and malls instead of other places aside from their own homes (277). It is, according to Jackson, "the most distinctive product of the American postwar years" (277).
From the statements made by Jackson, it reflects that neither are shopping malls the places to go to in order to engage in the give and take of community life, or not the place to go to in order to engage in the give and take of community life. In concentrating more on the history of shopping centers or malls, Jackson chose to stay neutral on whether or not shopping centers are places to engage in communal sharing and relationship. Because it focuses more on how shopping malls and centers basically started around the world, it does not consider the effects brought by shopping centers and malls. It just mentions that America has been a place famous for its superb shopping centers, but the culture and environment inside the shopping centers and bazaars are being excluded out of the argument. Considering the most common environment of malls in the United States, it can be justified then that the type of culture being emphasized in Jackson's article would be the kind of environment that Guterson has tried to explain. On the other hand, his use of the phrase "the same antiseptic environment" (274), however, insists that he is more on the side of the statement that shopping malls are places where communal relationship and interaction take place. Being antiseptic is similar to being clean and uncontaminated; thus, the shopping malls are purely uncontaminated of the bad elements (e.g., dark orientations to teenagers) that may prevail.
If shopping centers and malls are uncontaminated, and if it is a place for communal relationship and interaction, then what authors John Bolland and Debra McCallum of the University of Alabama could be done here. In their article entitled 'Neighboring and Community Mobilization in High-Poverty Inner-City Neighborhoods', it is specified that empowerment, the sense of community, and neighboring behavior are the keys in the discussion of community issues and community life.
Analysis of the Argument
There are opposing views on the article written by Guterson and Jackson. The former accepts the statement that bazaars and shopping malls are places to engage in the give and take of community life. He establishes the argument that these places are used in instituting the economy of the community and not the communal relationship of the community. There is extravagance and luxury in the shopping malls, but it only appears to be a prison for those who seek communal relationship and neighborhood. There is not much community life in these areas, since private interaction is thing most common in these areas. Thus, shopping malls do not appear to be the right place for genuine community life. Being in shopping malls is being alone with the cultural environment.
As for Jackson's argument, he positions himself more on the statement that shopping centers and malls are indeed, places to engage in the give and take of community life. He establishes the argument that these places are used in the communal relationship of the neighborhood or the community. It should not be taken as a prison, especially that the history of the United States would have not been complete without the development of the shopping centers and malls. America alone is one extra large shopping center situated in the West. As more and more Americans spend their time alone or with friends and family inside the shopping malls, we should acknowledge the fact that shopping centers and malls are not prisons but places of communal giving and taking—the place for neighborhood motivation.
Between the two opposite arguments—Guterson's that stays on the side of shopping malls not being a place for communal interaction, as well as, Jackson that stays on the side of shopping malls being a place for communal interaction, the writer believes that shopping malls and bazaars are neither on the side of the two. Because cultural environment dictates whichever of the two is the correct one, and that the people themselves carry the cultural environment of the whole community, then it is unmistakable that malls do not carry the final say. Shopping centers and malls are merely buildings; they do not hold the culture itself.
As Guterson implied, one can indeed take the pulse of the culture of America by spending one whole day in the malls. The sense of shopping malls rests on culture, and if the community allows, it could be a strong place for community life and interaction. It could be an authentic community life if the culture permits the place being a place for neighborhood mobilization. Otherwise, it is not a genuine place for communal interaction and giving. A fine and excellent community life may just be around the corner of the malls.
Benjamin, Richard. "The Sense of an Ending: Youth Apocalypse Films." Journal of Film and Video 56.4 (2004): 34-49.
Bolland, John M., and Debra Moehle McCallum. "Neighboring and Community Mobilization in High-Poverty Inner-City Neighborhoods." Urban Affairs Review 38.1 (2002, September): 42-69.
Guterson, David. "The Mall as Prison." Title of book. Ed. (name of editor). Place: publisher, year. 286-293.
Jackson, Kenneth. "The History of Malls." Title of book. Ed. (name of editor). Place: publisher, year. 274-277.
The Definition of and Development of Community Essay
The Rise of a Mass Democracy Sample Essay
HESI: Perioperative Care
A study of workforce commitment in government departments Essay
In what ways could it be said that community is exclusive Essay
How does David Guterson convey the fragility of the community of San Piedro in his opening chapters? Essay
Compare and contrast ways in which David Guterson and Grahame Greene present painful conflict in love relationship Essay


text:
import os
import World, Globals
import RoomInit, MobInit, Objects
import cInteractions

# checks for a previous set of server data, and if it is present, load it.
def clientDataLoad(client, CLIENT_LIST, CLIENT_DATA, TIMERS, kind):
	"""
	Loads the information in the client file to CLIENT_DATA
	"""

	clientDataID = str(client.addrport())
	name = CLIENT_DATA[clientDataID].name
	fileData = []
	path = 'data/client/' + name + '/' + name
	try:
		with open(path, 'r') as CD:
			fileData = CD.readlines()
	except:
		print "!! " + path + " not found, " + name + " failed to load."

	clientName = ''
	op = False
	prompt = ''
	clientID = None
	title = ''
	description = ''
	currentRoomString = ''
	hp = None
	maxHp = None
	pp = None
	maxPp = None
	level = None
	exp = None
	money = None
	offense = None
	defense = None
	speed = None
	guts = None
	luck = None
	vitality = None
	IQ = None
	inventorySize = None
	inventoryItems = []
	gameState = None
	currentRoomRoom = None
	battleRoom = None
	battleRoomAttachedTo = None
	battleCommands = None
	rewardExp = 0
	rewardMoney = 0
	expToLevel = 0
	equipItems = ''
	newItemsList = []

	#print fileData
	for data in fileData:
		if data.startswith('name='):
			clientName = data[5:-1]
		if data.startswith('op='):
			op = data[3:-1]
		if data.startswith("prompt="):
			prompt = data[7:-1]
		if data.startswith('gameState='):
			gameState = data[10:-1]
		if data.startswith("battleRoom="):
			battleRoom = data[11:-1]
		if data.startswith("battleRoom.attachedTo="):
			battleRoomAttachedTo = data[22:-1]
			battleRoomAttachedTo = battleRoomAttachedTo.split(":")
		if data.startswith("clientID="):
			clientID= data[9:-1]
		if data.startswith("title="):
			title = data[6:-1]
		if data.startswith("description="):
			description = data[12:-1]
		if data.startswith("currentRoom="):
			currentRoomString = data[12:-1]
			#print "crs=" + currentRoomString
				#print currentRoomString
		if currentRoomString == '':
			currentRoomString = Globals.startingRoom.region + ":" + Globals.startingRoom.name
		currentRoomCoord = currentRoomString.split(":")
		#print str(currentRoomCoord)
		for region in Globals.regionListDict:
			for room in Globals.regionListDict[region]:
				if room == currentRoomCoord[1]:
					currentRoomRoom = Globals.regionListDict[currentRoomCoord[0]][currentRoomCoord[1]]

		#print currentRoomRoom.name
		if data.startswith("hp="):
			hp = int(data[3:-1])
		if data.startswith("maxHp="):
			maxHp = int(data[6:-1])
		if data.startswith("pp="):
			pp = int(data[3:-1])
		if data.startswith("maxPp="):
			maxPp = int(data[6:-1])
		if data.startswith("level="):
			level = int(data[6:-1])
		if data.startswith("exp="):
			exp = int(data[4:-1])
		if data.startswith("expToLevel="):
			expToLevel = int(data[11:-1])
		if data.startswith("money="):
			money = int(data[6:-1])
		if data.startswith("rewardExp="):
			rewardExp = int(data[10:-1])
		if data.startswith("rewardMoney="):
			rewardMoney = int(data[12:-1])
		if data.startswith("offense="):
			offense = int(data[8:-1])
		if data.startswith("defense="):
			defense = int(data[8:-1])
		if data.startswith("speed="):
			speed = int(data[6:-1])
		if data.startswith("guts="):
			guts = int(data[5:-1])
		if data.startswith("luck="):
			luck = int(data[5:-1])
		if data.startswith("vitality="):
			vitality = int(data[9:-1])
		if data.startswith("IQ="):
			IQ = int(data[3:-1])
		if data.startswith("battleCommands="):
			battleCommands = data[15:-1]
			battleCommands = battleCommands.split(', ')
		if data.startswith("inventorySize="):
			inventorySize = int(data[14:-1])

		if data.startswith("inventory="):
			inventory = data[10:-1]
			inventory = inventory.split(", ")

			if os.path.exists('data/client/' + name + '/inv_equip/'):
				fileList = os.listdir('data/client/' + name + '/inv_equip/')
				for equip in fileList:
					Objects.buildEquipmentFromFile(equip, 'data/client/' + name + '/inv_equip/')

			#print inventory
			for item in inventory:
				if item != '':
					#print 'item:' + str(item)
					found = False
					for obj in Globals.fromFileList:
						#print obj.name
					 	if item == obj.name and found == False:
							#inventoryItems.append(obj)

							newItem = cmdSpawnObject(obj.name, currentRoomRoom, alert=False, whereFrom='playerinv')
							inventoryItems.append(newItem)
							newItemsList.append(newItem)
							#currentRoomRoom.objects.remove(newItem)
							found = True
							#print 'invI:' + str(inventoryItems)

					for obj in Globals.equipmentFromFile:
						#print item
						#print obj.ID
						if item == str(obj.ID) and found == False:
							newItem = cmdSpawnObject(obj.ID, currentRoomRoom, alert=False, whereFrom='playerinv')
							inventoryItems.append(newItem)
							newItemsList.append(newItem)
							#print 'invit:' + str(inventoryItems)
							#print currentRoomRoom.objects
							#currentRoomRoom.objects.remove(newItem)
							found = True
							#print 'invE:' + str(inventoryItems)
				else:
					inventory.remove(item)

		if data.startswith("equipment="):
			equipItems = data[10:-1]
			equipItems = equipItems.split(", ")

	#print Globals.startingRoom.players
	#print Globals.startingRoom
	newAvatar = World.Player(description=description, currentRoom=currentRoomRoom, name=clientName, client=client, clientDataID=clientDataID, title=title, rewardExp=rewardExp, rewardMoney=rewardMoney)
	newMortal = World.mortal(hp, maxHp, pp, maxPp, level, exp, money, offense, defense, speed, guts, luck, vitality, IQ, [])
	newAvatar.expToLevel = expToLevel
	newMortal.inventory = []
	# print newAvatar.currentRoom.players
	# print newAvatar.currentRoom.name
	# print Globals.startingRoom.players
	# print Globals.startingRoom.name
	#print newAvatar.currentRoom
	#print 'morinv:' + str(newMortal.inventory)

	CLIENT_DATA[clientDataID].name = clientName
	CLIENT_DATA[clientDataID].op = op
	CLIENT_DATA[clientDataID].prompt = prompt
	CLIENT_DATA[clientDataID].clientID = clientID
	CLIENT_DATA[clientDataID].avatar = newAvatar
	CLIENT_DATA[clientDataID].avatar.kind = newMortal
	CLIENT_DATA[clientDataID].gameState = gameState
	CLIENT_DATA[clientDataID].avatar.battleCommands = battleCommands
	#print "********" + str(inventoryItems)

	if battleRoom != 'None' and battleRoom != '' and battleRoom != None:
		newBattleRoom = RoomInit.loadBattleRoom('battles/'+str(battleRoom))
		newBattleRoom.attachedTo = Globals.regionListDict[battleRoomAttachedTo[0]][battleRoomAttachedTo[1]]
		Globals.battleRooms.append(newBattleRoom)
		CLIENT_DATA[clientDataID].battleRoom = newBattleRoom
		currentRoomRoom = newBattleRoom

	for room in Globals.battleRooms:
		if room.name == currentRoomCoord[1]:
			currentRoomRoom = room

	for item in inventoryItems:
		CLIENT_DATA[clientDataID].avatar.kind.inventory.append(item)
		# print item.name
		# removed = False
		# newItem = cmdSpawnObject(item.name, CLIENT_DATA[clientDataID].avatar.currentRoom, alert=False, whereFrom='inv')
		# CLIENT_DATA[clientDataID].avatar.kind.inventory.append(newItem)
		# print newItem.name
		# for item in CLIENT_DATA[clientDataID].avatar.currentRoom.objects:
		# 	print item.name
		# 	if item.name == newItem.name and removed == False:
		# 		CLIENT_DATA[clientDataID].avatar.currentRoom.objects.remove(item)
		# 		removed = True
	#CLIENT_DATA[clientDataID].avatar.kind.inventory = inventoryItems
	#CLIENT_DATA[clientDataID].avatar.currentRoom.players.append(newAvatar)
	CLIENT_DATA[clientDataID].avatar.kind.hp = hp
	CLIENT_DATA[clientDataID].avatar.kind.exp = exp
	CLIENT_DATA[clientDataID].avatar.kind.inventorySize = inventorySize
	CLIENT_DATA[clientDataID].avatar.currentRoom = currentRoomRoom
	#print 'avcr:' +str(CLIENT_DATA[clientDataID].avatar.currentRoom.name)
	# for obj in CLIENT_DATA[clientDataID].avatar.currentRoom.objects:
	# 	print obj.currentRoom.name
	#print 'gsrp:'+str(Globals.startingRoom.players)

	# for item in inventoryItems:
	# 	newItem = cmdSpawnObject(item, CLIENT_DATA[clientDataID].avatar.currentRoom, alert=False, whereFrom='inv')
	# 	CLIENT_DATA[clientDataID].avatar.currentRoom.objects.remove(newItem)

	#print '&&:' + str(CLIENT_DATA[clientDataID].avatar.currentRoom.name) + " " + str(CLIENT_DATA[clientDataID].avatar.currentRoom) + ":"+ str(Globals.startingRoom)
	#print '&&' + str(CLIENT_DATA[clientDataID].avatar.currentRoom.players)
	#print str(Globals.startingRoom.players)
	CLIENT_DATA[clientDataID].avatar.currentRoom.players.append(CLIENT_DATA[clientDataID].avatar)
	#print CLIENT_DATA[clientDataID].avatar.kind.inventory
	# print str(Globals.startingRoom.players)
	# print '&&' + str(CLIENT_DATA[clientDataID].avatar.currentRoom.players)
	# print str(CLIENT_DATA[clientDataID].avatar.currentRoom) + ":" + str(Globals.startingRoom)
	# print 'acrpl:' + str(CLIENT_DATA[clientDataID].avatar.currentRoom.players)
	# print 'avcr:' +str(CLIENT_DATA[clientDataID].avatar.currentRoom.name)
	# print Globals.startingRoom.name
	# print Globals.startingRoom.players
	# #Globals.startingRoom.players.remove(CLIENT_DATA[clientDataID].avatar)
	# print 'acrpl:' + str(CLIENT_DATA[clientDataID].avatar.currentRoom.players)
	# print 'avcr:' +str(CLIENT_DATA[clientDataID].avatar.currentRoom.name)
	# print Globals.startingRoom.name
	# print Globals.startingRoom.players
	# print 'loaded:' + str(CLIENT_DATA[clientDataID].avatar.currentRoom.players) + " in:" + str(CLIENT_DATA[clientDataID].avatar.currentRoom.name)
	# print 'av:'+str(CLIENT_DATA[clientDataID].avatar.currentRoom.name)+ ' avp:'+ str(CLIENT_DATA[clientDataID].avatar.currentRoom.players)+' sr:' + str(Globals.startingRoom.name) + ' srp:'+ str(Globals.startingRoom.players)
	# print dir(CLIENT_DATA[clientDataID].avatar.kind)

	# CLIENT_LIST.remove(client)
	# CLIENT_LIST.append(client)

	#print equipItems
	#print Globals.equipmentFromFile
	# for item in Globals.equipmentFromFile:
	# 	print item.ID
	if equipItems != ['']:
		for item in equipItems:
			item = item.split(":")
			slot = item[0]
			gear = item[1]

			eq = None

			for item in currentRoomRoom.objects:
				#print item.ID, item.name
				#print gear
				if item.ID == gear:
					eq = item
					# CLIENT_DATA[clientDataID].avatar.kind.inventory.append(item)
					# Globals.equipmentFromFile.remove(item)
					#print "found equipment by name " + str(equipment)
				elif item.name == gear:
					eq = item
					# CLIENT_DATA[clientDataID].avatar.kind.inventory.append(item)
					#print "found equipment by ID " + str(equipment)
			args = [eq.name]
			#print "args=" + str(args)
			# CLIENT_DATA[clientDataID].avatar.kind.equipment[slot] = equipment
			cInteractions.equip(CLIENT_DATA[clientDataID].client, args, CLIENT_LIST, clientDataID, CLIENT_DATA)
			#print CLIENT_DATA[clientDataID].avatar.kind.equipment

	for item in newItemsList:
		for obj in currentRoomRoom.objects:
			if obj == item:
				currentRoomRoom.objects.remove(obj)
				#print "removed " + str(obj)

def clientDataSave(client, CLIENT_LIST, CLIENT_DATA, TIMERS):

	clientDataID = str(client.addrport())
	#print CLIENT_DATA
	#print "cdi"+clientDataID
	player = CLIENT_DATA[clientDataID]
	CLIENT = clientDataID

	if not os.path.exists('data'):
		os.mkdir('data')
	if not os.path.exists('data/world'):
		os.mkdir('data/world')
	if not os.path.exists('data/world/battles'):
		os.mkdir('data/world/battles')
	if not os.path.exists('data/client/' + player.name + '/'):
		os.mkdir('data/client/' + player.name + '/')

	fileList = []
	if not os.path.exists('data/client/' + str(player.name) + '/inv_equip/'):
		os.mkdir('data/client/' + str(player.name) + '/inv_equip/')
	fileList = os.listdir('data/client/' + str(player.name) + '/inv_equip/')
	if fileList != []:
		for file in fileList:
			os.remove('data/client/' + str(player.name) + '/inv_equip/' + file)

	try:

		name = player.name
		op = player.op
		prompt = player.prompt
		gameState = player.gameState
		if player.battleRoom is not None:
			battleRoom = str(player.battleRoom.name)
		else:
			battleRoom = ''
		if player.battleRoom is not None:
			attachedTo = player.battleRoom.attachedTo
		else:
			attachedTo = ''
		#client = str(player.client)		# should be recreated on reload, not saved
		clientID = str(player.clientID)
		avatar = player.avatar 			# should be recreated on reload, not saved

		avatarName = avatar.name
		title = avatar.title
		description = player.avatar.description
		currentRoom = str(player.avatar.currentRoom.region+":"+player.avatar.currentRoom.name)
		#avatarClient = avatar.client
		#clientDataID = avatar.clientDataID
		kind = avatar.kind

		hp = str(kind.base_hp)
		maxHp = str(kind.base_maxHp)
		pp = str(kind.base_pp)
		maxPp = str(kind.base_maxPp)
		level = str(kind.level)
		exp = str(kind.exp)
		money = str(kind.money)
		offense = str(kind.base_offense)
		defense = str(kind.base_defense)
		speed = str(kind.base_speed)
		guts = str(kind.base_guts)
		luck = str(kind.base_luck)
		vitality = str(kind.base_vitality)
		IQ = str(kind.base_IQ)
		battleCommands = avatar.battleCommands
		inventory = kind.inventory
		inventorySize = str(kind.inventorySize)
		equipment = kind.equipment
		rewardExp = str(avatar.rewardExp)
		rewardMoney = str(avatar.rewardMoney)
		expToLevel = str(avatar.expToLevel)

		path = 'data/client/' + name +'/' + name
		with open(path, 'w') as f:
			f.write(str(player.password) + "\n")
			f.write("name=" + name + "\n")
			f.write("op=" + str(op) + "\n")
			f.write("prompt=" + prompt + "\n")
			#f.write("client=" + client + "\n")
			f.write("gameState=" + gameState + "\n")
			f.write("battleRoom=" + battleRoom + "\n")
			if battleRoom != '':
				f.write("battleRoom.attachedTo=" + attachedTo.region + ":" + attachedTo.name + "\n")
			else:
				f.write("battleRoom.attachedTo=\n")
			f.write("clientID=" + clientID + "\n\n")
			#f.write("avatar=" + avatar + "\n")

			#f.write("avatarName=" + avatarName + "\n")		#name and avatarName are the same
			f.write("title=" + title + "\n")
			f.write("description=" + description + "\n")
			f.write("currentRoom=" + currentRoom + "\n\n")

			f.write("hp=" + hp + "\n")
			f.write("maxHp=" + maxHp + "\n")
			f.write("pp=" + pp + "\n")
			f.write("maxPp=" + maxPp + "\n")
			f.write("level=" + level + "\n")
			f.write("exp=" + exp + "\n")
			f.write("expToLevel=" + expToLevel + "\n")
			f.write("money=" + money + "\n")
			f.write("rewardExp=" + rewardExp + "\n")
			f.write("rewardMoney=" + rewardMoney + "\n")
			f.write("offense=" + offense + "\n")
			f.write("defense=" + defense + "\n")
			f.write("speed=" + speed + "\n")
			f.write("guts=" + guts + "\n")
			f.write("luck=" + luck + "\n")
			f.write("vitality=" + vitality + "\n")
			f.write("IQ=" + IQ + "\n")

			commandList = ''
			for command in battleCommands:
				commandList += (str(command) + ", ")
			if str(commandList).endswith(", "):
				commandList = commandList[:-2]

			f.write("battleCommands=" + str(commandList) + "\n")

			f.write("inventorySize=" + inventorySize + "\n")

			f.write("\ninventory=")

			fileString = ''
			for item in inventory:
				#print item
				if hasattr(item.kind, 'equipment'):

					# else:
					# 	fileList = os.listdir('data/client/' + str(name) + '/inv_equip/')
					# if fileList != []:
					# 	for file in fileList:
					# 		os.remove('data/client/' + str(name) + '/inv_equip/' + file)
					Objects.saveEqToFile(item, 'data/client/' + str(name) + '/inv_equip/')
					fileString = fileString + (str(item) + ", ")
				else:
					fileString = fileString + (item.name + ", ")
			if fileString.endswith(', '):
				fileString = fileString[:-2]
			f.write(fileString)
			f.write("\n")

				# name = item.name
				# currentRoom = str((item.currentRoom.region, item.currentRoom.name))
				# isVisible = str(item.isVisible)
				# if item.spawnContainer is not None:
				# 	spawnContainer = item.spawnContainer.name
				# else:
				# 	spawnContainer = str(None)
				# kind = item.kind

				# f.write(str(location) + " " + name +".name=" + name + "\n")
				# f.write(str(location) + " " + name + ".currentRoom=" + currentRoom + "\n")
				# f.write(str(location) + " " + name + ".isVisible=" + isVisible + "\n")
				# f.write(str(location) + " " + name + ".spawnContainer=" + spawnContainer + "\n")

				# if isinstance(kind, World.item):
				# 	isCarryable = str(kind.isCarryable)
				# 	respawns = str(kind.respawns)
				# 	if kind.itemGrabHandler is not None:
				# 		itemGrabHandler = kind.itemGrabHandler
				# 	if kind.objectSpawner is not None:
				# 		objectSpawner = kind.objectSpawner

				# 	f.write(str(location) + " " + name +".isCarryable=" + isCarryable + "\n")
				# 	f.write(str(location) + " " + name +".respawns=" + respawns + "\n")

				# 	if kind.itemGrabHandler is not None:
				# 		notDroppable = str(itemGrabHandler.notDroppable)

				# 		f.write(str(location) + " " + name +".notDroppable=" + notDroppable + "\n")

				# 	if kind.objectSpawner is not None:
				# 		time = str(objectSpawner.time)
				# 		oddsList = str(objectSpawner.oddsList)
				# 		cycles = str(objectSpawner.cycles)
				# 		repeat = str(objectSpawner.repeat)
				# 		startingLocation = str((objectSpawner.startingLocation[0].region, objectSpawner.startingLocation[0].name))

				# 		f.write(str(location) + " " + name +".time=" + time + "\n")
				# 		f.write(str(location) + " " + name +".oddsList=" + oddsList + "\n")
				# 		f.write(str(location) + " " + name +".cycles=" + cycles + "\n")
				# 		f.write(str(location) + " " + name +".repeat=" + repeat + "\n")
				# 		f.write(str(location) + " " + name +".startingLocation=" + startingLocation + "\n")

				# 	f.write("\n")

				# if isinstance(kind, World.container):		# containers should probably not be able to be picked up
				# 	isLocked = str(kind.isLocked)
				# 	isCarryable = str(kind.isCarryable)
				# 	respawns = str(kind.respawns)
				# 	respawnContents = str(kind.respawnContents)
				# 	itemGrabHandler = kind.itemGrabHandler
				# 	objectSpawner= kind.objectSpawner

				# 	f.write(str(location) + " " + name +".isLocked=" + isLocked + "\n")
				# 	f.write(str(location) + " " + name +".isCarryable=" + isCarryable + "\n")
				# 	f.write(str(location) + " " + name +".respawns=" + respawns + "\n")
				# 	f.write(str(location) + " " + name +".respawnContents" + respawnContents + "\n")

				# 	if kind.itemGrabHandler is not None:
				# 		notDroppable = str(itemGrabHandler.notDroppable)

				# 		f.write(str(location) + " " + name +".notDroppable=" + notDroppable + "\n")

				# 	if kind.objectSpawner is not None:
				# 		time = str(objectSpawner.time)
				# 		oddsList = str(objectSpawner.oddsList)
				# 		cycles = str(objectSpawner.cycles)
				# 		repeat = str(objectSpawner.repeat)
				# 		startingLocation = str((objectSpawner.startingLocation[0].region, objectSpawner.startingLocation[0].name))

				# 		f.write(str(location) + " " + name +".time=" + time + "\n")
				# 		f.write(str(location) + " " + name +".oddsList=" + oddsList + "\n")
				# 		f.write(str(location) + " " + name +".cycles=" + cycles + "\n")
				# 		f.write(str(location) + " " + name +".repeat=" + repeat + "\n")
				# 		f.write(str(location) + " " + name +".startingLocation=" + startingLocation + "\n")

				# 	f.write("\n")
				# location += 1

			f.write("\nequipment=")
			if player.avatar.kind.equipment != {}:
				equipType = ''
				fileString = ''
				for key, value in player.avatar.kind.equipment.items():
					fileString += str(key) + ":" + str(value) + ", "
				if fileString.endswith(", "):
					fileString = fileString[:-2]

				f.write(fileString)

			f.write("\n")

			# if battleRoom != None and battleRoom != 'None' and battleRoom != '':
			# 	RoomInit.saveRoom(player.battleRoom)
			if battleRoom != '':
				RoomInit.saveRoom(player.battleRoom)

				if not os.path.exists('data/world/battles/mobs'):
					os.mkdir('data/world/battles/mobs')
				if not os.path.exists('data/world/battles/mobs/'+player.battleRoom.name+'/'):
					os.mkdir('data/world/battles/mobs/'+player.battleRoom.name+'/')
				for mob in player.battleRoom.mobs:
					MobInit.saveMobToFile(mob, 'data/world/battles/mobs/'+player.battleRoom.name+'/')

	except:
		print "!! Failed to save CLIENT " + Globals.CLIENT_DATA[clientDataID].name
		raise

def dataSave(CLIENT_LIST, CLIENT_DATA, TIMERS):
	"""
	Saves the CLIENT_DATA and TIMERS lists to data/server/
	"""
	#print CLIENT_DATA

	try:
		for client in CLIENT_LIST:
			#print client
			#print CLIENT_DATA

			clientDataID = str(client.addrport())

			clientDataSave(client, CLIENT_LIST, CLIENT_DATA, Globals.TIMERS)
			# player = CLIENT_DATA[CLIENT]

			# name = player.name
			# prompt = player.prompt
			# #client = str(player.client)		# should be recreated on reload, not saved
			# clientID = str(player.clientID)
			# avatar = player.avatar 			# should be recreated on reload, not saved

			# avatarName = avatar.name
			# title = avatar.title
			# description = player.avatar.description
			# currentRoom = str(player.avatar.currentRoom.region+":"+player.avatar.currentRoom.name)
			# #avatarClient = avatar.client
			# #clientDataID = avatar.clientDataID
			# kind = avatar.kind

			# hp = str(kind.hp)
			# exp = str(kind.exp)
			# inventory = kind.inventory
			# inventorySize = str(kind.inventorySize)
			# equipment = kind.equipment

			# path = 'data/client/' + name
			# with open(path, 'w') as f:
			# 	f.write(str(player.password) + "\n")
			# 	f.write("name=" + name + "\n")
			# 	f.write("prompt=" + prompt + "\n")
			# 	#f.write("client=" + client + "\n")
			# 	f.write("clientID=" + clientID + "\n\n")
			# 	#f.write("avatar=" + avatar + "\n")

			# 	#f.write("avatarName=" + avatarName + "\n")		#name and avatarName are the same
			# 	f.write("title=" + title + "\n")
			# 	f.write("description=" + description + "\n")
			# 	f.write("currentRoom=" + currentRoom + "\n\n")

			# 	f.write("hp=" + hp + "\n")
			# 	f.write("exp=" + exp + "\n")
			# 	f.write("inventorySize=" + inventorySize + "\n\n")

			# 	f.write("\nInventory: ")

			# 	location = 1
			# 	for item in inventory:
			# 		f.write(item.name + ", ")
			# 	f.write("\n")

					# name = item.name
					# currentRoom = str((item.currentRoom.region, item.currentRoom.name))
					# isVisible = str(item.isVisible)
					# if item.spawnContainer is not None:
					# 	spawnContainer = item.spawnContainer.name
					# else:
					# 	spawnContainer = str(None)
					# kind = item.kind

					# f.write(str(location) + " " + name +".name=" + name + "\n")
					# f.write(str(location) + " " + name + ".currentRoom=" + currentRoom + "\n")
					# f.write(str(location) + " " + name + ".isVisible=" + isVisible + "\n")
					# f.write(str(location) + " " + name + ".spawnContainer=" + spawnContainer + "\n")

					# if isinstance(kind, World.item):
					# 	isCarryable = str(kind.isCarryable)
					# 	respawns = str(kind.respawns)
					# 	if kind.itemGrabHandler is not None:
					# 		itemGrabHandler = kind.itemGrabHandler
					# 	if kind.objectSpawner is not None:
					# 		objectSpawner = kind.objectSpawner

					# 	f.write(str(location) + " " + name +".isCarryable=" + isCarryable + "\n")
					# 	f.write(str(location) + " " + name +".respawns=" + respawns + "\n")

					# 	if kind.itemGrabHandler is not None:
					# 		notDroppable = str(itemGrabHandler.notDroppable)

					# 		f.write(str(location) + " " + name +".notDroppable=" + notDroppable + "\n")

					# 	if kind.objectSpawner is not None:
					# 		time = str(objectSpawner.time)
					# 		oddsList = str(objectSpawner.oddsList)
					# 		cycles = str(objectSpawner.cycles)
					# 		repeat = str(objectSpawner.repeat)
					# 		startingLocation = str((objectSpawner.startingLocation[0].region, objectSpawner.startingLocation[0].name))

					# 		f.write(str(location) + " " + name +".time=" + time + "\n")
					# 		f.write(str(location) + " " + name +".oddsList=" + oddsList + "\n")
					# 		f.write(str(location) + " " + name +".cycles=" + cycles + "\n")
					# 		f.write(str(location) + " " + name +".repeat=" + repeat + "\n")
					# 		f.write(str(location) + " " + name +".startingLocation=" + startingLocation + "\n")

					# 	f.write("\n")

					# if isinstance(kind, World.container):		# containers should probably not be able to be picked up
					# 	isLocked = str(kind.isLocked)
					# 	isCarryable = str(kind.isCarryable)
					# 	respawns = str(kind.respawns)
					# 	respawnContents = str(kind.respawnContents)
					# 	itemGrabHandler = kind.itemGrabHandler
					# 	objectSpawner= kind.objectSpawner

					# 	f.write(str(location) + " " + name +".isLocked=" + isLocked + "\n")
					# 	f.write(str(location) + " " + name +".isCarryable=" + isCarryable + "\n")
					# 	f.write(str(location) + " " + name +".respawns=" + respawns + "\n")
					# 	f.write(str(location) + " " + name +".respawnContents" + respawnContents + "\n")

					# 	if kind.itemGrabHandler is not None:
					# 		notDroppable = str(itemGrabHandler.notDroppable)

					# 		f.write(str(location) + " " + name +".notDroppable=" + notDroppable + "\n")

					# 	if kind.objectSpawner is not None:
					# 		time = str(objectSpawner.time)
					# 		oddsList = str(objectSpawner.oddsList)
					# 		cycles = str(objectSpawner.cycles)
					# 		repeat = str(objectSpawner.repeat)
					# 		startingLocation = str((objectSpawner.startingLocation[0].region, objectSpawner.startingLocation[0].name))

					# 		f.write(str(location) + " " + name +".time=" + time + "\n")
					# 		f.write(str(location) + " " + name +".oddsList=" + oddsList + "\n")
					# 		f.write(str(location) + " " + name +".cycles=" + cycles + "\n")
					# 		f.write(str(location) + " " + name +".repeat=" + repeat + "\n")
					# 		f.write(str(location) + " " + name +".startingLocation=" + startingLocation + "\n")

					# 	f.write("\n")
					# location += 1

				# f.write("\nEquipment:\n")

	except:
		print "!! Failed to save CLIENT " + CLIENT_DATA[clientDataID].name
		raise

	# try:
	# 	CD = shelve.open('data/server/CLIENT_DATA', writeback=True)

	# 	for CLIENT in CLIENT_DATA:
	# 		#print 'client name:' + CLIENT_DATA[CLIENT].name
	# 		clientKey = CLIENT_DATA[CLIENT].name
	# 		CD[clientKey] = CLIENT

	# except OSError:
	# 	print "Failed to save CLIENT_DATA"
	# 	return

	#print TIMERS
	try:
		timerID = 0
		with open('data/server/TIMERS', 'w') as TI:
			for TIMER in Globals.TIMERS:
				TI.write(str(timerID) + " time=" + str(TIMER.time) + "\n")
				TI.write(str(timerID) + " actionFunction=" + str(TIMER.actionFunction) + "\n")
				TI.write(str(timerID) + " actionArgs=" + str(TIMER.actionArgs) + "\n")
				if hasattr(TIMER, 'attachedTo'):
					if TIMER.attachedTo != None:
						if hasattr(TIMER.attachedTo, 'owner'):
							if TIMER.attachedTo.owner != None:
								if hasattr(TIMER.attachedTo.owner, 'owner'):
									TI.write(str(timerID) + " attachedTo=" + TIMER.attachedTo.owner.owner.name + "\n")
								elif hasattr(TIMER.attachedTo, 'owner'):
									TI.write(str(timerID) + " attachedTo=" + TIMER.attachedTo.owner.name + "\n")
				TI.write(str(timerID) + " respawns=" + str(TIMER.respawns) + "\n")
				TI.write(str(timerID) + " currentTime=" + str(TIMER.currentTime) + "\n")
				TI.write(" \n")
				timerID += 1

	except:
		raise

	# try:
	# 	TI = shelve.open('data/server/TIMERS', writeback=True)
	# 	timerID = 0
	# 	timerIDexists = 'timerID' in TI
	# 	if timerIDexists:
	# 		timerID = TI['timerID']
	# 	else:
	# 		timerID = 1

	# 	for TIMER in TIMERS:
	# 		print "timer:" + str(TIMER) + " timerID:" + str(timerID)
	# 		timerKey = timerID
	# 		TI[timerKey] = TIMER
	# 		timerID += 1

	# 	TI['timerID'] = timerID

	# except OSError:
	# 	print "Failed to save TIMERS"
	# 	return

	# try:
	# 	CL = shelve.open('data/server/CLIENT_LIST', writeback=True)

	# 	for CLIENT in CLIENT_LIST:
	# 		clientKey = str(CLIENT.addrport())
	# 		CL[clientKey] = CLIENT

	# except OSError:
	# 	print "Failed to save CLIENT_LIST"
	# 	return

def cmdSpawnObject(refobj, spawnLocation, alert=True, active=False, whereFrom='cmd', spawnContainer=None):
    # creates a new object based on the attributes of the object fed to the function

    obj = None
    # if whereFrom == 'cmd':
    #     active = True
    #print Objects.fromFileList[0].name
    #print str(refobj)
    for thing in Globals.fromFileList:
        if thing.name == str(refobj):
            obj = thing
            #print obj
    for thing in Globals.equipmentFromFile:
    	if thing.ID == str(refobj):
    		obj = thing

    if obj == None:
        print ("%s not found." %refobj)
        return

    newObject = World.Object(obj.name, obj.description)

    newObject.ID = obj.ID
    newObject.currentRoom = spawnLocation
    newObject.isVisible = obj.isVisible
    if obj.spawnContainer:
        newObject.spawnContainer = obj.spawnContainer
    else:
        newObject.spawnContainer = spawnContainer
    newObject.longDescription = obj.longDescription
    newObject.kind = obj.kind
    if newObject.kind:
        newObject.kind.owner = newObject
    newObject.TIMERS = obj.TIMERS
    # if newObject.TIMERS:
    #     newObject.TIMERS.owner = newObject

    if newObject.kind is not None:
        if isinstance(newObject.kind, World.item):
            newObject.kind = World.item()
            newObject.kind.owner = newObject
            newObject.kind.isCarryable = obj.kind.isCarryable
            newObject.kind.respawns = obj.kind.respawns
            newObject.kind.itemGrabHandler = obj.kind.itemGrabHandler
            if newObject.kind.itemGrabHandler:
                newObject.kind.itemGrabHandler.owner = newObject.kind
            newObject.kind.objectSpawner = obj.kind.objectSpawner
            if newObject.kind.objectSpawner:
                newObject.kind.objectSpawner.owner = newObject.kind
            newObject.kind.equipment = obj.kind.equipment
            newObject.kind.onUse = obj.kind.onUse

        if isinstance(newObject.kind, World.container):
            newObject.kind = World.container()
            newObject.kind.owner = newObject
            newObject.kind.inventory = []
            newObject.kind.isLocked = obj.kind.isLocked
            newObject.kind.isCarryable = obj.kind.isCarryable
            newObject.kind.respawns = obj.kind.respawns
            newObject.kind.respawnContents = obj.kind.respawnContents
            newObject.kind.itemGrabHandler = obj.kind.itemGrabHandler
            if newObject.kind.itemGrabHandler:
                newObject.kind.itemGrabHandler.owner = newObject.kind
            newObject.kind.objectSpawner = obj.kind.objectSpawner
            if newObject.kind.objectSpawner:
                newObject.kind.objectSpawner.owner = newObject.kind

        if newObject.kind.itemGrabHandler:
            newObject.kind.itemGrabHandler.notDroppable = obj.kind.itemGrabHandler.notDroppable

        if newObject.kind.objectSpawner:
            newObject.kind.objectSpawner = World.objectSpawner(newObject.kind)
            newObject.kind.objectSpawner.TIMERS = obj.kind.objectSpawner.TIMERS
            newObject.kind.objectSpawner.time = obj.kind.objectSpawner.time
            newObject.kind.objectSpawner.obj = obj.kind.objectSpawner.obj
            newObject.kind.objectSpawner.oddsList = obj.kind.objectSpawner.oddsList
            newObject.kind.objectSpawner.container = obj.kind.objectSpawner.container
            newObject.kind.objectSpawner.cycles = obj.kind.objectSpawner.cycles
            newObject.kind.objectSpawner.repeat = obj.kind.objectSpawner.repeat
            newObject.kind.objectSpawner.timer = World.Timer(newObject.kind.objectSpawner.TIMERS, newObject.kind.objectSpawner.time, newObject.kind.objectSpawner.spawn, [], newObject.kind.objectSpawner, newObject.kind.respawns)
            newObject.kind.objectSpawner.startingLocation = spawnLocation,

        if newObject.kind.equipment:
			newObject.kind.equipment.owner = obj.kind.equipment.owner
			newObject.kind.equipment.weapon = obj.kind.equipment.weapon
			newObject.kind.equipment.armor = obj.kind.equipment.armor
			newObject.kind.equipment.slot = obj.kind.equipment.slot
			newObject.kind.equipment.durability = obj.kind.equipment.durability
			newObject.kind.equipment.maxDurability = obj.kind.equipment.maxDurability
			newObject.kind.equipment.worth = obj.kind.equipment.worth
			newObject.kind.equipment.hp = obj.kind.equipment.hp
			newObject.kind.equipment.pp = obj.kind.equipment.pp
			newObject.kind.equipment.offense = obj.kind.equipment.offense
			newObject.kind.equipment.defense = obj.kind.equipment.defense
			newObject.kind.equipment.speed = obj.kind.equipment.speed
			newObject.kind.equipment.guts = obj.kind.equipment.guts
			newObject.kind.equipment.luck = obj.kind.equipment.luck
			newObject.kind.equipment.vitality = obj.kind.equipment.vitality
			newObject.kind.equipment.IQ = obj.kind.equipment.IQ
			newObject.kind.equipment.statusEffect = obj.kind.equipment.statusEffect
			newObject.kind.equipment.battleCommands = obj.kind.equipment.battleCommands
			newObject.kind.equipment.onUse = obj.kind.equipment.onUse

    if newObject.kind:
        if newObject.kind.objectSpawner:
            # print "has object spawner"
            newObject.kind.objectSpawner.active = active      # set the spawned object to active
            #print "active:" + str(newObject.kind.objectSpawner.active)

    spawnLocation.objects.append(newObject)
    symbol = '+'
    if whereFrom == 'cmd':
        symbol = 's'
    elif whereFrom == 'objSpawner':
        symbol = '$'
    elif whereFrom == 'inv':
    	symbol = 'i'
    if newObject.kind:
        if newObject.kind.objectSpawner:
            print symbol +"o " + str(newObject) +": " + newObject.name + " @ [" + str(newObject.currentRoom.region) + ":" + str(newObject.currentRoom.name) + "] (active=" + str(newObject.kind.objectSpawner.active) +")"
        else:
            print symbol +"o " + str(newObject) +": " + newObject.name + " @ [" + str(newObject.currentRoom.region) + ":" + str(newObject.currentRoom.name) + "]"
    else:
        print symbol +"o " + str(newObject) +": " + newObject.name + " @ [" + str(newObject.currentRoom.region) + ":" + str(newObject.currentRoom.name) + "]"

    for client in Globals.CLIENT_LIST:
        if Globals.CLIENT_DATA[str(client.addrport())].avatar is not None:
            if Globals.CLIENT_DATA[str(client.addrport())].avatar.currentRoom == newObject.currentRoom:      # if a client is in the room object just appeared in, let it know
                if alert==True:
                	client.send_cc("^BA %s appeared.^~\n" %newObject.name)

    return newObject

# makes sure required directories exist, and if not, it creates them
path = [str("data/server/"), "data/client/", "data/log/auth/"]
for pathname in path:
	try:
		os.makedirs(pathname)
	except OSError:
		if not os.path.isdir(pathname):
			raise

redpajama_set_name: RedPajamaGithub


text:
import { MDCStrings } from 'material__base';

export interface strings extends MDCStrings {
    ICON_EVENT: 'MDCTextField:icon';
    ICON_ROLE: 'button';
}


text:
import { NgModule } from '@angular/core';
import { ThCoreDirective } from './th-core.directive';
import { HeadCoreComponent } from './head-core.component';
import { RowModule } from '../row/row.module';
import { CommonModule } from '@angular/common';
import { ResizeModule } from '../resize/resize.module';
import { DndModule } from '../dnd/dnd.module';

@NgModule({
  declarations: [
    HeadCoreComponent,
    ThCoreDirective,
  ],
  exports: [
    HeadCoreComponent,
    ThCoreDirective,
  ],
  imports: [
    CommonModule,
    RowModule,
    ResizeModule,
    DndModule,
  ],
})
export class HeadModule {
}


text:
Home › Latest Stories › News › Aprilia is reportedly developing 300-400cc motorcycles
Aprilia is reportedly developing 300-400cc motorcycles
The Italian brand would face tough competition in the segment.
Jet Sanchez on Jul 09, 2021
Italian motorcycle manufacturer Aprilia is reportedly getting ready to enter the sub-400cc segment. The news comes after Diego Graffi, Chairman of Piaggio India, disclosed that the company is indeed working on 300-400cc motorcycles for its Aprilia brand.
Should Aprilia launch its sub-400cc models, it would be facing tough competition from established players in the segment, namely Kawasaki, Yamaha, BMW, Royal Enfield, and other major manufacturers. More competition, however, would be a good thing for consumers. More competing models would spark continuous innovation and aggressive pricing from the world's biggest motorcycle brands.
Some of what Aprilia's sub-400cc models would rival include the Kawasaki Ninja 300, Yamaha YFZ R3 300, BMW G 310 GS, and the Royal Enfield Meteor 350. While the segment is certainly packed with great models, we think that Aprilia could be fairly successful in introducing its take on sub-400 cc models.
Of course, Aprilia is no stranger to venturing into crowded segments. The motorcycle manufacturer has produced smaller engine displacement models before. The Italian company's lineup includes the RS 250 SP and RS 125. Aprilia is also set to launch the RS 150 later this year to further expand its small displacement lineup. Looking at these previous models could offer a glimpse of how Aprilia could approach its newest 300-400cc motorcycles.
The RS 250 SP is powered by a 250cc liquid-cooled, single-cylinder, four-stroke engine that produces around 28 hp and 22 Nm of torque. The RS 125, meanwhile, is fitted with a 125cc liquid-cooled, single-cylinder, four-stroke engine capable of around 28 hp and 19 Nm of torque.
There's no word yet on a local release for Aprilia's 300-400cc motorcycles, as the brand is still in the early stages of development. As exciting as they are, these models could be several years away from launch. If the demand is there, the motorcycle manufacturer could be tempted to launch its latest sportbikes in more markets, including the Philippines.

redpajama_set_name: RedPajamaCommonCrawl


Andy Phillips Baseball Camp: The Andy Phillips Baseball Camp at Baseball Country will be Jan. 4-6 for ages 7-10 and Jan. 11-13 for ages 11-14. To register, go to www.baseballcountry.com or call Kenny Burns at 454-3641.
Tennis lessons: Private and semi-private lessons are held on Saturdays on a continuing basis at the Jack Evans Tennis Complex-Bowers Park from 8 a.m.-noon or 1-4 p.m. The cost is $25 per hour for private lessons and $30 for semi-private lessons. The instructor is Ray Guthrie. Call John Tilley at 562-3230.
HATHA Yoga: HATHA Yoga classes are held Tuesdays and Thursdays, from 6-7 p.m. at the Phelps Center. Cost is $28-$35 depending on the number of classes per session. The instructor is Linda Dunn, certified instructor. Call John Tilley at 562-3220.
Personal Training classes: Personal Training classes for children and adults are available Thursdays, from 4-7 p.m. at Miller Center. The cost is $30 per hour by appointment only. The instructor is Matthew Hartley. Call John Tilley at 562-3220.
Martial Arts for Kids: Martial Arts for Kids, ages 5-12 begins Thursdays at 6 p.m. at the Phelps Center. The cost is $30 per session, plus uniform. The instructor is Lee Brown, 4th degree Black Belt. Call 562-3230.


text:
Infrastructure Projects in Saudi Arabia: Getting qualified
by Daniel Goodwin - d.goodwin@tamimi.com
Infrastructure Boom
With the Kingdom of Saudi Arabia (KSA) rolling out a succession of major public infrastructure projects in recent years, KSA's foreign investment policy makers have made it clear that they are keen to see more foreign participation in those projects. As the economic powerhouse of the GCC with a strong pipeline of work in the years ahead, KSA is on the radar for foreign contractors looking to expand in the Middle East. Often, to be eligible to bid for these larger projects, a contractor must be pre-qualified.
Pre-qualification for government contracts in Saudi Arabia
Pre-qualification is used to identify contractors who have the necessary experience, know-how and resources to successfully carry out a particular scope of work or project.
In KSA the pre-qualification process, where utilised, is itself a competitive tender process and is governed by the Government Tender and Procurement Law ("GTPL") and its implementing regulations ("GTPR").
The specific requirements for pre-qualification for government tenders vary between different government agencies and also from project to project. Generally for government projects the GTPR mandates that contractors must:
Have a Commercial Registration in KSA. For foreign contractors this first requires a licence from the Saudi Arabian General Investment Authority ("SAGIA").
Be registered with the General Organisation for Social Insurance.
Have a tax or zakat certificate.
Have a Saudization certificate.
Have a certificate of membership of the Chamber of Commerce.
Be registered with the Ministry of Labour.
Have a requisite Contractor Classification issued by the Ministry of Municipal and Rural Affairs ("MOMRA") to carry out the work required. This will depend on the type of work specified and the value of the contract.
Generally, though it may vary between various government entities, other pre-qualification requirements may require the contractor to:
Have no conflict of interest (including for any proposed subcontractors).
Have no recent instances of contractual non-performance (which could be within say the past five years).
Meet required financial levels, provide audited financial statements, and be solvent with no recent history of liquidation, bankruptcy or defaults (say within the past five years).
Have certain annual turnovers (depending on the project requirements).
Meet specific experience requirements depending on the precise nature of the project.
Declare any fees, gratuities, payments or inducements paid to any party in respect of pre-qualification or the bidding or tender process.
Streamlined processes for foreign contractors
A foreign contractor that does not have a commercial presence / registration in KSA may still qualify to bid for a government contract.
The recent Council of Ministers Resolution No. 405, released in August 2014, applies to contractors in the areas of: construction; roads; water and sewage works; implementation of works for water conveyance; desalination plants and electric power; electrical, mechanical, electronic, industrial and marine works; and communications technology.
This resolution allows contractors that are licensed as first class in their home country, or certain 'well known' contractors, to obtain a temporary certificate from SAGIA allowing the contractor to bid on government projects (but only one at a time). The contractor may then fulfil the other requirements (set out above) after it is awarded a government contract.
If successful in being awarded a government contract, the foreign contractor must establish an entity in KSA and obtain a temporary commercial registration. A temporary commercial registration licence must be applied for within 30 days of the date the contract is awarded and a copy of the award letter or the project execution contract signed by the government authority must be submitted to SAGIA.
A temporary commercial registration licence from SAGIA:
Will be limited to the activities necessary to carry out the project awarded by the KSA government authority.
Will be limited to a time period linked to the expected duration of the project awarded by the KSA government authority.
Will be linked to the KSA government authority that awarded the project.
Must be renewed every 12 months and the consent of the KSA government authority that awarded the project is required.
As a further refinement, a foreign contractor classified in the first class in its country, or which has implemented a project with a value of not less than SAR500 million, has not less than 2,000 employees and total assets of not less than SAR50 million, can apply for a SAGIA licence using the recently introduced Fast Track process. SAGIA states that the Fast Track system allows a licence to be issued in as few as five days from acknowledgement of a completed application.
Joining a consortium to bid for contracts in KSA
A consortium is essentially an agreement between a number of parties to undertake a joint venture. If a foreign entity is a joint venture partner it must hold a SAGIA foreign investment licence and a Commercial Registration issued by the Ministry of Commerce and Industry. Usually (but not always) the consortium will establish a KSA limited liability company to execute the contract. A consortium intending to bid for a government contract will be required to submit a copy of the consortium agreement.
For a foreign contractor bidding for KSA government contracts as part of a consortium, there may be a need for the foreign contractor to have a KSA SAGIA licence, depending on the terms of the Request for Proposal or Tender. Some may require KSA registration first, others may not. The SAGIA licence will need to be obtained by the new JV company (if there is one) otherwise it must be obtained by the foreign company setting up an entity in KSA as part of an unincorporated consortium.
Pre-qualifying for private sector contracts
Tender and pre-qualification processes for private sector contracts in KSA are not governed by specific laws.
Requirements for pre-qualification issued by private companies in KSA (other than government procurement) vary depending on the level of sophistication of the company, whether the company has experience in carrying out similar past projects, and the value and complexity of the work. However, most of the information required for government pre-qualification is generally also requested in private sector tenders.
Other pre-qualification requirements may include:
Past occupational health and safety record.
Any ISO or similar compliance.
References from past employers, head-contractors or sub-contractors.
A requirement to provide a financial guarantee / bond.
It may be a pre-qualification requirement that all bidders already have a KSA established entity.
Inducement of government officials
KSA has laws that keep the tender process transparent, fair and free from impropriety.
The Anti-Bribery Law 1992 makes it clear that the receipt of any benefit or advantage (financial or non-financial) concerning any government official would be considered a bribe and includes a promise, gift, bounty, favour or recommendation.
Prohibited circumstances include not only when officials demand a bribe for themselves or another person for performing their normal duties (or abstaining from performing such duties) but also receiving what is deemed to be a bribe without demand by the official concerned.
There are severe penalties for bribery, which vary according to the severity of the circumstances. The most severe penalties are 10 years imprisonment and/or a SAR1 million fine. The lesser crimes still carry imprisonment penalties of up to 3 years and/or a fine of up to SAR100,000.
Bribes or inducements in the private sector are illegal under Shari'ah principles.
Qualifying as an approved bidder is the first part of the tender process and contractors now have a more streamlined way to qualify as a bidder in KSA.
The willingness of the government to bring in more streamlined processes for contractors entering KSA is a reflection of the significant amount of work being carried out and the need for experienced foreign contractors to bring their know-how and resources to implement projects in the Kingdom of Saudi Arabia.
With the continued rollout of world class infrastructure projects across the Kingdom, the demand for foreign contractors and suppliers will remain strong in the years ahead. Knowing how to pre-qualify to tender on those projects is an essential first step for any contractor looking to win tenders in KSA.
The Construction Market: Next Steps
The Development of Rail Infrastructure Projects in the GCC
Procurement in the Education Sector in the Middle East
Construction and the Hotel Sector
Construction and the Technological Revolution


text:
Biz China Weekly
Backgrounder: Inner Mongolia Autonomous Region
Source: Xinhua| 2017-08-08 16:33:16|Editor: Mengjie
Video PlayerClose
HOHHOT, Aug. 8 (Xinhua) -- Inner Mongolia Autonomous Region, the first provincial-level autonomous region established in China, celebrated its 70th founding anniversary on Tuesday. Here are some basic facts about the region and regional ethnic autonomy in China.
Inner Mongolia is in north China and borders Mongolia and Russia. The region covers an area of 1.18 million sq km, or about 12 percent of the country's land area. It has a population of about 25 million, including 4.6 million Mongolians -- nearly one-fifth of the region's total population.
Over the past seven decades, the region's economy has expanded from 537 million yuan (80 million U.S. dollars) to 1.86 trillion yuan, ranking first among the country's five autonomous regions. Its GDP per capita also exceeded 74,000 yuan.
The region's foreign trade volume has increased from 30 million yuan to 77.3 billion yuan since China's reform and opening up. In recent years, the sharp increase in China-European freight trains traveling via Erenhot and Manzhouli ports have boosted China-Mongolia and China-Russian trade.
Inner Mongolia is rich in natural resources and its pillar industries include coal mining, iron and steel, livestock farming, and electric power.
As China's major coal-producing region, Inner Mongolia had an output of 850 million tonnes of coal last year, or a quarter of the country's total.
The region is also one of the major iron and steel production bases in China. One-third of the rail for high-speed trains in China is produced by Baotou Iron and Steel group.
The region is abundant in rare earth resources. The Bayan Obo rare earth mining area is the world's largest.
The region is China's biggest dairy product provider, producing 7.3 million tonnes of milk last year. It also has the largest output of mutton, fine wool and cashmere wool in the country.
Inner Mongolia is a major power supplier for China's west-to-east and north-to-south power transmission programs. It generated 395 billion kwh of power last year, simultaneously developing wind and solar power generation.
It is a major supplier of natural gas for China's west-to-east gas transmission program, and had a yield of nearly 30 billion cubic meters last year.
Inner Mongolia Autonomous Region was established on May 1, 1947, followed by the Xinjiang Uygur, Ningxia Hui, Guangxi Zhuang and Tibet autonomous regions.
Regional autonomy for ethnic minorities is a basic political system and an important policy for handling ethnic affairs in China.
Regional autonomy for ethnic minorities in China means that, under the unified leadership of the state, regional autonomy is practiced in areas where ethnic minorities live in compact communities. In these areas, self-government organs have been established to exercise autonomy.
The first National People's Congress, which convened in 1954, included a system of regional autonomy for ethnic minorities in the Constitution of the People's Republic of China, and the regional ethnic autonomy law was put into effect in 1984.
KEY WORDS: Inner Mongolia
Inner Mongolia celebrates 70th birthday as autonomous region
Top political advisor presents gifts to Inner Mongolia
People's Daily hails Inner Mongolia Autonomous Region's 70th anniversary
China Focus: Inner Mongolia thrives under Xi's leadership
Interview: China's ethnic policies help in Inner Mongolia's development -- Pakistani expert
8 killed, 17 missing in SW China landslide
Chinese solar term "beginning of autumn" greeted in traditional customs
Purnima festival marked at Kumbheshwor temple in Lalitpur, Nepal
Sunset landscape at Yuyuantan park in Beijing
Partial lunar eclipse visible in many parts of China
Colorful cloud seen in N China's Shijiazhuang
Giant panda twins celebrate first birthday at Schoenbrunn zoo
Partial lunar eclipse seen in Asia, Mideast
/ 01. Temer vows to unite Brazil as Lula's supporters set to march
/ 02. Tesla announces 1.5 bln USD bonds issue to fund Model 3
/ 03. Dow posts 9th straight record high after upbeat jobs data
/ 04. China continues to see slowdown in luxury goods spending: report
/ 05. Spotlight: China, ASEAN eye broader cooperation
Weekly choices of Xinhua photo (July 31 - Aug. 6)
In pics: Daofu Tibetan houses in SW China's Sichuan
In pics: lotus flowers amid morning mist in E China
1st high speed railway in Inner Mongolia starts operation


text:
New Reflection
The Reception of the Faithful
by an Anonymous Churchman
When a decision of the Holy Synod of Antioch appears to go a certain way our Metropolitan is fond of saying, "The Holy Synod is the highest authority in our Church." When, on the other hand, the suggestions or decisions of the Holy Synod lean in other directions, he is quick to say that the people of the archdiocese will not accept what they are proposing. I would like to suggest that in expressing these thoughts our Metropolitan touches on an often overlooked aspect of Orthodox Christian ecclesiology.
The episcopate is charged with the tasks of defending the Faith "once for all delivered to the saints" and of teaching and administering this Faith to the people of the God. They do not decide what the Faith is and deliver it to the clergy and laity with a demand of obedience. They defend, articulate, and administer the Faith once for all delivered to the Church for the saving benefit of all. For this reason the decisions of synods have never been what we might call 'binding' until they are received by the entire Body of the faithful which recognizes in their decisions the voice of Christ through the Holy Spirit who dwells in the Church, a voice that resonates within us, a voice we know and have always known as that of our Good Shepherd.
"And when he brings out his own sheep, he goes before them; and the sheep follow him, for they know his voice. Yet they will by no means follow a stranger, but will flee from him, for they do not know the voice of strangers."
-Our Lord Jesus Christ
When synods make decisions that are not in accordance with the Faith once delivered to the saints, the Ecclesia does not recognize the voice of their True Shepherd and does not receive them; for authority in the Church ultimately lies not in the decisions of synods but in the Truth who is Christ, the Head of the Body. On the contrary, the faithful will flee from the voice of a stranger. This has occurred numerous times throughout the history of the Church. Many of the Saints we venerate and praise in our hymns are defenders of the Faith who stood firmly against the voice of a stranger expressed through decisions of synods comprised of canonically consecrated bishops. Many were reviled, persecuted, exiled, and even martyred for defending the Faith of Christ and His Church in the face of otherwise 'duly constituted' Church authority.
It is the Body of the Church that is "the pillar and ground of truth," not bishops in isolation from the Body nor the other clergy or laity of the Body in isolation from her bishops. The Church has always strongly affirmed the authority vested in her hierarchs while steadfastly refusing to exalt them above the measure of Christ. When synods articulate the Faith or decide matters of practical dispute in accordance with the Truth of Christ the Body of the Church recognizes the voice of her Savior, and she rejoices that He has spoken through them with a clear voice. Such decisions bring unity, health, righteousness, and peace to the Body. But when synods distort the Truth of Christ and attempt to implement decisions that do not accord with the Truth of our Savior, the Body treats them as poison that must not be received. There are also painful periods of ignorance or laxity when the Church receives poisonous errors, yet even these are eventually cleansed from the Body - albeit through much tribulation.
In no way does this imply that those who speak with the voice of a stranger are always evil. It was Peter, the chief of the Apostles, to whom Jesus once said, "Get thee behind me Satan." It was also this chief of the Apostles who, along with Barnabas and other Jewish Christians, was publically rebuked by the Apostle Paul (in Antioch of all places). It is worthy of notice that they were not rebuked for expressly teaching heresy, but for not behaving in a manner that was "straightforward about the truth of the Gospel." This correction was necessary lest the truth of Christ be distorted by the acceptance of a dissonant praxis in His Church. Even men of otherwise laudable holiness and reputation occasionally stumble into speaking or acting in ways that are estranged from the Truth of Christ. Neither bishop nor priest nor monk nor lay person is above being subject to error and the need for correction.
This brings us to the Synodal Resolution of August 19, 2010.
The question of what the Holy Synod of Antioch intended by enthroning our bishops – whether as 'auxiliaries' of the Metropolitan or 'diocesan' bishops (in the common American understanding of the word) - is a matter of much debate. It is not my intention here to enter into the debate over what the synod intended, for what they intended is not pertinent to the question at hand. The question to which our attention ought to be drawn is whether the various decisions of the Synod accord with the Truth of Christ and whether they are received by the faithful as being the voice of the True Shepherd. It is beyond dispute that the entire archdiocese in North America from the Metropolitan himself to all our bishops, clergy, and laity rejoiced at the decision of the Holy Synod of Antioch to consecrate and enthrone diocesan bishops in defined territories of North America. Regardless of what the Synod may have originally intended by these enthronements, the Body of the faithful universally understood and received them as being true enthronements of diocesan bishops who comprised a fully functioning local synod over which the Metropolitan was to preside in accordance with the Holy Canons of the Orthodox Catholic Church.
Nevertheless, for reasons much discussed yet known only to the Metropolitan and the other members of the Holy Synod of Antioch, the decision that was made, received by the Body of the faithful and then later affirmed by the Holy Synod in the midst of much controversy, was reversed – if not in the eyes of the Holy Synod, then certainly in the eyes of the faithful who had received the initial decision and its affirmation as the voice of their True Shepherd.
From here we proceed to the Implementation of the Synodal Resolution of August 19, 2010 that was presented to our bishops by His Eminence on October 23, 2010 and mailed soon afterward to every member of the clergy of the archdiocese. For those unfamiliar with its content, the official version may be downloaded here:
(Archpastoral Directive Concerning the Implementation of the Resolution of The Holy Synod of Antioch Dated August 19, 2010)
Aside from the question of whether these directives actually express the will of the Holy Synod of Antioch, it is clear that:
These directives were imposed upon our local synod (if indeed it can be said that a true local synod now even exists) by our Metropolitan. They are not the product of our local bishops meeting in synod.
One is hard-pressed to discern any pressing pastoral reason for directives that disregard the Canons of the Holy Orthodox Catholic Church – Canons which, although not 'laws' in a legal sense, express the unity, will, and catholicity of the Orthodox Church both in Heaven and on earth.
The ersatz premise of unity expressed in these directives is authoritarianism rather than the conciliatory freedom of brethren "preserving the unity of the Spirit in the bond of peace."
Brothers and sisters in Christ, it ultimately matters not whether these directives were intended by the Holy Synod of Antioch. It matters not what the motives of our Metropolitan may or may not be. It matters not from whose earthly authority they may have come or whether those who agree or disagree appear to have more power or influence. In faithfulness to Christ and the eternal Truth of His Church, our hearts and minds should be focused on following in the way of our holy Fathers and Confessors who occupied themselves with the questions of primary import:
Is this the voice of our True Shepherd?
Does this voice resonate within our heart as the people of God?
Is this the voice of the Holy Spirit, ever in harmony with the Tradition we have received in the Church, calling us to unity in the love of Jesus Christ?
Brethren, if we hear the voice of our Lord and God and Savior Jesus Christ in these directives let us humbly submit to Him – not merely to an earthly hierarch or synod, but to our Lord.
Is this the voice of a stranger?
If in these words we hear the voice of a stranger, then for the sake of Christ and the entire Body of His Church, including her hierarchy, let us humbly but firmly speak and act in a manner which clearly communicates that we as the faithful in Christ do not receive this voice; for we neither know it nor can we by any means follow it.
Laying aside our individual loyalties as well as our petty quarrels and narrow agendas, let us answer these questions soberly and honestly, our ecclesial conscience being shaped by the Holy Spirit of Truth who is Himself the seal of the Faith and Tradition we have received in the Church. For faithfulness in the Church always has been - and always will be - defined by obedience to the voice of our Lord Jesus Christ to whom all authority is given both in Heaven and on earth.
All other questions are of secondary significance.
"But you [plural] have an anointing from the Holy One, and you know all things. I have not written to you because you do not know the truth, but because you know it, and that no lie is of the truth."
-St. John the Apostle and Theologian
"But the wisdom that is from above is first pure, then peaceable, gentle, willing to yield, full of mercy and good fruits, without partiality and without hypocrisy. Now the fruit of righteousness is sown in peace by those who make peace."
-St. James the Less, Apostle and first Bishop of Jerusalem
It should be noted that this is in accordance with the Canons to the degree possible in the context of the present jurisdictional morass in the Americas.


text:
–Brandon Guyer, TB, OF, Durham Bulls (unranked): Guyer had a solid week, going 7 for 17 with three steals, which helped his season line get to .324/.393/.545.
-Yonder Alonso, CIN, OF, Louisville Bats (#73): Alonso picked it back up, going 11 for 24 with two HRs last week.
–Lonnie Chisenhall, CLE, 3b, Columbus Clippers (#25): Chisenhall went 6 for 23 last week with 0 HRs. Despite the calendar turning to June, still no call up, much to the fantasy communities' chagrin.
-Desmond Jennings, TB, OF, Durham Bulls (#22): Jennings had another HR this past week, and hit .291. He did have 5 Ks to 2 BBs and just one steal, but the 8 HRs in 54 games is a nice surprise.
-Kyle Gibson, MIN, SP, Rochester Red Wings (#34): Gibson had a rough start last week: 5 IP, 9 H, 4 ER, but 0 BB and 5 Ks. Gotta love the 11 BBs in 60 IP to go with 64 Ks. Don't love the nearly 1 HR per 9 given up.
–Jordan Lyles, HOU, SP, Oklahoma City Redhawks (#42): Lyles got the call up last week and did not disappoint in his debut, going 7 IP and given up just 2 ER and 5H against the Cubs in Wrigley. He also struck out 4. But he struggled against the Padres of all teams in his next start: 4 IP, 5 H, 4 ER, 1 BB, 3 Ks. Still worth a try out for those who need pitching help in deeper leagues.
-Anthony Rizzo, SD, 1b, Tucson Padres (#75): Rizzo is still in AAA, but that could change by the day. Had another Rizzo-like week, adding another HR, hitting over .300, etc. Petco isn't the best hitting venue, but he does get to play in other parks half the time; and that fact didn't exactly hurt Adrian Gonzalez, not that Rizzo is at that level…yet.
–Mike Montgomery, KC, SP, Omaha (#19): Montgomery improved, but still didn't impress last week: 6.1 IP, 3 H, 4 ER, 4 BB, 3 Ks (but 2 HRs). Next…
–Lorenzo Cain, KC, OF, Omaha (unranked): Cain cooled off lately; .262/.311/.405 over his last ten, though he added his 4th HR of the year.
-Julio Teheran, ATL, SP, Gwinnett Braves (#5): Teheran had a rough start on 5/30 (6 IP, 9 H, 5 ER, 1 HR, 2 BB, 3 Ks) and a good one on 6/4 (6 IP, 5 H, 1 ER, 2 BB, 5 Ks). He's just in a holding pattern until the Braves need his services again.
–Mike Moustakas, 3b, KC, Omaha Storm Chasers (#9): Moustakas busted out in his last ten: .378/.370/.600 with 2 HRs (though he did K 7 times with no walks last week). Betemit is hitting for average but not much else, so here's hoping the Royals finally see what Moustakas can do at the next level very soon.
–Dustin Ackley, 2b, SEA, Tacoma Rainiers (#12): Ackley kept it up again last week, and is at .350/.480/.575 over his last ten with 10 BBs and 8 Ks. Definitely looks ready to help the offensively starved Mariners, just waiting on the front office to pull the trigger.
–Matt Dominguez, 3b, FLA, New Orleans Zephyrs (#81): You might remember Dominquez fractured his elbow back in early April when he was first included on the list. Florida's top position prospect is back now, and is starting to make his mark. He is at .267/.366/.533 in 17 games thus far, with 3 HRs and 8 RBIs in his last 4. Could provide a spark to the big club before the year is out (Wes Helms and Greg Dobbs currently man third; not exactly murderer's row), but the Marlins will surely be careful with him after his injury.
–Mike Minor Update: Minor continued his back and forth between AAA and ATL, tossing an out and out gem on 6/5 with Gwinnett: 8 IP, 1 H, 0 ER, 1 BB, 9 Ks, retiring 18 in a row at one point. When the MLB Braves need a fifth starter again, he should be back up, so monitor as needed.
–Austin Romine, NYY, C, Trenton Thunder (#98): Romine got hurt last week in a collision at the plate, and could have a concussion. Let's hope he comes out ok.
-Brett Jackson, CHC, OF, Tennessee Smokies (#38): Jackson came back on 5/30, but has only 4 hits in 28 ABs. Tough to get back into it after a 20 day lay-off, especially after a hand injury.
-Trey McNutt, CHC, SP, Tennessee (#48): McNutt is back on the 7 day DL again (bruised ribs), after throwing 2 innings in a start last week.
–Jacob Turner, DET, SP, Erie SeaWolves (#21): Turner threw another 7.1 innings of quality ball: 6 H, 3 ER, 1 HR, 2 BB, 5 Ks.
–Paul Goldschmidt, ARI, 1b, Mobile BayBears (unranked): Goldschmidt added two more HRS last week, to go with a .351/.415/.676 line over his last ten. At 19 round-trippers in 56 games, he stands to beat last year's total of 35.
–Randall Delgado, ATL, SP, Mississippi Braves (#35): Had two starts last week, and recovered from his blow up on 5/24 by having a quality start on 5/31: 6 IP, 5 H, 2 ER, 4 BB, 4 K and a very good one on 6/5: 7 IP, 5 H, 1 ER, 1 BB, 2 Ks. Would like to see the walks come down and the K rate go up, but otherwise, not too shabby.
-Mike Trout, LAA, OF, Arkansas Travelers (#2): Trout is still average over his last ten, other than OBP: .257/.422/.343. He also had a minor leg injury, but is considered just day to day.
–Martin Perez, TEX, SP, Frisco Roughriders (#24): Perez finally had a sub-par start last week: 6 IP, 8 H, 4 ER, 0 BB, 4 Ks. Now has over a full season of starts at this level, so a promotion seems like the next step.
–Matt Moore, TB, SP, Montgomery Biscuits (#15): Moore continued his dominance: 6 IP, 5 H, 1 ER, 2 BB, 6 Ks.
–Shelby Miller, STL, SP, Palm Beach Cardinals (#13): Miller's debut in the Texas League went very well: 6 IP, 7 H, 1 ER, 2 BB, 5 Ks. Big time success here, and Miller could end the season in Triple A, or (gasp!) St. Louis, in September, if the Cardinals find themselves in a race and need an electric arm in the 'pen.
-Jake Odorizzi, KC, SP, Wilmington Blue Rocks (unranked): Odorizzi threw 6 shutout innings, to go with 2 BB, 3 H, and 8 Ks. Now has a 2.05 ERA on the year, with 74 Ks in 52.2 IP. Doesn't seem to have much more to prove at this level.
-Bryce Harper, WAS, OF, Hagerstown Suns (#1): after his brief slump, Harper is back to terrorizing single A pitching: .400/.538/.733 his last ten. Also 8 BBs to 6 Ks, and 5 more steals. A brief scare on Sunday when Harper was hit by a pitch on the knee, but it looks only to be a bruise. Phew!
-Tyler Skaggs, ARI, SP, Visalia Rawhide (#82): Skaggs had a nice turn again last week: 7 IP, 6 H, 4 ER, 1 BB, 7 Ks. But – you guessed it – he allowed another long ball. Now three starts in a row.
–Jean Segura, LAA, 2b/SS, Inland Empire 66 (#57): Segura is on the 7 day DL (hamstring).
–Manny Machado, BAL, SS, Delmarva Shorebirds (#14): Machado is back after his kneecap injury. He went 1 for 4 on 6/5 with a run scored. He is at .330/.443/.596 on the season.
Baseball, Prospects Adrian Cardenas, adrian gonzalez, Anthony Rizzo, Austin Romine, Brandon Guyer, Brett Jackson, Brett Lawrie, Bryce Harper, desmond jennings, Dustin Ackley, Greg Dobbs, Jacob Turner, Jake Odorizzi, Jean Segura, Jemille Weeks, Jesus Montero, Jordan Lyles, Julio Teheran, Kyle Gibson, Lonnie Chisenhall, Lorenzo Cain, Manny Machado, Martin Perez, Matt Dominguez, Matt Moore, Mike Minor, Mike Montgomery, Mike Moustakas, Mike Trout, Paul Goldschmidt, Randall Delgado, rickie weeks, Shelby Miller, Trey McNutt, Tyler Skaggs, Wes Helms, Wilson Betemit, Yonder Alonso
← Killin' the Odds & the Regular Season	06.06.11 Box Score Breakdown: Fantasy MLB News and Notes →


Seeking Employment in the healthcare field where my education, skills, and experience as a Medical Assistant will be utilized.
● Sensitive, caring, and professional attitude toward staff, patients, and their families.
● Friendly and outgoing with a pleasant manner and phone voice.
Perform numerous clinical tasks such as taking/recording of vital signs.
Perform administrative tasks such as preparing charts for upcoming appointments, updating medical records and filing charts.


We are committed to being the Preferred Foodservice Partner in the North Island.
We understand your needs and challenges, because we're 100% New Zealand Owned and Operated. We not only provide you with a range that's relevant to your business, we provide you with solutions outside of simply product & price, that help you grow a successful business within your industry.
Gilmours has been operating for almost 100 years, so we truly understand the Foodservice industry and look for ways to share our expertise with you to give you a competitive edge.
As a wholesaler, we offer you great deals relevant to your business on volume purchasing and buying in bulk.
Gilmours are proud to be the only food & beverage wholesaler in the North Island* who can reward you with either Airpoints Dollars™ or Fly Buys points.
Trents Wholesale Limited is, like Gilmours, business to business foodservice wholesalers. Trents covers the South Island of New Zealand,is proudly 100% NZ owned and operated and is an independently operated subsidiary of Foodstuffs South Island.


First impuls for this image was a photo of old czechoslovak train engine (nickname Laminatka) . This photo was taken in an old railway station in Bratislava.
The train engine was manufactured in 1968, but we can still see those oldschool locomotives in the service.
The train station still exists, but today it's reconstructed , it has a nice colors and materials and is not more romantic and dirty as before.
Image was finished in 2010.


Interested in Group in Romance Languages and Literatures? Admissions officers are waiting to hear from you!
University of California, Berkeley / Group in Romance Languages and Literatures is located in Berkeley, CA, in an urban setting.


With cloud computing finding its way into more small businesses and global enterprises, one concern both operations share is keeping an eye on the cost of doing business in the cloud.
To combat the effects of being surprised by spending in the cloud, several startups now offer graphical dashboards and tools detailing spending.
Rackspace cloud computing customers can now use Cloudability's service for free to keep watch on cloud costs. As business use of cloud computing grows, the need for such dashboards and metering services will rise as well.
Cloudability generates daily, weekly and monthly emails detailing a company's cloud spending and provides a graphical dashboard of that spending. The goal is to make cloud IT spending as efficient as possible.
It's a service that is welcome among cloud providers.
What worries cloud providers is that customers who get surprised will just move to another cloud. It's not good for any vendor if customers see unanticipated expenses, which might turn them off to cloud use, explained Rackspace CTO John Engates in a recent interview with GigaOm.
Cloudability's 3,400 customers provide a window into the adoption of cloud services by businesses. On average, the company's paying customers spend $20,000 monthly across 4.2 cloud accounts, although that number has likely grown since Cloudability last measured several months ago, according to Businessweek.
Cloudability was in the inaugural class of the TechStars Cloud incubator housed at Geekdom in San Antonio, TX, and the company was one of the more mature startups involved in the TechStars Cloud program.
When it comes to managing cloud costs, transparency is really the challenge, especially when you're looking at costs across various public clouds, notes Dave Zabrowski, founder and CEO of CloudCruiser, a cloud cost-management platform.
"There are very tangible hidden costs that can be eliminated just with transparency of knowledge," he said in an article on InformationWeek.
instance — therefore, they err on the side of over-provisioning and lock-in at a higher price just to make sure they are covered.


text:
#ifndef XENIA_GPU_D3D11_D3D11_GRAPHICS_DRIVER_H_
#define XENIA_GPU_D3D11_D3D11_GRAPHICS_DRIVER_H_

#include <xenia/core.h>

#include <xenia/gpu/graphics_driver.h>
#include <xenia/gpu/shader.h>
#include <xenia/gpu/d3d11/d3d11_gpu-private.h>
#include <xenia/gpu/xenos/xenos.h>

#include <d3d11.h>

namespace xe {
namespace gpu {
namespace d3d11 {

class D3D11PixelShader;
class D3D11ShaderCache;
class D3D11VertexShader;

class D3D11GraphicsDriver : public GraphicsDriver {
public:
  D3D11GraphicsDriver(
      Memory* memory, IDXGISwapChain* swap_chain, ID3D11Device* device);
  virtual ~D3D11GraphicsDriver();

  virtual void Initialize();

  virtual void InvalidateState(
      uint32_t mask);
  virtual void SetShader(
      xenos::XE_GPU_SHADER_TYPE type,
      uint32_t address,
      uint32_t start,
      uint32_t length);
  virtual void DrawIndexBuffer(
      xenos::XE_GPU_PRIMITIVE_TYPE prim_type,
      bool index_32bit, uint32_t index_count,
      uint32_t index_base, uint32_t index_size, uint32_t endianness);
  virtual void DrawIndexAuto(
      xenos::XE_GPU_PRIMITIVE_TYPE prim_type,
      uint32_t index_count);

  // TODO(benvanik): figure this out.
  virtual int Resolve();

private:
  int SetupDraw(xenos::XE_GPU_PRIMITIVE_TYPE prim_type);
  int RebuildRenderTargets(uint32_t width, uint32_t height);
  int UpdateState(uint32_t state_overrides = 0);
  int UpdateConstantBuffers();
  int BindShaders();
  int PrepareFetchers();
  int PrepareVertexBuffer(Shader::vtx_buffer_desc_t& desc);
  int PrepareTextureFetchers();
  int PrepareTextureSampler(xenos::XE_GPU_SHADER_TYPE shader_type,
                            Shader::tex_buffer_desc_t& desc);
  typedef struct {
    DXGI_FORMAT format;
    uint32_t block_size;
    uint32_t texel_pitch;
    bool is_compressed;
  } TextureInfo;
  TextureInfo GetTextureInfo(xenos::xe_gpu_texture_fetch_t& fetch);
  int FetchTexture1D(xenos::xe_gpu_texture_fetch_t& fetch,
                     TextureInfo& info,
                     ID3D11Resource** out_texture);
  int FetchTexture2D(xenos::xe_gpu_texture_fetch_t& fetch,
                     TextureInfo& info,
                     ID3D11Resource** out_texture);
  int FetchTexture3D(xenos::xe_gpu_texture_fetch_t& fetch,
                     TextureInfo& info,
                     ID3D11Resource** out_texture);
  int FetchTextureCube(xenos::xe_gpu_texture_fetch_t& fetch,
                       TextureInfo& info,
                       ID3D11Resource** out_texture);
  int PrepareIndexBuffer(
      bool index_32bit, uint32_t index_count,
      uint32_t index_base, uint32_t index_size, uint32_t endianness);

private:
  IDXGISwapChain*       swap_chain_;
  ID3D11Device*         device_;
  ID3D11DeviceContext*  context_;
  D3D11ShaderCache*     shader_cache_;

  ID3D11ShaderResourceView* invalid_texture_view_;
  ID3D11SamplerState*       invalid_texture_sampler_state_;

  struct {
    uint32_t width;
    uint32_t height;
    struct {
      ID3D11Texture2D*        buffer;
      ID3D11RenderTargetView* color_view_8888;
    } color_buffers[4];
    ID3D11Texture2D*        depth_buffer;
    ID3D11DepthStencilView* depth_view_d28s8;
    ID3D11DepthStencilView* depth_view_d28fs8;
  } render_targets_;

  struct {
    D3D11VertexShader*  vertex_shader;
    D3D11PixelShader*   pixel_shader;

    struct {
      ID3D11Buffer*     float_constants;
      ID3D11Buffer*     bool_constants;
      ID3D11Buffer*     loop_constants;
      ID3D11Buffer*     vs_consts;
      ID3D11Buffer*     gs_consts;
    } constant_buffers;

    struct {
      bool        enabled;
      xenos::xe_gpu_texture_fetch_t fetch;
      TextureInfo info;
      ID3D11ShaderResourceView* view;
    } texture_fetchers[32];
  } state_;

  enum StateOverrides {
    STATE_OVERRIDE_DISABLE_CULLING  = (1 << 0),
  };
};

}  // namespace d3d11
}  // namespace gpu
}  // namespace xe

#endif  // XENIA_GPU_D3D11_D3D11_GRAPHICS_DRIVER_H_