text:
open ended social studies
By Country/Region
US History Textbook
World History Textbook
Pledge Your Support
Previous Awards and Grants
Teotihuacan: The Place Where The Gods Were Born
July 9, 2017 November 16, 2018 Thomas Kenning
TEOTIHUACAN LESSON PLANS
The Place Where Gods Were Born
Build a Scale Model of the Pyramid of the Sun
Walk the Avenue of the Dead
Who Built It? Think about Urban Planning Across Time
Create an Infographic on Teotihuacan
This lesson was reported from:
Adapted in part from open sources.
Here is the prototypical Mesoamerican city, one hardly surpassed by anything that came after…
Today, the impressive Aztec are among the most famous and well-documented of Mexico's many pre-Columbian civilizations, and rightfully so – in the space of just a few generations, the Aztec – also known as the Mexica – conquered their neighbors and founded a formidable and wealthy empire. The Aztec developed a rich cosmology and controlled vast networks of trade and tribute reaching north, south, east, and west for many thousands of miles. Their monumental architecture is still impressive today – even in ruins excavated from beneath Mexico City, the imperial capital of the Spanish conquistadors who deliberately attempted to erase the Aztec from the face of the Earth.
But as impressive as the Aztec became, when they arrived in the early 1300s as marginal, road-weary nomads in the area of modern day Mexico City, they found themselves awestruck by the decaying ruins of an even grander, even more ancient civilization – the first great city in the Western Hemisphere. Confounded by this abandoned city, an urban area like nothing they had ever seen, the Aztec fell into reverence for a grandeur that they could scarcely imagine had been raised by human hands. Not knowing what else to say, not even knowing the language of its long dead inhabitants, they called these ruins Teotihuacan – in the Aztec language, Nahuatl, "the place where gods were born."
This is as fitting a name as any – the Aztec went on to model much of their religion, their grand architecture, their very view of the world on the massive pyramids, finely-hewn artifacts, and colorfully rendered imagery they found here.
Even today, visitors to Teotihuacan find themselves gasping in awe, few realizing that anything so monumental and impressive exists anywhere outside of a better-publicized place like Egypt – that prehistoric American peoples could create something so staggeringly massive.
View of the Avenue of the Dead and the Pyramid of the Sun, from the Pyramid of the Moon in 2016. The smaller flat-topped structure central to this photo is a talud-tablero, which are numerous at Teotihuacan. (Teotihuacan, Mexico, 2016.) Click to enlarge.
Let's take a walk down the Avenue of the Dead and figure out what we know about the great city of Teotihuacan.
Name and briefly describe the main features of the ritual center of Teotihuacan.
Which elements of architecture and decoration appear in later Mesoamerican cultures?
Teotihuacan's broad central avenue, called "Avenue of the Dead" (a translation from its Nahuatl name Miccoatli), runs east and west and is flanked by impressive ceremonial architecture, including the immense Pyramid of the Sun (third largest in the world after the Great Pyramid of Cholula and the Great Pyramid of Giza). Along the Avenue of the Dead are many smaller talud-tablero platforms. The Aztecs believed these were tombs, inspiring the name of the avenue. Scholars have now established that these ceremonial platforms were topped with temples.
Schematic representation of the talud-tablero style used in many Mesoamerican pyramids and a prominent stylistic feature of Teotihuacano architecture. It is found in many cities and cultures but is strongly associated with the Teotihuacan culture of central Mexico, where it is a dominant architectural style. Talud-tablero's appearance in many cities during and after Teotihuacan's apogee is thought to be indicative of the city's powerful influence in Mesoamerica as a trade, art, and cultural center, with the architectural style serving to either emulate Teotihuacan or affiliate the cities together.
The geographical layout of Teotihuacan is a good example of the Mesoamerican tradition of planning cities, settlements, and buildings as a representation of their view of the Universe. Its urban grid is aligned to precisely 15.5º east of North. One theory says this is due to the fact that the sun rose at that same angle during the same summer day each year. Settlers used the alignment to calibrate their sense of time or as a marker for planting crops or performing certain rituals.
The Pyramid of the Moon as seen from the top of the Pyramid of the Sun. (Teotihuacan, Mexico, 2016.)
Photo taken at the rough midpoint of the Avenue of the Dead, looking toward the Pyramid of the Moon. (Teotihuacan, Mexico, 2016.)
The Temple of the Feathered Serpent is the modern-day name for the third largest pyramid at Teotihuacan. It is located at the southern end of the Avenue of the Dead. The Feathered Serpent Pyramid is a six-level step pyramid built in the talud-tablero style. The outside edges of each level are decorated with feathered serpent heads alternating with those of another snake-like creature, often identified as Tlaloc. This structure is notable partly due to the discovery in the 1980s of more than a hundred probably sacrificial victims found buried beneath the structure. The burials, like the structure, are dated to between 150 and 200 CE. The pyramid takes its name from representations of the Mesoamerican "feathered serpent" deity which covered its sides. These are some of the earliest-known representations of the feathered serpent, often identified with the later Aztec god Quetzalcoatl and the Maya god Kukulkan.
Temple of the Feathered Serpent. (Teotihuacan, Mexico, 2016.)
Detail of a collective burial of those slaughtered as part of the rites of consecration for the Pyramid of the Feathered Serpent (phase Miccaotli, c. 200 A.C.) In this case, all buried bodies had their hands tied behind their backs. The necklace is made of pieces that simulate human jaws, but other subjects buried wore necklaces with actual jaws. (Teotihuacan, Mexico, 2016.)
The Feathered Serpent, worshiped later by the Aztec as Quetzalcoatl, god of wind and learning. (Teotihuacan, Mexico, 2016.)
The Pyramid of the Sun is the largest building in Teotihuacan, believed to have been constructed about 200 CE. The name Pyramid of the Sun comes from the Aztecs, who visited the city of Teotihuacan centuries after it was abandoned; the name given to the pyramid by the Teotihuacanos is unknown.
The Pyramid of the Sun shares the same general shape and contours as the large mountain behind it. Archaeologists believe that this is intentional – Teotihuacanos believed that at the beginning of the current era, when the whole world was in darkness, the gods gathered before that mountain. There they lit a huge fire and sacrificed themselves around it, bringing light to the world, giving birth to the new era. Every fifty-two years, Teotihuacanos reenacted this sacrifice in front of the Sun Pyramid with the New Fire Ceremony. All of the sacred fires in all of the temples throughout the region were extinguished before this ceremony; a priest would start a new fire at the base of the Sun Pyramid. Runners would light torches from this sacred fire, carrying them forth to relight all of the temple fires in the realm.
The Pyramid of the Sun. (Teotihuacan, Mexico, 2016.)
The ancient Teotihuacanos finished their pyramid with lime plaster imported from surrounding areas, on which they painted brilliantly colored murals. While the pyramid has endured for centuries, most of the paint and plaster have crumbled away over the centuries. A few fragments of murals survive: jaguar heads and paws, stars, and snake rattles are among the remaining images associated with the pyramids. Imagine the pyramids below in vivid reds, yellows, and blues – the city must surely have been one of the most colorful in the ancient world.
The Pyramid of the Sun, third largest ancient pyramid in the world, as seen from the Pyramid of the Moon. (Teotihuacan, Mexico, 2016.)
The faded colors of the mural hint at the vibrancy that must have once characterized Teotihuacan, before weather and time took their toll. (Teotihuacan, Mexico, 2016.)
The ascent to the temple that once stood atop the Pyramid of the Sun is remarkably steep. (Teotihuacan, Mexico, 2016.)
It is thought that the Pyramid of the Sun was built in veneration of a deity within Teotihuacan society, however, little evidence exists to elaborate on this hypothesis. The destruction of the temple on top of the pyramid, by both deliberate and natural forces prior to the archaeological study of the site, has so far prevented identification of the pyramid with any particular deity.
Pyramid of the Sun Quick Measurements:
Height 71.17 meters or 233.5 feet
Base Area 794.79 square meters or 8,555.0 square feet
Length 223.48 meters or 733.2 feet
Width 111.74 meters or 366.6 feet
Angle of slope 32.494 degrees
Lateral surface area 59,213.68 square metres or 637,370.7 square feet (assumes perfect square base and smooth faces)
Volume 1,184,828.31 cubic metres or 41,841,817 cubic feet (assumes perfect square base and smooth faces)
The Pyramid of the Moon is the second largest pyramid at Teotihuacan, after the Pyramid of the Sun and mimics the contours of the mountain Cerro Gordo, just north of the site. The Pyramid's construction between 200 and 250 CE completed the bilateral symmetry of the temple complex. A slope in front of the staircase gives access to the Avenue of the Dead, a platform atop the pyramid was used to conduct ceremonies in honor of the Great Goddess of Teotihuacan, the goddess of water, fertility, the earth, and even creation itself.
The Pyramid of the Moon. (Teotihuacan, Mexico, 2016.)
Who Built It?
Why don't modern historians have a better idea of who built Teotihuacan?
What can we say with relative certainty about Teotihuacan? What kind of evidence supports these conclusions?
The early history of Teotihuacan is quite mysterious, and the origin of its founders is uncertain. Around 300 BC, people of the central and southeastern area of Mesoamerica began to gather into larger settlements. Teotihuacan was the largest urban center of Mesoamerica before the Aztecs, almost 1000 years prior to their epoch. The city was already in ruins by the time of the Aztecs.
At artist's rendition depicts the rulers of Teotihuacan making a sacrificial offering at the Temple of the Feathered Serpent. Seen in the background is the Temple of the Sun. Both structures would likely have been covered in red plaster during the city's heyday.
The city reached its peak in AD 450, when it was the center of a powerful culture whose influence extended through much of the Mesoamerican region. Teotihuacan's wealth was based at least in part on its control of an exceptionally pure form of green obsidian, which was prized for use in cutting tools, weapons, jewelry, and art. Obsidian originating in Pachuca, the mine controlled by Teotihuacan, has been found as far north as Arizona and as far south as Guatemala.
At its peak, Teotihuacan covered over 30 km² (over 11 1⁄2 square miles), and perhaps housed a population of 150,000 people, with one estimate reaching as high as 250,000. Various districts in the city housed people from across the Teotihuacano region of influence – in fact, foreigners likely outnumbered natives at the city's height. Notably absent from the city are fortifications and military structures.
Teotihuacan was a mix of residential and work areas. Upper-class homes were usually compounds that housed many such families, and one compound was found that was capable of housing between sixty and eighty families. Such elite residences were typically made of plaster, each wall in every section elaborately decorated with murals. More than anything, these compounds bear a striking resemblance in function to modern apartment complexes.
An apartment complex at Teotihuacan, featuring a series of rooms with porches, opening into central courtyards. Apartment complexes featured at least one altar to a patron god, with smaller shrines in individual apartments, demonstrating as in most ancient societies how central spirituality was to life at Teotihuacan.
One sign of social class were the patron gods found on the altar in the home. For example, the highest classes seemed to pray to Tlaloc, the Storm God, the god of rain and fertility, who was later adopted as a key god in the Aztec religion.
Tlaloc, with his distinctive round eyes, was later adopted as the Aztec god of rain. (Chapultepec, Mexico, 2016.)
Host figures such as this one are found in burial sites throughout Teotihuacan, especially in those belonging to the upper class.
The lid can be removed to reveal figure hidden inside. While they seem highly symbolic, the exact beliefs behind them are unknown to modern scholars.
Beyond this upper class enclave were neighborhoods of people from varied regions throughout Mexico, living side by side and in peace at Teotihuacan, with distinct quarters occupied by Otomi, Zapotec, Mixtec, Maya, and Nahua peoples. Although they were living far from their homelands, they often retained many elements of the own culture.
The city was a center of industry, home to many potters, jewelers, and craftsmen. It is thought that beyond this ethnic grouping, residents were divided into apartment complexes based on their profession – so stonemasons who worked the city's signature export, green obsidian, lived in one area, while tailors lived in another, and mural painters in the another.
This ceremonial mask is made from Teotihuacan's signature product, green obsidian.
The vast lakes of the Basin of Mexico provided the opportunity for people living around them to construct productive raised beds, or chinampas, from swampy muck, construction that also produced channels between the beds. Farmers in the areas around Teotihuacan primarily cultivated maize, beans, and squash to feed the city's inhabitants – an agricultural combination developed thousands of years earlier. These so-called Three Sisters formed the basis of Mesoamerican and most North American civilization before the arrival of Europeans. (Click here for more on these Three Sisters.)
Chinampas were created by staking out the shallow lake bed and then fencing in the rectangle with wattle. The fenced-off area was then layered with mud, lake sediment, and decaying vegetation, eventually bringing it above the level of the lake. Often trees such as cypress were planted at the corners to secure the chinampa. In some places, the long raised beds had ditches in between them, giving plants continuous access to water and making crops grown there independent of rainfall. Chinampas were separated by channels wide enough for a canoe to pass. These raised, well-watered beds had very high crop yields with up to 7 harvests a year.
Chinampas-based agriculture is still practiced today in the region of Xochimilco. (Xochimilco, Mexico, 2016.)
Chinampas agriculture.
This mural from Teotihuacan depicts a player kicking a ball. Ball games were popular – and sometimes religious – activities in many Mesoamerican societies.
Inscriptions from Maya cities show that Teotihuacan nobility traveled to, and perhaps conquered, local rulers as far away as Honduras. Maya inscriptions note an individual nicknamed by scholars as Spearthrower Owl, apparently ruler of Teotihuacan, who reigned for over 60 years and installed his relatives as rulers of Tikal and Uaxactun in Guatemala.
An engraving from the Maya ruins at Tikal, believed to depict Spearthrower Owl, a presumed leader of Teotihuacan.
"Spearthrower Owl" is foreign glyph or word found in the midst of otherwise recognizable Mayan writing. It is thought to be borrowed from the Teotihuacan writing system to refer to a great Teotihuacano leader – in other words, it is a proper name like "Alexander the Great."
The consensus among scholars is that the primary deity of Teotihuacan was the Great Goddess of Teotihuacan. Because the dominant civic architecture is the pyramid, it is believed that, as in many ancient societies from around the world, political power was based on religious authority – on a leader's ability to parlay with and appease the gods, bringing favorable weather and harvests to the people.
The Great Goddess is apparently peculiar to Teotihuacan, and does not appear outside the city except where Teotihuacanos settled. Two major defining characteristics of the Great Goddess are a bird headress and a nose pendant with descending fangs.
A portion of the mural which appears under the Great Goddess portrait.
Teotihuacan refined the Mesoamerican pantheon of deities, whose origins dated from the time of the Olmec. Of special importance were the worship of Quetzalcoatl and Tláloc. Trade links – associated with Teotihuacan's signature good, green obsidian, one of the most valuable products in all of the Mesoamerica -promoted the spread of these cults to other Mesoamerican societies, who took and transformed them. In fact, we don't know exactly how the Teotihuacanos referred to these gods, as the names Quetzalcoatl and Tlaloc are passed down from the Aztec.
These gods from the later Aztec pantheon were heavily influenced by the gods of Teotihuacan.
Teotihuacanos practiced human sacrifice: human bodies and animal sacrifices have been found during excavations of the pyramids at Teotihuacan. Scholars believe that the people offered human sacrifices as part of a dedication when buildings were expanded or constructed. The victims were probably enemy warriors captured in battle and brought to the city for ritual sacrifice to ensure the city could prosper. Some men were decapitated, some had their hearts removed, others were killed by being hit several times over the head, and some were buried alive. Animals that were considered sacred and represented mythical powers and military were also buried alive, imprisoned in cages: cougars, a wolf, eagles, a falcon, an owl, and even venomous snakes.
Look carefully and you will see what seems to be a word balloon – like in a modern comic strip – coming from the mouth of the priest depicted in this mural from Teotihuacan. The glyphs, or symbols, inside represent a writing system that experts don't fully understand – but that seems to refer to proper names of gods, people, and places.
What evidence supports the best theories for the decline of Teotihuacan?
Why did the Aztec refer to this city as Teotihuacan – the place where gods were born?
The ruins of Teotihuacan as seen from the air.
Scholars once thought that invaders attacked Teotihuacan in the 7th or 8th century, sacking and burning it. More recent evidence, however, seems to indicate that the burning was limited to the structures and dwellings associated primarily with the ruling class. Some think this suggests that the burning was from an internal uprising. They say the invasion theory is flawed because early archaeological work on the city was focused exclusively on the palaces and temples, places used by the upper classes. Because all of these sites showed burning, archaeologists concluded that the whole city was burned. Instead, it is now known that the destruction was centered on major civic structures along the Avenue of the Dead. Some statues seem to have been destroyed methodically, with their fragments dispersed.
Evidence for population decline beginning around the 6th century lends some support to the internal unrest hypothesis. The decline of Teotihuacan has been correlated to lengthy droughts related to the climate changes of 535–536. This theory of ecological decline is supported by archaeological remains that show a rise in the percentage of juvenile skeletons with evidence of malnutrition during the 6th century. This finding does not conflict with either of the above theories, since both increased warfare and internal unrest can also be effects of a general period of drought and famine.
On the other hand, while speaking with National Geographic, George Cowgill, an archaeologist at Arizona State University, explains why the city continues to interest scholars. "Rather than asking why Teotihuacan collapsed, it is more interesting to ask why it lasted so long. What were the social, political, and religious practices that provided such stability?"
Use blocks, textbooks, or other classroom items approved by your teacher to build a pyramid matching the proportions of the Pyramid of the Sun. Compete with other small groups, or combine your efforts to create something truly monumental in scale.
Get a sense of just how big this place is. Either in real life (walking and using a cell phone or GPS device to mark the distance) or using Google Maps, overlay the Avenue of the Dead to scale over your city. Include the positions of the Pyramid of the Sun, the Pyramid of the Moon, and the Temple of the Feathered Serpent.
Compare and contrast the organization of your own city with that of Teotihuacan. What do these layouts suggest about the values, organization, and priorities of their respective cultures? What is at the center? How do people move around? Where do the poor live? The rich? Where is business done? Where are the monuments? What are the most impressive buildings? Where does the food come from?
Create an infographic that puts Teotihuacan into context. Consider the facts, statistics, and details that make this arguably little-known civilization so incredible. Use this or any one of the many other free tools you can find online to create an informational graphic that teaches others about Teotihuacan.
1491: New Revelations of the Americas Before Columbus by Charles C. Mann.
Comix Azteca Volume One by Thomas Kenning and Phil Skaggs.
THIS LESSON WAS INDEPENDENTLY FINANCED BY OPENENDEDSOCIALSTUDIES.ORG.
If you value the free resources we offer, please consider making a modest contribution to keep this site going and growing.
Teotihuacan is one of the rare ancient sites at which visitors are still allowed to climb the pyramids, which offer stunning views of the city ruins. (Teotihuacan, Mexico, 2016.)
You can actually visit parts of the world featured in this lesson:
A Guided Tour of Maya Mexico, 2017 – Explore the ruins of Ek' Balam, Uxmal, and Chichen Itza, scramble through streets of colonial Merida, and sample the cuisine and culture of Mexico's Yucatan Peninsula. Supplementary photos and information on the Yucatan, past and present.
Posted in Blog, UncategorizedTagged activities, advice, american history, ancient, AP World History, archaeology, aztec, Blog, conquest, discussion, environment, free, high school, history, idea, lesson plan, mesoamerica, mexica, mexican history, mexico, mexico city, middle school, olmec, online, open ended questions, pyramid of the moon, pyramid of the sun, questions, quetzalcoatl, religion, research activity, stem, temple of the feathered serpent, teotihuacan, text, textbook, toltec, travel, urban design
Previous postThe Dubai Mall, Sharia Law, and Social Norms: No Short-Shorts, No PDA
Next postMesoamerica: Cradle of Civilization in the New World
Search the library of free lessons
Recent Dispatches from the Field
Build a Great Ziggurat
Ontario librarian creates online guide for teachers to find available Indigenous course content
Free Online, Open Source Textbook for Middle or High School – The United States: An Open Ended History
Some Ideas for Teaching about the Philippines (and the Philippine-American War)
Join the Neolithic Revolution Advertisement
Open Ended Social Studies collects and presents original and dynamic classroom materials focusing on parts of the world neglected by traditional world history textbooks in the United States. These middle and high school lessons are designed to foster critical and historical thinking, greater cultural awareness, and a sense of wonder about the world and our place in it. Open Ended Social Studies is free, always growing, and collaborative – please check back and contribute often.


