text:
Milepost 20.8 – Westbound Between Exit 13 and 25 County: Williams How it got its name
8 Superchargers - (24 Hour) up to 250kW 4 DC Fast Charging hookups - (24 Hour) Supports - CCS/SAE or CHAdeMO 50kW, 150kW and 350kW
The early settlers of Williams County, Ohio, who had survived the precarious journey through the vast Black Swamp which covered most of northwestern Ohio, found just west of the swamp is a low, level prairie in which the Indians cultivated the soil and raised corn for food. This pleasant spot, on the banks of the St. Joseph River, near the present site of Edgerton, they called "Indian Meadow," and the name has been preserved in the designation of the Indian MeadowService Plaza, which lies some miles northeast of the original Meadow.
The principal tribes which made their homes in this region and presumably shared in cultivating Indian Meadow were the Ottawa, Miami, Wyandot and Potawatomi Indians. Most of the region in which the indigenous people lived and hunted was a thick, swampy forest whose impenetrability chilled the homesteading ambitions of all but the hardiest settlers. Not until the forests had been cleared and the swamps had been drained was the cultivation of crops possible in most of this generally forbidding land. Through the ingenuity of the farmers of northwestern Ohio, who developed intricate and effective systems of drainage, the wilderness was transformed into an agricultural Eden.
When plans for building the Ohio Turnpike across the northwestern counties of Ohio were announced, many farmers feared at first that such an extensive project would disrupt the drainage systems on which their livelihood depends. These fears were overcome when, with the aid of federal, state and county extension and soil conservation experts, the Ohio Turnpike Commission formulated an agricultural drainage policy which provided engineering measures to preserve existing drainage systems and to permit their expansion in the years to follow.
Although Ohio is often spoken of as an industrial state, about 80 percent of its area, or 21 million acres, is in farmland, of which about 20 million acres are cultivated or pastured. In terms of cash income to farmers, Ohio ranks eighth among the states.
Corn, which was grown at Indian Meadow even before the arrival of the Europeans, is still one of the best-paying crops in Ohio, particularly in northwest Ohio. The summer traveler on the Ohio Turnpike passes between walls of growing corn for many miles. This area is indeed the eastern entrance to the great Corn Belt, which extends westward to Nebraska. In contrast to the primitive methods used at Indian Meadow, the planting, cultivation and harvesting of corn is now done largely by machinery. Ohio's annual corn production is over 200,000,000 bushels, most of which is fed to dairy cattle and hogs.
Unlike the Native American farmers of Indian Meadow, modern Ohio farmers have learned to conserve the soil by rotating corn, wheat and clover; or corn, oats, wheat and grass. Most of the wheat grown in Ohio is the "soft red winter" variety. Some if it goes into general purpose flour for home use, but the greater the part provides pastry flour for commercial bakeries.
Grass and legumes are the principal crops in rotated acreage. In northwestern Ohio, some of the hay produced is sold; in the rest of Ohio most of it is fed on the farm in which it is grown.
In Ohio soybeans are an important crop. The rapid expansion of soybean acreage has been made possible by the combine harvester. This is also an oats-growing state, with Fulton County, through which the Ohio Turnpike passes to the east of the Indian Meadow Service Plaza, ranking among the state's ten leading oats-growing counties.
Other crops which contribute in good measure to the Ohio farmer's income are vegetables, fruit, greenhouse and nursery products, sugar beets and tobacco.
As sources of farm income in Ohio, dairying ranks first and hog-raising second. Poultry and beef cattle also provide considerable revenue. The nearness of large markets and the existence of a first class system of primary and farm-to-market highways have enabled the Ohio farmer to expand his markets and hence his acreage to the point where Ohio farms now produce nearly a billion dollars worth of crops, including fruit, a year. The Ohio Turnpike is now furnishing the farmer with a means of cutting still more time in transportation from farm to market. Farming in Ohio has made gigantic strides since the days of Indian Meadow.


text:
Monica from Tommy Boy Records wanted me to check out the Fun House. "Arthur Baker and John Robie are hanging out there all the time," she said. After writing the first story on hip hop in the Village Voice, Monica felt I should turn my attention to the way break dancing was spreading out of the South Bronx and into the other boroughs.
The first night I arrived at the club, Randy, the lighting guy, offered to introduce me to Madonna right off the bat. At the time, she was the girl friend of the house deejay, Jellybean, and already had a reputation as a voluptuous siren. I probably said, "naw, that's okay."
See, I was just finishing my book on the origins of hip hop, and I'd already heard the electro-bubblegum sound Madonna was working on. In the early stages of any new cultural wave, its often very hard to distinguish the truly talented, from the talentless opportunists (who always rush in). Aside from the bubblegum melody, Madonna's voice didn't sound all that impressive to me. But, then, I'd never met Madonna in person—or seen her perform.
That night Madonna came up behind me and started talking to me like we were old friends. I was wearing a Levi vest that East Village artist Ellen Berkenblit had customized with one of her iconic punk ponys in white marker on leather. Ellen was a very obscure artist, but one Rene Ricard was currently gushing over. Rene was already famous for "launching" Julian Schnabel and Jean-Michel Basquiat.
"Ellen, right?" she said.
"Uh, yeah." I mumbled, keeping my full attention elsewhere.
Madonna wasn't one to stick around where she wasn't wanted. (That night she would tell someone I was probably gay.)
Actually, I'd already decided to base my Fun House article around a girl named Alyse, and the Juice Crew. I had this feeling Jellybean wanted a story mostly about him, and Madonna. Maybe I was channeling the responsibilities of power regarding my status as a Village Voice cover-story writer. I'm sure I came off as arrogant at best.
Later that week, however, I got to see Madonna perform on stage at the Fun House with her backup dancers. She was amazing and captured my full respect immediately. She obviously had a gift for choreography and oozed with youthful sex appeal. I knew right then she was going to be a star. I suddenly wished I could turn that unfortunate first encounter around, and wondered if that opportunity would ever present itself.
Unfortunately, any plans along those lines were dashed forever the day my Fun House article appeared on the cover of the Voice, because the police raided the club early that evening. It just happened to be Jellybean's birthday, and Madonna had a huge party and special command performance planned, so I'd become very unpopular in some circles. A couple of rumors came down the grapevine: "Madonna hates you" and "The Fun House is going to have you knee-capped." Apparently, the club didn't like the references to illegal substances included in my story. Some felt those comments were the reason the police felt compelled to make the raid in the first place.
"Steve Hager's story on the Fun House is still remembered as a classic," Baird Jones would write later in his gossip column. "Although when the expose got that illegal club busted, Steve had to lie very, very low for a few months."
I did run into Madonna a few weeks later in the basement dressing room at Danceteria. She looked through me like I didn't exist, while effusively welcoming my sidekick, German photographer Andre Grossmann. She even let Andre follow her home and take pictures of her in her own environment, until she had to throw him out because he wouldn't stop taking pictures. At the time, Andre probably had no clue he was going to make a lot of money off those photographs many years later.
Excerpted from Hip Hop: The Complete Archives.

