text:
Find more Kazarian relatives and grow your tree by exploring billions of historical records. Taken every decade since 1790, the U.S. Federal Census can tell you a lot about your family. For example, from 1930 to 1940 there were 133 more people named Kazarian in the United States — and some of them are likely related to you.
What if you had a window into the history of your family? With historical records, you do. From home life to career, records help bring your relatives' experiences into focus. There were 317 people named Kazarian in the 1930 U.S. Census. In 1940, there were 42% more people named Kazarian in the United States. What was life like for them?
In 1940, 450 people named Kazarian were living in the United States. In a snapshot:
As Kazarian families continued to grow, they left more tracks on the map:


text:
Waipi'o Legends and Lore LLC, dba Waipi'o Ride The Rim ATV, is a member of the Hawaiʻi Ecotourism Association, and holds a certification in Sustainable Tourism by complying with their principles.
The companies mission and practices of traditional Hawaiian concepts are: Mālama ʻĀina, (environmental stewardship), Kuleana (responsibility and commitment), Moʻolelo, (interpretation), Ho'okipa (costumer hospitality), and Laulima (working together in unity). Waipiʻo Ride The Rim strives for excellence in customer service, safety, authentic Hawaiian cultural interpretative delivery, environmental conservation, and education.
Hawaiian Proverb: Kulia I ka nuʻu i ka paepae kapu ʻo Līloa (strive to reach the highest platform of Līloa./Strive for excellence).
Līloa: King of Waipiʻo Valley
for more information visit: http://www.hawaiiecotourism.org/

subset: commoncrawl


text:
is about to break up without doing anything, and that the failure is entirely owing to the part she has taken against us. When she sees that this is the literal fact, I do not think that her government will expose itself to the consequences resulting from it. It is not prepared to quarrel with us for many reasons: first, as we are a republic, and that system of government too recently overset there, and the one established in its stead too feebly founded, to make it a desirable object with the Emperor; second, as she relies altogether for supplies on our flag, and on our merchants and people for many other friendly offices in the way of trade, which none others can render; third, as our government pursues, by prohibiting our trade with St. Domingo, and in many other respects, a system of the most friendly accommodation to the interests of France, she ought not to hazard those advantages if there were no other objections to a rupture with us; fourth,—but there are other and much stronger objections to it,—we should come to a good understanding with England. . . . These considerations incline us to think that a rupture with us is an event which of all others she least seeks at the present time; and that it is only necessary to let her see distinctly that one with Spain is on the point of taking place, and will be owing altogether to her support of her pretensions, to induce France to change her policy and tone in the points depending here."
Pursuing this train of reasoning, Monroe tested its correctness by challenging a direct issue of courage. His letter, thus inspired, reached Paris in due time, and its ideas were pressed by Armstrong on members of the French government. Their answer was prompt and final; it was instantly reported by Armstrong to


text:
Alfresco Lifestyle Rain and Shade Solutions by alfresco365 are carefully designed , fabricated and professionally installed to ensure our clients are totally satisfied with the result.
Our alfresco lifestyle rain shade solutions include a range of product types.
Awnings: a wide range of patio garden awnings, commercial retractable awnings, and pergola awnings.
Shade Sails: bespoke individual and large installations of Sail Shades & Waterproof Sails.
Sail Shades: for conservatories and any glazed space.
Veranda Canopies: Glass and polycarbonate structures for home, work ,schools and many more.
Commercial Parasols: including the exceptional Vortex Parasol.
Alfresco Heating: Infrared heaters are supplied via our dedicated infrared heating E commerce site www.heatmyspace.co.uk with heaters for a wide range of Indoor & Outdoor uses. Targeted infrared heat is a cost effective alternative to traditional heating.
The Alfresco lifestyle International & British branded shade equipment that we have selected to supply & install for our customers is top quality, guaranteed, and gives real value for money as they are designed and built to last. Our manufacturers include: Markilux , Gibus , Vortex , Inshade , Serge Ferrari, and Tansun.
The alfresco365 alfresco lifestyle rain shade solutions concept is about protecting our customers from harmful UV rays , providing a perfect alfresco dining area, and wherever possible giving rain cover. We believe in extending the inside outside and bringing the outside inside. This is all about really enjoying the combination or both worlds, indoors, outdoors and we harness the various design elements of bespoke canopies to achieve the perfect alfresco structure this for each individual customer.
To create this indoor-outdoor living space and make it work, we design a rain shade solution to blend the existing building and outside spaces. Generally this requires a survey visit to take measurements, photographs, find out your exact requirements. We then design an alfresco solution to match the ideas, dimensions and the budget.
We supply & install alfresco lifestyle rain shade solutions throughout the Isle of Wight , New Forest , Hampshire , Southern Counties ,London and beyond.
Call Alfresco365 on 01590 683655 or 01983 754800 to discuss your alfresco lifestyle project.


text:
This item is temporarily out of stock. However, we can notify you as soon as this product becomes available.
Thank you
We have received your request and you will be notified as soon as this product becomes available.
In order to keep our prices as low as possible, all CreateForLess order subtotals must be at least $10. This helps us save on labor costs when packing your order so we can extend the savings to you!
Description: Plaid Mod Podge Tools will help you create the picture perfect project everytime. Mod Melts 16pc Neon- Use Mod Melts with high temperature mini glue guns. Fill mold with melted product, let cool, pop out and embellish with paints, glitter, stain, markers and more. Works with any of the mod molds, measure approximately .25 in. x 10 in. Colors include Pink, Green, Orange and Yellow.
1Orders placed must have a minimum subtotal of $10. More Info.
See more Plaid Mod Podge Tools.
Review this product and Enter
to Win a $100 shopping spree!


text:
Career Services is looking for qualified students to apply for a Production Artist Lead position at a local San Diego company.
From the listing:
A qualified candidate to work closely with our Direct Marketing and Sales teams to fulfill customer production design requests for all marketing materials. The successful candidate will edit and review multiple versions of 2 and 4-color direct mail art packages for in-house printing and mailing.
Minimum Requirements:
Must be proficient in Adobe InDesign & Acrobat. Knowledge of print production strongly preferred. Ability to work a flexible schedule with overtime as needed, complete mailing projects for our clients with very tight turnarounds and assist with various office tasks in multiple departments periodically.
Technical Skills:
Is able to learn and proficiently utilize various software and data processing programs.
Experience with Microsoft Office applications and intermediate-level traditional computer skills.
Experience with Salesforce, Illustrator, & Photoshop a plus.
Graphic Arts, Marketing or Computer Sciences majors preferred.
Work Skills:
Strong eye for detail and excellent proof-reading skills.
Ability to work independently and multi-task with solid organizational skills.
Motivated, self-starter who is able to prioritize schedules and deadlines while working in a fast-paced environment.
Maintains high levels of quality and accuracy.
Leadership Skills:
Proactively supports company procedures and processes.
Ability to problem-solve, as well as evaluate and identify potential growth and procedural enhancement opportunities.
Is able to communicate and maintain a positive attitude while working with others.
Ability to motivate diverse team members and hold individuals accountable for their performance.
To apply for this position please contact your Career Services advisor.


text:
21 April 2015
Clarins Aquatic Treasures Summer Collection 2015
8 comments
Those products looks lovely!ReplyDeleteReplies
They're absolutely beautiful xoDelete
Oooo that bronzer looks so lovely!ReplyDelete
xprincessjas | ♥Replies
It's amazing, I love using it all year round but in the summer particularly it's just THE perfect shade for bronzer xoDelete
This comment has been removed by the author.ReplyDeleteReplies
It's such a lovely bronzer, and absolutely HUGE! xoDelete
Oh My! That cream to powder eyeshadows looks AMAZING! The colour just looks so pretty and to die for. I'm convinced about the Bronzer too, keeping my eyes out for the release of these. Such amazing products.ReplyDelete
-Rumbie Love - xReplies
It is such a beautiful shade, I am completely smitten with it. Clarins collections are always beautiful :) xoDelete
Thanks for stopping by! If you have any comments or questions, feel free to leave them here. I try to respond to comments as quickly as possible, but if you have an urgent question feel free to tweet me @TattooedTealady!


text:
Adam Levine rocks the Victoria's Secret Fashion Show
Adam Levine used the Victoria's Secret Fashion Show to get romantic with his model girlfriend, Anne Vyalitsina. The singer serenaded the "Angel" during Maroon 5's performance at last night's show.
Maroon 5 frontman Adam Levine, got up-close-and-personal with his supermodel girlfriend Anne Vyalitsina at Wednesday's Victoria's Secret Fashion Show. The annual event, which took place in New York City, showcased the brand's sexiest lingerie and hottest models.
The show featured live performances from Kanye West, Jay-Z and Nicki Minaj, but Maroon 5's rendition of "Moves Like Jagger" was a must-see. Levine belted out the tune as girlfriend Vyalitsina strutted down the catwalk wearing a sparkly blue ensemble. The couple displayed some serious PDA by holding hands and sharing a quick kiss on the runway.
Vyalitsina told Us Weekly, "We kind of wanted to make [Maroon 5] as much a part of the show as possible. We just tried to have fun and make it as cute as we could." The singer and the supermodel have been together for over a year and they're still going strong.
The pair previously joined forces in January to promote prostate and testicular cancer awareness. They appeared in a risqué photo, which showed Levine completely nude with Vyalitsina's hands covering his nether region. They also graced the cover of Russian Vogue (once again in the nude) earlier this fall. They're definitely comfortable in the skin they're in.
As for this year's fashion show, it was filled with plenty of jaw-dropping moments including Miranda Kerr's walk during the "Angels Aquatic" segment. The model wore a Fantasy Bra covered in $2.5 million worth of diamonds. She was a true showstopper.
The Victoria's Secret Fashion Show airs Nov. 29 on CBS.
Photo credit: PNP/WENN.com