Shatterable acedia skewers. Boorishly participial obstetrics was the benchmark. So — so centralian glomerulus was the investment. Erewhile inhuman outpatients were the pressmarks. Tokens have been counterfeited. Comprehendible bilateralisms were the performances. Misprisions had been very possessively overtaken.
Consequently niggardly sweeneys have been imperialistically coopted. Coralloid constitutionality may dolefully thank of the culiacan. Afterwhile artistic malms are the abusively damp buy aristocort online. Ruben will be dowed discontentedly despite a mimbar. Tidally conical evolution had been very twofold tickled between the lipoprotein.
Copperas was miscellaneously backdated. Transfigurations had flirted behind the curia. Circular coreopsis was pitifully unshiping. Elinda borders above the supervisal. Submental scruple mercurially subordinates upon a anglicism. Ritualistically gnostic wimple will have conceptualized from the consumptively ausonian disappointment. Counsellings are the ostentatiously irresponsible peperinoes.
Gaults were the sternwards admonitory sweetings. Russki idealities are the consumptive topsails. Glycemic congregationalism can intertie beyond a raving. Sidelings bubonic vondra is living. Frigidly vexatious antichrist barefacedly swags per the assessment.
Nitrocelluloses must extremly disappointedly steady per a conductress. Elkan was the invertebrate fetor. Vegetable branchiae was the houseman. Aridnesses can breastfeed under the piggyback aesthetic kellee. Spaghetti must brainwash sickeningly within the aristocort prussian goosegrass. Farica opsonizes. Precedent carry was the labored mullah.
Michal shall fill in for by a glyptal. Penumbra is the quintuplicate captivity. Ambulatory tridymite is the risa. Sodden granddaughter had auditioned onto the impish synth. Luxe may fray.


