As I write this, picture me, whatever you think I look like, in a kevlar vest, metal helmet, ducking under a desk in the basement at an undisclosed location. This blog is about local restaurants and will continue to be. My definition of local is this, if you're in another state and you see a restaurant that is the same as one in Salem, that's not local. But what happens when a local restaurant has success and grows beyond it's small town charm? Do we put that restaurant into the chain category, even though it's essentially the same restaurant that we'd bragged about for years? Dutch Bros Coffee fits into this quasi local category that blurs the line between the locals and chains. They are almost as familiar to us here in Salem as Starbucks. Do you not drink Dutch Bros coffee because they are so big? Should we penalize with personal protests because a business has become so popular?
I've recently met the owner of a chain in town, I won't mention the name but it's not fast food, and had an interesting discussion about this. She told me how the people in Salem had a preference for local restaurants. That was somewhat surprising to hear because of the amount of chains in this city. She owns two stores in town and is charitable in the community. She's not rich and works extremely hard at making her business work and employs dozens of young people here in town. I feel less guilty eating at her restaurant. This restaurant offers a product and experience not currently offered by any local establishment but is in competion for your Salem dining dollars. In this economy, or even in a good one, my hope is that businesses of all sorts thrive and keep people employed. The push on this blog for supporting local businesses is to help level the playing field by introducing Salem audiences to unique finds around town.
The chains have a tremendous advantage by having name recognition but often lack in having a personal connection with customers. In just about any good local restaurant in Salem you might find the owner/chef actually in the kitchen making food for customers. Years ago, Salem seemed like it was awash in chains who's bright signs and national ad campaigns drowned out the voices of local restaurants that have always been making good food here in town. Now, excitement is building, as new places, like French Press, which is expected to open today, are starting to pop up all over town. Newly opened restaurants, La Capitale and Word Of Mouth are both having success in this down economy and the First Wednesday night is helping to establish our downtown as the center of Salem's cuisine scene.
The owner of the chain restaurant that I mentioned above does not know that I write this blog or at least hasn't let on that she knows. That's the reason I haven't mentioned the name of her place. Her business is doing well and I would expect that her success will continue. If it seems like I've changed my views about chains, after seeing a human aspect to them, that may be so. That doesn't mean you're going to see me review Taco Bell. I will continue to do everything possible to expand the conversation about local eateries and will continue to support them with my patronage. Salem's public image throughout the state is often defined by a dismal dining scene, but that is changing quickly, as more quality local options open and the best of the existing restaurants continue to do well.
I tried to write this as cautiously as possible because I know that many of the readers here have much stronger views about chains. So I'm going to duck for cover now as commenters rip me apart for suddenly growing a heart.
There are chains, and then there are chains.
In my opinion, McGrath's is a chain that doesn't seem like one. OK, so it helps that we have the original in town. Maybe that's part of it. It's not Applebee's or Denny's.
And no, I'm not going to rip you apart. We need this blog too much!
I read this blog religiously not because I care about LOCAL food, but because I care about GOOD food (and service). Between my wonderful experiences at Word of Mouth and my daily caffeine fix at the Governor's Cup, I find that "good" and "local" are somewhat correlated. But as far as I'm concerned, that's just a happy coincidence.
I think some chains just lead to blandness. We can travel across the country and feel like we've never left home.
We recently spent 10 days in Florida. I challenged hubby (who loves the consistancy of burger chains) to only eat in places we couldn't find in Salem/Albany.
We had a wonderful time and tried lots of different foods - Puerto Rican, Cuban, Columbian to name a few. We did see the owners in the kitchens, and most often the grandbabes on the floor. The only chain we ate at was Waffle House, and that one isn't here and they do have consistantly good coffee and grits.
Now that we're back home, he's been more willing to try different and 'new' places here too.
Doug, you're not alone. Locals tend to be more erratic in food quality but when you find a good one they blow away chains. Deb's comment about blandness is also accurate. The service in chains seem to have less pride in the food because they don't really care if you like the food. It's not their recipe.
I agree with you about McGrath's. I wonder how many chains have their roots in the NW?
Doug, I'm with you, mostly. I've been on a local kick lately with the economy and not wanting our local places to disappear in neglect. But normally I just want good food and I don't care if its La Capitale, PF Changs or even an international chain like Bucca di Bepo. I have been noticing, in my local eating, that local places have a certain history, personal anecdotes and personality that chains just can't copy. Even with pop-culture paraphernalia hung all over the wall, you can't beat stories from the Salem restaurants that have been here since the 70s or 50s. I'm also loving the new places. Its exciting to see these interesting coffee houses, bistros, and eateries opening in Salem.
I think there's a difference between a locally owned and operated franchise of a chain and a company owned store as well... I don't KNOW but I'm guessing that is the situation with the owner you referenced in your post. When the owner is here and involved in the daily operations I would consider that a local business, yes? Sure they have national ad campaigns and carefully monitored recipes and requirements, but the service and quality should be top notch since there is someone on hand to ensure it.


Published on 22 August 2014 at 05:47.
It's been a month since we introduced Checkout Boost App and it has received a lot of attention from community. With the aim to provide best products that satisfy your needs, we have continuously improved the app based on your feedback. In the meantime, we have developed a new app to contribute to Shopify Community, based on our research on customers' demands.
Do you know that an average bounce rate is around 50%, meaning that about half of people who land on your website leave and don't come back?
Have you tried offering any encouragement to increase sales and keep your customers?
Our new FREE App – Better Coupon Box was born to help. Wanna know why you'll love it?
With Better Coupon Box, customers will be warmly welcomed for the first time entering your site. A beautiful and responsive popup will show up to offer them a discount for following one of your social profiles.
By a small discount, you have just kept that customer stay longer on your site, which means more time to discover your awesome products, more chance for purchase decision.
Better Coupon Box is optimized to be the smallest, on both frontend and backend of the app. As such, not only your customers feel more motivated to engage with your store, but you can also start converting them into your repeat customers quickly.
We understand your pain in increasing sales, or promoting your business on Facebook, Twitter, etc. These are all hard work and require a lot of time and effort. Therefore, we think there should be some way we can contribute actively to community by providing what everyone needs for free. Better Coupon Box was born for that purpose.
How do you think about increasing your revenue by 50% for FREE? Go live with Better Coupon Box just takes you a few minutes and you can start converting your visitors immediately!
Hope this app will save your time and help you to boost sales for your online store.
Better Coupon Box – your social buddy to increase sales results!
©2019 The Better Coupon Box.


August 22nd 2017 was a very special and symbolic day for the Danish, fruit-based soft drinks, ice-lolly and concentrates company CO-RO. It was on this day, 75 years ago in 1942 that two entrepreneurial brothers, Jep and Flemming Petersen founded the business. To celebrate the occasion the company welcomed no fewer than 90 of its people from all over the world to its headquarters to participate in a global summit at which presentations were made and plans for an exciting future were discussed.
CO-RO's marking of three quarters of a century in business comes at a time when it has been outperforming its competition in what have been somewhat challenging times. This has been the result of not only the continued popularity of its leading brands, such as Sunquick, Suntop, Suncola, Sun Lolly and Sunjoy, but also its push over the last 12 months to employ a number of competencies in the field of innovation.
"One of the big initiatives that we have worked diligently on in recent times is changing the culture of the business, building upon our success as Danish-cultured company in order to evolve into a modern, fast-moving FMCG organisation," explains Executive Vice President (EVP) of Global Innovation, Lee Richard Taylor. The first non-Dane to join the company's executive committee, Lee's work alongside his fellow regional EVP's has helped create a sophisticated project management office (PMO) to help the company deliver its strategies and projects. When it comes to innovation, CO-RO's PMO breaks this down into four different categories; renovating, sustaining, breakthrough and radical, thus providing a strong balance to the company's portfolio of products.
"One of the first things we recognised was the need to boost our own internal capabilities," Lee continues. "Recruiting people with a history of working for the likes of Coca-Cola and Suntory, we wanted to bring our new and existing team together in one big, open space, one that places research and innovation at its heart. That is the concept behind our new headquarters and innovation centre, which we plan to have open and operational by the end of 2018.
Increased research and development will hugely benefit CO-RO as it embarks on several key initiatives over the coming years, particularly when it comes to developing product options for an increasingly health conscious marketplace. The company is working on projects to reduce sugar content in existing products as well as exploring options in the emerging 'healthy refreshment' category.


This is the home you have been looking for! Newer open and spacious floorplan. Large living area with vaulted ceilings. Beautiful kitchen with granite countertops, stainless steel appliances and full tile backsplash. Large pantry. Relaxing master suite with walk-in tile shower and large walk-in closet. Beautiful wood tile flooring. Stamped concrete driveway. Apoxy finish on garage floors. Great back patio. Low maintenance living, perfect for the busy lifestyle!
I am interested in 2486 Tiptop Avenue, Grand Junction, CO 81505.


Luton, from Marysville, Wash., played eight games as a freshman for Idaho last season and started one in place of injured Matt Linehan. He threw for 403 yards, one touchdown and four interceptions, and also ran for five TDs last season. He was the No. 1 quarterback in spring camp while Linehan recovered from foot surgery.
Luton will be able to transfer back to a FBS program in 2017, when he'll be a redshirt junior.


Cheryl Lucas; Occupational Therapy Professionals of Color: Perceptions of the Academic Experience. Am J Occup Ther 2018;72(4_Supplement_1):7211505099p1. doi: 10.5014/ajot.2018.72S1-PO3014.
The study explored the academic experiences of occupational therapists of color. Results show that academic and leadership success did not shield them from marginalization or racism, highlighting the need for the occupational therapy profession to transform its educational standards, policies, and operations to provide social justice for students.


I helped set up the girls section of STCFC in 2013 when my daughter was playing football, to give local girls more opportunity to play. The squad has evolved in the last few years and I continue to be motivated by the enthusiasm and enjoyment the girls show when training and playing. I have always enjoyed playing football and feel it is important that boys and girls of all abilities have the chance to play the game. I am a FA level 1 qualified coach.
Please fill out the form below and Neil will get back to you as soon as he can….