text:
YOU ARE ORDERING Invitations that are customized with your event information. Choose between a DIGITAL JPG DOWNLOAD ONLY or ORDER PRINTED INVITATIONS (design fee & shipping fee included in prices listed).
If you choose the PRINTED INVITATIONS option you choose the amount of cards you want from the DROP DOWN menu - economy shipping is included in the price. UPS Shipment takes about 5-7 days after proof is approved. If you need Express Shipment or a custom quantity please message me.
Paper is 80lb \ 14 point thickness.
Plain White Envelopes are included.
Front/Back Flat 5"x7" Full Color Cards.
--> The FRONT of this card is a matte coating that brings out the color contrast and text clarity while giving way to a smooth finish Matte Finish with full color. This smooth, gloss-free finish beautifully highlights color contrast and text clarity.
--> The BACK has full color design as shown. (extra fee if you want anything different on the back)
Please include in the "notes to seller" your INVITE info for the front of the card. A PROOF will be sent thru Etsy chat for approval before printing within 48 hours of ordering.
Event Date:
Event Time:
Event Location:
Any additional notes:
COPYRIGHT NOTICE: All art is copyright of Paisley Barn and is not for resale. This custom print is not a licensed product. Designs in my listings are created solely by me. You are paying for my time to customize/create your personal item and custom wording. I maintain the copyright on all my original designs, but any licensed images included maintain the copyright of their original respective owners.
**NOTE: If you order the DIGITAL file, no physical item will be shipped**
** Please provide a PHYSICAL shipping address when checking out. Many of our items can not be shipped to PO Box addresses. If you have questions, please send a message before you order so we can be sure to get your items to you!
Please contact me to find out when this item will be ready to ship.
Buyers are responsible for any customs and import taxes that may apply. I'm not responsible for delays due to customs.
Just contact me within: 5 days of delivery
Ship items back to me within: 7 days of delivery
But please contact me if you have any problems with your order.
Because of the nature of these items, unless they arrive damaged or defective, I can't accept returns for:
Buyers are responsible for return shipping costs. If the item is not returned in its original condition, the buyer is responsible for any loss in value.
Yes! For all orders that we customize with personal information, a proof will be sent within 24-48 hours to you via Etsy Chat. If any changes need made, we will send another proof to be sure that everything is exactly as you would like it.
If you aren't happy with your purchase, please send us a message. If there is a defect or damage, we will send you a replacement. Due to the nature of Digital and custom items, we do not accept returns on those. Check the listing details for each item to see if they can be returned. Contact us if you think you need to return an item so we can best help you. Any items approved for return will be refunded or issue a credit (less any shipping costs) AS LONG AS it returns in re-sellable condition. You would be refunded after the item is received.
Shipping time varies on each item. Custom items typically take 8-10 business days from the time you approve your proof and it is delivered to you. If you need something sooner than that, we offer expedited services for an additional fee. Send us a message if you have a specific date you need your items by so we can be sure that you have purchased the correct shipping options to receive your items on time.
If you are needing your order by a certain date, please include that in the notes to seller at checkout so we can be sure to have you purchase any additional expedited options needed. My top priority is customer satisfaction and 99% of the time, orders process and are delivered in the time frame stated above. However, there are some time when we have a higher volume order or just life gets in the way, if you are on a timeline, please let us know so we can do everything possible to get your order to you by the time that you need it!
Apr 1, 2017


text:
Ashli Mazer
Telephone: 724.329.6387
Terrain Park Among 2013/14 Announcements at Nemacolin
Opening date slated for December 20th
Farmington, PA (December 5, 2013) – Nemacolin Woodlands Resort's list of more than 70 resort amenities has grown even longer with the announcement of their newest winter addition, a Terrain Park at Mystic Mountain. The Terrain Park, which has been dubbed "The Yeti's Lair," will open; weather permitting, for the 2013/2014 ski season on Friday, December 20. Mystic Mountain is Western Pennsylvania's ideal learning environment for first-time skiers, with 25 acres of friendly trails, seven slopes and experienced instructors.
"Terrain parks continue to be an aggressively growing ski industry trend," says Matt Grobe, Director of Activities at Nemacolin Woodlands Resort. "However, it was our guests and season pass holders who continued to suggest this amenity that ultimately led us to add this feature this season. Our goal is to provide a terrain park experience that our skiers and riders can navigate, while learning the skills necessary to be able to successfully master more advanced terrain parks."
Nemacolin's Terrain Park will be located near the top of the mountain, adjacent to Mystic Mountain's Grizzly Run and will include six distinct features including a 24' Flat Box, a 16' Down Cannon Rail and 24' Rainbow Box. Introduction to Terrain Park Lessons will also be available.
This winter, guests can once again experience the new Sundial Lodge facility, which opened December 24, 2012, after the original lodge was destroyed by fire in February 2012. The Sundial Lodge features eight bowling lanes, an arcade, retail shop and a casual dining outlet, Apex. A new dining concept will also be featured for the 2013/2014 season, with an emphasis on relaxed food choices such as wings, soups, flatbreads and sandwich specialties and a variety of beverages. Dining specials and live entertainment will also be available throughout the season.
Mystic Mountain operates Friday through Sunday, with extended dates and hours on holidays. Day, night and multiple day lift tickets are available as well as a 2013/2014 Season Pass program, which includes $119 adult (12 & up), $99 junior (11-6) and $29 child (5-under) passes. These special rates are valid through December 24.
For the most up-to-date information on conditions, weather and lift ticket pricing please contact Nemacolin's Mystic Mountain at 724-329-6070 or visit our website at nemacolin.com.
# # #
Nemacolin Woodlands Resort
Nemacolin Woodlands is one of North America's premier resort destinations. Situated on nearly 2,000 acres, the Forbes Four-Star and AAA Four-Diamond resort features 318 luxurious guestrooms, suites, townhouses, and private luxury homes, including the Forbes Five-Star, AAA Five-Diamond, Falling Rock boutique hotel and clubhouse. In addition to the internationally acclaimed Woodlands Spa, the resort offers 36 holes of golf on two championship courses—the Pete Dye designed Mystic Rock and the traditional Links Course. For shooting of another sort, guests should visit our 30-station Shooting Academy, a sporting clays facility situated on 140 acres complete with a spacious lodge. Trail rides are available at the Equestrian Center, or for a more rugged trail experience, there's the JEEP® Off Road Driving Academy offering guests the ultimate in off road adventures. Guests can test their luck at our Lady Luck Casino Nemacolin, featuring 600 slots and 28 table games. For shoppers there are 14 specialty shops, plus nearby Uniontown boasts the ultimate outdoor store, Woodlands World. As the seasons change, our ski facilities for both downhill and cross-country enthusiasts, snowboarders and snow tubers kick into high gear, or for a different winter experience visitors can enjoy dog sledding. Nemacolin Woodlands also boasts an impressive collection of 15 restaurants and lounges, including the Forbes Five Star, AAA Five Diamond, Lautrec as well as a multi-million dollar art collection. For meetings and events, Nemacolin Woodlands offers 32,000 square feet of meeting and banquet facilities including four ballrooms, a 200-seat lecture hall, and 24 meeting rooms - making Nemacolin Woodlands the ideal setting for functions ranging from weddings to sales meetings. For those guests arriving by air, our on-property private airfield with 3,900-foot airstrip is available. For additional information, please visit our website at nemacolin.com or call 866-399-6957. Gambling Problem? Call 1-800-Gambler.


text: One Pink dye color block Manufactured by 'French Color'. This is a sediment free dye color block used for coloring candles. You can make several colors and shades with the same block just by varying the volume used. Each block weighs 1/2 oz and is scored in the middle to break in half for use with smaller batches. Use one block in 10 lbs of wax for a Watermelon color (medium pink). Use one block in 5 lbs of wax for a Dark Pink color.


text:
...we hope to raise awareness for hearing loss and its appropriate solutions and inspire the four in five Americans with hearing difficulties who still have not decided to take control of their hearing health
Syracuse, NY (PRWEB) July 23, 2014
On July 19 and 20, the HearStrong Foundation promoted hearing health awareness at the NBC 4 New York and New York Giants Health & Fitness Expo 2014 at MetLife Stadium in East Rutherford, NJ.
The team, which included several hearing healthcare providers affiliated with EarQ, HearStrong's main sponsor, offered free hearing health screenings and answered any questions that attendees had about their hearing health or today's advanced hearing technology.
Also sponsored by the NFL Players Association, HearStrong was proud to join the Giants and participate in such an enriching community event.
"It is truly inspiring to see the passion and energy provided by NBC 4 New York, the New York Giants, and the audiologists who volunteered their time and expertise to provide such wonderful services," said Clifford Carey, communications director of EarQ. "With these types of partnerships, we hope to raise awareness for hearing loss and its appropriate solutions and to inspire the four in five Americans with hearing difficulties who still have not decided to take control of their hearing health."
About HearStrong:
The HearStrong Foundation strives to recognize the accomplishments of those who have overcome hearing loss and live their lives to the fullest. Headquartered in Syracuse, NY, the foundation is a world-wide advocate for hearing loss awareness, education and support. For more information about the foundation, or to nominate a HearStrong Champion, please contact:
Like us on Facebook
Follow us on Twitter
About EarQ:
A strategy and consulting firm that supports hearing healthcare providers nationwide, EarQ utilizes innovative business and marketing practices, national public awareness efforts and advocates for excellence in private patient care. Through its 1,400 hearing healthcare provider locations nationwide, EarQ will help provide greater access to quality hearing healthcare services and products.
Like us on Facebook
Follow us on Twitter