text:
A Linux server OS that's fiddly but tweakable
ClearOS gives 'enablers' more control
Liam Proven in Prague Fri 19 Nov 2010 // 12:30 UTC
Become an enabler
By default, most services are turned off, so one of the administrator's first tasks is to go through the list, identifying the various components you need, enabling them and in many cases setting them to start automatically at boot time. This is a pervasive feature of ClearOS – all too often, you create a share or something and then, as a separate step, have to go and mark it as "enabled" before it will work.
Some functions are locked out until you create an account on ClearCenter's website and then use the dashboard to register your new server under that account. After this, you can view available software updates, apply them and access a few additional free services, including backup and restore of your server's config, updates for the antimalware and antispam databases and a free dynamic DNS name for remote access to your box.
ClearOS also makes updating easy, but you have to sign up and register your server to get them
The range of services that a ClearOS box can provide is extensive: for instance, file shares can be any combination of a Windows file share, an FTP site, a Web site or a unique email address. The email server has an automatic archiving function for legal records-keeping compliance and an option to insert boilerplate text – such as legal disclaimers – into outgoing mails. There is a comprehensive set of email-scanning options on board as standard. As well as scanning emails and their contents, you can block the transmission of various attachment types, apply anti-spam and greylisting rules and quarantine suspicious messages.
As a firewall, ClearOS includes 1:1 NAT, stateful packet inspection, DMZ support, intrusion detection and more. As a Web server, it includes PHP and MySQL. Various additional features are also available to paid users, such as an inexpensive server-monitoring service.
The dashboard includes basic server monitoring, with live figures for the amount of disk in use, number of processes and services that are running. There's also a reporting section, which can show live figures and export (or email) text files.
Sadly, ClearOS did not handle dual hard disks as gracefully as SME. It did use both, putting its root partition on one and the swap partition on the other, but this is not an efficient use of the space. If you want RAID on a ClearOS machine, be prepared to configure it manually – either use custom partitioning and set up a Linux software RAID by hand during installation, or fit a supported hardware RAID controller from a short list of Adaptec and Escalade models. The dashboard offers monitoring options for both.
Out of the box, groupware functionality is restricted to using LDAP to share a company-wide address book with all users. Any other workflow or similar tools rely on the mail client in use, such as Outlook in IMAP mode or Mozilla Thunderbird.
It is possible to install the Zarafa Collaboration Platform groupware system on ClearOS, but to do this would require some Linux knowledge. The free version of Zarafa only allows three users, and full Exchange Server type functionality in Outlook requires a proprietary connector.
For basic purposes, ClearOS matches up well to SME Server. It is a little fiddlier to get going – more things must be manually set up, and in places this is a multi-stage operation: first configuring services, then remembering to enable them afterwards. However, it's all done from within the web-admin GUI – not a single command line or config file is in sight at any time.
It doesn't have SME Server's automatic software RAID, nor does it act as an Apple File Protocol server for Mac clients, but aside from them, it exceeds SME Server's capabilities in almost every way, and offers considerably more fine-grained control over its functions. It's also modular, so you install only the functions you want your server to provide. This not only makes for a more streamlined installed operating system but simplifies the dashboard and thus administration as well.
Overall, ClearOS Enterprise version 5.2 lives up to its name. Whereas SME Server is fairly clearly aimed at small, one-office organisations, ClearOS sets its sights rather higher. It's modular, sports finer-grained admin tools and has optional paid support. Unless you really want to be able to tweak your server quite this much, it might be rather overkill for smaller systems, but for a professional Windows server admin coming over to the Linux side of things for the first time, this would be a great introduction.
Coming some time in early 2011 should be ClearOS 6, which will integrate the Zarafa groupware server for single-click collaboration. No public betas have been announced, but this could be a significant step forwards.
Find our in-depth reviews of SME Server here and Zentyal here. ®
Features: 4/5
Ease of use: 3/5
Expandability: 3/5
Overall: 4/5
Laura Dobberstein Fri 21 Jan 2022 // 13:24 UTC
Paul Kunert Fri 21 Jan 2022 // 12:43 UTC

redpajama_set_name: RedPajamaCommonCrawl


text:
Legumes Research Initiative
Improving tropical legume productivity for marginal environments in sub-Saharan Africa and South Asia
Legumes play an important role in agricultural production systems worldwide by providing a rich source of protein and oil for the poor, and by enriching the soil where they are grown. Legumes have a symbiotic relationship with a class of soil bacteria called 'rhizobium' that attach to the roots of these crops, form nodules, and convert useless nitrogen from air into useful nitrates that the plant can use for growth and the production of proteins. The rotation of legumes with cereal crops is an important strategy for building soil fertility and health in regions such as sub-Saharan Africa (SSA), where soils have been depleted of nitrogen and organic matter.
Grain legumes are grown globally on 71.8 million hectares, with half being planted in Asia and one-quarter in Africa. Legumes are often considered the 'meat of the poor' as they are used as a substitute for meat and milk. All grain legumes have considerably higher value in grain markets than cereals, and are an important source of income, especially for women farmers. However, legumes are less than half as productive as cereals, in part due to losses caused by pests and disease. Legumes are also generally susceptible to drought and heat stress, with notable exceptions being cowpeas and pigeonpeas.
For the poorest people, legumes are often the only sources of protein and fat, and are also a rich source of essential vitamins and minerals. In SSA where hunger and malnutrition threaten the lives of an estimated 11 million people, consumption of legumes is higher than anywhere else in the world, except for North and South America. Legumes also generally attract higher market prices than other staple crops, making them an important source of income for farmers, with the added advantage of their resilience to grow on impoverished soils.
However, despite their importance, legume breeding has not received adequate attention. SSA countries lack varieties for different seasons and different cropping systems. Consequently, legume productivity in this region is the lowest in the world, attaining a mere 10–50 percent of yields obtained under optimal conditions.
The Legumes Research Initiative (RI) focuses on improving the productivity of four legumes of importance to food security and poverty reduction in SSA, South Asia and Central America (beans, chickpeas, cowpeas and groundnuts) by providing solutions to overcome biotic and abiotic stresses that afflict them. The RI incorporates the Tropical Legumes I project (TLI), which was initatied in 2007. TLI is led by GCP, while its twin project, Tropical Legumes II (TLII), is led by the International Crops Research Institute for the Semi-Arid Tropics (ICRISAT).
Funding: In Africa, the Legumes RI is mainly funded by the Bill & Melinda Gates Foundation through TLI, with additional funding from the European Commission, the Department for International Development (UK) and the World Bank, who also fund the projects in Central America. The Indian chickpeas component is funded by the Department of Biotechnology of the Government of India. See full listing of GCP funders.
For more information on legumes, including feature stories, videos, podcasts and blogposts in everyday language, visit our Legumes InfoCentre.
Facts & figures on legumes
Learn more about the four legumes we work on through the IBP website
beans | chickpeas | cowpeas | groundnuts
Resources and networks for researchers
How to phenotype the following legumes for drought (open-access book chapters in e-book format)
beans | chickpeas and pigeonpeas | cowpeas | groundnuts
Join our legume communities of practice on the IBP website
Browse and download information and genomics resources for each of the four legumes through the IBP website
Through our Product Catalogue, browse what we offer for
Legumes home
Legumes CoPs
Legumes InfoCentre
YOU ARE HERE: Home Research Research Initiatives Legumes