The use and distribution of medical and/or recreational marijuana are now legal in 29 states and the District of Columbia. We've already written several articles on the growth and risks involved in the evolving U.S. marijuana industry. But since expansion is expected to continue at a brisk pace, it's worth taking another look at some of the legal issues that are cropping up, with a particular focus on exposures to product liability.
Though the defendant in Flores v. LivWell successfully defended the allegations, this case set precedent as the first marijuana-related class-action suit to be filed in the U.S. More will surely follow.
Kirk v. Nutritional Elements involves a murder. Nutritional Elements faces this failure-to-warn suit that alleges a consumer ingested their product and killed his wife in a marijuana-induced delirium. "Failure to warn" means a manufacturer and/or distributor didn't disclose to consumers certain dangers associated the use or ingestion of their product. The Kirk v. Nutritional Elements case is pending.
Lack of federal regulation and the struggles state regulators have in applying current laws has the industry facing potential claims in the following areas.
Negligence is when a party acts in a careless manner that results in bodily or property damage. Negligence is similar to a failure-to-warn claim in that it can be based on the obligation manufacturers and distributors have to act reasonably. This includes warning consumers of known health risks. Failure to provide is one aspect of negligence.
Consumers, by purchasing a product, enter into contracts with the retailers/distributors/manufacturers. Breach-of-contract claims can be brought when a consumer thinks the purchased product did not execute as expected or was more dangerous than they thought it would be.
Claims related to fraud will likely increase since the industry's marketing efforts are not being effectively monitored. Use of banned pesticides is already an issue within the industry. The Flores lawsuit referenced above addressed this issue, arguing that LivWell intentionally lied in its ads about the quality of their product.
Years ago, the tobacco industry faced claims of improperly directing their marketing and advertisements at youth. In most jurisdictions where marijuana is legal, marketing efforts aimed at youth is banned. However, lack of self-monitoring in the industry's advertising could see attempts by plaintiffs to make youth marketing claims.
Claims of defective design argue that the product's intended purpose is not safe or suitable. The constantly evolving edibles market and hybridization of marijuana strains exposes manufacturers and distributors to consumer claims that design defects or alterations resulted in health risks, addiction, or a more dangerous than product warnings indicated.
Such claims arise if the manufacturer's or distributor's representation about their product turns out to be false. With regard to medical marijuana, these could be claims about the product's effectiveness in preventing, curing, or controlling specific medical disorders. Those in the industry shouldn't make unsubstantiated claims about their products and it's recommended they have an implied and express warranties disclaimer.
Laws forbidding unfair or deceptive trade practices exist in most states. Such laws were used against the tobacco industry when it was alleged it concealed or misrepresented the health risks and addictive qualities of tobacco. It stands to reason that the marijuana industry will face similar claims.


text:
Women's Refugee Commission Responds to Asylum Reform and Border Protection Act
Published: Thursday, 27 July 2017 10:26
Act would heighten standards for asylum, endangering women and children fleeing harm in home countries
Washington, DC - Yesterday, the House Judiciary Committee passed H.R. 391, the "Asylum Reform and Border Protection Act," a bill now sponsored by Rep. Johnson (R-LA). The bill includes countless harmful provisions that make it more difficult for asylum seekers, particularly women and children fleeing gender-based and gang violence, to access asylum or find protection in the United States. The bill severely limits access to the asylum process for those who seek protection at our borders, heightening the threshold for an initial interview that an individual would have to meet before they are even allowed to proceed with an asylum claim. Asylum seekers who do establish a possibility of a fear of return would be far less likely to be released from detention on parole and would instead face prolonged detention in remote detention centers with little access to legal counsel as they navigate their case. The bill includes numerous other provisions that would also dramatically limit access to protection and justice for those seeking protection in the United States.
The bill's provisions would have devastating consequences for countless vulnerable women, children, LGBTI individuals, and others, and especially impact the many families and individuals who have fled growing violence and persecution in Central America in recent years. Amendments offered by Rep. Lofgren (D-CA), Conyers (D-MI), Jayapal (D-WA), and other Democrats to address the undue burdens and harm this bill would create were repeatedly rejected by Republican members of the Committee.
Katharina Obser, Senior Program Officer at the Women's Refugee Commission, responded with the following statement:
"It is not illegal to seek asylum, yet this act threatens to push increasing numbers of women, children, and all vulnerable asylum seekers into the hands of smugglers, or back into the dangerous conditions that they are fleeing. As a nation, we have a moral and legal obligation to protect these individuals. Those fleeing or fearing harm in their home countries have always had the right, protected by international and domestic U.S. law, to seek asylum in the United States. The provisions in H.R. 391 would fundamentally undermine this country's commitment and legal obligations to ensure that those seeking safety in the United States would have access to a fair and just process and dramatically limit the ability to access asylum for some of the most vulnerable individuals. Many mothers, children, and others fleeing harm due to their membership in a particular social group would effectively be cut off from protection, as would those fearing violence perpetrated by gangs who were forced to flee after not finding safety or protection in their home countries. The U.N. High Commissioner for Refugees (UNHCR), Women's Refugee Commission, and numerous others have for years documented that women and children in Central America have fled violence rising to the level deserving of international protection. Even those who would still be able to meet the heightened threshold this bill requires for an initial asylum screening would be more likely to languish in detention, forced to navigate an even more complicated process from remote jails at the cost of the U.S. taxpayer.
There are countless ways in which we can improve the integrity of the U.S. asylum process, but H.R. 391 would only curtail, not strengthen, our obligations to ensure access to protection."
tags: Migrant Rights and Justice,	Rights & Justice,	Borders

redpajama_set_name: RedPajamaCommonCrawl


Contact me to find out more about our offerings listed below, especially if you would like to be a sponsor or an engaged partner. If you are interested in hiring us to consult on a future project or in our customising an event/workshop/training for your organisation or group, please contact us directly or use the form below.
and the historic Freedom Walk celebrating 50 years of integration of Transylvania County Schools.


text:
About The Vital Beat
Contribute to The Vital Beat
Meditation for a healthy heart
General Health,
It turns out that what's good for the mind is also good for the heart.
Research shows people who regularly practice forms of quieting and focusing the mind—mindfulness, meditation or prayer--tend to have a lower risk of getting heart disease.
"We have more evidence now showing that meditation—quieting the mind and being focused on one activity—reduces stress and anxiety, which in turn can lead to a lower risk of heart disease," says Dr. Sayra Khandekar, Facility Chief of Cardiac Sciences (interim), Director of the Echocardiography Lab at the Misericordia Community Hospital and an Associate Clinical Professor of Medicine at the University of Alberta.
The American Heart Association (AHA) also took the position that meditation is good for the heart. This after conducting a comprehensive review of studies in 2017 which showed significant benefits of meditation not only in promoting a healthy heart but also in shaping a positive outlook in life.
People need to recognize that stress is one of the major contributing factors leading to cardiovascular disease, says Sayra. "The good news is that you can do something about it and one of the ways to deal with it is through regular meditation."
Harvard Medical School notes in an article that meditation can take on several forms ranging from mindfulness, yoga, tai chi, prayer, and many others. Even engaging in a focused repetitive movement such as biking, walking, and swimming can also be considered a form of meditation.
As a cardiologist, Sayra regularly counsels patients take action to manage their response to stress—whether financial, marital, or work-related. "We cannot eliminate stress from our lives, but we can change how we react to stressful situations," she adds.
Sue Goulet (L), Clinical Health Educator, and Dr. Sayra Khandekar (R), Cardiologist at Misericordia Hospital, counsel patients to take steps to lower stress with an eye towards promoting a healthy heart.
Sayra makes it clear that meditation is not going to replace recommended medical therapy. However, she says that, "if I can put it on a prescription pad, I would do it. I pretty much talk about it every visit and I ask patients about the things that they are doing for stress management."
She often refers her patients to one of the cardiac rehab sites in Edmonton (Glenrose Rehabilitation Hospital, Grey Nuns Community Hospital or the Mazankowski Alberta Heart Institute) with satellite programs around the province, which provide a range of services for patients with heart disease, including programming designed to help alleviate stress and anxiety.
"You've got to give your mind adequate space to deal with things," Sayra says. "And mindfulness does not only mean formal meditation or breathing in and out." Prayer, she says, can also be a form of meditation, which is what she does on a daily basis. And patients do heed her advice and make a conscious effort to do something about managing stress, she adds.
Taking care of yourself is vital, says Sue Goulet, Clinical Health Educator at the Misericordia Hospital.
Sue emphasizes that it is important to try to achieve work-life balance. "Allow yourself to step back and say to yourself that 'No I can take my time to exercise because it is going to help me,' " she says.
For Sayra, awareness is really key to helping people take more control of their health. And the first step is to remind people with a history of chronic stress and anxiety that they are at an increased risk of cardiovascular disease.
Alicia Johnson
Rey Rosales, Storytelling Advisor
Dr. Sayra Khandekar
Dr. Sayra Khandekar is a Cardiologist at the Misericordia Community Hospital.
Have a story to share about health care? An idea for an article? We value all contributions.
The way Ed Stelmach sees it, he owes a debt of gratitude to the Catholic Sisters for leaving a good impression on him at a very early age.
Ed Stelmach new Covenant Health Board Chair
Former premier brings passion for Catholic health to new position
Seven tips to become more positive
Changing the way you think and act can make you happier
Pilot provides free meal delivery to patients recovering at home
Grey Nuns Community Hospital partners with Meals on Wheels to help ease people's transition home
© 2021 The Vital Beat
The Vital Beat Newsletter