text:
Each spring, the PEI Women's Institute asks Islanders across the province to help with efforts to clean roadsides of litter. This year, the campaign includes specially marked yellow bags to recognize the 45th anniversary of the annual roadside cleanup. Residents and businesses can pick up bags at Access PEI or IWMC sites.
Since 1924, the PEIWI has played an integral part in Old Home Week. The PEIWI Handcrafts, Horticulture and Arts Show is an annual competition of arts and crafts submitted from Islanders artisans. The Premiers Craft Education Award is comprised of three $1,000 prize to fund training and skill development of chosen artists and craft on Prince Edward Island.
Period of Purple Crying® is a prevention program to help educate parents and caregivers about normal infant crying and the dangers of shaking an infant. Members are asked to support this program by knitting or crocheting purple baby caps. Hats are still needed. Please inquire or drop off at the WI office.
Welcome to the PEI Women's InstituteSince 1911: The first branch on PEI was established in 1911, the Prince Edward Island Women's Institute (PEIWI) has been creating positive change in our Island communities. Now, with over 75 branches and 1,000 members, members of the PEIWI focus on home, family, and culture through collaboration and sharing.
Our Mission: PEI Women's Institute enrich, education and reviatlize women, families, and communities through actions taken by informed and inspired women.
Your Invitation: We invite you to learn more about the PEIWI and find out for yourself how you can make a difference. Call 902-629-5989 or email today.
Online Calender of EventsView WI events by month at a glance. Send details of your branch activities and events by email to be added to the online calendar.
2018 WI Handcraft, Horticulture and Arts Show
The 94th Handcrafts, Horticulture and Arts Show at the provincial exhibition takes place August 9 to 18, 2018. Check out the list of demonstrations for this year. Results for Week 1! Results for Week 2! Special Awards and Prizes! Congratulations to Dianne Coffin for winning this year's Premier's Craft Education Award!For reference for the show please refer to the online handbook.
45th Roadside CleanupSee details and winners from the cleanup held on May 12: Cash contest winners!
WI Provincial ConventionThis year's WI Provincial Convention will feature The Honourable Antoinette Perry, PEI's Lieutenant Governor as guest speaker. Deadline to register is Friday, May 11. Details and registration form now available.
Rural Beautification SocietyFor 73 years, RBS have been enhancing the rural landscape of our beautiful Island. A total of $15,000 in prize money will be awarded in 19 different competitions including 4 new competitions for 2018 (Island Dairy Farm Improvement, Community Flower Garden, Commemorative Garden and Youth Garden). For more information, competition guidelines and entry forms, visit the website: peirbs.ca
Ongoing PartnershipPEI Women's Institute is pleased to once again partner with the Department of Agriculture and Forestry to continue valued projects and programs. Thank you on behalf of all branches, members and communities across Prince Edward Island for the continued commitment and support.
Receive WI News at Home
Please send an email request to receive monthly mailouts to your own personal email address.
New Branches For more information on applying to open a new branch or about a branch in your area please contact the office at firstname.lastname@example.com or 902-368-4860.
Speaker Series A list of diverse speakers are now available for your branch meetings.
Contact Us
Phone: (902) 368-4860
Email: firstname.lastname@example.com
40 Enman Crescent, Room 105
Charlottetown, PE C1E 1E6


text:
Foods To Avoid If You Have Hypothyroidism (Infographic)
Hypothyroidism is a condition in which your thyroid is not making enough thyroid hormone, specifically triiodothyronine (T3) and thyroxine (T4).
While a lot of people might not see symptoms in the earlier stages, this condition can lead to obesity, joint pain, infertility and heart disease.
If you're trying to heal your thyroid naturally, there are certain foods that you will want to avoid, mainly most foods containing goitrogens.
Goitrogens are substances that inhibit the production of thyroid hormones, something you definitely don't want if you already have an under-active thyroid.
Here is an infographic of some of the worst offenders when it comes to foods that contain goitrogens.


text:
Churchill Galleries has maintained its original identity through many changing trends during the past 30 years, offering traditional and tasteful antiques. English, French, Italian and other Continental antiques comprise Churchill Galleries's ever-changing inventory. Not only does Churchill Galleries offer an array of chests, armoires, cupboards, tables, chairs, dining tables, consoles, desks and secretaries; but also complementary items such as chandeliers, mirrors, porcelains, custom lamps and accessories.
For our latest arrivals visit us on 1stdibs, incollect and DECASO


text:
Clearwater Super Boat National Championship
9th Annual Super Boat National / Florida Championship Super Boat International is the premier national and international sanctioning body for offshore powerboat racing around the world. The series has attracted many celebrity racers over the years, including Don Johnson, Kurt Russell, Chuck Norris, Bruce Jenner and Jason Priestley. With an estimated million race fans attending…Details


text:
Hi all, just wondering if anyone here in the forums can help me with a little situation. I've just recently got my Asphalt RCZ only last weekend and noticed a small chip on the paintwork that has actually gone through the coats and down to the metal.
I've asked people around me if the fact that it is matt paint makes it more difficult to repair or whether it's just a run of the mill paint repair that can be done properly by myself or a shop. I made an enquiry with ChipsAway who subsequently said they weren't going to go near it and suggested I go to Peugeot directly. I wouldn't be half as concerned if the chip hadn't gone through the coats but I'd hate to see rust form around it if I leave it too long.
I hope someone out there can give me some advice as I'm by no means an expert on car paint, let alone matt paint!


text:
- Trash receptacles (garbage cans, trash bins, etc) in every building have been (or will be) labeled with either a green "single-stream recycling" sticker or a red "landfill waste" sticker. Place any recyclable items in a trash can with a green sticker. Place any non-recyclable items in a trash can with a red sticker. If you are aware of any trash can that has not been labeled, please contact the MICA Committee on Sustainability at firstname.lastname@example.com. You can also pick up a green or red sticker to label the cans in your areas as you see fit.
- Please note that there are very few items that cannot be recycled. Eventually every trash can in every building on campus will be labeled as either a "recycling" trash can or as a "non-recycling" trash can. Our goal is to significantly reduce the amount of garbage going to the landfill. If you are unsure of what can or can't be recycled, please visit our website at www.mica.edu/recycling and download one of our posters.
- Any recyclable item can be placed inside any recycling trash can (trash cans with green "recycle" stickers) located in any building, or directly into the blue dumpsters.
- Non-recyclable items (primarily, food waste, ceramics, porcelain, incandescent light bulbs, etc.), should be placed in the "non-recyclable" trash cans.
- Place any food waste in garbage cans with red "landfill" stickers on them (however, small residual amounts of food waste left on paper wrappers or in boxes, for example, are ok to recycle).
- The blue plastic recycling bins will continue to be placed next to copy machines. Paper placed in these bins is collected by the Abitibi Paper and Recycling Company, and MICA receives a nominal payment from Abitibi (however, any paper that is placed inside these blue bins can theoretically also be placed in any recycle container since it will be recycled regardless. The only difference will be that Abitibi only collects and pays for paper from the blue bins for their purpose).
- Recycle stations are located in the trash rooms on each floor of Founders Green and in the Meyerhoff House. It is no longer necessary to separate recyclable items – all recyclables can be placed in the same trash can or bin.
- Blue Single-stream recycling dumpsters have been located at Mount Royal Station, Founders Green, behind the Brown Center, and at the Studio Center. These dumpsters are large 30-yard containers that have been painted blue to distinguish them from the green dumpsters used for non-recyclable garbage (we are in the process of ordering additional, smaller dumpsters). Large decals have been placed on the blue dumpsters to further identify these dumpsters as being for single-stream recycling.
- Any recyclable items can be placed in the blue dumpsters. There is no need to separate your recyclables – glass, plastics, metal, paper, etc., can all be placed in the same blue recycling dumpsters.
If anyone needs any assistance in figuring out single-stream recycling on campus, or would like to have a quick course in single-stream recycling "101," please contact the Sustainability Committee at firstname.lastname@example.com, or contact Facilities at X4251.


text:
Microsoft has rolling out Planner a team collaboration software for all eligible Office 365 users. Basically Planner let users to let visually organize plans, assign tasks, share files, chat and some more stuff.
The Planner tool let team to collaborate on task they are working form weeks with the help of this tool team can easily setup due dates, tasks, updates status, share files and lot more. While email notifications and visual dashboard and it also integrate with other products such as Notebook and Outlook.
Planner will automatically appear in the Office 356 app launcher for those users that eligible subscription plans includes Office 365 Enterprise E1–E5, Business Essentials, Premium, and Education.
Microsoft claims –
The Planner launched is expected to be compete in upcoming weeks. It will continue to add new features to the Planner in coming months.