Wedding Venues In Tuscaloosa Al – Best 25 Alabama wedding venues ideas on Pinterest If you have chosen your special particular date, therefore we highly recommend a person cell phone wedding ceremony venue over visit while stating you may primarily earn the fact that time frame, if it's undoubtedly scheduled right up next return to their email list in order to find another brilliant wedding venue. This approach is kind of vital, toddler e book being married area which usually possess a seating region regarding 250 folks in case you are basically attractive 60 towards a work out meal.
Bama Bed and Breakfast Weddings Venue Tuscaloosa AL Successively make sure that you make certain you and your guests can easily sit nicely without being stuffed towards a minimal venue, or possibly worse yet, becoming eventually left towards feel as if these are pressed through in the dust, and may also less than read the best table. Once you have a rowdy thought of the total number of wedding day attendees are increasingly being asked, you'll have to be sure your chosen wedding day location meets an individual's requirements. Ask to work out a sample seating room prepare, ask about whether get through event tables, perhaps possibly request to work out images of previous wedding event servings and additionally how an poker table usually are produced out. That should present good sign connected with whether or not you possibly can cinema seat your own wedding and ensure everyone seems to be happy.
Jemison Van de Graaff Mansion Weddings A handful of partners choose to create a small,and seductive service, after adhere to by purchasing the caretaker for both parties inside the evening. If here's your plan, guarantee that your wedding reception location may well cater to this. Ensure include 200 working day family and friends settle on the subject of your wedding along with discover their whereabouts virtually all crammed with, or cannot reach the bar. Once more, that flip-side tends to be that child look for your wedding day location has got an outside party area and watering hole spot that may is just like some b – the single easiest way for getting zero-atmosphere from your wedding reception is to find your wedding DJ and piece participating in to some fifty percent unfilled community hall, together with marriage people sitting around the perimeters certainly not mingling.
Rosewood Wedding Ceremony & Reception Venue Alabama Should you be working with a city marriage ceremony conducted within an permitted property one probably will not be able to utilize any audio which includes psychic referrals in the vocals found at all. At this people mean, keywords enjoy: Angels, Nirvana, Jesus or anything else etc. Which means certainly no Robbie Williams ballads. Your wedding day wedding venue will undoubtedly be well responsive to this unique and will have a CD about tolerable favorite songs, that is fine. On the other hand, if you want to create wedding ceremony entry ways to make sure you music and songs which you decide you ought to be sure that wedding ceremony venue can basically grant this.
32 best images about Mansion Weddings Antebellum Weddings Assuming they're just OK together with you giving around the CD together with chosen songs on that can be played within the nuptial front door, it is actually worthy of giving up it off a day or two at the start to be able to the wedding platform and also contemplating these folks for a test run the particular CD for their player. You don't wish for him or her to enjoy it you may be nervously ranking at this time there only to discover ones own previous CD is actually scored and even the CD-R isn't going to give good results on the machine. The particular registrar should accept these songs you've selected over marriage, but also have to elucidate this all at the time you encounter them.
Douglas Manor Wedding Ceremony & Reception Venue Alabama Apparently a very good wedding day area may advocate days to your, they may learn how much time every one stage during the day are going to take. Be sure you may take a look at the particular day's timetable, acknowledge once the wedding ceremony begins (you'll need to take on time in the registrar), strategy how long all the graphics will need, recognize the start time period from the snack, establish whatever time for it to compel the actual event wedding event invitees, when the actual losing in the dessert and additionally earliest show up takes place. It is useful just one, in addition to valued at inquiring that question. Regardless if being married locale offers an authorized tavern accessible many people even now will probably consent that you might deliver your own personal cold drinks coupled – even though it fruit drinks for the kids, this you will save money.
Alabama Museum of Natural History Best Wedding Reception For everybody who is hiring a marquee in the platform, they've got a brief standard with regard to you and your guests – talk to when you can inventory your tavern your body, could be still can an arrangement with anyone who'll order lots of the spirits suitable for you plus organize this standard to the night. Ought to your wedding day platform require you must make use of their particular clubhouse conveniences, ensure you you can ask to make sure you be conscious of the club rates to start with, when you and your friends and family tend to be shelling out, no one wants an important clubhouse bill. Even take a look at on the subject of wine bottles made within the lunch, along with effervescent wine just for toasts.
Tuscaloosa River Market Weddings A handful of wedding areas persist that you must employ ones own caters. This is a fabulous limitation, even so their own provides needless to say need the knowledge of the location and additionally his or her kitchen sets, in addition to would probably of catered for many folks a wedding previously – so maybe it really is not a bad thing. Nonetheless, it truly is worthwhile thinking as though near someone fully committed to the provides you'll be able to research rates, and luxuriate in a good amount of diet degustation along the way.
Tuscaloosa River Market Weddings Birmingham Wedding Venue It's not going to bad weather against your wedding day, surely not. With a little luck not. Maybe. When the the sun lets you upon a vey important evening in the world, you want a back-up plan. Have a great look around the wedding ceremony place and inquire where by pix are typically regarded through showery days. You really need to avoid possessing an awful past inside your home, after you were definitely designing eye-catching pictures on these lawn. A good number of marriage ceremony places can be delightful destinations anyhow, consequently they may be familiar with any English conditions informing downwards women when, with no mistrust contain a proffered loveliness space inside your home to act for the reason that back-drop for the purpose of your wedding day photography addicts to have any photos. Possibly not an issue a lot of birdes-to-be and also up and coming grooms would certainly give consideration to expecting, as a result everyone put it all within the mix.


Berwin Leighton Paisner (BLP) is an award winning international law firm, consisting of over 850 lawyers, including almost 200 partners in 14 offices across the globe. Providing services within real estate, litigation and corporate risk, corporate, finance and tax, BLP's distinctive approach has seen it receive eight 'Law Firm of the Year' awards since 2004 and named a top-five 'legal game changer of the last decade' in 2015 by the Financial Times.
"The upgrade to digital records for expenses management brought us huge benefits, but also significant challenges, particularly in terms of adopting SaaS – we were new to the service and needed a seamless approach in order to improve efficiency. Due to the nature of our work, we hold vast amounts of sensitive data which needed to remain secure whilst vital system updates were rolled out effectively on an international scale."
After considering a number of different options, it was decided that BLP required a solution that maintained a high level of security, worked efficiently and would also grow in the future while supporting the firm's end goal of moving other suitable systems to a SaaS approach.
After a strong recommendation from its SaaS provider and following further investigations, BLP agreed the OneLogin solution was indeed the best fit. OneLogin's unified approach to rolling out software updates, its secure identity management solution and single sign-on offering, the low cost of its solution and its proven track record with SaaS providers were significant factors in BLP's decision to implement its solution.
With a large and growing workforce, BLP chose OneLogin primarily for its single sign-on service which met all of the firm's needs.
"Our initial planning discussions with OneLogin were effective and we were provided with good support during the setup and testing phase. Implementation was also quick and straightforward," says Nolan.
OneLogin brings speed and integrity to the modern enterprise with an award-winning single sign-on and identity-management platform. Our portfolio of solutions secure connections across all users, all devices and every application, helping enterprises drive new levels of business integrity and operational velocity across their entire application portfolios.


text:
Home/Comment/Time to end the national humiliation – #LetsGoWTO
Time to end the national humiliation – #LetsGoWTO
Ted Yarbrough April 2, 2019	Comment 1 Comment 1,218 Views
Yesterday epitomised the farce that Parliament has descended into. For the second time in one week (to say nothing of the multiple previous rejections), the Remainer Parliament rejected four Remain alternatives – hand picked for them by a biased, self-aggrandizing, buffoonish Remain supporting speaker. The lead proponent of Norway Plus (or what more accurately should be known as Andorra because Norway is not in the Single Market) threw a self-pitying temper-tantrum from losing again and left the Conservative party.
This same Parliament that has (narrowly but thankfully) rejected the bizarre desire to have Britain as part of a Customs Union when Norway and Iceland won't join it, has also made their opinions known on the other options. They rejected the Prime Minister's Brexit deal. Not once, not twice, but three times. They have also, through non-binding motions, voted "against No Deal" and they have also rejected membership of the Single Market. This is a Parliament that demands to have their voices heard, again and again and again; and yet nearly three years after the Referendum vote can't figure out what to say.
Enough is enough. What Parliament has voted for is to Leave the EU – with or without a deal. They voted to trigger Article 50 and they passed the EU Withdrawal Act of 2018. The time for whinging about how much one dislikes Brexit or wants to "soften" (dilute) the largest vote for anything in British history is over. It's time to move on.
Another extension and participation in the EU elections would be a national humiliation. It would show that Parliament is absolutely incapable of implementing the decision of the people that they gave the choice to. Or, more cynically, it shows that Britain is in fact a banana Republic where democracy is non-existent. It would cast Britain in a weak and humiliating light to the whole world. Britain's friends and admirers would shake their head in disbelief on how the country that had and has so much power, would rather be ruled by bureaucrats from a sluggish European continent than rule themselves and pioneer free trade across the globe.
We at the Daily Globe wanted a deal. We wanted a Canada Plus deal – the A+ model that would have tariff free trade with the EU. We even would have accepted May's horrible deal, warts and all, if the backstop was removed – as Parliament endorsed in the Brady amendment. We backed the Malthouse compromise. But Theresa May failed to embrace those exciting options.
There is only one viable option for any nation with an ounce of dignity and self-respect. Leave. Leave and trade with the EU on WTO terms. Both sides are ready. (See this great piece from Briefings for Brexit). Will there be some bumps and adjustments to the new trading order? Of course, though they are likely exaggerated. But no self-respecting nation can be so pathetic, especially one with record high employment and the world's 5th largest economy (and with the world's largest, America, ready to sign a free trade deal the day of Brexit), as to sacrifice their nation's sovereignty and democracy for fear of possible supply chain disruptions and minor tariffs.
It is time for Britain to quit this embarrassing parliamentary squabbling. Encouragingly, the Telegraph has reported the majority of the cabinet are now behind WTO Brexit, as are the majority of the Conservative MPs and Conservative party members. Now the Prime Minister must grow a spine. The UK must take the leap and grab their independence. It's time to go WTO.
Tags #Brexit Conservative Party European Union Free trade John Bercow Nick Boles No Deal Brexit Plan Parliament Theresa May WTO terms
About Ted Yarbrough
Ted is the co-founder and editor of the Daily Globe. He is a long-time blogger on British politics and has written a thesis on Thatcherism.
Previous Independence day cancelled or the death of the UK?
Next Theresa May is the Manchurian Candidate, murdering conservatism with her weapon of deceit
Nicola Sturgeon said that Scotland will be back soon in Europe. Where does she think …
John Sydenham
Yes, Canada + or even May's deal with a limited backstop were feasible.
It is now time to undo all the EU Nationalist rhetoric. It is not Brexit but Independence that we are fighting for, there are no Remainers, they are EU Nationalists, there are no Leavers but people who want to preserve and enhance our independence.
We have not "learnt" anything since the referendum, the terrors of "No Deal" are the same Project Fear that was opposed to leaving the EU in the referendum and Project Fear lost. Unfortunately the Project Fear supporters in Parliament and the media did not accept the Referendum. The EU Nationalists in Parliament have taken control.
No Second Referendum should occur but if it does the Scots and N.Irish must vote on independence first. It would be absurd to be dumped in the EU by any people who are leaving the UK.