CLEVELAND, Ohio – The third Crooked River Commute and the Burning River Fest have roughly the same goal, but achieved by different means.
The Commute on Saturday finished carrying around 10 kayakers from Kent to Cleveland for the two-day Burning River Fest, which ends Sunday night.
The water-borne travelers -- most associated with Kent State University at one time or another -- relied on muscle power to cover the 50-mile route. During all of that, they became intimately acquainted with just how crooked the Cuyahoga gets.
"After the first commute, I couldn't lift my arms above my shoulders," said David Jurca, leader of the expedition.
Paddling was not the only exertion. They had to port their kayaks more than once, in the last case on Saturday, to avoid the Brecksville Dam by the Route 82 bridge.
A rented truck moved the watercraft and the rest of their gear from the Boston Store where they camped Friday night, but the commuters had to hand-carry the kayaks the final distance over sometime rough terrain and down a steep embankment.
The shared purpose of the trip and the festival is to promote the value, the utility and the wonder of the region's freshwater resources -– most notably the Cuyahoga River and Lake Erie.
The Station Road Trailhead in Brecksville showcased a range of activities and what amounted to an impromptu transportation hub.
Bicyclists took advantage of the trail system, as did assorted walkers and runners, while assorted anglers fished from the riverbank.
The Cuyahoga Valley Scenic Railroad provided a rolling backdrop as it tooted and roared southward.
And one young couple rehearsed their upcoming wedding.
The only things missing were kites, horses and powered hang gliders. But all of those were certainly somewhere in the Cuyahoga Valley National Park, Cleveland Metroparks and Summit Metro Parks.
The final goal was for the kayakers to arrive at the Cleveland Metroparks' Merwin's Warf restaurant in Cleveland, then to paddle on to the old Coast Guard Station on Whiskey Island for Burning River Fest, which continues Sunday night.
Burning River Fest, a festival hosted by Great Lakes Brewing Co., features music, food and drinks, and raises money for the Cleveland Coast Guard Station. It runs 6-11 p.m. Saturday and Sunday. Tickets are $15. More at burningriverfest.org.