text:
Mexican auto sector willing to accept quotasMarch 15th, 2012 - 11:00 am ICT by IANS
Mexico City, March 15 (IANS/EFE) Mexico's automobile industry said it is willing to accept temporary quotas on its exports to Brazil as long as the restrictions are lifted after a period of no more than three years.
The two countries have been reviewing their bilateral free-trade deal on autos over the past several weeks due to Brazil's concerns about a spike in imports from Mexico and the potential damage that has caused to Brazilian manufacturers.
"We're willing to maintain a steady flow of dialogue and (Mexican negotiators) can even be more flexible in Brazil's demands … as long as a deal is reached quickly to preserve the Economic Complementation Accord," the president of the Mexican Automotive Industry Association, or AMIA, Eduardo Solis, said Tuesday.
That agreement regulates tariff-free trade in vehicles and car parts between Brazil and Mexico.
The quota arrangement could be applied for "one, two, three years, but we have to be sure that after that time we can return to free trade", Solis said at a press conference.
Solis made his remarks a day before Mexican and Brazilian ministers meet in Mexico City for another round of talks to revise the trade accord.
In addition to demanding that Mexico reduce its auto exports sharply from 2011 levels, Brazil also wants domestic content requirements for vehicles exported under the accord revised upward, citing concerns that Mexican-made cars have an excessive amount of components manufactured elsewhere.
It also wants Mexico to agree to include heavy vehicles such as trucks in the auto agreement by 2016, four years ahead of the original 2020 deadline.
Solis, however, criticized Brazil for trying to tackle its competitiveness problems with a protectionist strategy.
"The (auto) accord is not the cause of the problems Brazil now has but it's also not the solution because they say they have a competitiveness problem in terms of their exports, and if they have an internal structural or monetary problem, this instrument won't resolve either the monetary situation or problems of competitiveness in Brazilian industry," he said.
Brazil says vehicle imports from Mexico rose last year by 40 percent even as Brazilian auto exports to Mexico declined by the same percentage, resulting in a trade deficit in that sector of nearly $1.7 billion.
Mexico, for its part, acknowledges that it had a significant trade surplus with Brazil in that sector last year, but it says that since the agreement went into effect in 2003 it has accumulated a vehicle-trade deficit with the South American giant of around $10 billion.
- Brazil wants Mexico to cap vehicle exports - Mar 11, 2012
- Brazil, Mexico settle dispute over auto exports - Mar 17, 2012
- Brazil sets auto export quotas for Mexico - Apr 05, 2012
- Argentina looks to stem imports of Mexican-made autos - Apr 03, 2012
- Audi to build $1.3 bn plant in Mexico - Sep 07, 2012
- Auto production hits record level in Mexico - Oct 18, 2011
- Mexico poised to restrict imports of Chinese footwear - Sep 08, 2011
- Nissan to build new $2 bn plant in Mexico - Jan 27, 2012
- Mexico lost $872 bn to illegal capital flight: Study - Jan 31, 2012
- Mexico complains to China about unfair trade practices - Sep 30, 2011
- Brazil announces plan to boost exports - Feb 18, 2012
- Brazil must keep currency competitive, says minister - Mar 14, 2012
- Chrysler plant in Mexico to build Fiat subcompact - Mar 09, 2011
- BRICS nations set to surpass Mexico in GDP per capita - Oct 28, 2011
- `Millions of Mexicans ready to cheat on spouses' - Dec 15, 2011
Tags: amia, auto exports, auto sector, automobile industry, automotive industry, car parts, competitiveness, content requirements, dialogue, efe, heavy vehicles, mexican auto, mexico city, negotiators, quota, quotas, solis, spike, steady flow, trade accord


text:
Egg Carton Bugs
Bugs. Creepy crawlers. Spiders and caterpillars. For some reason, kids are enthralled with critters with more than four legs. This simple and fun craft will let kids explore their inner bug while also putting to good use all those egg cartons you saved in your recycling bin.
All you need to do is remember to save your old cardboard egg crates. After you've collected several of them, it's time to turn them into bugs. With a few pipe cleaners, paint, googly eyes, and some good old fashioned bug love, the kids will have a blast creating creepy crawlies to freak Mom out.
What You Need:
- Egg cartons
- Scissors
- Paint
- Paintbrushes
- Wiggle eyes
- Markers
- Pipe cleaners
- Hole punch
What You Do:
- An adult should help the kids separate the egg cartons into various sizes using a pair of scissors. Make some that are only one cup, some with two cups, and some with as many as four or five (for caterpillars).
- Let your child choose what type of creepy s/he wants to make. One cup works well for a spider, two works well for a bigger insect, three or more work well for a caterpillar.
- Have your child paint her bug in any color she wishes. Let it dry.
- Once it's dry, place it so the carton is upside down (the bump is on top.) Using a single hole punch, punch holes at the base of the cup where you want the legs. For a spider, punch three holes on each side.
- Thread the pipe cleaners through the holes to create legs.
- Then go crazy with the decorations. Get out the sequins, pom poms, googly eyes, glitter, and feathers. These bugs can be as silly or as creepy as the kids like!
Pretty soon, you'll have your very own bug farm inside your house.


text: Motocaddy Motocaddy has been associated with the highest quality yet affordable electric golf trolleys for nearly a decade. Since 2004 when it was founded, the brand has been working closely with Tour pros and many experienced golfers with an aim to develop golf trolleys that meet the needs of players of all skill levels. Motocaddy also works with an engineering company that produces parts for Airbus in order for its golf trolleys to meet the highest quality standards in technical aspect as well. Motocaddy's end products are a unique blend of experience in golf and superior engineering.In addition to electric golf trolleys, Motocaddy also manufactures award-winning golf bags and various trolley accessories including device cradles, rain/travel covers, cart seats, USB cables, height extenders and much, much more. Motocaddy Electric Golf Trolleys Motocaddy Push/Pull Golf Trolleys Motocaddy Cart Bags Motocaddy Travel Bags Motocaddy Replacement Batteries and Chargers Motocaddy Accessories Motocaddy Clearance


text:
Who is Manchester United target 'El Bandido' James Rodriguez?
James Rodriguez could join Manchester United from Porto in the summer but what is so special about the youngster known as El Bandido?
It's hardly highway robbery but Manchester United will have to part with a hefty sum to capture El Bandido.
Sir Alex Ferguson is willing to use out-of-favour Nani as bait to land the 20-year-old Porto sensation, who has a release clause reputed to be more than £36million.
So what's so special about Rodriguez? Let's take a peek behind the mask of The Bandit.
What makes him so good?
His dribbling, first-touch and devastating ability to make things happen in the final third are reminiscent of Cristiano Ronaldo. Rodriguez scored 14 times for Porto last season while showing the unselfish nature of his game by producing 11 assists and it's always wise to be a team player if you want to be a long-term part of Fergie's future.
He has found the net eight times this term in 20 matches so he's on track to improve on the previous campaign.
Anyone back up that assertion?
Well, Sir Alex obviously likes him and he's not a bad judge but fellow Porto striker Jackson Martinez is also a big fan and said: 'For me, James is able to play on any team – Barcelona, Real Madrid, Manchester United, City… Despite being young, he would start on any team.'
So are Porto robbing United by asking so much for El Bandido?
The Portugese soccer powerhouse purchased the last 35 per cent of the Colombian's contract for a reported £7.7million at the start of the month. Their total investment will be £12m so they will be recouping three times their outlay. If Rodriguez has a long and successful career at Old Trafford, mind you, that £36m may yet be a relative snip.
Any danger of the fame and accolades going to the young man's head?
Apparently not. Rodriguez knows he still has to develop his game and said: 'I realise that I'm still young and I have many things to learn.'
All this El Bandido stuff makes him sound like a comic book superhero.
As it happens, Rodriguez has been groomed to succeed Hulk, who moved to Russian club last summer. So maybe there is a connection, yes.
What is Rodriguez's background?
He hails from Cucuta, located in northern Colombia near the Venezuelan border. The daily average temperature never dips below 25C degrees prompting inevitable, and rather tedious, questions about how he will cope with wet, freezing, February night games at Stoke. Answer: probably the same as he will cope with games against Liverpool, Newcastle, Chelsea and Tottenham – with aplomb.
Is Cucuta a hotbed of sporting talent?
Tennis player Fabiola Zuluaga reached the semi-finals of the Australian Open in 2004. Er. That's it.
Any knock on effects from the move?
United's outlay, even with Nani being part of the deal, may scupper Cristiano Ronaldo's chances of securing a move back to Old Trafford. Porto usually sell one big name a year and flogging Rodriguez may mean they keep hold of Joao Moutinho, although the boat may have sailed anyway as far as his chances of joining former coach Andre Villas-Boas at Tottenham are concerned.


text:
This Tuesday's shout out goes to the Million Baby Crawl, organized by Seventh Generation. An idea that I can support, stand behind and cheer for! Last April when I hosted the Green Mom's Carnvial and made the toxic tub video as a spoof, I took some heat. Now I'm just happy to see that the heat I took and the holey heck we raised sparked something and was just the beginning of bigger, greater and more amazing things to change legislation, raise concern and awarness and make companies stop using the toxic ingredients just because they can.
Why not? Great tips for free!


text:
James Arthur Teases New Song By Posting Studio Footage – Video
1 August 2013, 15:08
The 'Impossible' singer gives fans a taste of what he's been working on for his debut album.
James Arthur has offered fans a taster of some new material he's been working on in the studio this week.
The 'Impossible' star has been busy working on his debut album ever since winning the last series of The X Factor.
During the footage, he sings: "I feel like someone's talking to my spirit/ They tell me that there's reasons to survive/ I could draw you a picture/ I could write on my fist."
Alongside the video clip posted on Twitter, he wrote: "Back in the studio this week. Thought you all might like to share a little look at me in full flow.."
Watch James Arthur singing in the studio below:
Labrinth has also been working with the Middleborough star and previously teased how well the music was sounding.
Meanwhile, the current series of The X Factor is well underway with auditions taking place around the country.


text:
Belated Introduction
I'm Rich Ford of Stanford Law School. As Dahlia mentioned, my wife just gave birth to our second child (thanks Dahlia for the well wishes) so I've not been on top of blogging (or anything else)--sorry this is a bit on the late side. I write about civil rights, race relations and local government law and I've just recently published a book entitled The Race Card which was excerpted in Slate back in January. I'm looking forward to the conversation.


text:
Statue of Liberty (thing)
See all of Statue of Liberty, there are 8 more in this node.
|The New Colossus
|Liberty Enlightening the World
|Eiffel Tower
|Why do computer geeks feel they were born in the wrong time?
|Ghostbusters 2
|Angel of the North
|Gustave Eiffel
|Ninja World
|Ellis Island
|To the Bartholdi Statue
|Reverse Darwinism on the Internet
|Sweet Thames, run softly, for I speak not loud or long
|Prices should have no more than 2 significant digits
|Men in Black II
|Le pont Mirabeau
|World Trade Center
|Princess Diana
|Hudson River
|Islands of New York City
|The Transformers #23
|completion bond


text:
Trying to get a site of mine to validate against the xhtml1 strict dtd. Only one error remains - an input element inside of a form gives me the following error msg: Error: element "input" not allowed here; possible cause is an inline element containing a block-level element I've looked it over and don't see the problem (the nesting of the tags seems legal to me, but I must be missing something). I would be grateful if someone could tell me where I went wrong. Here's the link to the validator output (including source): http://validator.w3.org/check?uri=http%3A%2F%2Fwww.lophty.com%2FkumoEXP%2F&d octype=Inline&ss= beware link-breaking line-wrap... Thanks, brian donovanReceived on Monday, 14 May 2001 22:51:00 UTC
This archive was generated by hypermail 2.3.1 : Tuesday, 1 March 2016 14:17:29 UTC


text:
MIT's Introduction to Algorithms, Lectures 13 and 14: Amortized Analysis and Self-Organizing Lists
This is the ninth post in an article series about MIT's lecture course "Introduction to Algorithms." In this post I will review lectures thirteen and fourteen. They are on theoretical topics of Amortized Analysis, Competitive Analysis and Self-Organizing Lists.
Amortized analysis is a tool for analyzing algorithms that perform a sequence of similar operations. It can be used to show that the average cost of an operation is small, if one averages over a sequence of operations, even though a single operation within the sequence might be expensive. Amortized analysis differs from average-case analysis in that probability is not involved; an amortized analysis guarantees the average performance of each operation in the worst case.
Lecture thirteen looks at three most common techniques used in amortized analysis - Aggregate Analysis, Accounting Method (also known as Taxation Method) and Potential Method.
Competitive analysis is a method that is used to show how an Online Algorithm compares to an Offline Algorithm. An algorithm is said to be online if it does not know the data it will be executing on beforehand. An offline algorithm may see all of the data in advance.
A self-organizing list is a list that reorders its elements based on some self-organizing heuristic to improve average access time.
Lecture fourteen gives a precise definition of what it means for an algorithm to be competitive and shows a heuristic for a self-organizing list that makes it 4-competitive.
Lecture 13: Amortized Algorithms
Lecture thirteen starts with a question - "How large should a hash table be?" Well, we could make it as large as possible to minimize the search time, but then it might take too much space. We could then try to make it as small as possible, but what if we don't know the number of elements that will be hashed into it? The solution is to use a dynamic hash table that grows whenever it is about to overflow.
This creates a problem that at the moment of overflow the table must be grown and growing it might take a lot of time. Thus, we need a way to analyze the running time in a long run.
Lecture continues with three methods for this analysis, called amortized arguments - aggregate method, accounting method, and potential method.
In aggregate analysis, we determine an upper bound T(n) on the total cost of a sequence of n operations. The average cost per operation is then T(n)/n. We take the average cost as the amortized cost of each operation, so that all operations have the same amortized cost.
In accounting method we determine an amortized cost of each operation. When there is more than one type of operation, each type of operation may have a different amortized cost. The accounting method overcharges some operations early in the sequence, storing the overcharge as "prepaid credit" on specific objects in the data structure. The credit is used later in the sequence to pay for operations that are charged less than they actually cost.
Potential method is like the accounting method in that we determine the amortized cost of each operation and may overcharge operations early on to compensate for undercharges later. The potential method maintains the credit as the "potential energy" of the data structure as a whole instead of associating the credit with individual objects within the data structure.
Each method is applied to dynamic tables to show that average cost per insert is O(1).
You're welcome to watch lecture thirteen:
Topics covered in lecture thirteen:
- [01:05] How large should a hash table be?
- [04:45] Dynamic tables.
- [06:15] Algorithm of dynamic hash tables.
- [07:10] Example of inserting elements in a dynamic array.
- [09:35] Wrong analysis of time needed for n insert operations.
- [12:15] Correct analysis of n insert operations using aggregate analysis method.
- [19:10] Definition of amortized analysis.
- [21:20] Types of amortized arguments.
- [23:55] Accounting method (taxation method) amortized analysis.
- [29:00] Dynamic table analysis with accounting (taxation) method.
- [40:45] Potential method amortized analysis.
- [54:15] Table doubling analysis with potential method.
- [01:13:10] Conclusions about amortized costs, methods and bounds.
Lecture thirteen notes:
Lecture 14: Competitive Analysis and Self-Organizing Lists
Lecture fourteen starts with the notion of self-organizing lists. A self-organizing list is a list that reorders itself to improve the average access time. The goal is to find a reordering that minimizes the total access time.
At this point the lecture steps away from this problem for a moment and defines online algorithms and offline algorithms: Given a sequence S of operations that algorithm must execute, an online algorithm must execute each operation immediately but an offline algorithm may see all of S in advance.
Now the lecture returns to the self-organizing list problem and looks at two heuristics how the list might reorganize itself to minimize the access time. The first way is to keep a count of the number of times each element in the list is accessed and reorder list in the order of decreasing count. The other is move-to-front heuristic (MTF) - after accessing the element, move it to the front of the list.
Next the lecture defines what it means for an algorithm to be competitive. It is said that an online algorithm is α-competitive if there is a constant k such that for any sequence of operations the (running time cost of online algorithm) <= α·(running time cost of an optimal offline algorithm (also called "God's algorithm")) + k.
Lecture continues with a theorem that move-to-front is 4-competitive for self-organizing lists. The proof of this theorem takes almost an hour!
Topics covered in lecture fourteen:
- [01:00] Definition of self-organizing lists.
- [03:00] Example of a self-organizing list (illustrates transpose cost and access cost).
- [05:00] Definition of on-line and off-line algorithms.
- [08:45] Worst case analysis of self-organizing lists.
- [11:40] Average case analysis of selforganizing lists.
- [17:05] Move-to-front heuristic.
- [20:35] Definition of competitive analysis.
- [23:35] Theorem: MTF is 4-competitive.
- [25:50] Proof of this theorem.
Lecture fourteen notes:
Have fun with amortized and competitive analysis! The next post will be about dynamic programming!
PS. This course is taught from the CLRS book (also called "Introduction to Algorithms"):
Difference Between Edsger Dijkstra and Larry Wall
These two posters show the difference between professor Edsger Dijkstra and the author of Perl programming language, Larry Wall.
Edsger Dijkstra - Quick and Dirty, I Wouldn't Like It.
Larry Wall - Quick and Dirty, I'd Hit It.
Edsger Dijkstra - Discipline in Thought
I found a great video interview with Edsger Wybe Dijkstra. You have probably heard of Dijkstra's algorithm. He invented it.
In the interview professor Edsger talks about his thoughts on software development. He compares two very different styles of programming - Mozart style of programming vs. Beethoven style of programming. When Mozart started to write, the composition was finished. He wrote manuscript in elegant handwriting in one go. Beethoven was a doubter and a struggler. He started writing before he finished the composition and then glued corrections onto the page. In one place he did it nine times. When they peeled them, the last version proved to be identical to the first one.
From the video one can understand that Edsger preferred Mozart's style of programming. Not just programming, but Mozart style of doing things. He says that the most important thing has been the daily discipline of neatly writing down his thoughts.
His daily discipline lead to hundreds of crystal clear scientific papers, which have now been archived in EWD Archive.
You are welcome to watch interview with Edsger Dijkstra:
At the beginning of video Dijkstra criticizes current software release methodology. He says that version 1.0 of should be the finished product. I don't think he's right. It's like Tannenbaum saying Torvalds that Linux is obsolete. Also see "Release Early, Release Often."
Edsger Dijkstra's quotes from video:
- Computer science is no more about computers than astronomy is about telescopes.
- The competent programmer is fully aware of the limited size of his own skull. He therefore approaches his task in full humility and avoids clever tricks like the plague.
- We should not introduce errors through sloppiness but systematically keep them out.
- Program testing can convincingly show the presence of bugs but it is hopelessly inadequate to show their absence.
- Elegance is not a dispensable luxury but a factor that decides between success and failure.
I found a funny poster of Dijkstra:
10 Awk Tips, Tricks and Pitfalls
Hi guys and girls, this is the first and only guest post on my blog. It's written by Waldner from #awk on FreeNode IRC Network. He works as a sysadmin and does shell scripting as a hobby. Waldner will be happy to take any questions about the article. You can ask them in the comments of this post or on IRC.
This article takes a look at ten tips, tricks and pitfalls in Awk programming language. They are mostly taken from the discussions in #awk IRC channel. Here they are:
- 1. Be idiomatic!
- 2. Pitfall: shorten pipelines
- 3. Print lines using ranges
- 4. Split file on patterns
- 5. Locale-based pitfalls
- 6. Parse CSV
- 7. Pitfall: validate an IPv4 address
- 8. Check whether two files contain the same data
- 9. Pitfall: contexts and variable types in awk
- 10. Pulling out things
Be idiomatic!
Update: Mr. Waldner just notified me that he has improved the tips on being idiomatic. See "Idiomatic Awk" on his website!
In this paragraph, we give some hints on how to write more idiomatic (and usually shorter and more efficient) awk programs. Many awk programs you're likely to encounter, especially short ones, make large use of these notions.
Suppose one wants to print all the lines in a file that match some pattern (a kind of awk-grep, if you like). A reasonable first shot is usually something like
awk '{if ($0 ~ /pattern/) print $0}'
That works, but there are a number of things to note.
The first thing to note is that it is not structured according to the awk's definition of a program, which is
condition { actions }
Our program can clearly be rewritten using this form, since both the condition and the action are very clear here:
awk '$0 ~ /pattern/ {print $0}'
Our next step in the perfect awk-ification of this program is to note that /pattern/ is the same as $0 ~ /pattern/. That is, when awk sees a single regular expression used as an expression, it implicitly applies it to $0, and returns success if there is a match. Then we have:
awk '/pattern/ {print $0}'
Now, let's turn our attention to the action part (what's inside braces). print $0 is a redundant statement, since print alone, by default, prints $0.
awk '/pattern/ {print}'
But now we note that, when it finds that a condition is true, and there are no associated actions, awk performs a default action that is (you guessed it) print (which we already know is equivalent to print $0). Thus we can do this:
awk '/pattern/'
Now we have reduced the initial program to its simplest (and more idiomatic) form. In many cases, if all you want to do is print some lines, according to a condition, you can write awk programs composed only of a condition (although complex):
awk '(NR%2 && /pattern/) || (!(NR%2) && /anotherpattern/)'
That prints odd lines that match /pattern/, or even lines that match /anotherpattern/. Naturally, if you don't want to print $0 but instead do something else, then you'll have to manually add a specific action to do what you want.
From the above, it follows that
awk 1 awk '"a"' # single quotes are important!
are both awk programs that just print their input unchanged. Sometimes, you want to operate only on some lines of the input (according to some condition), but also want to print all the lines, regardless of whether they were affected by your operation or not. A typical example is a program like this:
awk '{sub(/pattern/,"foobar")}1'
This tries to replace "pattern" with "foobar". Whether or not the substitution succeeds, the always-true condition "1" prints each line (you could even use "42", or "19", or any other nonzero value if you want; "1" is just what people traditionally use). This results in a program that does the same job as sed 's/pattern/foobar/'. Here are some examples of typical awk idioms, using only conditions:
awk 'NR % 6' # prints all lines except those divisible by 6 awk 'NR > 5' # prints from line 6 onwards (like tail -n +6, or sed '1,5d') awk '$2 == "foo"' # prints lines where the second field is "foo" awk 'NF >= 6' # prints lines with 6 or more fields awk '/foo/ && /bar/' # prints lines that match /foo/ and /bar/, in any order awk '/foo/ && !/bar/' # prints lines that match /foo/ but not /bar/ awk '/foo/ || /bar/' # prints lines that match /foo/ or /bar/ (like grep -e 'foo' -e 'bar') awk '/foo/,/bar/' # prints from line matching /foo/ to line matching /bar/, inclusive awk 'NF' # prints only nonempty lines (or: removes empty lines, where NF==0) awk 'NF--' # removes last field and prints the line awk '$0 = NR" "$0' # prepends line numbers (assignments are valid in conditions)
Another construct that is often used in awk is as follows:
awk 'NR==FNR { # some actions; next} # other condition {# other actions}' file1 file2
This is used when processing two files. When processing more than one file, awk reads each file sequentially, one after another, in the order they are specified on the command line. The special variable NR stores the total number of input records read so far, regardless of how many files have been read. The value of NR starts at 1 and always increases until the program terminates. Another variable, FNR, stores the number of records read from the current file being processed. The value of FNR starts from 1, increases until the end of the current file, starts again from 1 as soon as the first line of the next file is read, and so on. So, the condition "NR==FNR" is only true while awk is reading the first file. Thus, in the program above, the actions indicated by "# some actions" are executed when awk is reading the first file; the actions indicated by "# other actions" are executed when awk is reading the second file, if the condition in "# other condition" is met. The "next" at the end of the first action block is needed to prevent the condition in "# other condition" from being evaluated, and the actions in "# other actions" from being executed while awk is reading the first file.
There are really many problems that involve two files that can be solved using this technique. Here are some examples:
# prints lines that are both in file1 and file2 (intersection) awk 'NR==FNR{a[$0];next} $0 in a' file1 file2
Here we see another typical idiom: a[$0] has the only purpose of creating the array element indexed by $0. During the pass over the first file, all the lines seen are remembered as indexes of the array a. The pass over the second file just has to check whether each line being read exists as an index in the array a (that's what the condition $0 in a does). If the condition is true, the line is printed (as we already know).
Another example. Suppose we have a data file like this
20081010 1123 xxx 20081011 1234 def 20081012 0933 xyz 20081013 0512 abc 20081013 0717 def ...thousand of lines...
where "xxx", "def", etc. are operation codes. We want to replace each operation code with its description. We have another file that maps operation codes to human readable descriptions, like this:
abc withdrawal def payment xyz deposit xxx balance ...other codes...
We can easily replace the opcodes in the data file with this simple awk program, that again uses the two-files idiom:
# use information from a map file to modify a data file awk 'NR==FNR{a[$1]=$2;next} {$3=a[$3]}1' mapfile datafile
First, the array a, indexed by opcode, is populated with the human readable descriptions. Then, it is used during the reading of the second file to do the replacements. Each line of the datafile is then printed after the substitution has been made.
Another case where the two-files idiom is useful is when you have to read the same file twice, the first time to get some information that can be correctly defined only by reading the whole file, and the second time to process the file using that information. For example, you want to replace each number in a list of numbers with its difference from the largest number in the list:
# replace each number with its difference from the maximum awk 'NR==FNR{if($0>max) max=$0;next} {$0=max-$0}1' file file
Note that we specify "file file" on the command line, so the file will be read twice.
Caveat: all the programs that use the two-files idiom will not work correctly if the first file is empty (in that case, awk will execute the actions associated to NR==FNR while reading the second file). To correct that, you can reinforce the NR==FNR condition by adding a test that checks that also FILENAME equals ARGV[1].
Pitfall: shorten pipelines
It's not uncommon to see lines in scripts that look like this:
somecommand | head -n +1 | grep foo | sed 's/foo/bar/' | tr '[a-z]' '[A-Z]' | cut -d ' ' -f 2
This is just an example. In many cases, you can use awk to replace parts of the pipeline, or even all of it:
somecommand | awk 'NR>1 && /foo/{sub(/foo/,"bar"); print toupper($2)}'
It would be nice to collect here many examples of pipelines that could be partially or completely eliminated using awk.
Print lines using ranges
Yes, we all know that awk has builtin support for range expressions, like
# prints lines from /beginpat/ to /endpat/, inclusive awk '/beginpat/,/endpat/'
Sometimes however, we need a bit more flexibility. We might want to print lines between two patterns, but excluding the patterns themselves. Or only including one. A way is to use these:
# prints lines from /beginpat/ to /endpat/, not inclusive awk '/beginpat/,/endpat/{if (!/beginpat/&&!/endpat/)print}' # prints lines from /beginpat/ to /endpat/, not including /beginpat/ awk '/beginpat/,/endpat/{if (!/beginpat/)print}'
It's easy to see that there must be a better way to do that, and in fact there is. We can use a flag to keep track of whether we are currently inside the interesting range or not, and print lines based on the value of the flag. Let's see how it's done:
# prints lines from /beginpat/ to /endpat/, not inclusive awk '/endpat/{p=0};p;/beginpat/{p=1}' # prints lines from /beginpat/ to /endpat/, excluding /endpat/ awk '/endpat/{p=0} /beginpat/{p=1} p' # prints lines from /beginpat/ to /endpat/, excluding /beginpat/ awk 'p; /endpat/{p=0} /beginpat/{p=1}'
All these programs just set p to 1 when /beginpat/ is seen, and set p to 0 when /endpat/ is seen. The crucial difference between them is where the bare "p" (the condition that triggers the printing of lines) is located. Depending on its position (at the beginning, in the middle, or at the end), different parts of the desired range are printed. To print the complete range (inclusive), you can just use the regular /beginpat/,/endpat/ expression or use the flag technique, but reversing the order of the conditions and associated patterns:
# prints lines from /beginpat/ to /endpat/, inclusive awk '/beginpat/{p=1};p;/endpat/{p=0}'
It goes without saying that while we are only printing lines here, the important thing is that we have a way of selecting lines within a range, so you can of course do anything you want instead of printing.
Split file on patterns
Suppose we have a file like this
line1 line2 line3 line4 FOO1 line5 line6 FOO2 line7 line8 FOO3 line9 line10 line11 FOO4 line12 FOO5 line13
We want to split this file on all the occurrences of lines that match /^FOO/, and create a series of files called, for example, out1, out2, etc. File out1 will contain the first 4 lines, out2 will contain "line5" and "line6", etc. There are at least two ways to do that with awk:
# first way, works with all versions of awk awk -v n=1 '/^FOO[0-9]*/{close("out"n);n++;next} {print > "out"n}' file
Since we don't want to print anything when we see /^FOO/, but only update some administrative data, we use the "next" statement to tell awk to immediately start processing the next record. Lines that do not match /^FOO/ will instead be processed by the second block of code. Note that this method will not create empty files if an empty section is found (eg, if "FOO5\nFOO6" is found, the file "out5" will not be created). The "-v n=1" is used to tell awk that the variable "n" should be initialized with a value of 1, so effectively the first output file will be called "out1".
Another way (which however needs GNU awk to work) is to read one chunk of data at a time, and write that to its corresponding out file.
# another way, needs GNU awk LC_ALL=C gawk -v RS='FOO[0-9]*\n' -v ORS= '{print > "out"NR}' file
The above code relies on the fact that GNU awk supports assigning a regular expression to RS (the standard only allows a single literal character or an empty RS). That way, awk reads a series of "records", separated by the regular expression matching /FOO[0-9]*\n/ (that is, the whole FOO... line). Since newlines are preserved in each section, we set ORS to empty since we don't want awk to add another newline at the end of a block. This method does create an empty file if an empty section is encountered. On the downside, it's a bit fragile because it will produce incorrect results if the regex used as RS appears somewhere else in the rest of the input.
We will see other examples where gawk's support for regexes as RS is useful. Note that the last program used LC_ALL=C at the beginning...
Locale-based pitfalls
Sometimes awk can behave in an unexpected way if the locale is not C (or POSIX, which should be the same). See for example this input:
-rw-r--r-- 1 waldner users 46592 2003-09-12 09:41 file1 -rw-r--r-- 1 waldner users 11509 2008-10-07 17:42 file2 -rw-r--r-- 1 waldner users 11193 2008-10-07 17:41 file3 -rw-r--r-- 1 waldner users 19073 2008-10-07 17:45 file4 -rw-r--r-- 1 waldner users 36332 2008-10-07 17:03 file5 -rw-r--r-- 1 waldner users 33395 2008-10-07 16:53 file6 -rw-r--r-- 1 waldner users 54272 2008-09-18 16:20 file7 -rw-r--r-- 1 waldner users 20573 2008-10-07 17:50 file8
You'll recognize the familiar output of ls -l here. Let's use a non-C locale, say, en_US.utf8, and try an apparently innocuous operation like removing the first 3 fields.
$ LC_ALL=en_US.utf8 awk --re-interval '{sub(/^([^[:space:]]+[[:space:]]+){3}/,"")}1' file -rw-r--r-- 1 waldner users 46592 2003-09-12 09:41 file1 -rw-r--r-- 1 waldner users 11509 2008-10-07 17:42 file2 -rw-r--r-- 1 waldner users 11193 2008-10-07 17:41 file3 -rw-r--r-- 1 waldner users 19073 2008-10-07 17:45 file4 -rw-r--r-- 1 waldner users 36332 2008-10-07 17:03 file5 -rw-r--r-- 1 waldner users 33395 2008-10-07 16:53 file6 -rw-r--r-- 1 waldner users 54272 2008-09-18 16:20 file7 -rw-r--r-- 1 waldner users 20573 2008-10-07 17:50 file8
It looks like sub() did nothing. Now change that to use the C locale:
$ LC_ALL=C awk --re-interval '{sub(/^([^[:space:]]+[[:space:]]+){3}/,"")}1' file users 46592 2003-09-12 09:41 file1 users 11509 2008-10-07 17:42 file2 users 11193 2008-10-07 17:41 file3 users 19073 2008-10-07 17:45 file4 users 36332 2008-10-07 17:03 file5 users 33395 2008-10-07 16:53 file6 users 54272 2008-09-18 16:20 file7 users 20573 2008-10-07 17:50 file8
Now it works. Another localization issue is the behavior of bracket expressions matching, like for example [a-z]:
$ echo 'èòàù' | LC_ALL=en_US.utf8 awk '/[a-z]/' èòàù
This may or may not be what you want. When in doubt or when facing an apparently inexplicable result, try putting LC_ALL=C before your awk invocation.
Parse CSV
Update: Mr. Waldner just notified me that he has improved this section of the article on his website. See "CVS Parsing With Awk".
This is another thing people do all the time with awk. Simple CSV files (with fields separated by commas, and commas cannot appear anywhere else) are easily parsed using FS=','. There can be spaces around fields, and we don't want them, like eg
field1 , field2 , field3 , field4
Exploiting the fact that FS can be a regex, we could try something like FS='^ *| *, *| *$'. This can be problematic for two reasons:
- actual data field might end up correponding either to awk's fields 1 ... NF or 2 ... NF, depending on whether the line has leading spaces or not;
- for some reason, assigning that regex to FS produces unexpected results if fields have embedded spaces (anybody knows why?).
In this case, it's probably better to parse using FS=',' and remove leading and trailing spaces from each field:
# FS=',' for(i=1;i<=NF;i++){ gsub(/^ *| *$/,"",$i); print "Field " i " is " $i; }
Another common CSV format is
Assuming double quotes cannot occur in fields. This is easily parsed using FS='^"|","|"$' (or FS='","|"' if you like), keeping in mind that the actual fields will be in position 2, 3 ... NF-1. We can extend that FS to allow for spaces around fields, like eg
"field1" , "field2", "field3" , "field4"
by using FS='^ *"|" *, *"|" *$'. Usable fields will still be in positions 2 ... NF-1. Unlike the previous case, here that FS regex seems to work fine. You can of course also use FS=',', and remove extra characters by hand:
# FS=',' for(i=1;i<=NF;i++){ gsub(/^ *"|" *$/,"",$i); print "Field " i " is " $i; }
Another CSV format is similar to the first CSV format above, but allows for field to contain commas, provided that the field is quoted:
field1, "field2,with,commas" , field3 , "field4,foo"
We have a mixture of quoted and unquoted fields here, which cannot parsed directly by any value of FS (that I know of, at least). However, we can still get the fields using match() in a loop (and cheating a bit):
$0=$0","; # yes, cheating while($0) { match($0,/[^,]*,| *"[^"]*" *,/); sf=f=substr($0,RSTART,RLENGTH); # save what matched in sf gsub(/^ *"?|"? *,$/,"",f); # remove extra stuff print "Field " ++c " is " f; sub(sf,""); # "consume" what matched }
As the complexity of the format increases (for example when escaped quotes are allowed in fields), awk solutions become more fragile. Although I should not say this here, for anything more complex than the last example, I suggest using other tools (eg, Perl just to name one). Btw, it looks like there is an awk CSV parsing library here: http://lorance.freeshell.org/csv/ (I have not tried it).
Pitfall: validate an IPv4 address
Let's say we want to check whether a given string is a valid IPv4 address (for simplicity, we limit our discussion to IPv4 addresses in the traditiona dotted quad format here). We start with this seemingly valid program:
awk -F '[.]' 'function ok(n){return (n>=0 && n<=255)} {exit (ok($1) && ok($2) && ok($3) && ok($4))}'
This seems to work, until we pass it '123b.44.22c.3', which it happily accepts as valid. The fact is that, due to the way awk's number to string conversion works, some strings may "look like" numbers to awk, even if we know they are not. The correct thing to do here is to perform a string comparison against a regular expression:
awk -F '[.]' 'function ok(n) { return (n ~ /^([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])$/) } {exit (ok($1) && ok($2) && ok($3) && ok($4))}'
Check whether two files contain the same data
We want to check whether two (unsorted) files contain the same data, that is, the set of lines of the first file is the same set of lines of the second file. One way is of course sorting the two files and processing them with some other tool (for example, uniq or diff). But we want to avoid the relatively expensive sort operation. Can awk help us here? The answer (you guessed it) is yes. If we know that the two files do not contain duplicates, we can do this:
awk '!($0 in a) {c++;a[$0]} END {exit(c==NR/2?0:1)}' file1 file2
and check the return status of the command (0 if the files are equal, 1 otherwise). The assumption we made that the two files must not contain duplicate lines is crucial for the program to work correctly. In essence, what it does is to keep track of the number of different lines seen. If this number is exactly equal to half the number of total input records seen, then the two files must be equal (in the sense described above). To understand that, just realize that, in all other cases (ie, when a file is only a partial subset or is not a subset of the other), the total number of distinct lines seen will always be greater than NR/2.
The program's complexity is linear in the number of input records.
Pitfall: contexts and variable types in awk
We have this file:
1,2,3,,5,foo 1,2,3,0,5,bar 1,2,3,4,5,baz
and we want to replace the last field with "X" only when the fourth field is not empty. We thus do this:
awk -F ',' -v OFS=',' '{if ($4) $6="X"}1'
But we see that the substitution only happens in the last line, instead of the last two as we expected. Why?
Basically, there are only two data types in awk: strings and numbers. Internally, awk does not assign a fixed type to the variables; they are literally considered to be of type "number" and "string" at the same time, with the number 0 and the null string being equivalent. Only when a variable is used in the program, awk automatically converts it to the type it deems appropriate for the context. Some contexts strictly require a specific type; in that case, awk automatically converts the variable to that type and uses it. In contexts that does not require a specific type, awk treats variables that "look like" numbers as numbers, and the other variables are treated as strings. In out example above, the simple test "if ($4)" does not provide a specific context, since the tested variable can be anything. In the first line, $4 is an empty string, so awk considers it false for the purposes of the test. In the second line, $4 is "0". Since it look like a number, awk uses it like a number, ie zero. Since 0 is considered false, the test is unsuccessful and the substitution is not performed.
Luckily, there is a way to help awk and tell it exactly what we want. We can use string concatenation and append an empty string to the variable (which does not change its value) to explicitly tell awk that we want it to treat it like a string, or, conversely, add 0 to the variable (again, without changing its value) to explicitly tell awk that we want a number. So this is how our program should be to work correctly:
awk -F ',' -v OFS=',' '{if ($4"") $6="X"}1' # the "" forces awk to evaluate the variable as a string
With this change, in the second line the if sees the string "0", which is not considered false, and the test succeeds, just as we wanted.
As said above, the reverse is also true. Another typical problematic program is this:
awk '/foo/{tot++} END{print tot}'
This, in the author's intention, should count the number of lines that match /foo/. But if /foo/ does not appear in the input, the variable tot retains its default initial value (awk initializes all variables with the dual value "" and 0). print expects a string argument, so awk supplies the value "". The result is that the program prints just an empty line. But we can force awk to treat the variable as numeric, by doing this:
awk '/foo/{tot++} END{print tot+0}'
The seemingly innocuous +0 has the effect of providing numeric context to the variable "tot", so awk knows it has to prefer the value 0 of the variable over the other possible internal value (the empty string). Then, numeric-to-string conversion still happens to satisfy print, but this time what awk converts to string is 0, so print sees the string "0" as argument, and prints it.
Note that, if an explicit context has been provided to a variable, awk remembers that. That can lead to unexpected results:
# input: 2.5943 10 awk '{$1=sprintf("%d",$1); # truncates decimals, but also explicitly turns $1 into a string! if($1 > $2) print "something went wrong!" } # this is printed
Here, after the sprintf(), awk notes that we want $1 to be a string (in this case, "2"). Then, when we do if($1>$2), awk sees that $2 has no preferred type, while $1 does, so it converts $2 into a string (to match the wanted type of $1) and does a string comparison. Of course, 99.9999% of the times this is not what we want here. In this case, the problem is easily solved by doing "if ($1+0 > $2)" (doing $2+0 instead WON'T work!), doing "$1=$1+0" after the sprintf(), or using some other means to truncate the value of $1, that does not give it explicit string type.
Pulling out things
Suppose you have a file like this:
Yesterday I was walking in =the street=, when I saw =a black dog=. There was also =a cat= hidden around there. =The sun= was shining, and =the sky= was blue. I entered =the music shop= and I bought two CDs. Then I went to =the cinema= and watched =a very nice movie=. End of the story.
Ok, silly example, fair enough. But suppose that we want to print only and all the parts of that file that are like =something=. We have no knowledge of the structure of the file. The parts we're interested in might be anywere; they may span lines, or there can be many of them on a single line. This seemingly daunting and difficult task is actually easily accomplished with this small awk program:
awk -v RS='=' '!(NR%2)' # awk -v RS='=' '!(NR%2){gsub(/\n/," ");print}' # if you want to reformat embedded newlines
Easy, wasn't it? Let's see how this works. Setting RS to '=' tells awk that records are separated by '=' (instead of the default newline character). If we look at the file as a series of records separated by '=', it becomes clear that what we want are the even-numbered records. So, just throw in a condition that is true for even-numbered records to trigger the printing.
GNU awk can take this technique a step further, since it allows us to assign full regexes to RS, and introduces a companion variable (RT) that stores the part of the input that actually matched the regex in RS. This allows us, for example, to apply the previous technique when the interesting parts of the input are delimited by different characters or string, like for example when we want everything that matches <tag>something</tag>. With GNU awk, we can do this:
gawk -v RS='</?tag>' 'RT=="</tag>"'
or again
gawk -v RS='</?tag>' '!(NR%2)'
and be done with that. Another nice thing that can be done with GNU awk and RT is printing all the parts of a file that match an arbitrary regular expression (something otherwise usually not easily accomplished). Suppose that we want to print everything that looks like a number in a file (simplifiying, here any sequence of digits is considered a number, but of course this can be refined), we can do just this:
gawk -v RS='[0-9]+' 'RT{print RT}'
Checking that RT is not null is necessary because for the last record of a file RT is null, and an empty line would be printed in that case. The output produced by the previous program is similar to what can be obtained using grep -o. But awk can do better than that. We can use a slight variation of this same technique if we want to add context to our search (something grep -o alone cannot do). For example, let's say that we want to print all numbers, but only if they appear inside "--", eg like --1234--, and not otherwise. With gawk, we can do this:
gawk -v RS='--[0-9]+--' 'RT{gsub(/--/,"",RT);print RT}'
So, a carefully crafted RS selects only the "right" data, that can be subsequently extracted safely and printed.
With non-GNU awk, matching all occurrences of an expression can still be done, it just requires more code. See FindAllMatches.
Have fun!
Have fun learning Awk! It's a fun language to know.
Ps. I will go silent for a week. I have an on-site interview with Google in Mountain View, California. I'll be back on 31st of October and will post something new in the first week of November!
MIT's Introduction to Algorithms, Lecture 12: Skip Lists
This is the eighth post in an article series about MIT's lecture course "Introduction to Algorithms." In this post I will review lecture twelve, which introduces an efficient search structure called Skip Lists.
Skip lists are an efficient data structure that can be used in place of balanced trees. Skip lists use probabilistic balancing rather than strictly enforce balancing and as a result the algorithms for insertion and deletion in skip lists are much simpler to implement and significantly faster than the equivalent algorithms for balanced search trees (see lectures 9 and 10 for search trees).
Here is the first publication ever on skip lists by their inventor William Pugh - Skip Lists: A Probabalistic Alternative to Balanced Trees
The lecture begins with Erik Demaine (professor) telling the students that before the lecture he implemented skip lists to see how fast it could be done. It took him 10 minutes to implement linked lists (on which skip lists are based) and took another 30 to implement skip lists themselves (+30 mins debugging ;) ). He says that they are so simple that at no point did he have to think while implementing them. Compare it to red-black trees for example, where you have to think really hard to implement the operations to maintain red-black tree properties (see lecture 10 on red-black trees).
The lecture continues with derivation of skip lists from scratch. First, a single sorted linked list is considered. Searching in a sorted linked list takes O(n). Then another sorted linked list is added. The added linked list is chosen to be a sublist of the first linked list. The elements that both lists share are linked together with another link (see my scanned lecture notes below to see how it looks). The search cost for such structure is O(2·sqrt(n)). Then another and another linked list is added, the search cost goes down to O(3·n1/3), O(4·n1/4), ..., O(k·n1/k). Now, what should k be? Take it to be log(n), we get running time of O(lg(n)·n1/lg(n)), which is O(2·lg(n)) - logarithmic time search structure!
The lecture also presents Search(x) method for finding the element x in a skip list, and Insert(x) method for inserting the element x in a skip list.
The rest of the lecture is allocated to the proof that the search operation in skiplists takes O(lg(n)) time with high probability.
You're welcome to watch lecture twelve:
Topics covered in lecture twelve:
- [00:10] A new dynamic, balanced, randomized and simple search structure - skip lists.
- [01:20] Review of other simple search structures - treaps, red-black trees, b-trees.
- [03:55] Skip lists are a data structure that you will never forget, so simple it is.
- [06:10] All the skip list operations take O(lg(n)) time almost guaranteed (with high probability).
- [07:30] Implementing skip lists from scratch.
- [09:05] Search cost in a single sorted linked list.
- [10:30] Adding a second linked list, search cost analysis.
- [11:16] Trick question: what is this sequence 14, 23, 34, 42, 50, 59, 66, 72, 79, 86, 96, 103, 110, 116, 125? (I won't reveal the answer ;) , you'll have to watch the lecture).
- [14:35] Building skip list out of this sequence.
- [17:07] Search(x) operation algorithm for a skip list.
- [18:40] Example of search operation.
- [21:20] What elements do go in the second linked list?
- [25:30] Search cost of a skip list with two sorted linked lists.
- [27:53] Skip list with three sorted link lists.
- [29:14] Skip list with k sorted linked lists.
- [29:25] What should k be? (It should ideally be lg(n)).
- [32:10] Example of an ideal skip list.
- [38:30] Skip lists roughly maintain their structure subject to updates (insert, delete).
- [39:40] Insert(x) operation algorithm for a skip list.
- [47:00] Building a random skip list.
- [54:00] Rigorous analysis of search cost of skip lists.
- [55:00] Theorem: with high probability, search in n element skiplist costs O(lg(n)).
- [57:10] Definition: with high probability.
- [01:00:00] Boole's inequality.
- [01:06:55] Joke: probability that Search(x) algorithm takes more than O(lg(n)) time is smaller than a meteor striking the earth at the same time that your computer has floating point error at the same time earth explodes :D .
- [01:07:45] Lemma: With high probability number of levels in a skiplist is O(lg(n)).
- [01:13:00] Cool idea - analyze search time backwards.
Lecture twelve notes:
Have fun building skip lists! The next post will be about two really theoretical lectures on amortized analysis, competitive analysis and self-organizing lists.
PS. This course is taught from the CLRS book (also called "Introduction to Algorithms"):
PPS. This was one of the lectures that did not have a corresponding chapter in the book.


text:
Our Products
- Conveyor Rollers
- Wagon Cart
- Chain Wheel
- Gear Wheel
- Locking assembly
- Couplings
- Gear Rack
- Belt Pulley
- Worm and Worm Gear
- Conveyor chain
- Hardware
Wholesale Precision Gravity Conveyor Roller
Wholesale Precision Gravity Conveyor Roller
Qingdao East Precision As the typical product in the gravity roller series, Conveyor belt rollers are widely applied, especially in the carton conveying area, e. g. airport luggage handling and logistic distribution center.is a modern enterprise which specialists in the research and sale of mechanical transmission parts. OEM service is available. We offer rollers to customers around the country. Customers are satisfied with our products.
- *Brand Name:EPMM ROLLER
- *Material:Stainless Steel, Galvanized Steel, Steel with Rubber Coated, Aluminum alloy, PVC.
- *Specification:According to customer drawings
- *Certification:ISO9001


text:
European Green Capital Award 2015
Bristol's year as European Green Capital was a a city-wide initiative with many organisations involved, and to facilitate this a new company was established – Bristol 2015 Ltd.
Bristol 2015 Ltd worked closely with Bristol City Council, the Bristol Green Capital Partnership and directly with UK, EU and international partners who included educational and arts and cultural institutions, business networks, visitor and tourism bodies and many more. As a short term company with an independent board, Bristol 2015 raised funds, planned and delivered a programme with key strategic partners in the city – providing a platform for the year to raise the profile of the existing work and innovation in the city.
Bristol Green Capital Partnership also featured in the 'Bristol Method', created by Bristol 2015 Company in collaboration with city organisations and individuals. The Bristol Method is a knowledge-transfer programme aimed at helping people in other cities understand and apply the lessons that Bristol has learned in becoming a more sustainable city, not just in 2015 but over the last decade.
During 2015, Bristol Green Capital Partnership engaged with members and facilitated collaboration through events, projects and groups as well as supporting Bristol 2015 by sharing information, news and opportunities to its members and wider audiences. Read more about Partnership activities in 2015 here. In 2014 and 2015, membership of the Partnership grew by 62% to over 800 organisations – learn more about membership here.
Bristol Green Capital Partnership CIC was supported by Bristol 2015 Ltd. in 2014/2015 to become a legacy organisation for Green Capital, and announced a new future for the independent Community Interest Company in January 2016 to ensure civic leadership for the city beyond 2015.
Read the Bristol 2015 Ltd produced review of Bristol's year as European Green Capital
Visit the Bristol 2015 website for news and stories from the year
History of the Award
The aim of the award is to support and motivate European cities to improve their environment by awarding those that are making active and innovative efforts to achieve a more sustainable and healthy environment. These cities are already rewarded through the progress they make, but the European Green Capital award is intended to formally recognise their work and hopefully spur cities on to commit themselves to further environmental initiatives to become 'Green Cities – Fit For Life'.
The European Green Capital award is the outcome of an initiative taken by cities with a green vision and the concept was devised at a meeting in Tallinn, Estonia, held on 15 May 2006, on the initiative of Tallinn's former mayor, Mr Jüri Ratas.
Once a year as of 2010 a European city will be awarded the title of European Green Capital by a panel of environmental experts. The experts award the title to a European city that has successfully introduced concrete and innovative improvements to its urban environment.
Previous and future winners of the award include:
- 2010 – Stockholm, Sweeden
- 2011 – Hamburg, Germany
- 2012 – Vitoria-Gasteiz, Spain
- 2013 – Nantes, France
- 2014 – Copenhagen, Denmark
- 2015 – Bristol, UK
- 2016 – Ljubljana, Slovenia
- 2017 – Essen, Germany
Why Bristol?
On the third attempt, Bristol was awarded 2015 Green Capital status as a city that can:
- Demonstrate a well-established record of achieving high environmental standards
- Commit to ongoing and ambitious goals for further environmental improvement and sustainable development
- Be a role model – part of an ever growing group of cities that aim to inspire and promote best practices to all European cities.
The award was made based on a technical assessment and independent evaluation, based on a bid that was submitted by Bristol City Council and Bristol Green Capital Partnership. Bristol Green Capital Partnership was instrumental in helping Bristol win the European Green Capital Award, pulling together the work, impact and expertise of the city's hundreds of grassroots projects, businesses, community organisations and two universities. You can read the bid in full here.