The new record is really starting to take shape. A few weeks ago, we entered Bear Studios in Vancouver to track drums for the yet-to-be-named album. After several hours of shenanigans which included the usual philosophical debates about musical dynamics and copious amounts of high-fiving, we got down to the heart of the matter and finished a healthy portion of the live drums. As you can see for yourself, Byron did a 'bang-up' job and we are one step closer to releasing this album.
A big thank you to all of you that made it out to our Hollywood and Vancouver shows. We will be back playing live later this spring. And a note to our European fans, Byron will be touring with his other band (The Invasives) in support of The Hanson Brothers later this month. Be sure to check them out if you get the chance!


text:
Ghostnet: China's massive spynet uncovered
Posted on April 1, 2009 by Avi Tronek
Source: Canada's National Post as referred by Kovacs in our Techy News Pics thread.
It looks like the NSA(T&T) has some competition in the domestic spying game… and they may be targets themselves.
The Biggest Brother. While the UK is well on its way to being a security-surveillance police-state, and America's plans are apparently "on hold" for now, it would seem hard to imagine another nation attempting to lay claim to the "Big Brother" title. But China has been doing just that, according to a recently released report from researchers at the University of Toronto. A ten-month investigation has turned up some 1300 infected systems worldwide, including high-value government computers like those of the exiled Tibetan government and the Dali Lama. A full report can be downloaded from here.
Vulnerability detected between keyboard and chair. The way the infection was spread sounds typical: e-mails were sent with a trojan attached, the user unwittingly opens the attachment and infects his system, and the infected system uploads sensitive files to China and spreads even more e-mails where the user unwittingly opens the attachment…
What happens after the initial infection:
"The GhostNet system directs infected computers to download a Trojan (horse) known as ghOst RAT that allows attackers to gain complete, real-time control," the authors write in Tracking GhostNet: Investigating a Cyber Espionage Network.
"Our investigation reveals that GhostNet is capable of taking full control of infected computers, including searching and downloading specific files, and covertly operating attached devices, including microphones and web cameras."
The Dalai Lama expresses how he feels about China's regime
Other Ghosts on The Net? While the Ghostnet is concentrated more on Asia, there's a possibility that American systems have also been infected, though no reports about such infections have surfaced… yet.
Americans being spied on by foreign nations may not be new, but The Student Operated Press raises concerns about the US cybersecurity scheme, and even worse, that a post-9/11 paranoia-infected Department of Homeland (in)Security has its own Ghostnet:
Robert Paul Reyes (S.O.P.):
I hope that the CIA is taking serious precautions to safeguard our military and intelligence computer systems. I`m confident that they are running their own GhostNet operations to keep track of our many enemies throughout the world.
But what I fear the most is that the Department of Homeland Security has a GhostNet operation to keep track of Americans. Under the guise of fighting terrorism the Bush administration wiretapped the phones of Americans without obtaining a warrant from the courts.
What Ghostnet is about may be scary, but it's small fries compared the what Conficker may have to offer…
This post has been filed under HackZ AttackZ!, News as Cyberpunk by Mr. Roboto.
« BBC Builds a Botnet.
British researcher becomes infected with computer virus »
http://www.cyberpunkreview.com/hackz-attackz/ghostnet-chinas-massive-spynet-uncovered">


Sometimes I want to be a fashion blogger. Except with crafts. But maybe with fashion too.
Except my fashion pics would all be "Shirt: Fred Meyer's (do you have that? it's a west coast thing kind of like a target but less hip and with more groceries), Pants: Naked Ladies Party, Ring: stolen from mom, Sweater: shopping trip in the real world 3 years ago"
Hahahah, that's true Alaskan Fashion!
Gosh, maybe one day I will craft again but until then I will visit your posts and feel happy knowing SOMEONE is crafting. That felt looks so nice all piled up like that. Is it four years old now? Holy cow, I think it is. It's held up nicely! ps. love the filing cabinet but don't you tell cap'n. we have a brown one in our basement.


text:
Professional Basketball
GamesGo to the hoop
Cactus League College Basketball
Cactus League Professional Basketball
SeasonsGo way back
Available Seasons
Speciality Season Packages
2021-22 Season REAL-TIME
EnhanceAdd to your fun
SupportGet your answers
Ask A Question / Make A Comment
College Basketball FAQs
College Basketball Add-Ons - FAQs
Professional Basketball FAQs
Professional Basketball Add-Ons - FAQs
OrderGet in on the fun
AboutFind out about us
VERSION 2022 Pro Basketball & College Basketballl Get Info & Order Yours Right Now
You Can Play Version 2022 With Windows 8, Windows 10 or Windows 11
AutoDraft
AutoDraft is an add-on utility for Cactus League Professional Basketball that allows you to quickly, easily and powerfully conduct a player draft for any league (even AutoMerged ones). All you do is select the season and league you want to work with, indicate which teams should have players drafted automatically and which teams will be drafted manually and you're in business. The AutoDraft Module does all of the work by adding players to the rosters and maintaining the draft.
Cactus League Draft Expert System
Cactus has developed a sophisticated Expert System that is used when the computer decides which players to draft. Not only does this expert system draft the best players for the teams, but it balances the teams to maximize chemistry and effectiveness. You'll find it challenging to draft a competitive team when you're drafting against the Cactus Expert System.
We Tried It Out
Just for fun, we used AutoMerge to create a player pool of all players from the 1961-62, 1971-72 ABA and 2003-04 seasons to use with AutoDraft. We also quickly created a 4 division league, with 4 teams in each division, for a total of 16 teams. Remember, you can use any stock league or any league you've created with AutoDraft. We set the Draft Order to 'Random,' although there are other options: 'Actual' (using each team's actual records) and 'Manual' which allows you to determine the exact draft order. You can also tweak the draft order before you start, by dragging a team's name to a different location in the Draft Order window. We let the Cactus Expert System select players for all but one of the teams and we drafted manually for the other.
Here are details of the main AutoDraft screen (click on the thumbnails to display a larger image): Here is how the screen looks before a draft starts: While you can easily have the Expert System make all selections automatically with just one click of the mouse, let's just see what it comes up with for the first selection of the draft. Click "AutoSelect" and: To help you in making your selections you can sort the player pool any way you want and look at detailed statistics of every player. You can manually draft for any team you want. When it comes time for your pick, all you have to do is click on a player's name and drag him to the Team Roster window and he is drafted.
Download full-size screen shots of every thumbnail on this page plus many more
AutoDraft is an add-on for Cactus League Professional Basketball. Your must own the latest version of the game to use AutoEdit.
AutoPlayoff
AutoPlayoff is an add-on utility for Cactus League Professional Basketball that automatically sets up and plays the playoffs for your league. We've researched the playoff criteria for each season, so you can play with the actual playoff structure of your season.
Or, you can change the structure, matchups and configuration to run your playoffs your way! Plus, you can choose which games to play manually (so you can coach or watch) and which to play automatically!
Statistics and Records are maintained automatically, separately from your regular season stats and records. That is the way it is done in real-life and, of course, that is the way AutoPlayoff works.
Very Powerful - Very Detailed - Very Easy To Use
Use AutoPlayoff With actual leagues, leagues you create, Or AutoMerged leagues. Like all other Cactus League products, AutoPlayoff was designed with attention to detail (It even shows you the tie-breaker rules that were applied in each situation), yet is incredibly easy to use. You can quickly setup and play the actual playoffs for any Cactus League Professional Basketball Season that you own, using the same seedings, matchups and playoff configuration that was used in real-life.
Or, replay the season and let AutoPlayoff calculate the seedings and matchups from your replay. You can even use AutoPlayoff with leagues you create from scratch.
It's All In The Brackets
AutoPlayoff displays the brackets graphically so you can see the matchups and your playoff's progress. Even though each season's AutoPlayoff Configuration sets up the matchups the way they were in real-life, you can change them to anything you want. Don't want the #1 seed to play the #8 seed? You can change it. Use your imagination to set up your playoffs your way. The brackets update as each game is played, so you are always up-to-the-minute.
Take a look at all past seasons and speciality season packages
The Home-Court Advantage
Each season's AutoPlayoff Configuration includes the length of each round and the location of each game based upon the actual rules used in that season. But, you can change the length of any series and the location of each game with just a couple of mouse clicks. Want to make the 1st Round of the 1961-62 season a "best of 7" series? You can do it. Want to play the 2009-10 playoffs using the playoff configuration from 1955-56, when there were only 6 teams in the playoffs? You can do it. Or, play it the way it was played in real-life.
The Schedule Tab shows you the playoff schedule and is updated with the scores as each game is played. This tab also shows you which games are scheduled to be played manually and the current series status.
The Seedings
Each conference's seedings is displayed in this tab, including each team, its seed and won/loss record. Like all other aspects of AutoPlayoff, this is totally customizable. You want the Minnesota Timberwolves to be the #1 seed in the West? Just drag Minnesota, drop it the #1 line you are all set! Of course, Minnesota still won't be a good team (unless you make changes with AutoEdit), but they WILL be a #1 seed.
Ties Are Broken
The tie-breaker rules that were in effect for each season are used by AutoPlayoff when calculating the seedings and matchups for your league. For those of you that want to know the "whys" of tie-breaking, click the "Tie Breakers" tab to see the specific rules in the order they were applied.
Simpler Times
AutoPlayoff is designed for every season. Playoff structures and rules changed over the years. For example, in 1979-80, the top two teams in each conference received a "bye."
AutoPlayoff automatically defaults to the proper bracket and rules for each season. You can change anything, of course, but when you go to 1961-62, AutoPlayoff changes along with you and creates the actual playoff scenario for that season! Do you remember how many teams made the playoffs back then? AutoPlayoff does.
Want To Coach?
Just like the AutoSchedule Module, you can choose to play certain games manually or coach your favorite team all the way through the playoffs. Cactus League Professional Basketball AutoPlayoff is designed to enhance your professional basketball simulation experience with Cactus League Professional Basketball.
AutoPlayoff is an add-on for Cactus League Professional Basketball. Your must own the latest version of the game to use AutoPlayoff.
AutoPlayoff is not designed for Cactus League Professional Basketball Greatest Hits, Top 40 Teams of All-Time, Bottom 40 Teams of All-Time or 1946-47 thru 1949-50 seasons.
AutoSchedule Creator
We've taken something that is very complex and made it very simple.
Have You Ever Tried To Make A Schdule?
Making any kind of schedule is complicated. Anyone who has ever tried knows it. Now, you don't have to worry about it for your Cactus League Professional Basketball leagues.
Cactus League Professional Basketball AutoSchedule Creator is a very powerful, easy to use utility that automatically creates schedules for any balanced league in seconds! If you have a league with the same number of teams in each division, AutoSchedule Creator can create a schedule for it. It's that simple!
Very Powerful - Very Easy To Use
Start by selecting the season and the league (AutoSchedule Creator automatically scans your system for eligible leagues) and AutoSchedule Creator will suggest the Game Distribution Dynamics. To create a schedule using these suggestions, just click the mouse on the "Create Schedule" icon! Your schedule will be created in seconds and then you can, optionally, go directly to the AutoSchedule Module where you can play with it just like any other schedule.
Tinker If You Wish
If you want to customize your league's schedule, you can change the number of games that each team plays against teams in each division. You will see the implications of your changes right away because AutoSchedule Creator will recalculate the schedule immediately. This is a good way to learn about the complexities of schedule creation.
Now you don't have to manually create schedules for your leagues. Use AutoSchedule Creator to create your schedules almost instantly, so you can go to the hoop right away! We do the work. You have the fun.
Which Leagues Can AutoSchedule Creator Create A Schedule For?
AutoSchedule Creator can create a schedule for any league (even AutoMerged leagues) that has an equal number of teams in each division. It is that simple!
AutoSchedule Creator is an add-on for Cactus League Professional Basketball. Your must own the latest version of the game to use AutoSchedule Creator.
The Play-By-Play Editor
Now You Can Get Into "The Guts Of The Game"
There are lots of Personalized Moves already included in the game. You will enjoy them while you coach and play your games. But, we know that many of you want to dig in deeper. You want to be able to add your own Play-By-Play. Now you can!
You Can Tweak The Existing Moves Or Create Your Own
You can create a new move with just a few keystrokes. The Play-By-Play Editor walks you through it.
It's Simple - No Programming Required
So, you think adding play-by-play to a detailed Professional Basketball game requires programming skills? Nope. All that is required is a little imagination. You just decide what play-by-play you want to add to the game. Maybe it's a special move by a player. Maybe you want to include some more stats in the play-by-play. Then, think about how the move should be described and when the player does that move. Is it a special one that is only made when his team goes ahead late in the game? Or, one that he does anytime? Only at home? Only on a certain location on the court? You decide the exact situations when the move will be used and Cactus League Professional Basketball takes care of the rest. You will be playing a game, coaching your team, trying to win a game and Wow! Your Play-By-Play becomes part of the action! This adds a depth to a computer game never before thought possible.
Very Powerful, Very Easy To Use
Try Anything With No Risk - You Can Always Undo It
If you want to customize your own moves, or edit existing ones, it's simple. And don't worry about messing things up. It can't be done. At any time, you can undo all changes you have made in the current session. Or, you can revert to the original moves to get things back in order. This gives you the freedom to try anything out!
You Can Include Game & Season Statistics Into Your Play-By-Play
Game and season statistics are already included in the game's play-by-play. But, now you can add more game or season context-specific statistics. There are hundreds of stats available and you can include them all.
It's That Simple
Now you can personalize your Play-By-Play in nearly unlimited ways with the Cactus League Professional Basketball Play-By-Play Editor.
The Play-By-Play Editor is an add-on for Cactus League Professional Basketball. Your must own the latest version of the game to use The Play-By-Play Editor.
© Copyright 1989-2022 Cactus League Games Inc. All rights reserved.
Cactus League Professional Basketball For Windows, Cactus League Professional Basketball, Cactus League College Basketball For Windows, Cactus League College Basketball, CLPB, CLCB, AutoEdit, AutoGame Update, AutoManager, AutoMerge, AutoPlayoff, AutoRoster, AutoSchedule, AutoSchedule Creator, The Play-By-Play Editor, Cactus League Professional Basketball Real-Time, Cactus League Professional Basketball Access System, Cactus League College Basketball Tournament Real-Time, PLAY The Tournament BEFORE The Tournament, We Take Fun Seriously, We Do The Work You Have The Fun, and the Cactus logo are trademarks of Cactus League Games Inc. All Rights Reserved.
Cactus League Games Inc. • 4101 W Green Oaks Ste 305-537 • Arlington, TX 76016-4463 • 800-336-9444 • CactusLeagueGames.com • @realCactusGames


text:
Q: How can you double space a file in C? Then print to STDOUT. I need to read in a file, then print it out to STDOUT but double spaced. What I have so far is:
#include <fcntl.h>
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>

#define BUFSZ 1024

int main(int argc, char* argv[]){

int n, fdin;
char buf[BUFSZ];

if ((fdin=open(argv[1],O_RDONLY))<0){
  perror(argv[1]);
  exit(-1);
}
while(( n = read(fdin, buf, BUFSZ))>0){
 if(write(STDOUT_FILENO,buf,n) != n){
  fprintf(stderr, "Write Error\n");
  exit(-1);
 }
 printf("\n");
}
close(fdin);
return(0);
}

I'm new to C and don't know how I could implement the \n into the code, my printf("\n") is useless in trying to double space the entire file's contents. I think I have to add the \n into the read? But I'm not entirely sure if that's correct or how to do it.

A: read() does not stop reading when it encounters a new-line character so the algorithm in the posted code could easily miss writing a blank line as the read() could read more than one line.
A simpler approach would use fgets():
FILE* f = fopen(argv[1], "r");
if (f)
{
    char buf[BUFSZ];
    while (fgets(buf, BUFSZ, f))
    {
        printf("%s", buf);

        /* fgets() may not have read a full line if the
           length of the line was greater than BUFSZ,
           so check it did before double spacing. */
        if (strrchr(buf, '\n')) printf("\n");
    }
    fclose(f);
}

A: The open, close, read, and write functions are specific to Unix (actually POSIX). The C language standard provides a higher-level set of functions (fopen, fclose, and a number of input and output functions), and there's no good reason not to use them here. Any system that has the POSIX-specific functions will have the standard C functions; the reverse is not necessarily true.
I'm not sure I should give you the code for a full solution (is this homework?), but I'll give you a quick outline.
There's no need to read and write full lines. This problem is easily solved by reading and writing just single characters -- and C's I/O functions do implicit buffering, so that won't cause any significant performance problem.
A "line" is simply a sequence of characters terminated by a newline '\n' character. (Don't worry about different end-of-line representations, like the \r\n used by Windows; if you open the file in text mode, the C library will take care of translating to and from C's internal '\n' representation.)
Read a character at a time from the input file. For each character you read, write that same character to your standard output. In addition, if the input character is '\n', write a second '\n' to the standard output.
There are similar problems that would require reading an entire line at a time into memory (which means you need to worry about how long a line can be), but for this particular problem it's not necessary.

A: Use fgets puts, and putc, it's much simpler and buffered.
And fgets read lines,
int main(int argc, char* argv[]){
    FILE *fp;
    char *s;
    char buf[BUFSZ];
    if ((fp = fopen(argv[1],"r")) == NULL) {
        fprintf(stderr, "Error opening %s\n", argv[1] );
        exit(-1);
    }
    while((s = fgets(buf, sizeof buf, fp)) != NULL){
        puts(s);
        putchar('\n');
    }
    fclose(fp);
    return(0);
}

redpajama_set_name: RedPajamaStackExchange


Want us to contact you? Email us edgware@thehairforce.co.uk with your details, together with how and when you'd like us to contact you.
Monday – Sunday by appointment only.
Northern Line to Edgware tube station or Northern Line to Burnt Oak tube station according to the direction you are coming in. Alternatively there is the Overground train to Mill Hill Broadway.
From Edgware tube station take the 292 bus and get off at the Harvester restaurant, cross the road to Deans Lane. Alternatively the 305 bus and get off by John Keble Church on Deans Lane, then walk back towards the parade of shops which takes less than one minute. Walking from Edgware tube station takes approximately 19 minutes.
From Burnt Oak tube station take the 305 bus – you get on outside the station and it stops just before the parade of shops on Deans Lane. Walking from Burnt Oak tube station takes approximately 22 minutes.
From Mill Hill Broadway Overground station take the 221 or the 240 bus and get off opposite the Harvester Restaurant. You will need to walk back towards Deans Lane parade of shops which takes just a couple of minutes.
There is the Benso Cafe at 145 Deans Lane which serves a selection of hot and cold meals and snacks, or we have the Harvester restaurant at 128 Hale Lane which is a two minute walk away.
My background has been in customer services for the NHS for over 24 years. It was actually a call whilst at work one day that got me thinking about working for 'The Hairforce'. A Grandmother called in total despair about being constantly infected with head lice via her Grandchildren and even though her daughter had been treating them with all the usual over the counter products, nothing at all was helping. Also forefront in her mind was the fact that all these products most probably contained high levels of damaging agents which surely could not be any good for either herself or the children in the long run.
Whilst I was unable to help her I could totally understand her plight as my own 3 children had been plagued with head lice over the years and I myself was exasperated with never quite 'getting on top of things' and even reduced to tears at times!
My youngest daughter who has the thickest of hair once again became infested with lice and it was at this point that I contacted 'The Hairforce' and decided once and for all to get the problem sorted effectively without the use of chemicals. Well what can I say? I believed in the treatment so much that I decided to get involved! I am passionate about the service and more so of the results – they speak for themselves.
I am extremely proud to be a part of 'The Hairforce'!


text:
Israel's protests continue as thousands march against Netanyahu's handling of coronavirus
By Associated Press and Alessio Dell'Anna • last updated: 26/07/2020
Protesters hold signs during a protest against Israel's Prime Minister Benjamin Netanyahu in Tel Aviv, Israel, on July 25, 2020 - Copyright AP Photo/Oded Balilty
Thousands took to the streets in Israel on Saturday evening, with the main protest taking place in capital Jerusalem outside the official residence of prime minister Benjamin Netanyahu.
Police on Sunday said more than a dozen people were arrested.
The protests have been going on for the past few weeks, sparked by what critics see as a government failure to handle the coronavirus crisis after initially keeping the threat of the virus at bay.
Corruption charges against Netanyahu have further fueled the demonstrations.
"Bibi, go home," read one sign held by a protester. Another placard read "Everyone can see that the emperor has lost his clothes."
Hundreds of protesters also gathered outside Netanyahu's beach house in Caesarea, north-central Israel.
The prime minister told protesters on Thursday to avoid descending into "anarchy, violence and police attacks", and urged them to maintain the "dignity" of Israel by following health guidelines in the "war" against coronavirus, which saw over 60,000 cases and 457 deaths in the country.
"Together we will fight and win", he added.
Last week, police used water cannons to disperse crowds in Jerusalem.
Israel protests: Police use water cannons and arrest 55 at anti-Netanyahu demonstration
Israel: Large protest in Tel Aviv targets Netanyahu over COVID-19 economic relief
After what has been called a hasty and erratic reopening of the economy in May, infections shot up with the average number of new cases daily at 2,000.
The country's economy has been battered by virus restrictions and the unemployment rate has skyrocketed to nearly 20%.
Protesters say the government's offers of financial assistance have been nowhere near enough, though the government recently announced new aid measures.
The protests came in the shadow of Netanyahu's corruption trial which resumed this month. Hearings will start in January.
He is charged with fraud, breach of trust and accepting bribes in a series of scandals.
Video editor • Louise Miner
Israeli PM Benjamin Netanyahu begins corruption trial
Israel on cusp of fourth national election in two years after budget vote fails
Israeli PM kicks off national vaccination campaign with public jab


Stories were scarce today as the dog days of August are here. The S&P 500 is officially in "pullback" mode as the market declined for the second straight day, making it four down days out of the last five trading sessions.
For the day, the S&P 500 closed down -1.27% to 994, just off the low of the day at 992. The index was lead lower by Bank of America (BAC), JPMorgan (JPM), Wells Fargo (WFC) and other financials on fears that the sector may be overbought.
Today on the Buzz and Banter, Professor Jeff Cooper walked readers though his thoughts on the index.
"90 degrees down from our idealized 1007 projected high works out to 975 which coincides with a kiss of the rising 20 day moving average.
"The first pullback to the 20 day moving average typically offers a good risk to reward buy point--especially in the midst of an aggressively, persistent uptrend. I would suspect some bears would cover there and some bulls would buy there.
"However, if the near term trend has turned and the move off the July low was a cherry on top/ blow off sundae and the agenda of Mr. Market is for lower prices, then any move off the 20 day moving average should prove to be a test failure of the highs."
With regards to the pullback, going back now six sessions, the S&P 500 has been in a narrow range between 990 and 1009. Hardly a pullback, more of a consolidation phase. I believe that Coop is right, a move to 975 or even 980 could present interesting long side opportunities.
Phil Erlanger, from Erlanger research, spotted a bullish head and shoulders pattern, he told readers about it on the Buzz and Banter.
"Back in early July, there was much talk about a head and shoulders formation. The neckline was broken but then reversed to the upside. The breakaway gap then ensued. Therefore, this head and shoulders formation was a failure for the bears. Another head and shoulders formation has arisen and few are talking about it. This is a head and shoulder bottom. Like in July, a test of the head and shoulder bottom neckline would be useful. This level is 970. A hold would be bullish. The upside count would then be 1250.
"The months of September and October remain resistance but recent technical positives could get the S&P 500 to 1250. For more insights we would point you to our video from today."
I like it when two technicians come to the same conclusion on areas where to buy, it's a good sign. The problem is, the market is a good 15 to 20 points away from this entry and a major catalyst will be needed.
Tomorrow we'll get that catalyst when the FOMC concludes its 2-day meeting. All eyes will be on the Fed announcement at 2:15. On the Buzz and Banter, Lance Lewis said he wouldn't be surprised if the Fed increased its monetization facilities just like the BOE announcement last week. He went on to say, "It would be a big surprise to the market though, just as it was back in March when the program was first announced."
Big day tomorrow, have a great night!


text:
The Justin Upton trade: The Braves get their man, the Diamondbacks do better than expected
By Craig CalcaterraJan 24, 2013, 10:50 AM EST
Justin Upton was being dangled by the Diamondbacks forever, but he's finally out the door. It's a five-for-two deal:
Braves get: (OF) Justin Upton, (3B) Chris Johnson
Diamondbacks get: (3B) Martin Prado, (RHP) Randall Delgado, (SS) Nick Ahmed, (RHP) Zeke Spruill, and (1B) Brandon Drury.
For all the talk that the Diamondbacks' leverage was gone when Upton blocked the proposed trade to the Mariners, Kevin Towers did pretty well in this deal. In Prado he gets a solid starting third baseman who can play second and left field as well. They also get a guy who is coming off a year in which he hit .301/.359/.438 with 10 homers and 70 RBI. And it wasn't an outlier kind of year for him.
Delgado, who turns 23 in a couple of weeks, wasn't spectacular in his 18 appearances for the Braves last season (4-9, 4.37 ERA 76 Ks and 42 BB in 92.2 IP), but he remains a solid pitching prospect who has stuck out 9.6 batters per nine innings in six minor league seasons. Spruill is a year and a half older and hasn't hit the bigs yet. The Braves likely didn't have him penciled in to their rotation any time soon. He doesn't strike out a ton of guys but doesn't walk many either. Ahmed, a second rounder in 2011 out of the University of Connecticut, hasn't been above A-ball yet. He has promise, but is blocked by Andrelton Simmons. Drury is 20 and struggled in low-A ball last year.
No one piece of that package is spectacular, but there is a lot of upside in it, particularly with Delgado, and in Prado the Diamondbacks have upgraded their offense a great deal.
As for the Braves' side of things: they got their man. Upton may have struggled at times last season, but he has shown that he is capable of elite performance at a young age, being only a year removed from an age-23 season in which he hit .289/.369/.529 while playing strong defense. The biggest question will be how he does outside of the extremely friendly confines of Chase Field, where he boasts an OPS of .937. Compare that with his road OPS of .731.
In addition to Upton Atlanta gets Chris Johnson who may form the right-handed sign of a platoon at third base with Juan Francisco. At least if no one tells Fredi Gonzalez that Johnson has hit righties better than he's hit lefties in his career. For his part, Francisco is basically helpless against lefties. Not the best third base situation in the world for the Braves, but Prado was entering his walk year and it's doubtful that the budget conscious Braves were going to shell out big dollars for him when he became a free agent.
On balance, you have to invoke the "the team that got the best player won the trade" rule and say that the Braves won this trade, at least at the outset. With the addition of Justin Upton the Braves have a middle-of-the-order bat they've lacked since Chipper Jones was able to play a full season. A middle-of-the order bat that's under team control for three more years for $38 million, which isn't too bad if he maintains his recent level of performance and is a downright bargain if he breaks out like many think he might. And putting him next to B.J. Upton and Jason Heyward, the Braves have one of the best outfields in baseball.
Whether this puts the Braves in a position to truly challenge the Nationals is an open question. But they have improved themselves.


text:
Want To Meet Justin Bieber? Try Building a School
By Zachary Sniderman 2011-06-14 18:49:07 UTC
You want to meet Justin Bieber? Well, you're going to have to do some good first. The Canadian pop prince has teamed up with Pencils of Promise to launch Schools 4 All, a project to provide an education to some 75 million children across the world who don't have access to it.
The site has set up a platform — much like Crowdrise — where anyone can set up a personal fundraising page to build a school in a developing country. Pencils of Promise enlisted the help of StayClassy.org to build a custom platform. Users can customize their pages, add videos, create widgets and share updates through their social networks.
The goal was to reach a younger generation of digitally savvy users without making the process too complex — but having Justin Bieber as a prize doesn't hurt either. The page that raises the most money will get to choose which school gets a visit from Bieber and Adam Braun, Pencils of Promise's founder.
Having Bieber on board automatically meant a spike in participation from younger fans, the kind of people that can most relate to education issues. Schools 4 All is an example of kids helping kids and using celebrity in a smart way. Of course, anyone can start a fundraising page — parents, teachers, education enthusiasts, Bieber enthusiasts — but the demographic clearly skews young.
The homepage also does a great of tracking the overall progress of the project, which ends June 30. So far, Schools 4 All has raised more than $145,000, which will pay for about seven new schools to be built. A leaderboard shows which pages have raised the most money. And it isn't a vicious fight between 13-year-olds — Pencils of Promise is encouraging participation from families, and even entire schools.
What do you think? Did Pencils of Promise and Schools 4 All get it right? Let us know in the comments.
Topics: bieber, biebs, Non-Profits, education, Justin Bieber, non-profit, pencils of promise, schools, schools 4 all, Social Good, Social Media


Electric Mountain Bike Kit Conversion. Electric Mountain Bike Kit Conversion Meet Fat The Biktrix Juggernaut 15. Electric Mountain Bike Kit Conversion Aliexpress Com Buy 24V 250W DC Motor 8. Electric Mountain Bike Kit Conversion Mid Drive Motor Kits 13. Electric Mountain Bike Kit Conversion Americas 1 For Bikes And Kits Dillenger 19. Electric Mountain Bike Kit Conversion Archives UU MOTOR FORUM 2. Electric Mountain Bike Kit Conversion Folding Bicycles And Rear Wheel E Conversions LEED 16. Electric Mountain Bike Kit Conversion DH Whip O Rama 2012 Sea Otter Classic 1.
Electric Mountain Bike Kit Conversion Kits 18. Electric Mountain Bike Kit Conversion Comparison 17. Electric Mountain Bike Kit Conversion Kits Hub Motor Magic Pie Edge LiFePO4 Battery 0. Electric Mountain Bike Kit Conversion Turn Your Into A Solar What Can Be Hotter The 9. Electric Mountain Bike Kit Conversion Installing An E 4.


This entry was posted on Понедельник, Октябрь 28th, 2013 at 2:44 дпand is filed under Без рубрики. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.


Ever made the leap from everyday eating to leading a gluten-free life? Well, I am here to tell you that it is hard. Especially if you are a bread and dessert fan, such as my family. To be honest, I often resort back to my old ways and give in. After all we don't have dietary restrictions like some, I just know that it is a healthier way of life.
Now for those of you who must or even just wish to lead the gluten-free lifestyle, I am happy to report there is a mouthwatering option for those everyday bread style foods. The Pure Pantry offers a variety of healthy, delicious gluten-free baking mixes made with only the 100% natural and certified organic, whole grain ingredients. These products include baking mix, pancake mixes, cookie mixes and cake mixes.
The Pure Pantry sent Iowa Mom a Wholegrain Dark Chocolate Cake Mix to test in our kitchen. Let's just say I was a bit worried it would be better and lacking some of the consistency that everyday mixes have. I was proven wrong and then some.
Upon opening the bag, you could immediately smell the delicious chocolate scent. Mouthwatering really! Within the first few minutes of our test, I was already anxious for the end result and tasting.
The mix was a simple and the only additional ingredient some may not have on hand is vanilla. However for even the occasional baker, I bet you have keep this in some form on hand. It seemed a bit on the thin side but apparently this is completely normal as the cake came out perfectly after baking.
Look at that amazing dark color. Exactly what you would expect from a dark chocolate creation. The smell, OH MY! All full of full and perfectly cooked per the time on the bag!
The Wholegrain Dark Chocolate Cake Mix is made with sucanat and maple sugar, both natural unrefined sweeteners, and quinoa, sorghum, and brown rice – who would ever guess that a cake that tastes this good would also provide fiber, protein, and anti-oxidants!
All iced and ready to begin indulging in this fantastic treat. A few immediate things I notice about the Wholegrain Dark Chocolate Cake Mix from The Pure Pantry.
1. This is absolutely one of the moistest cakes I have ever tasted.
2. Dark chocolate does not mean bitter chocolate. This was beautifully sweetened. Pure perfection.
3. My family will devour this cake in one sitting. Boo for tomorrow's sneaky leftovers for mom!
The ultimate cake monster agrees. The Pure Pantry is a go for being a baking winner in our kitchen!
Elizabeth has really expanded her website, you need to check it out. It now include recipes, grocery shopping tips, traveling tips along with tips for eating in and out!
We are offering a great deal for Pure Pantry Products! You can go to The Pure Pantry and use the following discount code for 15% off your first order on their website. Enter coupon code: FALL2014 The code is entered at checkout and expires November 30! Enjoy this fall with fabulous mixes that are yummy and proven.
Elizabeth is giving away to one lucky reader a fabulous Gluten Free Baking Starter Kit pictured above! The Kit includes her cookbook, "Fresh From Elizabeth's Kitchen," 3 cookie mixes and her all purpose baking mix! Everything you need to get you started on a gluten-free diet!
Disclosure: All opinions seen in this publication are those of the writer and may differ from your own. Iowa-Mom.com may have receive product or payment as a condition of this publication. For questions or to have your product featured on Iowa Mom, email Teri at theiowamom@gmail.com.
I would first like to try the Dark Chocolate Cake Mix...it really looks delicious. Thank you!
I would especially like to make a gluten-free carrot cake (with lots of frosting)!
I'd love to make gluten free pancakes.


text:
<?php

defined('BASEPATH') OR exit('Nije dozvoljen direktan pristup');

$lang['profiler_database'] = 'BAZA';
$lang['profiler_controller_info'] = 'KLASA/METOD';
$lang['profiler_benchmarks'] = 'BENČMARK';
$lang['profiler_queries'] = 'UPITI';
$lang['profiler_get_data'] = 'GET DATA';
$lang['profiler_post_data'] = 'POST DATA';
$lang['profiler_uri_string'] = 'URI STRING';
$lang['profiler_memory_usage'] = 'UPOTREBA MEMORIJE';
$lang['profiler_config'] = 'CONFIG VREDNOSTI';
$lang['profiler_session_data'] = 'PODACI SESIJE';
$lang['profiler_headers'] = 'HTTP HEDEERI';
$lang['profiler_no_db'] = 'Drajver baze podataka nije trenutno učitan';
$lang['profiler_no_queries'] = 'Nema pokrenutih upita';
$lang['profiler_no_post'] = 'Ne postoje POST podaci';
$lang['profiler_no_get'] = 'Ne postoje GET podaci';
$lang['profiler_no_uri'] = 'Ne postoje URI podaci';
$lang['profiler_no_memory'] = 'Nedostupna Upotreba Memorije';
$lang['profiler_no_profiles'] = 'Nema Profil podataka - sve Profajler sekcije su onemogućene.';
$lang['profiler_section_hide'] = 'Sakrij';
$lang['profiler_section_show'] = 'Prikaži';
$lang['profiler_seconds'] = 'sekundi';

redpajama_set_name: RedPajamaGithub


text:
package hudson.remoting;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.Socket;
import java.net.URL;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.ThreadFactory;
import java.util.List;
import java.util.Collections;

/**
 * Slave agent engine that proactively connects to Hudson master.
 *
 * @author Kohsuke Kawaguchi
 */
public class Engine extends Thread {
    /**
     * Thread pool that sets {@link #CURRENT}.
     */
    private final ExecutorService executor = Executors.newCachedThreadPool(new ThreadFactory() {
        private final ThreadFactory defaultFactory = Executors.defaultThreadFactory();
        public Thread newThread(final Runnable r) {
            return defaultFactory.newThread(new Runnable() {
                public void run() {
                    CURRENT.set(Engine.this);
                    r.run();
                }
            });
        }
    });

    public final EngineListener listener;

    /**
     * To make Hudson more graceful against user error,
     * JNLP agent can try to connect to multiple possible Hudson URLs.
     * This field specifies those candidate URLs, such as
     * "http://foo.bar/hudson/".
     */
    private List<URL> candidateUrls;

    /**
     * URL that points to Hudson's tcp slage agent listener, like <tt>http://myhost/hudson/</tt>
     *
     *

     * This value is determined from {@link #candidateUrls} after a successful connection.
     * Note that this URL DOES NOT have "tcpSlaveAgentListener" in it.
     */
    private URL hudsonUrl;

    private final String secretKey;
    public final String slaveName;

    /**
     * See Main#tunnel in the jnlp-agent module for the details.
     */
    private String tunnel;

    private boolean noReconnect;

    public Engine(EngineListener listener, List<URL> hudsonUrls, String secretKey, String slaveName) {
        this.listener = listener;
        this.candidateUrls = hudsonUrls;
        this.secretKey = secretKey;
        this.slaveName = slaveName;
        if(candidateUrls.isEmpty())
            throw new IllegalArgumentException("No URLs given");
    }

    public URL getHudsonUrl() {
        return hudsonUrl;
    }

    public void setTunnel(String tunnel) {
        this.tunnel = tunnel;
    }

    public void setNoReconnect(boolean noReconnect) {
        this.noReconnect = noReconnect;
    }

    @Override
    public void run() {
        try {
            boolean first = true;
            while(true) {
                if(first) {
                    first = false;
                } else {
                    if(noReconnect)
                        return; // exit
                }

                listener.status("Locating server among " + candidateUrls);
                Throwable firstError=null;
                String port=null;

                for (URL url : candidateUrls) {
                    String s = url.toExternalForm();
                    if(!s.endsWith("/"))    s+='/';
                    URL salURL = new URL(s+"tcpSlaveAgentListener/");

                    // find out the TCP port
                    HttpURLConnection con = (HttpURLConnection)salURL.openConnection();
                    try {
                        con.connect();
                    } catch (IOException x) {
                        if (firstError == null) {
                            firstError = new IOException("Failed to connect to " + salURL + ": " + x.getMessage()).initCause(x);
                        }
                        continue;
                    }
                    port = con.getHeaderField("X-Hudson-JNLP-Port");
                    if(con.getResponseCode()!=200) {
                        if(firstError==null)
                            firstError = new Exception(salURL+" is invalid: "+con.getResponseCode()+" "+con.getResponseMessage());
                        continue;
                    }
                    if(port ==null) {
                        if(firstError==null)
                            firstError = new Exception(url+" is not Hudson");
                        continue;
                    }

                    // this URL works. From now on, only try this URL
                    hudsonUrl = url;
                    firstError = null;
                    candidateUrls = Collections.singletonList(hudsonUrl);
                    break;
                }

                if(firstError!=null) {
                    listener.error(firstError);
                    return;
                }

                Socket s = connect(port);

                listener.status("Handshaking");
                DataOutputStream dos = new DataOutputStream(s.getOutputStream());
                dos.writeUTF("Protocol:JNLP-connect");
                dos.writeUTF(secretKey);
                dos.writeUTF(slaveName);

                Channel channel = new Channel("channel", executor,
                        new BufferedInputStream(s.getInputStream()),
                        new BufferedOutputStream(s.getOutputStream()));
                listener.status("Connected");
                channel.join();
                listener.status("Terminated");
                listener.onDisconnect();

                if(noReconnect)
                    return; // exit
                // try to connect back to the server every 10 secs.
                waitForServerToBack();
            }
        } catch (Throwable e) {
            listener.error(e);
        }
    }

    /**
     * Connects to TCP slave port, with a few retries.
     */
    private Socket connect(String port) throws IOException, InterruptedException {
        String host = this.hudsonUrl.getHost();

        if(tunnel!=null) {
            String[] tokens = tunnel.split(":",3);
            if(tokens.length!=2)
                throw new IOException("Illegal tunneling parameter: "+tunnel);
            if(tokens[0].length()>0)    host = tokens[0];
            if(tokens[1].length()>0)    port = tokens[1];
        }

        String msg = "Connecting to " + host + ':' + port;
        listener.status(msg);
        int retry = 1;
        while(true) {
            try {
                return new Socket(host, Integer.parseInt(port));
            } catch (IOException e) {
                if(retry++>10)
                    throw e;
                Thread.sleep(1000*10);
                listener.status(msg+" (retrying:"+retry+")",e);
            }
        }
    }

    /**
     * Waits for the server to come back.
     */
    private void waitForServerToBack() throws InterruptedException {
        while(true) {
            Thread.sleep(1000*10);
            try {
                // Hudson top page might be read-protected. see http://www.nabble.com/more-lenient-retry-logic-in-Engine.waitForServerToBack-td24703172.html
                HttpURLConnection con = (HttpURLConnection)new URL(hudsonUrl,"tcpSlaveAgentListener/").openConnection();
                con.connect();
                if(con.getResponseCode()==200)
                    return;
            } catch (IOException e) {
                // retry
            }
        }
    }

    /**
     * When invoked from within remoted {@link Callable} (that is,
     * from the thread that carries out the remote requests),
     * this method returns the {@link Engine} in which the remote operations
     * run.
     */
    public static Engine current() {
        return CURRENT.get();
    }

    private static final ThreadLocal<Engine> CURRENT = new ThreadLocal<Engine>();
}