text:
Review: To Live and Die in L.A. BD + Screen Caps
To Live and Die in L.A. is I think a bit of a forgotten crime-drama from the '80s and features a wide array of great performances headlined by William Petersen (though I felt he was better in Manhunter) and Willem Dafoe with some amazing cinematography and a vibrant color palette.
To Live and Die in L.A.
— Collector's Edition | Shout Select #8 —
Genre(s): Drama, Crime, Thriller
Shout Factory | R – 116 min. – $34.93 | November 22, 2016
Directed by: William Friedkin
Writer(s): Gerald Petievich (novel); William Friedkin & Gerald Petievich (screenplay)
Cast: William L. Petersen, Willem Dafoe, John Pankow, Debra Feuer, John Turturro, Darlanne Fluegel, Dean Stockwell
Features: Commentary, Featurettes, Deleted Scenes, Gallery, Theatrical Trailer
Note: This portion was copied from my original review with some minor updates.
Plot Synopsis: Federal agent Richard Chance (WILLIAM L. PETERSEN) has a score to settle, and he's through playing by the rules. Whether that means blackmailing a beautiful parolee, disobeying direct orders or hurtling the wrong way down a crowded freeway, he vows, with the help of a new partner (JOHN PANKOW) to take down a murderous counterfeiter (WILLEM DAFOE) by any means necessary. But as the stakes grow higher, will Chance's obsession with vengeance ultimately destroy him?
Review: William Friedkin is either a directorial madman or an insane genius. If you watch The French Connection, you definitely get the feel for the latter. It's a cinematic classic. It is a thriller that I think most directors aspire to achieve. When most films heavily rely on an overpowering score to push a chase scene, Friedkin instead allows the engine to provide for the suspense. Although this 1985 crime thriller doesn't exactly achieve those levels, it still retains Friedkin's unique style… for better or worse. Here, though, I dug the pastels and it would seem the cinematographer took some cues from Michael Mann's TV series, Miami Vice in terms of style.
To Live and Die in L.A. is a fantastic thriller that features some great performances headlined by William Petersen who does a great job portraying an obsessed character that doesn't just cross the line of the law but crosses the line of insanity to capture Willem Dafoe's oddly understated villain. Combined with a good performance from John Pankow and a smaller role by Dean Stockwell (honestly, I could've watched a movie about his character), it makes for a different movie viewing experience. Also keep an eye out for Jane Leaves, aka Daphne from Frasier, in a small, dialogue-less role.
In the end, this is certainly a different movie and probably will not appeal to many people. Friedkin's direction style can be off-putting in that he uses a lot of odd shots and various establishing scenes to propel the story. Personally, I enjoyed this movie quite a bit. It has an interesting – if not low key – plot and even a surprise or two that will shock even the most seasoned movie watcher. This being now my second viewing, it actually had great replay value and for me, would make as a perfect double feature with Michael Mann's Manhunter, also starring William Petersen.
This "Collector's Edition" release comes with a matted slip cover. The interior has a reverse cover revealing the film's original poster artwork.
Audio Commentary – Co-Writer/Director William Friedkin provides a concise but informative track breaking down his process, the casting of these (then) relatively unknown actors, filming locations, etc.
Taking a Chance (20:41; HD) is a new interview with William Petersen discussing how the movie was his big break and how he was cast, thanks in part to old friend… Gary Sinise.
Wrong Way: The Stunts of To Live and Die in L.A. (35:38; HD) – Stunt coordinator Buddy Joe Hooken looks back on his work on the film.
So in Phase: Scoring To Live and Die in L.A. (12:43; HD) has the band Wang Chung (Jack Hues and Nick Feldman) chatting about their approach to scoring the film (their first).
Doctor for a Day (8:2; HD) is a new interview with Actor Dwier Brown who had a bit role.
Renaissance Woman in L.A. (14:55; HD) is another new interview with Actress Debra Feuer.
Deleted Scene (2:20; HD) and Alternate Ending (6:07; HD) which were interesting to watch but what was in the final version was best, especially the alt. ending which the studio wanted.
Counterfeit World: The Making of To Live and Die in L.A. (29:50; SD) is an older featurette with some interviews with members of the cast and crew.
Rounding things out is a Still Gallery (5:27; HD), Theatrical Trailer (2:06; HD) and a Radio Spot (1:04; HD).
VIDEO – 4.75/5
Shout Factory hits it out of the park once again with this amazing, and certainly vivid, transfer for To Live and Die in L.A. This 1080p high-definition transfer, from the original negative and scanned at 4K resolution, and presented in its original 1.85 widescreen aspect ratio, along with the vibrant colors, has amazing detail throughout and though there is a heavy amount of noise, it seems natural and not at all distracting. From what I could tell, there were no major instances of artifacts, aliasing, banding or other flaws.
Note: If I can find my original MGM release, I will try to make comparisons…
AUDIO – 4.5/5
Not to be outdone, the disc comes with the choices of the 5.1 (default) or 2.0 DTS-HD Master Audio tracks, and either one sounds great, however I did watch the entire film with the 5.1 option only testing out the other in certain scenes afterward. As such, this is a nice lossless track showcasing the action and drama scenes as well as Wang Chung's uniquely 1980s score and title song.
Overall, To Live and Die in L.A. is I think a bit of a forgotten crime-drama from the '80s and features a wide array of great performances headlined by William Petersen (though I felt he was better in Manhunter) and Willem Dafoe with some amazing cinematography and a vibrant color palette. This "Collector's Edition" release from Shout Factory offers incredible video and audio transfers and a nice selection of bonus features.
11/06/2016 Blu-ray Reviews, Featured Review, Screen Caps Tagged with: Dean Stockwell, John Turturro, Shout Factory, Shout Select, Willem Dafoe, William Friedkin, William L. Petersen
Review: Deathrow Gameshow BD + Screen Caps Review: Finding Dory BD + Screen Caps


text:
Students write life stories in six words or less
By: Stephanie Barnhart
In: Campus, Featured, News
Tagged: English, Six Word Memoir, Student Life
Photo by Rachel Torgerson. Senior Jennifer Bevington shares her six-word memoir. She and 10 other students will help people on campus write their own six-word memoirs on Nov. 8 at a table in the Atrium.
She meant it to be brief.
Joan Kopperud's unit on six-word memoirs, that is. This semester in her English 421 course titled "Traditions in Literary Genre – the Memoir," Kopperud, a professor of English, put the six-word memoir on her syllabus as a one-day topic.
But the class of 11, made up of students from different disciplines, found this literary form worthy of more class time than they had originally planned.
Now, starting Monday, Nov. 8, the class will host a table in the Atrium where the campus community can stop to write their own life stories. In six words or less.
Jennifer Bevington, a senior English writing major, said the class was required to read just 10 short memoirs before a class period in October. But apparently, they could not stop.
"We all read way more," she said.
The brief snippets of life put into a six-word structure are addicting to read, according to Bevington. Her classmates came back to class energized by the best six-word memoirs they had read and wanted to share their favorites.
Then they starting writing their own.
"We were excited about ours, and we wanted the rest of the student body to be excited about it, too," Bevington said.
Her personal six-word memoir captures a theme from her life: "Set goals. Didn't succeed. Gained perspective."
Memoir-writing is growing in popularity, according to Kopperud. She has noticed several memoirs on the best-seller lists in the last year, which made her decide last spring to focus an entire course on memoirs.
"It's making its way into English," Kopperud said. "People are interested in and reading memoirs."
Defining memoir is a challenge, in Kopperud's opinion. By common definition, it is a form of creative non-fiction that is more focused on a snapshot of someone's life than an autobiography, which is a broader look at someone's entire lifetime.
Made popular by SMITH magazine, an online story-telling site, the six-word form follows the example of novelist Ernest Hemingway. He was allegedly challenged to write a short story in only six words, and came up with this: "For sale: baby shoes, never worn."
Lauren Fields, a senior psychology major, is particularly interested in the way the genre of memoir challenges memory.
"Memory itself is so difficult to pinpoint," she said. "It's how we experience life and remember it. There are obvious problems with how we recall our memories and how accurate they are."
Fields wrote her six-word memoir based not on one specific moment but on a feeling she had at church camp: "Stars and sunsets silently speak volumes."
"When I'm stressed out or frustrated, I go outside, and when I'm in nature, I feel most calm," she said. "It centers me."
A certain mental challenge accompanies the six-word memoir, Kopperud said, but that shouldn't scare people away from writing them. The students at the table next week will advise those who stop to choose the right words and put them in the right order. A large piece of paper will be provided for everyone to compile their memoirs, and the class has discussed letting people submit memoirs that are particularly intriguing.
The table, said Kopperud, was the class' idea.
"I thought it was going to be a small part of one class period," she said. "But it became this big thing."
Fields wants those who stop by the table to know the importance of treating the six words as a memoir, not just a phrase.
"What I hope the campus gets from this is: memoir is more than just writing about your life," she said. "It doesn't have to be a very intricate process; [six-word memoirs] still have the same responsibility for truthfulness that makes them so powerful."
Justin Bertram, senior literature major, likes the mystery behind the short snapshots.
"It's an interesting idea to boil your life down in just six words," he said. "It's not always as difficult as writing a masterpiece but can be equally profound."
Bertram's own six-word memoir was born because while growing up, his family changed location often since his father was in the Army. It reads: "We're moving again? I'm not surprised."
One of his favorites from the class' reading was full of intrigue: "He knew about her peanut allergy."
"That's an entire mystery story right there," Bertram said.
Bertram, who hopes to teach literature in the future, values the six-word memoir as a way to tell stories that makes people want to read. "[They show] that there is an outlet in literature for everyone," he said. "Literature isn't just the stuff you learn in high school. It's very fun, and it's constantly changing, and it's being written every day."
Now, they ask, what's your memoir?
Do you have your own six-word memoir to share? Send it in to The Concordian and we'll print it in the next issue.
Stephanie Barnhart
Contact Stephanie Barnhart at sbarnhar@cord.edu
Steph Barnhart, 2013, is a multimedia journalism and public relations major at Concordia College. She has been a contributing writer, staff writer, and the news editor for The Concordian. Steph is an optimistic vegetarian who loves sustainability blogs, green tea, and talking. Follow her on Twitter at @stephbarnhart.
Award-winning authors share their stories
Students petition the stuffing of "Faith for Life" pamphlets
IWC: the write way?
'Faith for Life' must go
Cobbers help refugees adjust to life in F-M
Previous Post: The Fifties are back
Next Post: SGA proposal near completion
Check out Liz's article, feature online on the SMITH Magazine site. It's worth the read!
http://www.smithmag.net/sixwordbook/2011/11/23/classroom-of-the-week-concordia-college-catches-six-fever/
Steph Barnhart
Hi, my name is Liz Crowder and I work for SMITH Magazine, home of the Six Word Memoir. We regularly do a classroom of the week post where we feature six word memoirs& their place in the classroom. I was wondering if maybe I might feature your class?
If you would like to be featured (or you know where I can reach Professor Kopperud) please shoot me a quick email at lzcrowder@gmail.com.
We are trying to write up a feature in time for Monday. Thanks so much!
Liz Crowder


Our University is blue and gold to its core. And, we make sure that everything we do is just the right shade of those colors. Please refer to the chart below to assist when in need of PMS codes, RGB codes, CMYK codes and Hex codes.


text:
Asterinae es una subtribu perteneciente a la subfamilia Asteroideae dentro de las asteráceas.

Descripción
Las especies de esta subtribu son hierbas. Las hojas son por lo general en forma  lanceolada. A lo largo del tallo están dispuestas de forma alterna. La inflorescencia es del tipo corimboso y están compuestos por diferentes cabezas (especies solitarias también están presentes). La estructura de la cabeza es típico de la familia Asteraceae : La estructura de las cabezas es típico de la familia Asteraceae: un pedículo soporta una carcasa hemisférica, compuesto de diferentes escalas (o brácteas ) que sirven como protección para el receptáculo hemisférico o cónico, con dos tipos de flores: las externas radiantes liguladas y las  flores centrales túbulares. En particular, las femeninas son periféricas, y están dispuestos en una sola circunferencia (o radio o serie) y tienen una corola ligulada con lígula muy agrandada, las internas, son tubulares, son  numerosos y hermafroditas.  El fruto es un aquenio coronado por un vilano peludo.

Distribución
Las especies de este grupo se distribuyen principalmente en Europa y Asia.

Géneros
La subtribu comprende 13 géneros y unas 300 especies.

Arctogeron DC., 1836 (1 sp.)
Aster L., 1753 (circa 180 spp.)
Asterothamnus Novopokr., 1950 ( 7 spp.)
Callistephus Cass., 1825 (1 sp.)
Crinitaria Cass., 1825 (13 spp.)
Galatella Cass., 1825 (30 spp.)
Heteropappus Less., 1832 (circa 20 spp.)
Kalimeris (Cass.) Cass., 1825 (8 spp.)
Kemulariella Tamamschyan in Komarov, 1959 (6 spp.)
Miyamayomena Kitam., 1982 (5 spp.)
Psychrogeton Boiss., 1875 (20 spp.)
Rhinactinidia Novopokr., 1948 (4 spp.)
Tripolium Nees, 1832 (1 sp.)

Referencias

Enlaces externos

redpajama_set_name: RedPajamaWikipedia


text:
Japan Selects Patria AMV as Winner of Wheeled Armoured Personnel Carrier Competition - Raksha Anirveda is a new age print publication (quarterly) with a digital presence.
Japan Selects Patria AMV as Winner of Wheeled Armoured Personnel Carrier Competition
December 14, 2022 Admin Defence Industry
Melbourne: Japan has selected Finland's Patria AMV as its next wheeled armoured personnel carrier following a two-stage evaluation process to replace its fleet of Type 96 eight-wheel drive armoured vehicles.
Japan's Acquisitions, Technology and Logistics Agency announced that the AMV was selected over the Mitsubishi Armoured Vehicle. The country's evaluation process considered cost, performance, logistics and the production base for each vehicle.
The agency said that while both vehicles scored similarly in logistics support and in-country production capabilities, the AMV scored better against its opponent in terms of cost and overall performance.
Japan had shortlisted Patria, local company Mitsubishi and American contractor General Dynamics Land Systems in 2019 as contenders for its Wheeled Armoured Personnel Carrier competition. GDLS offered the LAV 6.0 platform.
All three contenders were to have delivered prototype vehicles to Japan for evaluation by March 30, 2022, although the agency's announcement stated that GDLS did not do so.
Patria said in a news release announcing its selection that it will manufacture the AMVs for the Japan Ground Self-Defence Force in the country under license. Janne Räkköläinen, a senior vice president at Patria, noted in the release that Japan will be the ninth user of the AMV family and that the company has "experience of licensing and cooperation with local industries in many countries."
Japan's Defence Ministry had sought to acquire 29 vehicles through this program in its fiscal 2023 budget request, released in late August, with the expectation all vehicles would be delivered in three years.
Mitsubishi has also been contracted to develop a wheeled infantry fighting vehicle, mortar carrier and reconnaissance vehicle based on the Type 16 manoeuvre combat vehicle, with prototypes of the two former vehicle types seen in Japan undergoing tests in October.
First Locally Built Assault Boat Launched by Pakistan
Slovakia to Transfer Upgraded MiG-29 Fighter Jets to Ukraine


Back in January, we saw the launch of the Random Postcard Project, which calls for people to design postcards inspired by a random word relating to 2012, London or the Olympics.
Organised by the former London College of Communications Experimental Type students who make up Random collective, participants can e-mail a number between one and 100 and receive a word in return, which they then fashion into an A6 postcard to be displayed online and in an east London exhibition in August.
Now, nearly six months in, organisers are shaking things up a bit. Keen to receive more typography-based postcards, they have launched a Jubilee Typography Challenge, where simply by clicking a link users can receive their random word, create their postcard and scan it in, all in the name of her majesty's Diamond Jubilee.
Many beautiful type-based submissions having already arrived – ranging from eight-year-old Stefan Nawathe's brilliant Words entry to artist Andy Altmann of Why Not Associates (the people behind the Comedy Carpet), who has created a beautiful take on Music with his 'always a Northern Soul' card.
Submissions for the Typographic Jubilee Challenge will be uploaded to the website throughout the Jubilee weekend so that the postcards can mirror the ongoing celebrations.
More than 250 postcards have already been received, and 13,000 random words requested, for the overall project, and it's hoped that the Jubilee Weekend will prove to be a catalyst for a surge in Jubilee-themed typographical entries.
'It's a good way to get involved in the celebrations that circumnavigates the politics', says Hyndman.
My favourite type/non-type card as it makes the audience decifer the type… Awesome!!!!


Listing of the best Academy Award Oscar Bafta Award Winning Movies available to stream online. Komparify helps you discover enjoy the top, legal Academy Award Oscar Bafta Award Winning Movies trending Indian entertainment legally streaming free online in HD. The best Academy Award Oscar Bafta Award Winning Movies are La La Land, The Shape of Water, Kubo And The Two Strings, Arrival, Zootopia.


text:
// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "chrome/chrome_cleaner/http/http_agent_impl.h"

#include <stdint.h>
#include <windows.h>
#include <winhttp.h>

#include <iomanip>
#include <iostream>
#include <memory>
#include <string>
#include <utility>
#include <vector>

#include "base/file_version_info.h"
#include "base/logging.h"
#include "base/strings/string_piece.h"
#include "base/strings/string_util.h"
#include "base/system/sys_info.h"
#include "base/win/scoped_handle.h"
#include "base/win/windows_version.h"
#include "chrome/chrome_cleaner/http/error_utils.h"
#include "chrome/chrome_cleaner/http/http_response.h"
#include "chrome/chrome_cleaner/http/internet_helpers.h"
#include "chrome/chrome_cleaner/http/user_agent.h"

namespace chrome_cleaner {

namespace {

void CALLBACK WinHttpStatusCallback(HINTERNET internet,
                                    DWORD_PTR context,
                                    DWORD internet_status,
                                    LPVOID status_information,
                                    DWORD status_information_length) {
  // Only log details on actual failures.
  if (internet_status != WINHTTP_CALLBACK_STATUS_SECURE_FAILURE)
    return;

  DCHECK_GE(status_information_length, static_cast<DWORD>(4));
  DCHECK_NE(status_information, static_cast<LPVOID>(nullptr));
  const DWORD details = *static_cast<DWORD*>(status_information);

  // Parse the details and log what the bits mean.
  std::vector<std::string> set_bits;
  if (details & WINHTTP_CALLBACK_STATUS_FLAG_CERT_REV_FAILED)
    set_bits.push_back("CERT_REV_FAILED");
  if (details & WINHTTP_CALLBACK_STATUS_FLAG_INVALID_CERT)
    set_bits.push_back("INVALID_CERT");
  if (details & WINHTTP_CALLBACK_STATUS_FLAG_CERT_REVOKED)
    set_bits.push_back("CERT_REVOKED");
  if (details & WINHTTP_CALLBACK_STATUS_FLAG_INVALID_CA)
    set_bits.push_back("INVALID_CA");
  if (details & WINHTTP_CALLBACK_STATUS_FLAG_CERT_CN_INVALID)
    set_bits.push_back("CERT_CN_INVALID");
  if (details & WINHTTP_CALLBACK_STATUS_FLAG_CERT_DATE_INVALID)
    set_bits.push_back("CERT_DATE_INVALID");
  if (details & WINHTTP_CALLBACK_STATUS_FLAG_SECURITY_CHANNEL_ERROR)
    set_bits.push_back("SECURITY_CHANNEL_ERROR");

  LOG(ERROR) << "WINHTTP_CALLBACK_STATUS_SECURE_FAILURE: 0x"
             << std::setfill('0') << std::setw(8) << std::hex << details
             << " = " << base::JoinString(set_bits, " | ");
}

class WinHttpHandleTraits {
 public:
  typedef HINTERNET Handle;

  WinHttpHandleTraits() = delete;
  WinHttpHandleTraits(const WinHttpHandleTraits&) = delete;
  WinHttpHandleTraits& operator=(const WinHttpHandleTraits&) = delete;

  static bool CloseHandle(HINTERNET handle) {
    return ::WinHttpCloseHandle(handle) == TRUE;
  }
  static bool IsHandleValid(HINTERNET handle) { return handle != nullptr; }
  static HINTERNET NullHandle() { return nullptr; }
};

typedef base::win::GenericScopedHandle<WinHttpHandleTraits,
                                       base::win::DummyVerifierTraits>
    ScopedWinHttpHandle;

// A helper class that retrieves and frees user proxy settings.
class AutoWinHttpProxyConfig {
 public:
  AutoWinHttpProxyConfig() : proxy_config_() {}

  AutoWinHttpProxyConfig(const AutoWinHttpProxyConfig&) = delete;
  AutoWinHttpProxyConfig& operator=(const AutoWinHttpProxyConfig&) = delete;

  ~AutoWinHttpProxyConfig() {
    if (proxy_config_.lpszAutoConfigUrl)
      ::GlobalFree(proxy_config_.lpszAutoConfigUrl);
    if (proxy_config_.lpszProxy)
      ::GlobalFree(proxy_config_.lpszProxy);
    if (proxy_config_.lpszProxyBypass)
      ::GlobalFree(proxy_config_.lpszProxyBypass);
  }

  // Attempts to load the user proxy settings. If successful, returns true.
  bool Load() {
    if (::WinHttpGetIEProxyConfigForCurrentUser(&proxy_config_))
      return true;

    LOG(ERROR) << "WinHttpGetIEProxyConfigForCurrentUser() failed: "
               << ::common::LogWe();
    return false;
  }

  DWORD access_type() const {
    return (proxy() == WINHTTP_NO_PROXY_NAME) ? WINHTTP_ACCESS_TYPE_NO_PROXY
                                              : WINHTTP_ACCESS_TYPE_NAMED_PROXY;
  }

  // Indicates whether proxy auto-detection is enabled.
  bool auto_detect() const { return proxy_config_.fAutoDetect == TRUE; }

  // Returns the proxy auto-configuration URL, or an empty string if automatic
  // proxy configuration is disabled. Only valid after a successful call to
  // Load().
  const wchar_t* auto_config_url() const {
    return proxy_config_.lpszAutoConfigUrl ? proxy_config_.lpszAutoConfigUrl
                                           : L"";
  }

  // Returns the proxy configuration string that should be passed to
  // WinHttpOpen.
  const wchar_t* proxy() const {
    return (proxy_config_.lpszProxy && proxy_config_.lpszProxy[0] != 0)
               ? proxy_config_.lpszProxy
               : WINHTTP_NO_PROXY_NAME;
  }

  // Returns the proxy bypass configuration string that should be passed to
  // WinHttpOpen. Only valid after a successful call to Load().
  const wchar_t* proxy_bypass() const {
    return access_type() == WINHTTP_ACCESS_TYPE_NO_PROXY
               ? WINHTTP_NO_PROXY_BYPASS
               : proxy_config_.lpszProxyBypass;
  }

 private:
  WINHTTP_CURRENT_USER_IE_PROXY_CONFIG proxy_config_;
};

// A helper class that retrieves and frees URL-specific proxy settings.
class AutoWinHttpUrlProxyConfig {
 public:
  // Constructs an instance that will use the auto-configuration URL (if any)
  // from |proxy_config| to retrieve URL-specific proxy settings.
  explicit AutoWinHttpUrlProxyConfig(const AutoWinHttpProxyConfig& proxy_config)
      : auto_detect_(proxy_config.auto_detect()),
        auto_config_url_(proxy_config.auto_config_url()),
        is_valid_(false),
        url_proxy_config_() {}

  AutoWinHttpUrlProxyConfig(const AutoWinHttpUrlProxyConfig&) = delete;
  AutoWinHttpUrlProxyConfig& operator=(const AutoWinHttpUrlProxyConfig&) =
      delete;

  ~AutoWinHttpUrlProxyConfig() {
    if (url_proxy_config_.lpszProxy)
      ::GlobalFree(url_proxy_config_.lpszProxy);
    if (url_proxy_config_.lpszProxyBypass)
      ::GlobalFree(url_proxy_config_.lpszProxyBypass);
  }

  // Loads URL-specific proxy settings for |url| using |session|. Returns true
  // if auto-configuration is disabled or if the settings are successfully
  // loaded.
  bool Load(HINTERNET session, const std::wstring& url) {
    // http://msdn.microsoft.com/en-us/library/fze2ytx2(v=vs.110).aspx implies
    // that auto-detection is to be used before a specified configuration file.

    // TODO(erikwright): It's not clear if an error from WinHttpGetProxyForUrl
    // means that no proxy is detected and we should proceed with a direct
    // connection or that something unexpected happened. In the latter case we
    // should presumably log an error and possibly not attempt a direct
    // connection. Manual testing will be required to verify the behaviour of
    // this code in different proxy scenarios.
    if (auto_detect_) {
      WINHTTP_AUTOPROXY_OPTIONS options = {0};
      options.dwFlags =
          WINHTTP_AUTOPROXY_AUTO_DETECT | WINHTTP_AUTOPROXY_RUN_OUTPROCESS_ONLY;
      options.dwAutoDetectFlags =
          WINHTTP_AUTO_DETECT_TYPE_DHCP | WINHTTP_AUTO_DETECT_TYPE_DNS_A;
      if (::WinHttpGetProxyForUrl(session, url.c_str(), &options,
                                  &url_proxy_config_)) {
        is_valid_ = true;
        return true;
      }

      switch (::GetLastError()) {
        case ERROR_WINHTTP_AUTODETECTION_FAILED:
        case ERROR_WINHTTP_AUTO_PROXY_SERVICE_ERROR:
          break;
        default:
          LOG(ERROR) << "Unexpected error during "
                        "WinHttpGetProxyForUrl(WINHTTP_AUTOPROXY_AUTO_DETECT)"
                     << ::common::LogWe();
          return false;
      }
    }

    // Auto-detection is disabled or did not detect a configuration.
    if (!auto_config_url_.empty()) {
      WINHTTP_AUTOPROXY_OPTIONS options = {0};
      options.dwFlags = WINHTTP_AUTOPROXY_CONFIG_URL;
      options.lpszAutoConfigUrl = auto_config_url_.c_str();

      if (::WinHttpGetProxyForUrl(session, url.c_str(), &options,
                                  &url_proxy_config_)) {
        is_valid_ = true;
        return true;
      }

      LOG(ERROR)
          << "WinHttpGetProxyForUrl(WINHTTP_AUTOPROXY_CONFIG_URL) failed: "
          << ::common::LogWe();
      return false;
    }
    return true;
  }

  // Returns the loaded settings, or NULL if auto-configuration is disabled.
  // Only valid after a successful call to Load().
  WINHTTP_PROXY_INFO* get() { return is_valid_ ? &url_proxy_config_ : nullptr; }

 private:
  bool auto_detect_;
  std::wstring auto_config_url_;
  bool is_valid_;
  WINHTTP_PROXY_INFO url_proxy_config_;
};

// Implements HttpResponse using the WinHTTP API.
class HttpResponseImpl : public HttpResponse {
 public:
  HttpResponseImpl(const HttpResponseImpl&) = delete;
  HttpResponseImpl& operator=(const HttpResponseImpl&) = delete;

  ~HttpResponseImpl() override;

  // Issues the request defined by its parameters and, if successful, returns an
  // HttpResponse that may be used to access the response. See HttpAgent::Post
  // for a description of the parameters.
  static std::unique_ptr<HttpResponse> Create(const std::wstring& user_agent,
                                              const std::wstring& host,
                                              uint16_t port,
                                              const std::wstring& method,
                                              const std::wstring& path,
                                              bool secure,
                                              const std::wstring& extra_headers,
                                              const std::string& body);

  // HttpResponse implementation.
  bool GetStatusCode(uint16_t* status_code) override;
  bool GetContentLength(bool* has_content_length,
                        uint32_t* content_length) override;
  bool GetContentType(bool* has_content_type,
                      std::wstring* content_type) override;
  bool HasData(bool* has_data) override;
  bool ReadData(char* buffer, uint32_t* count) override;

 private:
  HttpResponseImpl();

  // Invokes WinHttpQueryHeaders. If the header indicated by |info_level| is
  // present its value will be read into |buffer| (having size |buffer_length|).
  // |header_present| will indicate whether the header was found. The result is
  // true if the header is successfully read or determined to be absent.
  bool QueryHeader(DWORD info_level,
                   bool* header_present,
                   void* buffer,
                   DWORD buffer_length);

  // WinHttp handles used for the request.
  ScopedWinHttpHandle session_;
  ScopedWinHttpHandle connection_;
  ScopedWinHttpHandle request_;
};

HttpResponseImpl::~HttpResponseImpl() {}

// static
std::unique_ptr<HttpResponse> HttpResponseImpl::Create(
    const std::wstring& user_agent,
    const std::wstring& host,
    uint16_t port,
    const std::wstring& method,
    const std::wstring& path,
    bool secure,
    const std::wstring& extra_headers,
    const std::string& body) {
  // Retrieve the user's proxy configuration.
  AutoWinHttpProxyConfig proxy_config;
  if (!proxy_config.Load())
    return nullptr;

  // Tentatively create an instance. We will return it if we are able to
  // successfully initialize it.
  std::unique_ptr<HttpResponseImpl> instance(new HttpResponseImpl);

  // Open a WinHTTP session.
  instance->session_.Set(
      ::WinHttpOpen(user_agent.c_str(), proxy_config.access_type(),
                    proxy_config.proxy(), proxy_config.proxy_bypass(), 0));
  if (!instance->session_.IsValid()) {
    LOG(ERROR) << "WinHttpOpen() failed: " << ::common::LogWe();
    return nullptr;
  }

  if (::WinHttpSetStatusCallback(instance->session_.Get(),
                                 &WinHttpStatusCallback,
                                 WINHTTP_CALLBACK_FLAG_SECURE_FAILURE,
                                 NULL) == WINHTTP_INVALID_STATUS_CALLBACK) {
    LOG(ERROR) << "WinHttpSetStatusCallback() failed: " << ::common::LogWe();
  }

  // Look up URL-specific proxy settings. If this fails, we will fall back to
  // working without a proxy.
  AutoWinHttpUrlProxyConfig url_proxy_config(proxy_config);
  url_proxy_config.Load(instance->session_.Get(),
                        ComposeUrl(host, port, path, secure));

  // Connect to a host/port.
  instance->connection_.Set(
      ::WinHttpConnect(instance->session_.Get(), host.c_str(), port, 0));
  if (!instance->connection_.IsValid()) {
    LOG(ERROR) << "WinHttpConnect() failed with host " << host << " and port "
               << port << ": " << ::common::LogWe();
    return nullptr;
  }

  // Initiate a request. This doesn't actually send the request yet.
  instance->request_.Set(::WinHttpOpenRequest(
      instance->connection_.Get(), method.c_str(), path.c_str(),
      NULL,  // version
      NULL,  // referer
      NULL,  // accept types
      secure ? WINHTTP_FLAG_SECURE : 0));
  if (!instance->connection_.IsValid()) {
    LOG(ERROR) << "WinHttpConnect() failed with host " << host << " and port "
               << port << ": " << ::common::LogWe();
    return nullptr;
  }

  // Disable cookies and authentication. This request should be completely
  // stateless and untied to any identity of any sort.
  DWORD option_value = WINHTTP_DISABLE_COOKIES | WINHTTP_DISABLE_AUTHENTICATION;
  if (!::WinHttpSetOption(instance->request_.Get(),
                          WINHTTP_OPTION_DISABLE_FEATURE, &option_value,
                          sizeof(option_value))) {
    LOG(ERROR) << "WinHttpSetOption(WINHTTP_DISABLE_COOKIES | "
                  "WINHTTP_DISABLE_AUTHENTICATION) failed: "
               << ::common::LogWe();
    return nullptr;
  }

  // If this URL is configured to use a proxy, set that up now.
  if (url_proxy_config.get()) {
    if (!::WinHttpSetOption(instance->request_.Get(), WINHTTP_OPTION_PROXY,
                            url_proxy_config.get(),
                            sizeof(*url_proxy_config.get()))) {
      LOG(ERROR) << "WinHttpSetOption(WINHTTP_OPTION_PROXY) failed: "
                 << ::common::LogWe();
      return nullptr;
    }
  }

  // Send the request.
  if (!::WinHttpSendRequest(instance->request_.Get(), extra_headers.c_str(),
                            static_cast<DWORD>(-1),
                            const_cast<char*>(body.data()),
                            static_cast<DWORD>(body.size()),
                            static_cast<DWORD>(body.size()), NULL)) {
    LOG(ERROR) << "Failed to send HTTP request to host " << host << " and port "
               << port << ": " << ::common::LogWe();
    return nullptr;
  }

  // This seems to read at least all headers from the response. The remainder of
  // the body, if any, may be read during subsequent calls to WinHttpReadData().
  if (!::WinHttpReceiveResponse(instance->request_.Get(), 0)) {
    LOG(ERROR) << "Failed to complete HTTP request to host " << host
               << " and port " << port << ": " << ::common::LogWe();
    return nullptr;
  }

  return std::move(instance);
}

bool HttpResponseImpl::GetStatusCode(uint16_t* status_code) {
  DCHECK(status_code);

  bool has_status_code = false;
  DWORD status_code_buffer = 0;

  if (QueryHeader(WINHTTP_QUERY_STATUS_CODE | WINHTTP_QUERY_FLAG_NUMBER,
                  &has_status_code, &status_code_buffer,
                  sizeof(status_code_buffer))) {
    DCHECK(has_status_code);
    *status_code = status_code_buffer;
    return true;
  }

  return false;
}

bool HttpResponseImpl::GetContentLength(bool* has_content_length,
                                        uint32_t* content_length) {
  DCHECK(has_content_length);
  DCHECK(content_length);

  DWORD content_length_header_value = 0;

  if (QueryHeader(WINHTTP_QUERY_CONTENT_LENGTH | WINHTTP_QUERY_FLAG_NUMBER,
                  has_content_length, &content_length_header_value,
                  sizeof(content_length_header_value))) {
    if (*has_content_length)
      *content_length = content_length_header_value;
    return true;
  }

  return false;
}

bool HttpResponseImpl::GetContentType(bool* has_content_type,
                                      std::wstring* content_type) {
  DCHECK(has_content_type);
  DCHECK(content_type);

  wchar_t content_type_buffer[256] = {0};

  if (QueryHeader(WINHTTP_QUERY_CONTENT_TYPE, has_content_type,
                  &content_type_buffer, sizeof(content_type_buffer))) {
    if (*has_content_type)
      *content_type = content_type_buffer;
    return true;
  }

  return false;
}

bool HttpResponseImpl::HasData(bool* has_data) {
  DCHECK(has_data);

  DWORD leftover_data = 0;
  if (!::WinHttpQueryDataAvailable(request_.Get(), &leftover_data)) {
    LOG(ERROR) << "WinHttpQueryDataAvailable failed: " << ::common::LogWe();
    return false;
  }
  if (leftover_data != 0)
    *has_data = true;
  else
    *has_data = false;
  return true;
}

bool HttpResponseImpl::ReadData(char* buffer, uint32_t* count) {
  DCHECK(buffer);
  DCHECK(count);

  DWORD size_read = 0;
  if (!::WinHttpReadData(request_.Get(), buffer, *count, &size_read)) {
    LOG(ERROR) << "Failed to read response body: " << ::common::LogWe();
    return false;
  }
  *count = size_read;
  return true;
}

HttpResponseImpl::HttpResponseImpl() {}

bool HttpResponseImpl::QueryHeader(DWORD info_level,
                                   bool* header_present,
                                   void* buffer,
                                   DWORD buffer_length) {
  if (::WinHttpQueryHeaders(request_.Get(), info_level,
                            WINHTTP_HEADER_NAME_BY_INDEX, buffer,
                            &buffer_length, 0)) {
    *header_present = true;
    return true;
  }

  if (::GetLastError() == ERROR_WINHTTP_HEADER_NOT_FOUND) {
    *header_present = false;
    return true;
  }

  LOG(ERROR) << "WinHttpQueryHeaders failed:" << ::common::LogWe();
  return false;
}

std::wstring GetWinHttpVersion() {
  HMODULE win_http_module = nullptr;
  if (::GetModuleHandleEx(0, L"winhttp.dll", &win_http_module)) {
    std::unique_ptr<FileVersionInfo> win_http_module_version_info(
        FileVersionInfo::CreateFileVersionInfoForModule(win_http_module));
    ::FreeLibrary(win_http_module);
    if (win_http_module_version_info)
      return base::AsWString(win_http_module_version_info->product_version());
  }
  return L"?";
}

// Adapted from Chromium content/common/user_agent.cc
void GetOSAndCPU(UserAgent* user_agent) {
  int32_t os_major_version = 0;
  int32_t os_minor_version = 0;
  int32_t os_bugfix_version = 0;
  base::SysInfo::OperatingSystemVersionNumbers(
      &os_major_version, &os_minor_version, &os_bugfix_version);
  user_agent->set_os_version(os_major_version, os_minor_version);

  base::win::OSInfo* os_info = base::win::OSInfo::GetInstance();
  if (os_info->IsWowX86OnAMD64()) {
    user_agent->set_architecture(UserAgent::WOW64);
  } else {
    base::win::OSInfo::WindowsArchitecture windows_architecture =
        os_info->GetArchitecture();
    if (windows_architecture == base::win::OSInfo::X64_ARCHITECTURE)
      user_agent->set_architecture(UserAgent::X64);
    else if (windows_architecture == base::win::OSInfo::IA64_ARCHITECTURE)
      user_agent->set_architecture(UserAgent::IA64);
    else
      user_agent->set_architecture(UserAgent::X86);
  }
}

}  // namespace

HttpAgentImpl::HttpAgentImpl(base::WStringPiece product_name,
                             base::WStringPiece product_version) {
  UserAgent user_agent(product_name, product_version);
  user_agent.set_winhttp_version(GetWinHttpVersion());
  GetOSAndCPU(&user_agent);
  user_agent_ = user_agent.AsString();
}

HttpAgentImpl::~HttpAgentImpl() {}

std::unique_ptr<HttpResponse> HttpAgentImpl::Post(
    const std::wstring& host,
    uint16_t port,
    const std::wstring& path,
    bool secure,
    const std::wstring& extra_headers,
    const std::string& body,
    const net::NetworkTrafficAnnotationTag& /*traffic_annotation*/) {
  return HttpResponseImpl::Create(user_agent_, host, port, L"POST", path,
                                  secure, extra_headers, body);
}

std::unique_ptr<HttpResponse> HttpAgentImpl::Get(
    const std::wstring& host,
    uint16_t port,
    const std::wstring& path,
    bool secure,
    const std::wstring& extra_headers,
    const net::NetworkTrafficAnnotationTag& /*traffic_annotation*/) {
  return HttpResponseImpl::Create(user_agent_, host, port, L"GET", path, secure,
                                  extra_headers, "");
}

}  // namespace chrome_cleaner

redpajama_set_name: RedPajamaGithub


Calgarians should think carefully before adding so-called hostile architecture to their city, a design specialist from Switzerland says.
The trend is seeping into urban design, from putting armrests in the middle of benches to prevent people from sleeping there to putting barriers on railings to deter skateboaders.
"We stop simply arguing for differences in public space," Selena Savic, an "unpleasant design" specialist and architect, told the Calgary Eyeopener on Monday. "We start solving all these potential conflicts of interest by excluding people and segregating."
Savic is the co-author of the book, Unpleasant Design. She recently toured Calgary looking at the various ways design makes this an unwelcoming modern city.
Under bridges in Calgary, large river stones are laid down to prevent people from sleeping there. C-Train stations have small pyramids on window sills to prevent people from sitting. Metal spikes keep pigeons away and garage bins are secured to keep bears out.
Most unpleasant or hostile design techniques are meant to make areas more pleasant to enjoy for their intended purpose — and are being sneaked into urban design without much public discussion, she said.
The elements do what they're intended to do quite well.
"As soon as architecture becomes very strict, it becomes kind of more successful in kind of navigating people, navigating use, but it becomes less adaptable to people's needs," Savic said. "I think it's a problem. People kind of need to be able to appropriate the space."
She gives the example of openly designed squares in Italy, which people freely use for a variety of purposes. The public space changes based on how members of the public would like to use it, she said.
Here in Calgary, they're often added by private developers or citizens improving their property. That can be a problem, as well, because the design elements are inconsistently applied. So, for instance, if there are spikes deterring pigeons from a popular hangout spot, those pigeons — and their droppings — will move to a new perch.
"The problem is that unpleasant design is always somehow beneficial," Savic said. "It reduces maintenance costs for many objects but it becomes extremely problematic when we start treating people like that."
Members of the public have agreed, and have protested such designs around the country as being discriminatory or disruptive to people in the area.
Here in Calgary, the Safeway grocery store in Kensington was called out online after putting rubber triangular bumps on top of a ledge to cut down on unwanted loitering.
A parkade in Vancouver had a device that emitted a high pitched squeal to deter mostly teenagers from hanging out at night. However, it also disturbed people living and walking in the area.
In Moncton, spikes meant to stop homeless people from sleeping in public spaces garnered much public outcry.
This all offers an opportunity, Savic said, to have community members and designers think more strategically about how they design cities — and what can be done in public spaces.
"You can learn how easy it is to manipulate and control," Savic said. "Designers should go through this process of thinking unpleasant so they could also think pleasant — and not unintentionally think unpleasant."
Savic's visit to the city, which included a tour, talk and workshop, was organized by Esker Foundation in Calgary.
Calgary: The Road Ahead is CBC Calgary's special focus on our city as it passes through the crucible of the downturn: the challenges we face, and the possible solutions as we explore what kind of Calgary we want to create. Have an idea? Email us at calgarytheroadahead@cbc.ca.


Cheese It Earrings | Buy This Bling!
"What do you call Cheese that is Sad?" "Blue Cheese!" "What do you call Cheese that isn't yours?" "Nacho Cheese!" Oh the Sad State of Cheese Jokes… They're so Cheesy… But Still, you can't resit em. They're Gouda! Just like these Cute, Fun, Colorful, and YUMMY looking Earrings. Cheese It's, made out of Polymer Clay, so Realistic… Even the Salt! WOW! And the Fish Hook Earrings are Hypoallergenic. SWEET! Grab this Pair TODAY!


text:
Posts Tagged 'John Parkin'
Cycling and Sustainability
I just received my contributor's copy of a new book, Cycling and Sustainability, from the publisher, Emerald. It's a hefty and impressive volume, with contributions from different disciplines and across the globe crafted together by my research colleague and friend, Professor John Parkin of London South Bank University.
I first met John in 2004, when I organised the first of what's become an annual Cycling and Society Research Group Symposium (the book will be launched officially at the 9th Symposium, at the University of London, in September). John's a chartered civil engineer and professor of transport engineering, but – although I suspect he's sometimes felt slightly like a fish out of water – he's always been admirably happy to extend himself well beyond his discipline, and to engage with the range of social sciences, and this book is testament to his broad and deep interest in cycling, and the ways it can contribute to a more sustainable world.
I felt honoured and privileged when John asked me to co-author the volume's final chapter. This meant that I needed carefully to read all the chapters which went before, so I can say from first-hand experience that it contains some important contributions to our understandings of cycling.
In our conclusion, 'Towards a Revolution in Cycling', we try to summarise the key arguments of the book, and also to demonstrate how the different chapters provide strong evidence for how we might re-make the world in cycle-friendly and sustainable ways. So we are self-consciously ambitious and ever-so-slightly polemical in this chapter, calling for cycling to be given far greater opportunities to contribute towards a healthier, happier planet. It's well past the time when all the rhetoric as to cycling's incredible potential needs assertively and earnestly to be converted into concrete actions, which enable it to enter the mainstream as an ordinary, mass mode of transport.
I'm copying details of the book below, so you can see the kind of ground it covers, and decide whether you want to find out more. It'd be great if a copy could be found – not only by yourself but also by others – in your local library.
Tags:bicycle system, Cycling and Society Research Group, Cycling and Sustainability, John Parkin
Posted in CYCLING PROMOTION, CYCLING THINKING | Leave a Comment »
Towards a bicycle system
I've just OK'd the proofs of an article I've written with Professor John Parkin of London South Bank University. It's the concluding chapter to Cycling and Sustainability, a collection of papers examining different aspects of cycling, written by an impressive set of authors from across the globe. John has been working for cycling both within and outside academia for a long time, and he's done a magnificent job in making the book happen. (I'm sorry about the price – this is academic publishing. But please, if you think it looks interesting and/or useful but find the cost prohibitive, consider ordering it for your local library.)
Partly to announce the book, which will be published next month, and partly because I'm still thinking through our contribution to it, I'm here re-visiting and summarising just part of our conclusion, where we advocate for a global bicycle system. We argue that such a system is required for cycling to make a fundamental contribution to sustainability.
John will present a paper based on the chapter – so long as our abstract is accepted – at the ninth Cycling and Society Research Group Symposium at the University of East London in September; and I might end up talking about it at the second Building Cycling Cultures conference in Leicester in June (we're having a planning meeting towards this event on Friday, so more details should be available soon).
Cycling remains massively marginal as a mode of everyday urban mobility across the globe but its low status is beginning to change, and even to result in actual gains. Some of the world's most prestigious cities – for example, New York, Paris, Barcelona and London – are beginning slowly to be re-made away from the car and towards the bicycle, and in the process the everyday lives and travel practices of residents and visitors are being re-made too.
In particular, cycling is becoming established as a key marker of a middle-class inner-urban lifestyle. In societies which have become saturated with cars, where inner-city living has become de rigueur, and where health and fitness have become key indicators of 'a good lifestyle', cycling has new kudos. Cycling is becoming 'cool' and experiencing a 'renaissance', particularly amongst affluent, white, middle-class, inner-urban professionals.
There is hope here, that the bicycle is finally being re-made as a (potentially) global cosmopolitan icon of sustainable urban life.
Isn't this 'the moment' we have been waiting for – the bicycle's second, this time sustainable, coming?
Yes, but we must turn this trend – which might otherwise be 'a fashion' or 'a fad' – into something durable; we must take advantage of cycling's current popularity. After all, who knows how long the car would have lasted – perhaps only a few decades – had we not re-designed and re-built our cities around it?
Also, how democratic is the current rise in cycling's status?
At the end of the nineteenth century cycling was the preserve of the rich and leisured classes in northern Europe and north America. Bicycles only became accessible to those less affluent when the rich jumped from them, into cars. Rarely in the history of cycling have rich and poor ridden side-by-side, yet for the sake of sustainability this is what we now must do.
But whilst the rich might be returning to cycling, the poor – when they have any choice in the matter – are not.
Whether you are poor in the 'rich world' or the 'poor world', whether the bicycle is perceived mainly as a 'toy' or a 'tool', it tends – even if it can be afforded – not to be a vehicle which is sought after, but rather one which is enforced and/or to be left behind. So the bicycle's potential as a tool to mend our broken cities and build globally more sustainable lives risks remaining unfulfilled.
The bicycle's capacity to infer distinction on the middle classes of prestigious global cities also depends on its continued exclusivity. The new-found status of cycling among urban elites is thus antithetical to its democratisation – loss in exclusivity will erode its appeal. The elite abandoned cycling once and could do so again, as soon as its capacity to infer and communicate distinction declines.
The bicycle's popularity amongst one elite (the hardcore minority who currently cycle) and its growing popularity amongst another elite (the inner-city middle classes who are turning to it) cannot be translated into mass cycling unless we remove the logic of choice at an individual level by creating structures which impose it at a collective level. That is, we make cycling not just for some, but for everyone.
Only a system can achieve this social solidarity in cycling, because only a system can structure and institute practices which are independent of – or at least reasonably resilient to – individual psychologies and whims, cultural fads and fashions.
The indisputable benefits to travelling by bicycle within a bicycle system would not only enable the democratisation of cycling beyond an intellectual middle class elite, but also reduce the risk of this elite's abandonment of cycling once its status as a privileged practice has been lost.
There is too much talk about giving people the 'choice' to cycle. This rhetoric of 'choice' constrains cycling; it gives the illusion that we can 'nudge' people towards cycling, when what's actually required is much more wide-ranging and fundamental.
Modal choices aren't chosen so much as structured, and they exist in systems which structure them. That's why in a society such as the UK, so many more people drive than cycle, even when "it makes no sense to drive so short a distance", and "it's a journey which could so easily be made by bike".
Most people in societies such as the UK and USA do not choose to drive a car. Over the last half century modal 'choice' has been eliminated as the car has become increasingly structured into people's everyday lives as the 'normal', 'default' option. People drive because they're part of a car system.
The dominance of this car system also explains why so few people in the UK and USA cycle. Many more people cycle in China and The Netherlands than in the UK or USA because the Chinese and Dutch have installed better bicycle systems, which embed cycling as a routine, everyday practice.
To embed cycling globally, then, we need a global bicycle system.
Overriding the capacity for individual choice, a bicycle system can convert what might be a current undemocratic 'fashion' into durable collective cycling practice. It can make, at least for short urban journeys, cycling the default; whilst driving becomes the deliberative, active, more difficult 'choice', the option requiring people to 'be hardcore' and 'go against the grain'.
The tentative elite embrace of 'ordinary' cycling in some of the world's most prestigious cities is a geographically and historically specific 'moment', one which provides us with an unprecedented opportunity – for the sake of both cycling and sustainability – to institute, and so make more democratic and sustainable, this minority turn to cycling – to make a 'revolution' from what might otherwise be a 'fashion'.
Two quick points about the worldwide institutionalisation of cycling via a global bicycle system:
First, a bicycle system includes very many things – just like the 'object' of the bicycle itself. Such multiplicity is the fundamental and most important characteristic of a system. Any thing in isolation will have minimal, if any, effect; changes must be systematic. Within a system, no one thing is made to do too much work; there is no 'silver bullet'. Rather all the components of the system work synergistically, together, to create a sum in excess of its parts. Building such a system takes time; it is an incremental project, but also a principled and a collective one;
Second, more incidentally, but something which is very much a 'live' issue in the UK – the question of whether we should adopt an 'integrationist' or 'segregationist' perspective when building for cycling loses much of its significance under the more encompassing task of building a global bicycle system. Of course, this larger task still requires us to consider, decide and lobby, in context-specific ways, for cycling's 'proper place', but that 'proper place' becomes part of a far bigger picture, with the objective of getting everyone eventually moving by bicycle. Different places will devise and install different solutions – with different life-spans – in the process of incrementally building cycling's centrality into the urban mobility system.
The development of a global bicycle system is a major collective project in which we all can, indeed must – even if only by riding a bicycle – be involved. (If you're reading this blog post I'm sure you already are.) For anyone who loves cycling, these then should be exciting times.
Everywhere there is so much work to be done, for the sake of human viability on our planet, to contribute to a bicycle system. The 'push for cycling' must be broad, confident and powerful. We need new cycling infrastructure; new cycling stories; new cycling thinking; new cycle shops, new cycle repair services, and cycle hire services; new cycling-oriented maps, guides and websites; new cycle parking; more cycle-friendly schools, colleges and workplaces; new cycling-oriented cafes, restaurants and hotels; better integration of cycling and other modes of mobility, especially buses, trams and trains; stronger connections between cycling and other spheres of life, including business, politics, television, film, music and other media. We need people to cycle, and people to help, support and encourage others to cycle. Whoever and wherever we are, whatever we do, we can contribute to the new bicycle system required to build a broader and better culture of sustainability.
In this bicycle system the 'choice' to cycle is not an individual choice, it's a social choice – it's been made elsewhere, by complex, overlapping systems making it the sensible – logical, rational, enjoyable – way of moving around.
We need such a system to make the bicycle the global vehicle of urban mobility, a vehicle not only of and for a new global elite, but irrespective of where someone lives, their social position, and their attitude towards sustainability.
We need such a system to make cycling democratic and sustainable
We need such a system for cycling to fulfil its massive potential contribution to urban sustainability.
Tags:bicycle system, books, Cycling and Society Research Group, Cycling and Sustainability, John Parkin


text:
\echo -- start_ignore
select * from pg_aggregate;
\echo -- end_ignore


text:
Credit: Shannon Cottrell
Archaia Brings 'Lost' Jim Henson Screenplay to Life with A Tale of Sand
Liz Ohanesian August 23, 2011
Check Archaia's L.A. office in Shannon Cottrell's slideshow, "Archaia Studio Tour."
Archaia has something big in store for this fall. On November 16, one week before Thanksgiving and the release of The Muppets, the Los Angeles-based comic book company will unleash A Tale of Sand, a new graphic novel based on a "lost" screenplay written by Jim Henson and writing partner Jerry Juhl.
"It's the last and only screenplay that Henson never got to produce in his lifetime," says Archaia Editor-in-Chief, Stephen Christy, "so we're bringing it to life as a graphic novel."
Team Archaia; Credit: Shannon Cottrell
Archaia has been working on the project now for a year-and-a-half with both Henson's daughter Lisa and The Jim Henson Company' archivist.
"We spent a long time on adapting the screenplay to a visual medium, basically," says Christy.
Ramón Pérez (ButterNutSquash, Deadpool Team-Up, Star Wars: The Clone Wars) is handling the art for the book, which will follow the already existing screenplay.
"They're doing some really nice stuff where they're using color almost like a soundtrack," says Archaia publisher Mike Kennedy, "The style, the vibrancy, of the color will change."
Kennedy adds that the artwork will complement Henson's short films from the 1960s.
"It's very perceptual, very kind of stream of conscious," says Kennedy of Henson's early work, "so we're kind of factoring that into the art direction of the book as well."
As an added bonus, Archaia is working on a new font for A Tale of Sand, one that is based on Henson's handwriting.
"It's going to look like Henson hand-lettered the book himself," says Christy.
Archaia, which was founded about seven years ago by Mark Smylie, creator of the book Artesia, has had a relationship The Jim Henson Company since shortly after the comic company opened its L.A. office in early 2009. Their approach to these licensed titles is similar to the one they take for original books, like this year's Eisner Award winners Mouse Guard: Legends of the Guard (Best Anthology) and Return of the Dapper Men (Best Graphic Album– New). They've eschewed the quick production and market saturation of licensed properties in favor of carefully crafted, hardcover volumes with high production values.
"What we want to do is one hardcover, blockbuster title per year of Dark Crystal, of Labyrinth of Fraggle Rock and really build momentum around it, almost treat it like a movie, the way you market it and put it together, so that you can build a fanbase that's going to follow these books for ten years," says Christy.
Archaia's first collaboration with The Jim Henson Company was Fraggle Rock, an anthology-style comic series based on the characters of Henson's popular children's show that aired on HBO in the mid-1980s. The collection of short tales brings together a variety of artists and writers, showcasing subtle stylistic shifts throughout the book. What's interesting about Fraggle Rock is that it highlights the range of influence the franchise has had over the years.
"I think originally, a lot of the intention of the book was for the nostalgia fans, people who grew up with it and are now young adults," says Kennedy.
Something interesting happened recently, though, in the world of the Fraggles. As Christy and Kennedy indicated, Fraggle Rock began streaming on Netflix and reruns are airing on cable channel The Hub (perhaps best known right now as the station that airs My Little Pony: Friendship Is Magic). That has helped attract a new audience to the comic series.
"Now, it's being introduced to a whole new generation of kids, so that's kind of exciting," adds Kennedy.
A handful of other Henson properties are receiving the Archaia treatment. Jim Henson's Storyteller, based on the short-lived, but acclaimed, television show, will be released in September. Later in the fall, they will be releasing The Dark Crystal: Creation Myths, art directed by the film's conceptual designer Brian Froud. If you were at Meltdown Comics for Free Comic Book Day this year, you probably got to check out Henson's Skeksis statues as part of Archaia's promotion.
Next year, Archaia will be taking on cult hit Labyrinth.
"It's the story of how Jareth became the Goblin King," says Christy, "so it's a David Bowie extravaganza."
Archaia has yet to announce who will be working on the new Labyrinth volume, but Christy noted that fans will have a chance to get a first look on Free Comic Book Day next year.
In the meantime, though, fans have A Tale of Sand to anticipate. Kennedy states that it's not necessarily the sort of book Henson fans might expect to see.
"I think the exciting thing is that it's clearly not a Muppets book. It's not Fraggle Rock. It's not one of his fictional stories," he says. "This is the one book that really is a Jim Henson story. It's not tied into one of the colorful things that people know. It's probably the clearest window into who Jim Henson was as a creator, particularly before Sesame Street."
Follow @lizohanesian @ShannonCottrell and @LAWeeklyArts on Twitter.