subset: commoncrawl


text:
M3-1018 Seated Leg Curl
The M3 series adopts modern aesthetics to streamline the main frame, and the top shelf is made of aluminum alloy die-casting mold, which is convenient for users to place kettles, towels, mobile phones and other items.Built-in double pulley design, the use of ergonomic principles, the overall appearance design is concise and generous, fully enclosed cover, carbon fiber imitation processing, highlight the grade, the whole framework is made of 50 * 100 * 3 mm rectangular tube, the painting process is covered with zinc spray at the bottom, middle layer spray metal, finally the transparent powder is sprayed on the surface of frame,increase the texture of machine.M3 line embodies the Realleader of the perfect combination of mechanics and aesthetics.
Innovative R&D
After more than ten years develop, the company now has 25 senior engineers and 65 professional technicians, and has moved into a new factory of 20,000 square meters in June 2007. The company has not only established long-term technical cooperation relationships with well-known sports experts in the United States and the Netherlands, but also has a group of very professional fitness consultants.
Marketing Network
Through concerted efforts of all the staff, Realleader has distributed its products to more than 100 countries and regions, including Europe, America, Oceania, Asia, Africa and the Middle East, and become an important fitness equipment manufacturer perfectly integrating appearance and performance.
Realleader USA
We are a professional fitness equipment manufacturer, if you want to know more about our products, please feel free to contact us.
Copyright © 2020 Realleader . All rights reserved. 鲁ICP备09039193号 Power by 300.cn


text:
EBRforum.com is an an independent enthusiast forum that is in no way owned, affiliated with, controlled or endorsed by Erik Buell Racing LLC.
Parts and accessories only
Use this control to limit the display of threads to those newer than the specified time frame.
Allows you to choose the data by which the thread list will be sorted.
Order threads in...
Note: when sorting by date, 'descending order' will show the newest results first.
Forum Rules


text:
Star Defense
- Publisher: ngmoco, LLC
- Genre: Entertainment
- Released: 8 Jun, 2009
- Size: 58.8 MB
- Price: $0.99
- App Store Info
Voted "Best Tower Defense Game"- Slide to Play, perfect 4 out of 4
"Star Defense deserves your download dollars."
- IGN Editor's Choice Award, 9 out of 10
"Star-Studded... Gorgeous visuals and equally fine-tuned play"
- Pocket Gamer Gold Award, 9 out of 10
What's new in 1.3:
- Players of Star Defense and Star Defense Prelude can now directly challenge each other and compete in online leaderboards on Nova Cratos
-Compatible with OS 2.2.1 and OS 3.0
Star Defense
...The Universe is in Your Hands
Created exclusively for the iPhone & iPod Touch.
Use multitouch to spin and zoom entire worlds in Star Defense, the highly-anticipated strategy title created exclusively for the iPhone and iPod touch. Maximize your recon and plan carefully – each planet has unique pathways to protect, weapons to deploy, and enemies to overcome.
Survival depends on your ability to respond to the S'rath invaders in real time and build a mixture of towers that counteract all known alien units and resistances.
Once you've mastered taking on the S'rath, put your skills to the test in Challenge Mode and compete against your friends over Twitter, Facebook, or email.
New 3.0 features allow you to send challenges directly to your friends via the Plus+ network.
• POWERFUL ARSENAL – Build your defenses from 5 classes of towers, for a grand total of 15 different weapons, each with their own unique attributes, firing ranges and reload frequencies.
• MULTIPLE MODES OF GAMEPLAY – Defeat the S'rath in Campaign Mode or compete against your friends in Challenge Mode.
• ASYNCHRONOUS MULTIPLAYER ACTION – Battle your friends over the Plus+ network or via Twitter, Facebook, mail. Check out scores posted by other Star Defense players and take on their challenges by using the in-game Twitter challenge log or by searching for #StarDefense on Twitter.
• EXPLORE AND SECURE THE UNIVERSE – Defend 7 breathtaking worlds, each with its own distinct path layout, enemy types and immunities, and weapon choices.
• MULTIPLE LEVELS OF DIFFICULTY – Choose from Easy, Normal, or Hard difficulty settings for the challenge level that is right for you.
• EARN MEDALS AND COMMENDATIONS – Collect over 20 Medals and more than 30 Commendations by accomplishing specific feats on the field. Earn points in the Plus+ network for every achievement unlocked.
• UNLIMITED REPLAYABILITY – Go for the ultimate survival record and pit your skills against an infinite number of S'rath invaders.
• BREATHTAKING 3D GRAPHICS – Stunning graphics and 3D worlds – this is tower defense like you've never seen it before!
• PLUS+ ENABLED - Add friends, access online leaderboards, earn gamerpoints and Direct Challenge other Plus+ friends
What's New in Version 1.3.1
- Players of Star Defense and Star Defense Prelude can now directly challenge each other and compete in online leaderboards on Nova Cratos-Miscellaneous Bug Fixes
-Compatible with OS 2.2.1 and OS 3.0


text:
YES! Our company provides all of its tour members with a FREE professionally prepared Fiancée Visa kit.
The kit, authored by an immigration attorney, contains all the forms and guidance necessary to complete the process yourself.
YES! Only our company has fully staffed offices year round, in all the cities in which we conduct tours.
There are many advantages to this, including better screening of the women you will be meeting, superior support during your stay, and support if you wish to return to the city while there is no tour in progress.
Do not travel with ANY Tour Company unless they have an office in that city.
YES! All of our tours last 7 to 14 days in duration but may be extended up to 45 days.
The more time spent in one city the better. It's very difficult to accomplish your goals in just a few days. You will find some of our tours to be 10 days, but easily convertible to 14 or more since we do maintain a fully staffed office on a year-round basis.
YES! OUR COMPANY offers the BEST Refund POLICY in the INDUSTRY,
Your $475.00 initial non-refundable deposit includes $240.00 in services and products. The deposit is also transferable to any other tour of your choice should you be forced to cancel. Cancellation 30 days or less prior to departure will incur a nominal cancellation fee of $750.00. Compare that to any other tour company and you will agree that our refund policy is the best in the industry!
Other Tour companies 30-day or less refund policies may result in a client forfeiting between $1,400 and $4,900, depending on the tour and date.
YES! We conduct more group tours per year to St. Petersburg, Russia and Kiev, Ukraine than any other tour company in the world. WE HAVE NEVER CANCELED A TOUR AND WE NEVER WILL!
We have been in operation since 1995, and are the leader in the International Introduction industry. We have conducted hundreds of both personal and group tours since 1995. We own and operate four offices around the world, with over 30 full time employees. The Washington Post and The Sacramento Bee have accompanied our tours, (with our clients' consent of course!). You may also have seen us on NBC, CBS, ABC, FOX, A&E, BBC and various TV syndicated shows such as INSIDE EDITION, MAURY POVICH, & THE X-SHOW. We were also featured in Time, Maxim, and Penthouse magazines.
YES! We would be more than happy to put you in touch with as many previous tour clients as you like.
Thousands of clients have experienced our Singles Tours and we worked very hard to ensure that each client was extremely pleased with the experience. Many tour members welcome the opportunity to share their experiences with you.
ABSOLUTELY! We hold all information concerning our clients in the strictest of confidence.
We never divulge any information, or agree to any interviews with the media, without the client's prior permission.
YES! Your tour will always be escorted by at least one group leader, normally a married American owner and his bride, who will also remain with the group for the entire duration of the tour.
THE BEST! We attend to all the details, so the only thing you have to concern yourself with is finding the right woman!
Because we have fully staffed offices in the cities where we conduct tours, the customer service you will receive is second to none. We have 1000s of full color, hard copy profiles of women interested in meeting you. You are welcome to browse those books as often as you like during your stay. Our bilingual staff will assist you in meeting the women you are interested in, either by arranging individual meetings or by inviting them to the Socials.
Yes. OUR COMPANY encourages you to invite as many women as you wish to meet, prior to departing for your tour.
You may choose the women you would like to invite from the catalog or from the thousands of profiles featured on our Internet site. You may also invite ANY woman from any service simply by providing us with name, address and/or phone number.
25 to 40 clients make an average tour group. Too many men in the group and you will feel just like another number, with little, if any, customer service, and more competition for attractive women than you may have bargained for
Too few men and you may not have an opportunity to meet as many women as you would like.
OUR COMPANY strives to keep the perfect balance.
That is why we offer more trips per year to St. Petersburg, Russia and Kiev, Ukraine than any other company.
Newest, beautiful, single women now added for week of Wednesday, 24 July, 2024 - Tuesday, 30 July, 2024
You have to meet the women to marry them! What other international dating site offers you numerous opportunities to do that?


text:
Today, we have the series reveal of Carrie Quest's new series, SNOW-CROSSED LOVERS. Check out all three gorgeous covers and about the books!
Check out an Exclusive Excerpt from the free novella BAILING OUT:
If the rooms upstairs are four star, this place is a negative seven.
Negative eight if any rats show up, which is a distinct possibility.
Examining every inch of it takes me about thirty seconds, and after that there's nothing to look at except her. I start at her feet, snug in those big furry boots, which is lucky since the temperature in here is dropping fast. Her black stockings and short black skirt don't look nearly as cozy, and are a far cry from the jeans she used to favor, but I guess a lot has changed for both of us. She's wrapped up in a black wool coat, the belt cinched tight around her waist, emphasizing the gentle curve of her hips.
In another life I would grab the ends of that belt and pull her toward me before unwrapping her like a shiny present under the tree on Christmas morning. Instead, I jam my hands in my pockets and make myself meet her eyes. She's checking me out as well, lips flashing up in a quick smile when she sees I'm wearing the Red Sox hat she gave me, and she flushes when I catch her looking. The deep pink starts in the apples of her cheeks and spreads down to disappear under the collar of her coat, but she keeps her gaze steady.
"I know it wasn't your idea," she whispers.
I tilt my head forward to hear because she's practically mouthing the words, like she's afraid someone is listening.
"I figured that out by the time I got back to my room," she continues.
"Then why didn't you pick up your phone?" I keep my voice as quiet as hers, and she shuffles two tiny steps toward me, then stops and plants her feet, like she's determined to go no farther. We stare at each other across the room. Close enough to touch hands if we stretched our fingers forward, but oh so far away.
I force myself to keep standing straight as the memories hit me. Curled up behind Belle in that huge-ass bed in the Moscow hotel room, waking up hard and happy with the soft curve of her ass pressed back against my dick, pushing that glorious hair to the side and trailing kisses down the back of her neck until she was moaning and wiggling against me… It was our first night together and the first and only time I ever woke up with another person in my bed.
The World Skating Championships were supposed to be held in Japan that year, but there was an earthquake ten days before the event was scheduled to start so it was postponed a month and moved to Moscow, which meant I could come watch Belle compete. She took gold, reclaiming her place in the top spot after missing the Vancouver Olympics due to an injury. I convinced her to take a week off and go to the Ile de Joie with me afterwards, seven days of wandering the twisty cobbled streets where my mom grew up and seven nights of Belle in my bed. I'd just won my first major competition and I was taking a vacation with my girl. Life was perfect.
But on our first morning her phone rang.
My heart starts beating faster at the memory and my stomach twists, remembering the way I ran to the toilet and threw up after she stormed out of the room.
"Don't answer," I'd murmured, smiling at her moan as I slid a hand up the smooth skin of her stomach to cup the warm weight of her breast.
"It's not important," I told her as my fingers teased her nipple and it hardened to a tight bud, ready for my tongue.
"Stay with me," I'd begged her as she pulled away a moment later, just enough to reach for her phone. Her other hand snaked back to stroke my dick, and it felt so good that I closed my eyes, lost in the dream of waking up with the only woman I'd ever loved.
Then she went stiff in my arms and screamed, and the dream turned into a nightmare.
Title: Bailing Out
Series: A Snow-Crossed Lovers Novella
Release Date: January 13th
About Bailing Out:
Gabriel Power came to Sochi with two goals: win a medal and track down his ex-girlfriend so he can finally explain the truth about the scandal that came between them. Once that's done, he's going to disappear. Snowboarding's bad boy is tired of the phony photo ops set up by his media mogul father. Getting hounded by reporters and pretending to date supermodels while running errands for Power News cost him the only girl he's ever loved, and now it's time to walk away.
Quitting his father will be easy. Bailing on snowboarding will be slightly harder. Getting Belle to forgive him may be impossible, but he has to try.
Isabelle Garland's Olympic dream died the night a drunk driver plowed into her car and crushed her leg. Sochi was supposed to be her moment of glory, but instead she's limping around the Village trying to dodge the snowboarder who broke her heart and avoid the interviews her pushy sister-slash-manager insists are vital for building her brand. Belle doesn't want a brand, she wants a life. Preferably one far away from the rude reporters who keep trying to get America's Skating Sweetheart to cry on camera by asking how it feels when your entire life is snatched away in an instant.
(Spoiler: it feels like s***. Also, she's more snark than sweet these days.)
When she runs into Gabe in the basement of her hotel, Belle's first instinct is to flee. Too bad they're trapped in a freezing storage room together with no way out and only their chemistry to keep them warm…
Amazon | Kobo | iTunes | Nook
Title: Dropping In
Series: A Snow-Crossed Lovers Novel
Release Date: February 8th
About Dropping In:
Natalie Berensen has one short summer to ace her writing class and convince her parents she's not a hopeless screw-up. No more changing her major once a month, taking time off to travel, or random friends-with-benefits. She doesn't have time for distractions or hook-ups, not even if her longtime crush is in town for the summer and living in her basement. Who cares if he's a snowboarding god with six pack abs and a hashtag devoted to his apparently magical penis? She's not interested.
Until she is.
Ben Easton's focus and self-discipline is legendary. He's built a career as a professional snowboarder by training harder than anyone else on the mountain and steering clear of anything that doesn't take him one step closer to his goal: Olympic gold. Then his best friend crashes in the half-pipe and Ben drops everything to take care of him. No more training. No more competitions. No more snowboarding. It's over.
He's back in Boulder to help with Adam's rehab, not fool around with his little sister's best friend, no matter how much he loves her laugh or the way her ass looks when she walks up the stairs. There's no way in hell he's going anywhere near Natalie.
Until he does.
Contains: a grumpy guard cat with a taste for blood, discussions of Ents as phallic symbols, and plenty of sexy times.
Amazon | Kobo | iTunes | Nook
Title: Wiping Out
Series: A Snow-Crossed Lovers Novel
Release Date: March 8th
About Wiping Out:
Piper Easton is a fixer. As a teenager she took over running the house when her mom got sick, and when her snowboarder brother was injured, she found the top knee guru in town and finagled a same-day appointment. She's got an exclusive internship lined up in Europe and she'll be leaving as soon as she watches her brother Ben win a gold medal. She just has to clean up one last mess: the way her stupid heart jumps whenever her ex-boyfriend appears. She and Adam are friends now, that's it. That's all they can ever be.
But maybe a few benefits aren't out of the question. Just until their trip to the Olympics finishes and they both go their separate ways. Surely the problem will be fixed by then.
Adam Westlake had two true loves: snowboarding and Piper Easton. He lost them both and now he's broken. The scars from where they cut his skull open are no longer visible, but the traumatic brain injury means it isn't safe for him to ride again and he hasn't spoken to Piper in eighteen months. Not since he got out of the hospital and fled Colorado, terrified he wouldn't be able to resist strapping on his board when the snow started falling. He's been chasing summer around the world ever since, until a lucrative offer to report on the Olympics brings him home to face all the temptations he left behind.
He might be able to summon the willpower to stay off the mountain, but Piper?
She's irresistible.
Contains: sex as an Olympic sport, dirty dancing while wearing eye goggles, ninety-nine penis balloons, and a blowjob rudely interrupted by a devil in feline form.
Amazon | Kobo | iTunes | Nook
About the Author:
Carrie grew up in Vermont, spent her college years in beautiful Boulder, Colorado, and now lives in New Zealand with her husband, two smallish children, and a gaggle of very badly behaved animals. She writes love stories that will make you laugh and reads enough romance to swoon on the regular.
Twitter | Instagram | Pinterest | Facebook
Enter Carrie's Giveaway:


text:
From the ALA Washington Office District Dispatch Blog:
The last month or so has seen a flurry of anti-piracy, online infringing, copyright-related bills. The latest newcomer is the Online Protection and Enforcement of Digital Trade Act or OPEN Act (S. 2029). Introduced on December 17, 2011 by Sen. Wyden (D-OR), along with Senators Moran (R-KS) and Cantwell (D-WA), the OPEN Act is being heralded as a more palatable alternative to existing anti-piracy bills — The Preventing Real Online Threats to Economic Creativity and Theft of Intellectual Property Act of 2011 or PIPA (S. 968), and The Stop Online Piracy Act or SOPA (H.R. 3261).
All three bills take aim at any website beyond U.S. borders that distribute counterfeit or copyright infringing products. To capture how all three bills compare and contrast, I've constructed the PIPA, SOPA and OPEN Act Quick Reference Guide (pdf). Not meant to be comprehensive (it would be pages and pages), nor too legalese (I'm a librarian, not a lawyer — although I did consult our legal consultant), the chart helps depict the nuanced and not-so-nuanced differences among the bills.
What you'll see (hopefully at a glance), is unlike PIPA or SOPA, the OPEN Act focuses solely on curbing online infringement by cutting off websites' payment processing and ad networks. In contrast, PIPA and SOPA go further in that they also incentivize internet companies to cut off access to websites. The tactics the latter two bills employ have a potential chilling effect on 1st Amendment free speech rights and intellectual freedom, as well as weaken cyber security, and threaten privacy.
Also, the guide captures the status of the bills as of today, January 10. It is worth noting that the bills are in the midst of the legislative process — the U.S. House Judiciary committee will resume markup of SOPA on January 17th and the U.S. Senate has scheduled a cloture vote on PIPA for January 24th. In addition, House Committee on Oversight and Government Reform Chairman Rep. Issa (R-Calif.) announced a hearing has been scheduled for January 18th on the potential impact of Domain Name Service (DNS) and search engine blocking.
The ALA will continue to voice strong opposition to PIPA and SOPA, while further analysis of the OPEN Act is needed.
Corey Williams
Associate Director, Office of Government Relations
American Library Association


text:
Sunday, March 16, 2008
Light Pre-Pass Renderer
The idea is to fill up a Z buffer first and also store normals in a render target. This is like a G-Buffer with normals and Z values ... so compared to a deferred renderer there is no diffuse color, specular color, material index or position data stored in this stage.
Next the light buffer is filled up with light properties. So the idea is to differ between light and material properties. If you look at a simplified light equation for one point light it looks like this:
Color = Ambient + Shadow * Att * (N.L * DiffColor * DiffIntensity * LightColor + R.V^n * SpecColor * SpecIntensity * LightColor)
The light properties are:
- LightColor
- R.V^n
- Attenuation
So what you can do is instead of rendering a whole lighting equation for each light into a render target, you render into a 8:8:8:8 render target only the light properties. You have four channels so you can render:
LightColor.r * N.L * Att
LightColor.g * N.L * Att
LightColor.b * N.L * Att
R.V^n * N.L * Att
That means in this setup there is no dedicated specular color ... which is on purpose (you can extend it easily).
Here is the source code what I store in the light buffer.
half4 ps_main( PS_INPUT Input ) : COLOR
half4 G_Buffer = tex2D( G_Buffer, Input.texCoord );
// Compute pixel position
half Depth = UnpackFloat16( G_Buffer.zw );
float3 PixelPos = normalize(Input.EyeScreenRay.xyz) * Depth;
// Compute normal
half3 Normal;
Normal.xy = G_Buffer.xy*2-1;
Normal.z = -sqrt(1-dot(Normal.xy,Normal.xy));
// Computes light attenuation and direction
float3 LightDir = (Input.LightPos - PixelPos)*InvSqrLightRange;
half Attenuation = saturate(1-dot(LightDir / LightAttenuation_0, LightDir / LightAttenuation_0));
LightDir = normalize(LightDir);
// R.V == Phong
float specular = pow(saturate(dot(reflect(normalize(-float3(0.0, 1.0, 0.0)), Normal), LightDir)), SpecularPower_0);
float NL = dot(LightDir, Normal)*Attenuation;
return float4(DiffuseLightColor_0.x*NL, DiffuseLightColor_0.y*NL, DiffuseLightColor_0.z*NL, specular * NL);
After all lights are alpha-blended into the light buffer, you switch to forward rendering and reconstruct the lighting equation. In its simplest form this might look like this
float4 ps_main( PS_INPUT Input ) : COLOR0
float4 Light = tex2D( Light_Buffer, Input.texCoord );
float3 NLATTColor = float3(Light.x, Light.y, Light.z);
float3 Lighting = NLATTColor + Light.www;
return float4(Lighting, 1.0f);
This is a direct competitor to the light indexed renderer idea described by Damian Trebilco at Paper .
I have a small example program that compares this approach to a deferred renderer but I have not compared it to Damian's approach. I believe his approach might be more flexible regarding a material system than mine but the Light Pre-Pass renderer does not need to do the indexing. It should even run on a seven year old ATI RADEON 8500 because you only have to do a Z pre-pass and store the normals upfront.
The following screenshot shows four point-lights. There is no restriction in the number of light sources:
The following screenshots shows the same scene running with a deferred renderer. There should not be any visual differences to the Light Pre-Pass Renderer:
The design here is very flexible and scalable. So I expect people to start from here and end up with quite different results. One of the challenges with this approach is to setup a good material system. You can store different values in the light buffer or use the values above and construct interesting materials. For example a per-object specular highlight would be done by taking the value stored in the alpha channel and apply a power function to it or you store the power value in a different channel.
Obviously my intial approach is only scratching the surface of the possibilities.
P.S: to implement a material system for this you can do two things: you can handle it like in a deferred renderer by storing a material id with the normal map ... maybe in the alpha channel, or you can reconstruct the diffuse and specular term in the forward rendering pass. The only thing you have to store to do this is N.L * Att in a separate channel. This way you can get back R.V^n by using the specular channel and dividing it by N.L * Att. So what you do is:
(R.V^n * N.L * Att) / (N.L * Att)
Those are actually values that represent all light sources.
Here is a link to the slides of my UCSD Renderer Design presentation. They provide more detail.
44 comments:
- Arseny Kapoulkine said...
Your screenshots/equations miss an albedo term; however, it's essential - introducing it into equation means either extending "G-buffer" or rendering into light buffer with a separate geometry pass, which kinda defeats the purpose (?). Same thing goes for i.e. specular texture.
Also I don't see how you can add separate specular COLOR easily - you will either require MRT or decrease the quality of lighting (of course if you have access to albedo in light shader, you can do it by outputting final color in light pass). Adding intensity is trivial though - again, unless it's texture-controlled. - March 17, 2008 at 12:35 AM
- Unknown said...
Arseny Kapoulkine : I don't think you understand what he is doing - rendering consists of 3 passes:
1) Render depth + normals
2) Render lights into light texture
3) Render main geometry (with full texturing etc) accessing the light texture.
So yes there is two passes over the scene geometry.
When "Light Pre-Pass Renderer" was mentioned, this is kinda what I thought it would turn out to be. I almost went down this route (see top of page 4) but doing a normal pre-pass was not possible with what I was using it for.
Good work - I like it a lot. I may even see if I can update my demo to compare performance. (I suspect your method will be faster and have less artifacts as LIDR suffers when too many lights overlap) - March 17, 2008 at 2:03 AM
- Wolfgang Engel said...
Hey Damian,
thanks a lot! This would be awesome to see it in your demo.
- Wolfgang - March 17, 2008 at 10:19 AM
- Michaël Gallego said...
This is quite interesting, I'll try it when I have my new computer. Just, there is a typo here : float3 Lighting = NLATTColor + Light.www;
I think it's Light.w instead of Light.www :)
In effect, it seems more scalable, as I only save depth + normals into only two textures (one texture for normals, and one renderbuffer, as I don't know if I can put the depth into the first texture). It's pretty less than normal deferred rendering, and if I understand well, I apply then a normal forward rendering...
Unfortunately, I think it can't be used in my case, but maybe I'm wrong and you can help me :).
I'm using a simple instant radiosity method. Using deferred rendering, the algorithm is :
1) Render the scene from the camera (G-Buffer : positions, normals, colors)
2) Render the scene from the spot light (Save into textures : positions, normals).
So the lights textures contains all the points visible from the spot light point of view.
Then, in the CPU, I place all my secondary lights (and the colors stored in the G-Buffer is the color of the light.
I do a first pass when I add the contributions for all the secondary lights, so I need a G-Buffer storing colors properties (because one point light's color = a color material).
I don't know if I'm clear, I'll be thinking of how I can adapt your method to my algorithm, because effectively, it sounds interesting, both in memory economy, and in scalability.
NB : a last thing, the screenshot of Pre-Pass looks a little blurrier than normal deferred rendering, is it normal? - March 17, 2008 at 11:06 AM
- Arseny Kapoulkine said...
If there is a second geometry pass involved, it's pretty obvious of course.
I like that one.
Damian, there should be no artifacts when a lot of lights overlap - the math is correct (i.e. exactly matches forward rendering solutions, given adequate render target precision). - March 17, 2008 at 2:46 PM
- Arseny Kapoulkine said...
A couple more notes.
First, it'll start to somewhat tear apart (converge to DS) in more complex cases - like, if you need to control specular power per-material (or even per-pixel?).
Second, this is not really specific to this method, but I figured this place is as good as any other to ask.
Why does your normal has a definite Z component sign? I mean, of course for a view space *face* normal of a non-culled triangle Z component sign is definite, but we're dealing with *vertex* normals - things like spheres with totally smooth normals will have possible artifacts on pixels near silhouettes, or this is completely wrong and I miss something trivial? - March 17, 2008 at 3:28 PM
- Unknown said...
Arseny Kapoulkine : I meant my method - LIDR (Light index deferred rendering) - suffers from excessive light overlap issues.
- March 18, 2008 at 2:25 AM
- Unknown said...
You latest addition of a material system using:
(R.V^n * N.L * Att) / (N.L * Att)
makes no sense to me.
I mean if you have more than one light, that will not work?
(Actually I am not sure why you are multiplying R.V^n by N.L in the first place.) - March 19, 2008 at 12:51 AM
- Wolfgang Engel said...
I store for all lights
R.V^ * N.L * Att
and I store for all lights
N.L * Att in a separate channel.
After all lights are rendered into the light buffer, I can re-construct R.V^n for all lights per-pixel.
The reason why you store R.V^n * N.L * Att in the light buffer is because N.L and Att define the locality of the light. - March 19, 2008 at 7:55 AM
- Wolfgang Engel said...
Do you want me to send you my small example program? Just send me the e-mail address I should send it to. It is a simple RenderMonkey example.
- March 19, 2008 at 7:57 AM
- Unknown said...
Sure, my email is on the top of my paper you linked to.
I still don't understand how that could work - but I will see what your code is doing.
a = R.V^n
b = N.L * Att
Two lights:
Channel1 = (a1 * b1) + (a2 * b2)
Channel2 = (b1 + b2)
Want a1 + a2
but ((a1 * b1) + (a2 * b2)) / (b1 + b2) is not a1 + a2.
But I think I am missing something....
Also I could understand R.V^n * Att , but my question is why is the N.L in there? Won't that soften the specular a lot? - March 19, 2008 at 7:21 PM
- Wolfgang Engel said...
Hi Damian,
N.L is a self-shadowing term in the specular component. You need this to avoid errors when light goes through geometry :-) - March 19, 2008 at 9:41 PM
- Pat Wilson said...
I like this technique compared with other methods of differed shading.
I put a (hacky) implementation into a game we recently launched to test the technique, and see how easily it could be integrated into an existing game. If you are interested, I uploaded some shots to Flickr:
Right now I am using an R16G16B16A16F to store the GBuffer and I would like to crunch that down to an R8G8B8A8, at some point.
Someone mentioned the assumption of a positive Z value:
A positive Z value can be assumed in tangent space. I am writing out the World-Space normals to the G-buffer so a negative Z value is possible. What I did to get around this was to multiply the depth value by the sign of the z component of the world-space normal during the Z-fill (Gbuffer) pass. Since eye-space Z is always positive, I strip the sign from the depth, and multiply the reconstructed Z component of the normal by the sign of the depth sample. I don't think this is an ideal solution, but it's what I'm doing currently. - May 1, 2008 at 10:51 AM
- Wolfgang Engel said...
Hey Pat, this is awesome :-) ... cool job. If you are interested you might send me your real name via e-mail and we can exchange some of the experience we made with the approach.
- May 1, 2008 at 12:01 PM
- ReJ said...
Battlefield2 used such approach to gather lighting for terrain and we later extended it for BF2: Special Forces onto static geometry and combined with adaptive shadow buffers (to reduce number of passes).
- May 14, 2008 at 9:47 AM
- xop said...
I wonder whether it is possible to combine this method with MSAA? I mean, doing "forward pass" with MSAA, while depth, normal and light accumulation without it, but maybe blurring light buffer along edges. At first this looked like it should work, but on the second thought it became apparent that artifacts alongside edges might appear. And using alpha-to-coverage can make situation even worse. Any ideas about possible workarounds?
P.S. I'll try it out anyways, the idea of deferred renderer capable of MSAA (and not requiring DX10.1) is very tempting :) - July 14, 2008 at 12:53 AM
- Wolfgang Engel said...
It works with MSAA ... definitely :-)
- August 21, 2008 at 11:51 AM
- Christer said...
Would MSAA in this technique be possible with DirectX9 and (if you know) the XNA framework?
- October 2, 2008 at 4:26 AM
- Wolfgang Engel said...
Yes. MSAA is implemented in the same way as for a Z Pre-Pass renderer. If you need a more detailed explanation, I can send you the latest version of the ShaderX7 article I currently write.
- October 2, 2008 at 7:37 AM
- Wolfgang Engel said...
Pat Wilson from Garagegames implemented this in their engine. I don't know if this was the XNA based engine ... but he might provide even more implementation details than I can.
He is currently in vacation but I can forward you his e-mail address.
One way you can implement this is that you generate a dedicated depth buffer (assuming there is no depth buffer access in XNA) and a normal buffer with the standard resolution and then you render the light properties into the light buffer with a standard resolution. The chain of draw calls for opaque objects would be:
- Z Pre-Pass with Depth buffer in MSAA mode
- fill up special depth buffer and normal buffer (this might be one render target)
- fill up light buffer
- draw scene with MSAA'ed Depth buffer - October 2, 2008 at 8:12 AM
- Christer said...
I'd very much appreciate previewing the article. You can send it to kek_miyu at yahoo dot se (Sweden, not .com).
I guess part of my MSAA question is because in deferred rendering you would get edge artifacts if using a resolved MSAA g-buffer (and you can't use MRTs either with MSAA I think). I guess I need to do a bit more research, but is it possible to use a non-resolved MSAA g-buffer as shader input, or am I missing something? Can the g-buffer (light buffer) not be MSAA even though the forward renderer is rendering to a MSAA accumulation buffer (RT), and still avoid artifacts?
I was just in the starting blocks for a deferred renderer and I thought this technique seemed interesting as well (considering bandwidth and MSAA). Although, it seems that summing the specular half-vector factors won't give the same results for overlapping lights (as the specular power will be applied to the sum of half vector contributions and not the components of the sum), unless the specular power is available in a g-buffer when generating the light buffer. However, I imagine one could probably live with this overly specular behaviour for overlapping lights.
Anyways, great stuff and I look forward to reviewing the article! - October 2, 2008 at 8:34 AM
- Christer said...
We posted at the same time :)
Looking at your suggestion still makes me wonder. If the light buffer is not the same resolution as the accumulation buffer (i.e. MSAA increases effective resolution of accumulation buffer), would there not potentially be edge artifacts where the lights slightly bleed over the edges? But maybe it wouldn't be very noticable? - October 2, 2008 at 8:44 AM
- Wolfgang Engel said...
Regarding specular: if you want you can use specular in exactly the same way as with a Deferred Renderer. You store a material specular value in the normal buffer or depth buffer or even in the specular value of the MSAA'ed depth buffer. This extended specular factor is used to re-construct specular in the forward rendering == main pass, so that we can use a wider range of materials. This way you can implement skin, cloth and other materials better.
Regarding MSAA: I can't say how much artefacts the non-MSAA'ed light buffer will introduce because I didn't implemented it on a PC platform with MSAA (I wrote testers in RenderMonkey). I would expect those artefacts hard to notice. - October 2, 2008 at 9:11 AM
- Wolfgang Engel said...
or even in the specular value of the MSAA'ed depth buffer.
should have been
stencil channel
We actually do this in one of our games that uses a Deferred Renderer. - October 2, 2008 at 9:12 AM
- Crno Srce said...
I may have missed it, but I never saw how this problem mentioned by Damian is overcome/doesn't matter:
Two lights:
Channel1 = (a1 * b1) + (a2 * b2)
Channel2 = (b1 + b2)
Want a1 + a2
but ((a1 * b1) + (a2 * b2)) / (b1 + b2) is not a1 + a2.
>> - December 2, 2008 at 4:53 AM
- Wolfgang Engel said...
I did not consider this a problem out of several reasons:
1. if you have -let's say more than 2 overlapping specular values- and you see artefacts, you might store your specular power value in the stencil buffer part of the depth buffer or somewhere else. You end up with the same solution that Deferred renderers use this way. Most of the time this is not a problem because you won't see more than 2 overlapping specular highlights.
Let's assume you see more than 2 overlapping specular highlights in your scene: then the mathematical foundation of the specular term is not your biggest problem. Your biggest problem is that your 8-bit channel won't be enough to hold any sensible representation of those three hightlights and you will hope for that the normal map is detailed that no one notices that for an instance your specular calculation overflowed your 8-bit channel and was at the same time not mathematically correct. Your best argument in that case is that you describe with a smile in your face that we are talking about a really rough approximation of a real-life phenomena that we were not able to represent in any meaningful way anyway. After all specular is represented in all games in a wrong way. So we skillfully added one more way on how to do it wrong and we are proud of it because we proved that graphics programmers can fake things cooler than real life :-)
2. If you can live with the fact that you use a high-end graphics card capable to calculate statistical data with 32-bit precision but still bound to calculate a term that was developed in 1977 by holding a thumb over one of your eyes long enough so that you loose any sense of perspective and color but see a sufficiently performant approximation of a real-life phenomen that hardly ever happens, you might also try the other term I mentioned:
(N.H^n * N.L * Att)^nm
Obviously the highlight will change its shape this way but I promise it won't be more worse than the difference between Blinn-Phong and Phong. - December 2, 2008 at 7:43 AM
- Crno Srce said...
Ahh, yep. So you just ignore the inaccuracy. Fair enough!
- December 4, 2008 at 11:07 AM
- Wolfgang Engel said...
In a nutshell this is right. If you would render the specular in any other way you would have the same problems minus the re-construction problem that is introduced by this method.
Obviously there is lots of room for more accurate specular models than Blinn-Phongs and if you want you can also implement a specular texture look-up by using the 8-bit channel as an index.
A nice extension of the Light Pre-Pass would be to use a better specular term that can be added and that represents more the real physical nature of specular. - December 4, 2008 at 12:27 PM
- Tyrian said...
Thinking of similar system,
so here is my idea for commenting.
Pass_Initial {
R16fG16fB16fA16f =
(RG) ScreenSpaceNormal
(B) Depth
(A) packed(A = 8bit+8bit)
( SpecularGlossness + DiffuseffuseRoughness )
Pass_ShadowMaps X+ {
Render all needed shadowMaps
(optimize using Pass_Initial,
as visible fragments are known?)
(extra "z" or "stencil"-buffer test ?)
Pass_LightContributions {
R16fG16fB16fA16f =
(RGB) combined light diffuse
(A = AntiAliasing Hint ?)
R16fG16fB16fA16f =
(RGB) combined light specular
(A = Unused ???)
Pass_FinalComposition {
Forward Rendering of image
/Aki R. - January 3, 2009 at 5:08 PM
- JarkkoL said...
Funnily, I came up with the same lighting idea as you describe and have been developing full featured renderer for an engine I'm working on by using the technique. While back my ex-collegue mailed me saying "Isn't this light pre-pass rendering technique?", so I guess there's nothing new under the Sun, eh? (:
I store normal + glossiness factor to the 32-bit "G-buffer" and have two different light buffers: one for diffuse and one for specular, which are used by the material shading as input textures, so specular lighting isn't a problem. This seems to work great for the few different light types I have implemented so far (directional, omni, spot & line light).
There are few screenshots available (http://www.spinxengine.com/index.php?pg=news) and I should release few more soon now that shadows & ssao have been implemented as well. The engine is developed as an open source project so you can try it out if you like (requires VS2008 & DX9). - February 27, 2009 at 9:55 AM
I don't see how this improves over basic deferred shading.
You need a separate full-screen texture for each light source. In basic DS, you need one extra buffer for albieto/material (in addition to color/normal). Then multiple lights can be done without extra buffers. In this approach, you need buffers for every light, so seems like it would be slower/consume memory, esp. with lots of lights.
Also, its not clear how shadows would be incorporated, since you would still need to make multiple screen-space passes after the light pre-passes to include the shadowing term.
Maybe i'm missing something? - March 4, 2009 at 3:39 PM
- Wolfgang Engel said...
Maybe i'm missing something?
Yep you are missing the whole idea :-)
Instead of reading four full-screen -maybe MSAA'ed- render targets you read two for each light. You can pack light properties pretty tightly into the light buffer ... so you might get away with a 8:8:8:8 light buffer. I actually do.
So it takes much less memory bandwidth per light and because you do not calculate the whole lighting equation for each light while you render into the light buffer it is also cheaper. So overall you can render much more lights ... probably 2 - 3x. My tests show that you save especially on small lights. You can run very high numbers like 512 or 1024 depending on your platform this way.
Obviously MSAA is easier and material variety is better ... check out the slides for this. - March 4, 2009 at 4:03 PM
- Wolfgang Engel said...
oh and regarding shadows: you treat them in the same way as in a Deferred renderer. So for the directional light shadows you re-construct the world position and then fetch your shadow atlas. For point and spotlights you do the same ... while you render them. So exactly the same as in a Deferred renderer ... nothing special here.
- March 4, 2009 at 4:06 PM
- Unknown said...
Jason Bracey from firstname.lastname@example.com. Is the source/sample demo still avilable?
- February 23, 2010 at 1:51 PM
The light pre-pass renderer is brilliant idea , it's fast and has even a really good quality!I used a light pre-pass renderer in my engine and the results are pretty good.
PS: Sry for my bad english... ;) - March 14, 2010 at 4:15 AM
- Unknown said...
another stupid trick for edge detection pass on platforms that support sampling the MSAA surface with linear sampling: sample the normal buffer twice, once with POINT sampling and once with LINEAR sampling. Use clip(-abs(L-P)+eps). The linear sampled value should be used to compute the lighting of "non-MSAA" texels in the same shader to avoid an extra pass.
- March 18, 2010 at 5:29 PM
- Wolfgang Engel said...
That sounds very cool. What is eps?
- March 20, 2010 at 9:44 AM
- Unknown said...
oops sorry: eps = epsilon
The idea is to use a small treshold value to bias the texkill test so that when the multisampled normals are only a little different then we could use the averaged value to perform the lighting at non-MSAA resolution during the first pass as an optimization. - March 20, 2010 at 10:03 AM
- Unknown said...
I was wondering if anyone ever used a trick like the following to access samples values from MSAA surface using DX9 on PC.
For example with MSAA2X we have two samples A & B we can't read, but can we:
- resolve to a non-MSAA GBuffer (Gleft)
- draw a fullscreen black quad with alpha to coverage enabled and that outputs a constant alpha value (but alpha write disabled) for a 50% coverage so as to mask half the texels (=> half the texels are now black)
- resolve again into another GBuffer (Gright)
Gleft = (A+B) / 2
Gright = (0+B) / 2 (or (A+0)/2)
sample B = 2*Gright
sample A = 2*Gleft - B
The only problem is the downscale pattern used by the resolve operation. On consoles we can choose between different modes (square, rotated...) but I couln't find any information about this for dx9 PC :(
If it works, we could render like this:
- render geometry once with MSAA2X, depth buffer test & write, albedo buffer RGB in .rgb + edge in .a (using centroïd trick)
- render geometry again with MSAA2X, depth buffer test only, normal XY in .rg, matID (or packed material params) in .b and depth in .a
- resolve MSAA buffer into two non-MSAA textures if needed (or resolve "on-the-fly" during lighting if possible)
- use the centroïd edge information to clip texels that need supersampling else just compute lighting accumulating albedo and lighting into the non-MSAA buffer
- then compute supersampled lighting onto remaining texels, still accumulating albedo and lighting into the non-MSAA buffer. - March 21, 2010 at 9:55 AM
Hello, I really like this technique and have sarted putting something together. I have now stumbled onto a problem with normal-maps, or any other mapping which fiddles with the normal vectors.
How do you go about implementing a simple normal mapping technique in the context of the pre-light rendering pipeline?
I am assuming that we don't want to read-in the normal-map during the depth pass.
Best regards, Dan. - March 29, 2010 at 6:42 PM
- Unknown said...
It would be super helpful if someone could post screenshot of what MSAA looks like with this technique. The worst case I can think of is something like this:
High albedo object in low amount of light, on top of a low albedo object in high amount of light.
MSAA with centroid sampling should be pretty good I but there will still be artifacts and I'm interested how bad they are.
Eric - April 22, 2010 at 11:25 AM
- Unknown said...
First I want to say that I like the pre-light architecture very much and decided to implement it in OpenGL. Unfortunately, I have problems getting rid of all artifacts when using MSAA.
No MSAA:
Notice that white curved line looks pretty bad without out MSAA, but the tree(green)/floor(blue) edges are rendered well.
With MSAA (8x):
Here the curved line is fine but the tree(gree)/floor(blue) edge sampling is quite ugly.
With MSAA (8x) with centroid sampling:
I'd say this looks best but still there are tree(gree)/floor(blue) edges which I'd like to get rid of.
Any help/hints to improve the quality are very much appreciated. Maybe I'm simply missing a few OpenGL parameters.
Thanks and best regards,
Michael - October 4, 2010 at 5:59 AM
- This comment has been removed by a blog administrator.
- August 31, 2011 at 12:14 PM
- tudalex said...
Hi, where can I download RendererDesign.zip the link no longer works.
- June 16, 2014 at 12:32 PM


text:
Obituary for Matt Groening's Mother Sheds Light on Inspiration for 'The Simpsons'
Matt Groening is the creative genius behind 'The Simpsons.' But one thing he wasn't too creative with was the names of the now iconic four-fingered characters.
Sadly, Groening's mom -- Margaret Ruth Groening -- passed away last month at 94, and reading her obituary is like taking a walk through Springfield.
Over the years Margaret Groening has been quick to point out that she never went by "Marge." But given that her husband and Matt's father (who died in 1996) was Homer, the name Matt gave to everybody's favorite blue-haired mom was obviously no coincidence.
Among the other 'Simpsons' names that were clearly lifted from Matt's childhood home life include Maggie, Lisa and Patty. However instead of calling the boy of the family Matt, Groening opted to maintain a little distance by going with Bart, which is an anagram for "brat."
Check out the complete obituary below and see how many 'Simpsons' references you can pick out. (Hint: the origin of Chief Wiggum's name is finally revealed.)
Margaret Groening died peacefully in her sleep on April 22, 2013, in Portland. Born Margaret Wiggum on March 23, 1919, in Chisolm, Minn., Margaret was 94 years old. Margaret's parents, Matt and Ingeborg Wiggum, met on the boat coming to America from Norway. They settled in Everett, Wash., where the paper mill "smelled like money," and Matt worked as a machinist. As high school valedictorian and Miss Everett, Margaret's highest honor was being named May Queen of Linfield College. She graduated from Linfield in 1941 and married classmate Homer Groening, whom she chose because he made her laugh the most. Margaret taught high school English before starting a family, and her love of language was apparent in the many Double-Crostics she completed (in ink). Margaret and Homer supported the Oregon Symphony, the Portland Trail Blazers and many local yarn shops (Margaret was a talented needlework artist). Besides Homer, Margaret was preceded in death by her oldest daughter, Patty, who died in Jan., 2013. She is survived by her brother, Arnold; her children, Mark, Matt, Lisa and Maggie; eight grandchildren; and two great-grandchildren. The family thanks the wonderful caregivers from Visiting Angels and the hospice nurses from Housecall Providers. Special appreciation also goes to loyal friend, Grace Clark.


text:
Men's Gold Scroll Chains
Fast, Secure
Shipping -
100% Authentic
Jewelry -
One of the World's Oldest Online Jewelry Shops
Gold Palace was a very early online jewelry website. How early? It was around when AOL was still sending CDs in the mail to everyone in America. We've stood the test of time by continually releasing iconic, unique, top quality styles, backed by unrivaled VIP support to every customer.
Expertly Crafted by Master Artisans
A secret to our success is our deep relationships with family-run jewelry workshops in India, Dubai, and Singapore. We specialize in curating heirloom investment-grade works that set trends. You'll treasure your Gold Palace jewels for your entire lifetime.
Guaranteed 100% Authentic
All of our 22K/18K/14K gold, diamond and silver jewelry is 100% authentic, guaranteed. We don't sell gold-plated or imitation gold. Everything we sell on GoldPalace.com is composed of the finest-quality materials.
Secure Shopping & Shipping!
From the moment you add an item to cart until your order arrives on your doorstep, we offer you complete peace of mind. With our advanced checkout technology safeguarding your payment details, you can focus on finding the perfect items for you while knowing your data is safe. Within 24 hours of submitting your order, your jewelry is hand-inspected, cleaned, boxed, and shipped in discreet, luxury packaging from our Houston, Texas office. We provide a tracking number for every order, so you can monitor the progress at any time. Note: Orders over $50 enjoy complimentary shipping to the Continental US.
Exclusive limited edition releases
Because our jewelry pieces are handmade and not mass-produced, some of our styles are only available in limited numbers. This approach allows us to give more attention and care to each individual piece. With only a limited quantity produced, our exclusive gold jewelry is highly sought after. When you see a jewelry style you love, don't hesitate to make it yours today before it's gone!
VIP Customer Service
Our team is both highly experienced and driven to meet your customer service needs. You're making a significant, exciting investment. We're here to help make your experience as pleasant and smooth as possible and aid you in making an informed purchasing decision. In case you have any queries or need any special arrangements, our team will go the extra mile to accommodate your needs and provide you with exceptional assistance. We offer many ways to contact us. You can reach us by:
Chat - Click the chat box in the lower right
Email - firstname.lastname@example.com
Phone/SMS/Whatsapp - (281) 224-2190